LCOV - code coverage report
Current view: top level - /mnt/build/buildbot/bld/build-lcov/gcc - insn-recog-5.cc (source / functions) Coverage Total Hit
Test: gcc.info Lines: 87.7 % 3858 3385
Test Date: 2026-05-30 15:37:04 Functions: 95.1 % 205 195
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       338451 : pattern4 (rtx x1, machine_mode i1)
      57              : {
      58       338451 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      59       338451 :   int res ATTRIBUTE_UNUSED;
      60       338451 :   if (!register_operand (operands[0], i1)
      61       298501 :       || GET_MODE (x1) != i1
      62       298501 :       || !register_operand (operands[1], i1)
      63       490026 :       || !general_operand (operands[2], i1))
      64       187282 :     return -1;
      65              :   return 0;
      66              : }
      67              : 
      68              : int
      69         1100 : pattern11 (rtx x1)
      70              : {
      71         1100 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      72         1100 :   rtx x2, x3, x4;
      73         1100 :   int res ATTRIBUTE_UNUSED;
      74         1100 :   x2 = XEXP (x1, 0);
      75         1100 :   operands[0] = x2;
      76         1100 :   x3 = XEXP (x1, 1);
      77         1100 :   x4 = XEXP (x3, 0);
      78         1100 :   operands[1] = x4;
      79         1100 :   switch (GET_MODE (operands[0]))
      80              :     {
      81            8 :     case E_V2QImode:
      82            8 :       if (!memory_operand (operands[0], E_V2QImode)
      83            0 :           || GET_MODE (x3) != E_V2QImode
      84            8 :           || !register_operand (operands[1], E_V2DImode))
      85            8 :         return -1;
      86              :       return 0;
      87              : 
      88           11 :     case E_V4QImode:
      89           11 :       res = pattern9 (x3, 
      90              : E_V4QImode);
      91           11 :       if (res >= 0)
      92            0 :         return res + 1; /* [1, 2] */
      93              :       return -1;
      94              : 
      95           11 :     case E_V8QImode:
      96           11 :       res = pattern10 (x3);
      97           11 :       if (res >= 0)
      98            0 :         return res + 3; /* [3, 5] */
      99              :       return -1;
     100              : 
     101           13 :     case E_V4HImode:
     102           13 :       res = pattern9 (x3, 
     103              : E_V4HImode);
     104           13 :       if (res >= 0)
     105            0 :         return res + 6; /* [6, 7] */
     106              :       return -1;
     107              : 
     108           35 :     case E_V2HImode:
     109           35 :       if (!memory_operand (operands[0], E_V2HImode)
     110            0 :           || GET_MODE (x3) != E_V2HImode
     111           35 :           || !register_operand (operands[1], E_V2DImode))
     112           35 :         return -1;
     113              :       return 8;
     114              : 
     115            6 :     case E_V2SImode:
     116            6 :       if (!memory_operand (operands[0], E_V2SImode)
     117            0 :           || GET_MODE (x3) != E_V2SImode
     118            6 :           || !register_operand (operands[1], E_V2DImode))
     119            6 :         return -1;
     120              :       return 9;
     121              : 
     122              :     default:
     123              :       return -1;
     124              :     }
     125              : }
     126              : 
     127              : int
     128        71491 : pattern29 (rtx x1)
     129              : {
     130        71491 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     131        71491 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
     132        71491 :   rtx x10;
     133        71491 :   int res ATTRIBUTE_UNUSED;
     134        71491 :   x2 = XEXP (x1, 0);
     135        71491 :   operands[0] = x2;
     136        71491 :   x3 = XEXP (x1, 1);
     137        71491 :   x4 = XEXP (x3, 0);
     138        71491 :   switch (GET_CODE (x4))
     139              :     {
     140        36144 :     case REG:
     141        36144 :     case SUBREG:
     142        36144 :     case MEM:
     143        36144 :       operands[1] = x4;
     144        36144 :       switch (GET_MODE (operands[0]))
     145              :         {
     146           92 :         case E_V8HImode:
     147           92 :           if (!register_operand (operands[0], E_V8HImode)
     148           86 :               || GET_MODE (x3) != E_V8HImode
     149          178 :               || !vector_operand (operands[1], E_V8HFmode))
     150            6 :             return -1;
     151              :           return 0;
     152              : 
     153           30 :         case E_V16HImode:
     154           30 :           if (!register_operand (operands[0], E_V16HImode)
     155           24 :               || GET_MODE (x3) != E_V16HImode
     156           54 :               || !vector_operand (operands[1], E_V16HFmode))
     157            6 :             return -1;
     158              :           return 1;
     159              : 
     160           30 :         case E_V32HImode:
     161           30 :           if (!register_operand (operands[0], E_V32HImode)
     162           24 :               || GET_MODE (x3) != E_V32HImode
     163           54 :               || !vector_operand (operands[1], E_V32HFmode))
     164            6 :             return -1;
     165              :           return 2;
     166              : 
     167          507 :         case E_V8SImode:
     168          507 :           if (!register_operand (operands[0], E_V8SImode)
     169          507 :               || GET_MODE (x3) != E_V8SImode)
     170              :             return -1;
     171              :           return 3;
     172              : 
     173          140 :         case E_V16SImode:
     174          140 :           if (!register_operand (operands[0], E_V16SImode)
     175          140 :               || GET_MODE (x3) != E_V16SImode)
     176              :             return -1;
     177           94 :           switch (GET_MODE (operands[1]))
     178              :             {
     179           34 :             case E_V16HFmode:
     180           34 :               if (!vector_operand (operands[1], E_V16HFmode))
     181              :                 return -1;
     182              :               return 4;
     183              : 
     184           60 :             case E_V16SFmode:
     185           60 :               if (!vector_operand (operands[1], E_V16SFmode))
     186              :                 return -1;
     187              :               return 5;
     188              : 
     189              :             default:
     190              :               return -1;
     191              :             }
     192              : 
     193          221 :         case E_V8DImode:
     194          221 :           if (!register_operand (operands[0], E_V8DImode)
     195          221 :               || GET_MODE (x3) != E_V8DImode)
     196              :             return -1;
     197          170 :           switch (GET_MODE (operands[1]))
     198              :             {
     199           20 :             case E_V8HFmode:
     200           20 :               if (!vector_operand (operands[1], E_V8HFmode))
     201              :                 return -1;
     202              :               return 6;
     203              : 
     204           94 :             case E_V8DFmode:
     205           94 :               if (!vector_operand (operands[1], E_V8DFmode))
     206              :                 return -1;
     207              :               return 7;
     208              : 
     209           56 :             case E_V8SFmode:
     210           56 :               if (!vector_operand (operands[1], E_V8SFmode))
     211              :                 return -1;
     212              :               return 8;
     213              : 
     214              :             default:
     215              :               return -1;
     216              :             }
     217              : 
     218         6626 :         case E_V4SImode:
     219         6626 :           if (!register_operand (operands[0], E_V4SImode)
     220         6626 :               || GET_MODE (x3) != E_V4SImode)
     221              :             return -1;
     222              :           return 9;
     223              : 
     224          144 :         case E_V4DImode:
     225          144 :           if (!register_operand (operands[0], E_V4DImode)
     226          144 :               || GET_MODE (x3) != E_V4DImode)
     227              :             return -1;
     228          105 :           switch (GET_MODE (operands[1]))
     229              :             {
     230            3 :             case E_V4HFmode:
     231            3 :               if (!memory_operand (operands[1], E_V4HFmode))
     232              :                 return -1;
     233              :               return 10;
     234              : 
     235           46 :             case E_V4DFmode:
     236           46 :               if (!vector_operand (operands[1], E_V4DFmode))
     237              :                 return -1;
     238              :               return 11;
     239              : 
     240           56 :             case E_V4SFmode:
     241           56 :               if (!vector_operand (operands[1], E_V4SFmode))
     242              :                 return -1;
     243              :               return 12;
     244              : 
     245              :             default:
     246              :               return -1;
     247              :             }
     248              : 
     249          170 :         case E_V2DImode:
     250          170 :           if (!register_operand (operands[0], E_V2DImode)
     251          170 :               || GET_MODE (x3) != E_V2DImode)
     252              :             return -1;
     253          105 :           switch (GET_MODE (operands[1]))
     254              :             {
     255            3 :             case E_V2HFmode:
     256            3 :               if (!memory_operand (operands[1], E_V2HFmode))
     257              :                 return -1;
     258              :               return 13;
     259              : 
     260           97 :             case E_V2DFmode:
     261           97 :               if (!vector_operand (operands[1], E_V2DFmode))
     262              :                 return -1;
     263              :               return 14;
     264              : 
     265              :             default:
     266              :               return -1;
     267              :             }
     268              : 
     269              :         default:
     270              :           return -1;
     271              :         }
     272              : 
     273          604 :     case VEC_SELECT:
     274          604 :       x5 = XEXP (x4, 1);
     275          604 :       if (GET_CODE (x5) != PARALLEL)
     276              :         return -1;
     277          604 :       x6 = XEXP (x4, 0);
     278          604 :       operands[1] = x6;
     279          604 :       switch (XVECLEN (x5, 0))
     280              :         {
     281          247 :         case 4:
     282          247 :           x7 = XVECEXP (x5, 0, 0);
     283          247 :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     284              :             return -1;
     285          181 :           x8 = XVECEXP (x5, 0, 1);
     286          181 :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
     287              :             return -1;
     288          181 :           x9 = XVECEXP (x5, 0, 2);
     289          181 :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
     290              :             return -1;
     291          121 :           x10 = XVECEXP (x5, 0, 3);
     292          121 :           if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 3]
     293          121 :               || GET_MODE (x4) != E_V4HFmode
     294          218 :               || !register_operand (operands[1], E_V8HFmode))
     295           48 :             return -1;
     296           73 :           res = pattern28 (x3);
     297           73 :           if (res >= 0)
     298           56 :             return res + 15; /* [15, 16] */
     299              :           return -1;
     300              : 
     301          204 :         case 2:
     302          204 :           x7 = XVECEXP (x5, 0, 0);
     303          204 :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     304              :             return -1;
     305          204 :           x8 = XVECEXP (x5, 0, 1);
     306          204 :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
     307          204 :               || !register_operand (operands[0], E_V2DImode)
     308          360 :               || GET_MODE (x3) != E_V2DImode)
     309           48 :             return -1;
     310          156 :           switch (GET_MODE (x4))
     311              :             {
     312           24 :             case E_V2HFmode:
     313           24 :               if (!nonimmediate_operand (operands[1], E_V8HFmode))
     314              :                 return -1;
     315              :               return 17;
     316              : 
     317          132 :             case E_V2SFmode:
     318          132 :               if (!nonimmediate_operand (operands[1], E_V4SFmode))
     319              :                 return -1;
     320              :               return 18;
     321              : 
     322              :             default:
     323              :               return -1;
     324              :             }
     325              : 
     326              :         default:
     327              :           return -1;
     328              :         }
     329              : 
     330              :     default:
     331              :       return -1;
     332              :     }
     333              : }
     334              : 
     335              : int
     336     19597921 : pattern83 (rtx x1)
     337              : {
     338     19597921 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     339     19597921 :   rtx x2, x3;
     340     19597921 :   int res ATTRIBUTE_UNUSED;
     341     19597921 :   x2 = XEXP (x1, 0);
     342     19597921 :   if (GET_CODE (x2) != SUBREG
     343       349949 :       || maybe_ne (SUBREG_BYTE (x2), 0)
     344     19933807 :       || GET_MODE (x2) != E_QImode)
     345              :     return -1;
     346        61721 :   x3 = XEXP (x2, 0);
     347        61721 :   switch (GET_CODE (x3))
     348              :     {
     349        16432 :     case ASHIFTRT:
     350        16432 :     case LSHIFTRT:
     351        16432 :     case SIGN_EXTRACT:
     352        16432 :     case ZERO_EXTRACT:
     353        16432 :       operands[3] = x3;
     354        16432 :       if (GET_MODE (x1) != E_QImode)
     355              :         return -1;
     356              :       return 0;
     357              : 
     358              :     default:
     359              :       return -1;
     360              :     }
     361              : }
     362              : 
     363              : int
     364        17696 : pattern90 (rtx x1)
     365              : {
     366        17696 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     367        17696 :   rtx x2, x3, x4, x5, x6, x7, x8;
     368        17696 :   int res ATTRIBUTE_UNUSED;
     369        17696 :   x2 = XEXP (x1, 0);
     370        17696 :   if (GET_CODE (x2) != ZERO_EXTRACT)
     371              :     return -1;
     372            7 :   x3 = XEXP (x2, 1);
     373            7 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
     374              :     return -1;
     375            7 :   x4 = XEXP (x2, 2);
     376            7 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
     377              :     return -1;
     378            7 :   x5 = XEXP (x2, 0);
     379            7 :   operands[0] = x5;
     380            7 :   if (!int248_register_operand (operands[0], E_VOIDmode))
     381              :     return -1;
     382            7 :   x6 = XEXP (x1, 1);
     383            7 :   x7 = XEXP (x6, 0);
     384            7 :   x8 = XEXP (x7, 0);
     385            7 :   operands[1] = x8;
     386            7 :   if (!int248_register_operand (operands[1], E_VOIDmode))
     387              :     return -1;
     388            7 :   switch (GET_MODE (x2))
     389              :     {
     390            0 :     case E_HImode:
     391            0 :       if (GET_MODE (x6) != E_HImode
     392            0 :           || !extract_high_operator (operands[2], E_HImode))
     393            0 :         return -1;
     394              :       return 0;
     395              : 
     396            7 :     case E_SImode:
     397            7 :       if (GET_MODE (x6) != E_SImode
     398            7 :           || !extract_high_operator (operands[2], E_SImode))
     399            0 :         return -1;
     400              :       return 1;
     401              : 
     402            0 :     case E_DImode:
     403            0 :       if (GET_MODE (x6) != E_DImode
     404            0 :           || !extract_high_operator (operands[2], E_DImode))
     405            0 :         return -1;
     406              :       return 2;
     407              : 
     408              :     default:
     409              :       return -1;
     410              :     }
     411              : }
     412              : 
     413              : int
     414        13501 : pattern107 (rtx x1)
     415              : {
     416        13501 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     417        13501 :   rtx x2, x3, x4, x5;
     418        13501 :   int res ATTRIBUTE_UNUSED;
     419        13501 :   x2 = XEXP (x1, 0);
     420        13501 :   x3 = XEXP (x2, 0);
     421        13501 :   operands[1] = x3;
     422        13501 :   x4 = XEXP (x1, 2);
     423        13501 :   operands[2] = x4;
     424        13501 :   if (!register_operand (operands[2], E_QImode))
     425              :     return -1;
     426         6641 :   x5 = XEXP (x1, 1);
     427         6641 :   if (!rtx_equal_p (x5, operands[0]))
     428              :     return -1;
     429         3719 :   switch (GET_MODE (operands[0]))
     430              :     {
     431          248 :     case E_V2QImode:
     432          248 :       return pattern104 (x1, 
     433          248 : E_V2QImode); /* [-1, 0] */
     434              : 
     435          516 :     case E_V4QImode:
     436          516 :       res = pattern105 (x1, 
     437              : E_V4QImode);
     438          516 :       if (res >= 0)
     439          516 :         return res + 1; /* [1, 2] */
     440              :       return -1;
     441              : 
     442          811 :     case E_V8QImode:
     443          811 :       if (!memory_operand (operands[0], E_V8QImode)
     444          811 :           || GET_MODE (x1) != E_V8QImode
     445         1622 :           || GET_MODE (x2) != E_V8QImode)
     446              :         return -1;
     447          811 :       res = pattern106 ();
     448          811 :       if (res >= 0)
     449          811 :         return res + 3; /* [3, 5] */
     450              :       return -1;
     451              : 
     452          519 :     case E_V4HImode:
     453          519 :       res = pattern105 (x1, 
     454              : E_V4HImode);
     455          519 :       if (res >= 0)
     456          519 :         return res + 6; /* [6, 7] */
     457              :       return -1;
     458              : 
     459          253 :     case E_V2HImode:
     460          253 :       if (pattern104 (x1, 
     461              : E_V2HImode) != 0)
     462              :         return -1;
     463              :       return 8;
     464              : 
     465          237 :     case E_V2SImode:
     466          237 :       if (pattern104 (x1, 
     467              : E_V2SImode) != 0)
     468              :         return -1;
     469              :       return 9;
     470              : 
     471              :     default:
     472              :       return -1;
     473              :     }
     474              : }
     475              : 
     476              : int
     477         2552 : pattern122 (rtx x1)
     478              : {
     479         2552 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     480         2552 :   rtx x2, x3, x4;
     481         2552 :   int res ATTRIBUTE_UNUSED;
     482         2552 :   x2 = XEXP (x1, 1);
     483         2552 :   x3 = XEXP (x2, 0);
     484         2552 :   operands[2] = x3;
     485         2552 :   if (!register_operand (operands[2], E_QImode))
     486              :     return -1;
     487         1675 :   x4 = XEXP (x2, 1);
     488         1675 :   operands[3] = x4;
     489         1675 :   if (!const_int_operand (operands[3], E_QImode))
     490              :     return -1;
     491         1675 :   switch (GET_MODE (operands[0]))
     492              :     {
     493         1256 :     case E_DImode:
     494         1256 :       if (GET_MODE (x1) != E_DImode)
     495              :         return -1;
     496              :       return 0;
     497              : 
     498          299 :     case E_SImode:
     499          299 :       if (!nonimmediate_operand (operands[0], E_SImode)
     500          299 :           || GET_MODE (x1) != E_SImode
     501          598 :           || !nonimmediate_operand (operands[1], E_SImode))
     502          262 :         return -1;
     503              :       return 1;
     504              : 
     505              :     default:
     506              :       return -1;
     507              :     }
     508              : }
     509              : 
     510              : int
     511       171389 : pattern132 (rtx x1)
     512              : {
     513       171389 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     514       171389 :   int res ATTRIBUTE_UNUSED;
     515       171389 :   switch (GET_MODE (operands[0]))
     516              :     {
     517        57313 :     case E_SImode:
     518        57313 :       if (!register_operand (operands[0], E_SImode)
     519        56355 :           || GET_MODE (x1) != E_SImode
     520       113668 :           || !nonimmediate_operand (operands[1], E_SImode))
     521        23751 :         return -1;
     522              :       return 0;
     523              : 
     524        90831 :     case E_DImode:
     525        90831 :       if (!register_operand (operands[0], E_DImode)
     526        90500 :           || GET_MODE (x1) != E_DImode
     527       181331 :           || !nonimmediate_operand (operands[1], E_DImode))
     528        40818 :         return -1;
     529              :       return 1;
     530              : 
     531              :     default:
     532              :       return -1;
     533              :     }
     534              : }
     535              : 
     536              : int
     537          847 : pattern141 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
     538              : {
     539          847 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     540          847 :   rtx x2;
     541          847 :   int res ATTRIBUTE_UNUSED;
     542          847 :   if (!register_operand (operands[0], i1)
     543          847 :       || GET_MODE (x1) != i1)
     544              :     return -1;
     545          764 :   x2 = XEXP (x1, 0);
     546          764 :   if (GET_MODE (x2) != i1
     547          764 :       || !vector_operand (operands[1], i3)
     548          764 :       || !nonimm_or_0_operand (operands[2], i1)
     549         1513 :       || !register_operand (operands[3], i2))
     550          128 :     return -1;
     551              :   return 0;
     552              : }
     553              : 
     554              : int
     555         7049 : pattern151 (rtx x1)
     556              : {
     557         7049 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     558         7049 :   rtx x2, x3, x4, x5, x6;
     559         7049 :   int res ATTRIBUTE_UNUSED;
     560         7049 :   x2 = XEXP (x1, 0);
     561         7049 :   x3 = XEXP (x2, 0);
     562         7049 :   operands[1] = x3;
     563         7049 :   x4 = XEXP (x2, 1);
     564         7049 :   operands[2] = x4;
     565         7049 :   x5 = XEXP (x1, 1);
     566         7049 :   operands[3] = x5;
     567         7049 :   x6 = XEXP (x1, 2);
     568         7049 :   operands[4] = x6;
     569         7049 :   switch (GET_MODE (operands[0]))
     570              :     {
     571          539 :     case E_V16SImode:
     572          539 :       return pattern134 (x1, 
     573              : E_V16SImode, 
     574          539 : E_HImode); /* [-1, 0] */
     575              : 
     576          648 :     case E_V8SImode:
     577          648 :       if (pattern134 (x1, 
     578              : E_V8SImode, 
     579              : E_QImode) != 0)
     580              :         return -1;
     581              :       return 1;
     582              : 
     583          356 :     case E_V4SImode:
     584          356 :       if (pattern135 (x1, 
     585              : E_QImode, 
     586              : E_V4SImode) != 0)
     587              :         return -1;
     588              :       return 2;
     589              : 
     590         1006 :     case E_V8DImode:
     591         1006 :       if (pattern134 (x1, 
     592              : E_V8DImode, 
     593              : E_QImode) != 0)
     594              :         return -1;
     595              :       return 3;
     596              : 
     597          770 :     case E_V4DImode:
     598          770 :       if (pattern134 (x1, 
     599              : E_V4DImode, 
     600              : E_QImode) != 0)
     601              :         return -1;
     602              :       return 4;
     603              : 
     604          459 :     case E_V2DImode:
     605          459 :       if (pattern134 (x1, 
     606              : E_V2DImode, 
     607              : E_QImode) != 0)
     608              :         return -1;
     609              :       return 5;
     610              : 
     611          536 :     case E_V64QImode:
     612          536 :       if (pattern134 (x1, 
     613              : E_V64QImode, 
     614              : E_DImode) != 0)
     615              :         return -1;
     616              :       return 6;
     617              : 
     618          366 :     case E_V16QImode:
     619          366 :       if (pattern134 (x1, 
     620              : E_V16QImode, 
     621              : E_HImode) != 0)
     622              :         return -1;
     623              :       return 7;
     624              : 
     625          705 :     case E_V32QImode:
     626          705 :       if (pattern134 (x1, 
     627              : E_V32QImode, 
     628              : E_SImode) != 0)
     629              :         return -1;
     630              :       return 8;
     631              : 
     632          530 :     case E_V32HImode:
     633          530 :       if (pattern134 (x1, 
     634              : E_V32HImode, 
     635              : E_SImode) != 0)
     636              :         return -1;
     637              :       return 9;
     638              : 
     639          776 :     case E_V16HImode:
     640          776 :       if (pattern134 (x1, 
     641              : E_V16HImode, 
     642              : E_HImode) != 0)
     643              :         return -1;
     644              :       return 10;
     645              : 
     646          358 :     case E_V8HImode:
     647          358 :       if (pattern135 (x1, 
     648              : E_QImode, 
     649              : E_V8HImode) != 0)
     650              :         return -1;
     651              :       return 11;
     652              : 
     653              :     default:
     654              :       return -1;
     655              :     }
     656              : }
     657              : 
     658              : int
     659        46928 : pattern163 (rtx x1)
     660              : {
     661        46928 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     662        46928 :   rtx x2, x3, x4, x5;
     663        46928 :   int res ATTRIBUTE_UNUSED;
     664        46928 :   x2 = XEXP (x1, 0);
     665        46928 :   operands[0] = x2;
     666        46928 :   x3 = XEXP (x1, 1);
     667        46928 :   x4 = XVECEXP (x3, 0, 0);
     668        46928 :   operands[1] = x4;
     669        46928 :   x5 = XVECEXP (x3, 0, 1);
     670        46928 :   operands[2] = x5;
     671        46928 :   switch (GET_MODE (operands[0]))
     672              :     {
     673         1345 :     case E_V64QImode:
     674         1345 :       return pattern158 (x3, 
     675         1345 : E_V64QImode); /* [-1, 0] */
     676              : 
     677         5908 :     case E_V32QImode:
     678         5908 :       if (pattern158 (x3, 
     679              : E_V32QImode) != 0)
     680              :         return -1;
     681              :       return 1;
     682              : 
     683        39176 :     case E_V16QImode:
     684        39176 :       if (pattern158 (x3, 
     685              : E_V16QImode) != 0)
     686              :         return -1;
     687              :       return 2;
     688              : 
     689              :     default:
     690              :       return -1;
     691              :     }
     692              : }
     693              : 
     694              : int
     695         2587 : pattern169 (rtx x1, machine_mode i1, machine_mode i2)
     696              : {
     697         2587 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     698         2587 :   int res ATTRIBUTE_UNUSED;
     699         2587 :   if (!register_operand (operands[0], i1)
     700         2539 :       || GET_MODE (x1) != i1
     701         2539 :       || !register_operand (operands[1], i2)
     702         4960 :       || !nonimmediate_operand (operands[2], i2))
     703          301 :     return -1;
     704              :   return 0;
     705              : }
     706              : 
     707              : int
     708          532 : pattern172 (rtx x1)
     709              : {
     710          532 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     711          532 :   rtx x2, x3, x4, x5;
     712          532 :   int res ATTRIBUTE_UNUSED;
     713          532 :   x2 = XEXP (x1, 0);
     714          532 :   operands[0] = x2;
     715          532 :   x3 = XEXP (x1, 1);
     716          532 :   x4 = XVECEXP (x3, 0, 0);
     717          532 :   operands[1] = x4;
     718          532 :   x5 = XVECEXP (x3, 0, 1);
     719          532 :   operands[2] = x5;
     720          532 :   switch (GET_MODE (operands[0]))
     721              :     {
     722          262 :     case E_V32QImode:
     723          262 :       return pattern171 (x3, 
     724              : E_V32HFmode, 
     725              : E_V64QImode, 
     726          262 : E_V32QImode); /* [-1, 0] */
     727              : 
     728          258 :     case E_V16QImode:
     729          258 :       if (pattern171 (x3, 
     730              : E_V16HFmode, 
     731              : E_V32QImode, 
     732              : E_V16QImode) != 0)
     733              :         return -1;
     734              :       return 1;
     735              : 
     736              :     default:
     737              :       return -1;
     738              :     }
     739              : }
     740              : 
     741              : int
     742         1750 : pattern182 (rtx x1)
     743              : {
     744         1750 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     745         1750 :   rtx x2, x3, x4, x5, x6;
     746         1750 :   int res ATTRIBUTE_UNUSED;
     747         1750 :   x2 = XEXP (x1, 0);
     748         1750 :   operands[0] = x2;
     749         1750 :   x3 = XEXP (x1, 1);
     750         1750 :   x4 = XVECEXP (x3, 0, 0);
     751         1750 :   operands[1] = x4;
     752         1750 :   x5 = XVECEXP (x3, 0, 1);
     753         1750 :   operands[2] = x5;
     754         1750 :   x6 = XVECEXP (x3, 0, 2);
     755         1750 :   operands[3] = x6;
     756         1750 :   switch (GET_MODE (operands[0]))
     757              :     {
     758          208 :     case E_V32HImode:
     759          208 :       return pattern178 (x3, 
     760          208 : E_V32HImode); /* [-1, 0] */
     761              : 
     762          196 :     case E_V16SImode:
     763          196 :       if (pattern178 (x3, 
     764              : E_V16SImode) != 0)
     765              :         return -1;
     766              :       return 1;
     767              : 
     768          206 :     case E_V8DImode:
     769          206 :       if (pattern178 (x3, 
     770              : E_V8DImode) != 0)
     771              :         return -1;
     772              :       return 2;
     773              : 
     774          194 :     case E_V16HImode:
     775          194 :       if (pattern178 (x3, 
     776              : E_V16HImode) != 0)
     777              :         return -1;
     778              :       return 3;
     779              : 
     780          192 :     case E_V8SImode:
     781          192 :       if (pattern178 (x3, 
     782              : E_V8SImode) != 0)
     783              :         return -1;
     784              :       return 4;
     785              : 
     786          202 :     case E_V4DImode:
     787          202 :       if (pattern178 (x3, 
     788              : E_V4DImode) != 0)
     789              :         return -1;
     790              :       return 5;
     791              : 
     792          182 :     case E_V8HImode:
     793          182 :       if (pattern178 (x3, 
     794              : E_V8HImode) != 0)
     795              :         return -1;
     796              :       return 6;
     797              : 
     798          180 :     case E_V4SImode:
     799          180 :       if (pattern178 (x3, 
     800              : E_V4SImode) != 0)
     801              :         return -1;
     802              :       return 7;
     803              : 
     804          190 :     case E_V2DImode:
     805          190 :       if (pattern178 (x3, 
     806              : E_V2DImode) != 0)
     807              :         return -1;
     808              :       return 8;
     809              : 
     810              :     default:
     811              :       return -1;
     812              :     }
     813              : }
     814              : 
     815              : int
     816          584 : pattern195 (rtx x1, machine_mode i1, machine_mode i2)
     817              : {
     818          584 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     819          584 :   rtx x2, x3, x4, x5;
     820          584 :   int res ATTRIBUTE_UNUSED;
     821          584 :   if (!register_operand (operands[0], i2)
     822          584 :       || GET_MODE (x1) != i2)
     823              :     return -1;
     824          565 :   x2 = XEXP (x1, 0);
     825          565 :   if (GET_MODE (x2) != i2)
     826              :     return -1;
     827          565 :   x3 = XEXP (x2, 0);
     828          565 :   if (GET_MODE (x3) != i1
     829          565 :       || !register_operand (operands[1], i2)
     830         1114 :       || !nonimmediate_operand (operands[2], i2))
     831           16 :     return -1;
     832          549 :   x4 = XEXP (x1, 1);
     833          549 :   if (GET_MODE (x4) != i2)
     834              :     return -1;
     835          549 :   x5 = XEXP (x4, 0);
     836          549 :   if (GET_MODE (x5) != i1)
     837              :     return -1;
     838              :   return 0;
     839              : }
     840              : 
     841              : int
     842        15779 : pattern201 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
     843              : {
     844        15779 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     845        15779 :   rtx x2, x3, x4, x5;
     846        15779 :   int res ATTRIBUTE_UNUSED;
     847        15779 :   if (!register_operand (operands[0], i3)
     848        15779 :       || GET_MODE (x1) != i3)
     849              :     return -1;
     850        15737 :   x2 = XEXP (x1, 0);
     851        15737 :   if (GET_MODE (x2) != i3)
     852              :     return -1;
     853        15737 :   x3 = XEXP (x2, 0);
     854        15737 :   if (GET_MODE (x3) != i2
     855        15737 :       || !nonimmediate_operand (operands[1], i1))
     856         2172 :     return -1;
     857        13565 :   x4 = XEXP (x1, 1);
     858        13565 :   if (GET_MODE (x4) != i3)
     859              :     return -1;
     860        13565 :   x5 = XEXP (x4, 0);
     861        13565 :   if (GET_MODE (x5) != i2
     862        13565 :       || !nonimmediate_operand (operands[2], i1))
     863          327 :     return -1;
     864              :   return 0;
     865              : }
     866              : 
     867              : int
     868      5867144 : pattern205 ()
     869              : {
     870      5867144 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     871      5867144 :   int res ATTRIBUTE_UNUSED;
     872      5867144 :   switch (GET_MODE (operands[0]))
     873              :     {
     874           46 :     case E_V32HFmode:
     875           46 :       if (!register_operand (operands[0], E_V32HFmode)
     876           46 :           || !ternlog_operand (operands[1], E_V32HFmode))
     877           24 :         return -1;
     878              :       return 0;
     879              : 
     880           48 :     case E_V16HFmode:
     881           48 :       if (!register_operand (operands[0], E_V16HFmode)
     882           48 :           || !ternlog_operand (operands[1], E_V16HFmode))
     883           23 :         return -1;
     884              :       return 1;
     885              : 
     886          681 :     case E_V8HFmode:
     887          681 :       if (!register_operand (operands[0], E_V8HFmode)
     888          681 :           || !ternlog_operand (operands[1], E_V8HFmode))
     889          532 :         return -1;
     890              :       return 2;
     891              : 
     892            4 :     case E_V32BFmode:
     893            4 :       if (!register_operand (operands[0], E_V32BFmode)
     894            4 :           || !ternlog_operand (operands[1], E_V32BFmode))
     895            4 :         return -1;
     896              :       return 3;
     897              : 
     898            4 :     case E_V16BFmode:
     899            4 :       if (!register_operand (operands[0], E_V16BFmode)
     900            4 :           || !ternlog_operand (operands[1], E_V16BFmode))
     901            4 :         return -1;
     902              :       return 4;
     903              : 
     904            4 :     case E_V8BFmode:
     905            4 :       if (!register_operand (operands[0], E_V8BFmode)
     906            4 :           || !ternlog_operand (operands[1], E_V8BFmode))
     907            4 :         return -1;
     908              :       return 5;
     909              : 
     910          364 :     case E_V16SFmode:
     911          364 :       if (!register_operand (operands[0], E_V16SFmode)
     912          364 :           || !ternlog_operand (operands[1], E_V16SFmode))
     913          310 :         return -1;
     914              :       return 6;
     915              : 
     916         1469 :     case E_V8SFmode:
     917         1469 :       if (!register_operand (operands[0], E_V8SFmode)
     918         1469 :           || !ternlog_operand (operands[1], E_V8SFmode))
     919         1442 :         return -1;
     920              :       return 7;
     921              : 
     922       186381 :     case E_V4SFmode:
     923       186381 :       if (!register_operand (operands[0], E_V4SFmode)
     924       186381 :           || !ternlog_operand (operands[1], E_V4SFmode))
     925       145129 :         return -1;
     926              :       return 8;
     927              : 
     928          321 :     case E_V8DFmode:
     929          321 :       if (!register_operand (operands[0], E_V8DFmode)
     930          321 :           || !ternlog_operand (operands[1], E_V8DFmode))
     931          267 :         return -1;
     932              :       return 9;
     933              : 
     934         3724 :     case E_V4DFmode:
     935         3724 :       if (!register_operand (operands[0], E_V4DFmode)
     936         3724 :           || !ternlog_operand (operands[1], E_V4DFmode))
     937         3625 :         return -1;
     938              :       return 10;
     939              : 
     940       193275 :     case E_V2DFmode:
     941       193275 :       if (!register_operand (operands[0], E_V2DFmode)
     942       193275 :           || !ternlog_operand (operands[1], E_V2DFmode))
     943       152285 :         return -1;
     944              :       return 11;
     945              : 
     946              :     default:
     947              :       return -1;
     948              :     }
     949              : }
     950              : 
     951              : int
     952       537381 : pattern216 (rtx x1)
     953              : {
     954       537381 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     955       537381 :   rtx x2, x3, x4, x5, x6, x7, x8;
     956       537381 :   int res ATTRIBUTE_UNUSED;
     957       537381 :   x2 = XVECEXP (x1, 0, 0);
     958       537381 :   x3 = XEXP (x2, 0);
     959       537381 :   operands[0] = x3;
     960       537381 :   x4 = XEXP (x2, 1);
     961       537381 :   x5 = XEXP (x4, 0);
     962       537381 :   operands[1] = x5;
     963       537381 :   x6 = XEXP (x4, 1);
     964       537381 :   operands[2] = x6;
     965       537381 :   x7 = XVECEXP (x1, 0, 1);
     966       537381 :   switch (GET_CODE (x7))
     967              :     {
     968       494414 :     case CLOBBER:
     969       494414 :       x8 = XEXP (x7, 0);
     970       494414 :       if (GET_CODE (x8) != REG
     971       494414 :           || REGNO (x8) != 17
     972       988828 :           || GET_MODE (x8) != E_CCmode)
     973              :         return -1;
     974       494414 :       switch (GET_MODE (operands[0]))
     975              :         {
     976       352280 :         case E_DImode:
     977       352280 :           return pattern213 (x4, 
     978       352280 : E_DImode); /* [-1, 0] */
     979              : 
     980          782 :         case E_TImode:
     981          782 :           if (pattern213 (x4, 
     982              : E_TImode) != 0)
     983              :             return -1;
     984              :           return 1;
     985              : 
     986         1000 :         case E_QImode:
     987         1000 :           if (pattern213 (x4, 
     988              : E_QImode) != 0)
     989              :             return -1;
     990              :           return 2;
     991              : 
     992         1508 :         case E_HImode:
     993         1508 :           if (pattern213 (x4, 
     994              : E_HImode) != 0)
     995              :             return -1;
     996              :           return 3;
     997              : 
     998       138844 :         case E_SImode:
     999       138844 :           if (pattern213 (x4, 
    1000              : E_SImode) != 0)
    1001              :             return -1;
    1002              :           return 4;
    1003              : 
    1004              :         default:
    1005              :           return -1;
    1006              :         }
    1007              : 
    1008            0 :     case UNSPEC:
    1009            0 :       if (pattern215 (x1) != 0)
    1010              :         return -1;
    1011              :       return 5;
    1012              : 
    1013              :     default:
    1014              :       return -1;
    1015              :     }
    1016              : }
    1017              : 
    1018              : int
    1019          947 : pattern229 (rtx x1)
    1020              : {
    1021          947 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1022          947 :   rtx x2, x3, x4, x5, x6, x7, x8;
    1023          947 :   int res ATTRIBUTE_UNUSED;
    1024          947 :   x2 = XVECEXP (x1, 0, 0);
    1025          947 :   x3 = XEXP (x2, 0);
    1026          947 :   operands[0] = x3;
    1027          947 :   x4 = XEXP (x2, 1);
    1028          947 :   x5 = XEXP (x4, 0);
    1029          947 :   operands[1] = x5;
    1030          947 :   x6 = XEXP (x4, 1);
    1031          947 :   operands[2] = x6;
    1032          947 :   x7 = XVECEXP (x1, 0, 2);
    1033          947 :   x8 = XEXP (x7, 0);
    1034          947 :   operands[3] = x8;
    1035          947 :   switch (GET_MODE (operands[0]))
    1036              :     {
    1037          880 :     case E_DImode:
    1038          880 :       if (!register_operand (operands[0], E_DImode)
    1039          860 :           || GET_MODE (x4) != E_DImode
    1040          860 :           || !register_operand (operands[1], E_DImode)
    1041          716 :           || !const_1_to_31_operand (operands[2], E_QImode)
    1042         1596 :           || !scratch_operand (operands[3], E_SImode))
    1043          164 :         return -1;
    1044              :       return 0;
    1045              : 
    1046           67 :     case E_TImode:
    1047           67 :       if (!register_operand (operands[0], E_TImode)
    1048           67 :           || GET_MODE (x4) != E_TImode
    1049           67 :           || !register_operand (operands[1], E_TImode)
    1050           54 :           || !const_1_to_63_operand (operands[2], E_QImode)
    1051          121 :           || !scratch_operand (operands[3], E_DImode))
    1052           13 :         return -1;
    1053              :       return 1;
    1054              : 
    1055              :     default:
    1056              :       return -1;
    1057              :     }
    1058              : }
    1059              : 
    1060              : int
    1061         4042 : pattern247 (rtx x1)
    1062              : {
    1063         4042 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1064         4042 :   rtx x2, x3;
    1065         4042 :   int res ATTRIBUTE_UNUSED;
    1066         4042 :   if (GET_MODE (x1) != E_V1TImode
    1067         4042 :       || !register_operand (operands[0], E_V1TImode))
    1068         4011 :     return -1;
    1069           31 :   x2 = XEXP (x1, 0);
    1070           31 :   operands[1] = x2;
    1071           31 :   if (!register_operand (operands[1], E_V1TImode))
    1072              :     return -1;
    1073           31 :   x3 = XEXP (x1, 1);
    1074           31 :   operands[2] = x3;
    1075           31 :   if (!const_0_to_255_operand (operands[2], E_SImode))
    1076              :     return -1;
    1077              :   return 0;
    1078              : }
    1079              : 
    1080              : int
    1081           48 : pattern253 (rtx x1, machine_mode i1)
    1082              : {
    1083           48 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1084           48 :   rtx x2, x3, x4;
    1085           48 :   int res ATTRIBUTE_UNUSED;
    1086           48 :   if (!register_operand (operands[0], i1)
    1087           48 :       || GET_MODE (x1) != i1)
    1088              :     return -1;
    1089           40 :   x2 = XEXP (x1, 0);
    1090           40 :   operands[1] = x2;
    1091           40 :   if (!register_operand (operands[1], i1))
    1092              :     return -1;
    1093           40 :   x3 = XEXP (x1, 1);
    1094           40 :   operands[2] = x3;
    1095           40 :   if (!register_operand (operands[2], i1))
    1096              :     return -1;
    1097           28 :   x4 = XEXP (x1, 2);
    1098           28 :   operands[3] = x4;
    1099           28 :   if (!register_operand (operands[3], i1))
    1100              :     return -1;
    1101              :   return 0;
    1102              : }
    1103              : 
    1104              : int
    1105       598295 : pattern261 (rtx x1, machine_mode i1, machine_mode i2)
    1106              : {
    1107       598295 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1108       598295 :   rtx x2;
    1109       598295 :   int res ATTRIBUTE_UNUSED;
    1110       598295 :   switch (GET_CODE (x1))
    1111              :     {
    1112       239369 :     case ZERO_EXTEND:
    1113       239369 :       if (GET_MODE (x1) != i2)
    1114              :         return -1;
    1115       239369 :       x2 = XEXP (x1, 0);
    1116       239369 :       operands[3] = x2;
    1117       239369 :       if (!nonimmediate_operand (operands[3], i1))
    1118              :         return -1;
    1119              :       return 0;
    1120              : 
    1121        46243 :     case CONST_INT:
    1122        46243 :     case CONST_WIDE_INT:
    1123        46243 :       operands[3] = x1;
    1124        46243 :       if (!const_scalar_int_operand (operands[3], i2))
    1125              :         return -1;
    1126              :       return 1;
    1127              : 
    1128              :     default:
    1129              :       return -1;
    1130              :     }
    1131              : }
    1132              : 
    1133              : int
    1134         1087 : pattern272 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    1135              : {
    1136         1087 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1137         1087 :   rtx x2, x3;
    1138         1087 :   int res ATTRIBUTE_UNUSED;
    1139         1087 :   if (!register_operand (operands[0], i3)
    1140         1087 :       || GET_MODE (x1) != i3)
    1141              :     return -1;
    1142         1063 :   x2 = XEXP (x1, 0);
    1143         1063 :   if (GET_MODE (x2) != i2
    1144         1063 :       || !register_operand (operands[1], i1))
    1145          210 :     return -1;
    1146          853 :   x3 = XEXP (x1, 1);
    1147          853 :   if (GET_MODE (x3) != i2
    1148          853 :       || !register_mmxmem_operand (operands[2], i1))
    1149          116 :     return -1;
    1150              :   return 0;
    1151              : }
    1152              : 
    1153              : int
    1154           59 : pattern282 (rtx x1, int *pnum_clobbers)
    1155              : {
    1156           59 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1157           59 :   rtx x2, x3, x4, x5, x6;
    1158           59 :   int res ATTRIBUTE_UNUSED;
    1159           59 :   if (pnum_clobbers == NULL)
    1160              :     return -1;
    1161           53 :   x2 = XEXP (x1, 0);
    1162           53 :   x3 = XEXP (x2, 0);
    1163           53 :   operands[2] = x3;
    1164           53 :   x4 = XEXP (x3, 0);
    1165           53 :   if (GET_CODE (x4) != REG
    1166           53 :       || REGNO (x4) != 17)
    1167              :     return -1;
    1168           33 :   x5 = XEXP (x3, 1);
    1169           33 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1170              :     return -1;
    1171           33 :   x6 = XEXP (x2, 1);
    1172           33 :   operands[1] = x6;
    1173           33 :   return pattern281 (x1); /* [-1, 4] */
    1174              : }
    1175              : 
    1176              : int
    1177         1465 : pattern289 (rtx x1, int *pnum_clobbers)
    1178              : {
    1179         1465 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1180         1465 :   rtx x2, x3;
    1181         1465 :   int res ATTRIBUTE_UNUSED;
    1182         1465 :   if (pnum_clobbers == NULL)
    1183              :     return -1;
    1184         1465 :   x2 = XEXP (x1, 0);
    1185         1465 :   x3 = XEXP (x2, 0);
    1186         1465 :   if (XWINT (x3, 0) != 1L)
    1187              :     return -1;
    1188          796 :   return pattern288 (x1); /* [-1, 2] */
    1189              : }
    1190              : 
    1191              : int
    1192      5654818 : pattern294 (rtx x1, machine_mode i1)
    1193              : {
    1194      5654818 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1195      5654818 :   rtx x2, x3, x4, x5;
    1196      5654818 :   int res ATTRIBUTE_UNUSED;
    1197      5654818 :   x2 = XEXP (x1, 1);
    1198      5654818 :   x3 = XEXP (x2, 1);
    1199      5654818 :   if (GET_CODE (x3) != SUBREG
    1200       437372 :       || maybe_ne (SUBREG_BYTE (x3), 0)
    1201      6092190 :       || GET_MODE (x3) != E_QImode)
    1202              :     return -1;
    1203       432345 :   x4 = XEXP (x3, 0);
    1204       432345 :   if (GET_CODE (x4) != AND)
    1205              :     return -1;
    1206        24370 :   x5 = XEXP (x1, 0);
    1207        24370 :   operands[0] = x5;
    1208        24370 :   return pattern293 (x2, 
    1209        24370 : i1); /* [-1, 0] */
    1210              : }
    1211              : 
    1212              : int
    1213          523 : pattern300 (rtx x1)
    1214              : {
    1215          523 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1216          523 :   rtx x2, x3;
    1217          523 :   int res ATTRIBUTE_UNUSED;
    1218          523 :   x2 = XEXP (x1, 0);
    1219          523 :   x3 = XEXP (x2, 0);
    1220          523 :   operands[1] = x3;
    1221          523 :   switch (GET_MODE (operands[0]))
    1222              :     {
    1223            2 :     case E_SImode:
    1224            2 :       return pattern298 (x1); /* [-1, 2] */
    1225              : 
    1226           14 :     case E_DImode:
    1227           14 :       res = pattern299 (x1);
    1228           14 :       if (res >= 0)
    1229            3 :         return res + 3; /* [3, 8] */
    1230              :       return -1;
    1231              : 
    1232              :     default:
    1233              :       return -1;
    1234              :     }
    1235              : }
    1236              : 
    1237              : int
    1238           56 : pattern306 (rtx x1)
    1239              : {
    1240           56 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1241           56 :   rtx x2;
    1242           56 :   int res ATTRIBUTE_UNUSED;
    1243           56 :   if (!register_operand (operands[0], E_SImode)
    1244           56 :       || GET_MODE (x1) != E_SImode)
    1245              :     return -1;
    1246           56 :   x2 = XVECEXP (x1, 0, 0);
    1247           56 :   switch (GET_MODE (x2))
    1248              :     {
    1249           28 :     case E_V32QImode:
    1250           28 :       if (!vector_operand (operands[1], E_V32QImode)
    1251           28 :           || !vector_operand (operands[2], E_V32QImode)
    1252           56 :           || !const0_operand (operands[3], E_V32QImode))
    1253           14 :         return -1;
    1254              :       return 0;
    1255              : 
    1256           28 :     case E_V32HImode:
    1257           28 :       if (!vector_operand (operands[1], E_V32HImode)
    1258           28 :           || !vector_operand (operands[2], E_V32HImode)
    1259           56 :           || !const0_operand (operands[3], E_V32HImode))
    1260           14 :         return -1;
    1261              :       return 1;
    1262              : 
    1263              :     default:
    1264              :       return -1;
    1265              :     }
    1266              : }
    1267              : 
    1268              : int
    1269          942 : pattern318 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    1270              : {
    1271          942 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1272          942 :   rtx x2, x3, x4, x5, x6;
    1273          942 :   int res ATTRIBUTE_UNUSED;
    1274          942 :   if (!register_operand (operands[0], i1)
    1275          942 :       || GET_MODE (x1) != i1)
    1276              :     return -1;
    1277          882 :   x2 = XEXP (x1, 0);
    1278          882 :   if (GET_MODE (x2) != i1)
    1279              :     return -1;
    1280          882 :   x3 = XEXP (x2, 0);
    1281          882 :   if (GET_MODE (x3) != i1)
    1282              :     return -1;
    1283          882 :   x4 = XEXP (x3, 0);
    1284          882 :   if (GET_MODE (x4) != i3
    1285          882 :       || !nonimmediate_operand (operands[1], i2))
    1286           24 :     return -1;
    1287          858 :   x5 = XEXP (x2, 1);
    1288          858 :   if (GET_MODE (x5) != i1)
    1289              :     return -1;
    1290          858 :   x6 = XEXP (x5, 0);
    1291          858 :   if (GET_MODE (x6) != i3
    1292          858 :       || !nonimmediate_operand (operands[2], i2)
    1293         1692 :       || !nonimm_or_0_operand (operands[3], i1))
    1294           52 :     return -1;
    1295              :   return 0;
    1296              : }
    1297              : 
    1298              : int
    1299       163125 : pattern325 (rtx x1)
    1300              : {
    1301       163125 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1302       163125 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1303       163125 :   rtx x10;
    1304       163125 :   int res ATTRIBUTE_UNUSED;
    1305       163125 :   x2 = XEXP (x1, 1);
    1306       163125 :   operands[2] = x2;
    1307       163125 :   x3 = XEXP (x1, 2);
    1308       163125 :   if (GET_MODE (x3) != E_QImode)
    1309              :     return -1;
    1310        18879 :   switch (GET_CODE (x3))
    1311              :     {
    1312         5678 :     case UNSPEC:
    1313         5678 :       if (XVECLEN (x3, 0) != 3
    1314         5678 :           || XINT (x3, 1) != 60)
    1315              :         return -1;
    1316         5266 :       x4 = XVECEXP (x3, 0, 0);
    1317         5266 :       operands[3] = x4;
    1318         5266 :       x5 = XVECEXP (x3, 0, 1);
    1319         5266 :       operands[4] = x5;
    1320         5266 :       x6 = XVECEXP (x3, 0, 2);
    1321         5266 :       operands[5] = x6;
    1322         5266 :       if (!const_0_to_31_operand (operands[5], E_SImode))
    1323              :         return -1;
    1324         5266 :       switch (GET_MODE (operands[0]))
    1325              :         {
    1326          151 :         case E_V8SFmode:
    1327          151 :           return pattern323 (x1, 
    1328          151 : E_V8SFmode); /* [-1, 0] */
    1329              : 
    1330          181 :         case E_V4SFmode:
    1331          181 :           if (pattern323 (x1, 
    1332              : E_V4SFmode) != 0)
    1333              :             return -1;
    1334              :           return 1;
    1335              : 
    1336          155 :         case E_V4DFmode:
    1337          155 :           if (pattern323 (x1, 
    1338              : E_V4DFmode) != 0)
    1339              :             return -1;
    1340              :           return 2;
    1341              : 
    1342          121 :         case E_V2DFmode:
    1343          121 :           if (pattern323 (x1, 
    1344              : E_V2DFmode) != 0)
    1345              :             return -1;
    1346              :           return 3;
    1347              : 
    1348              :         default:
    1349              :           return -1;
    1350              :         }
    1351              : 
    1352            9 :     case NOT:
    1353            9 :       x7 = XEXP (x3, 0);
    1354            9 :       if (GET_CODE (x7) != UNSPEC
    1355            0 :           || XVECLEN (x7, 0) != 3
    1356            0 :           || XINT (x7, 1) != 60
    1357            0 :           || GET_MODE (x7) != E_QImode)
    1358              :         return -1;
    1359            0 :       x8 = XVECEXP (x7, 0, 0);
    1360            0 :       operands[3] = x8;
    1361            0 :       x9 = XVECEXP (x7, 0, 1);
    1362            0 :       operands[4] = x9;
    1363            0 :       x10 = XVECEXP (x7, 0, 2);
    1364            0 :       operands[5] = x10;
    1365            0 :       if (!const_0_to_31_operand (operands[5], E_SImode))
    1366              :         return -1;
    1367            0 :       switch (GET_MODE (operands[0]))
    1368              :         {
    1369            0 :         case E_V8SFmode:
    1370            0 :           if (pattern324 (x1, 
    1371              : E_V8SFmode) != 0)
    1372              :             return -1;
    1373              :           return 4;
    1374              : 
    1375            0 :         case E_V4SFmode:
    1376            0 :           if (pattern324 (x1, 
    1377              : E_V4SFmode) != 0)
    1378              :             return -1;
    1379              :           return 5;
    1380              : 
    1381            0 :         case E_V4DFmode:
    1382            0 :           if (pattern324 (x1, 
    1383              : E_V4DFmode) != 0)
    1384              :             return -1;
    1385              :           return 6;
    1386              : 
    1387            0 :         case E_V2DFmode:
    1388            0 :           if (pattern324 (x1, 
    1389              : E_V2DFmode) != 0)
    1390              :             return -1;
    1391              :           return 7;
    1392              : 
    1393              :         default:
    1394              :           return -1;
    1395              :         }
    1396              : 
    1397              :     default:
    1398              :       return -1;
    1399              :     }
    1400              : }
    1401              : 
    1402              : int
    1403        49682 : pattern342 (rtx x1)
    1404              : {
    1405        49682 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1406        49682 :   int res ATTRIBUTE_UNUSED;
    1407        49682 :   switch (GET_MODE (operands[0]))
    1408              :     {
    1409        26259 :     case E_SImode:
    1410        26259 :       if (!nonimmediate_operand (operands[0], E_SImode)
    1411        26247 :           || GET_MODE (x1) != E_SImode
    1412        52506 :           || !nonimmediate_operand (operands[1], E_SImode))
    1413         2478 :         return -1;
    1414              :       return 0;
    1415              : 
    1416        22066 :     case E_DImode:
    1417        22066 :       if (!nonimmediate_operand (operands[0], E_DImode)
    1418        22054 :           || GET_MODE (x1) != E_DImode
    1419        44120 :           || !nonimmediate_operand (operands[1], E_DImode))
    1420         4258 :         return -1;
    1421              :       return 1;
    1422              : 
    1423              :     default:
    1424              :       return -1;
    1425              :     }
    1426              : }
    1427              : 
    1428              : int
    1429      8747054 : pattern345 (rtx x1)
    1430              : {
    1431      8747054 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1432      8747054 :   rtx x2, x3, x4, x5, x6, x7;
    1433      8747054 :   int res ATTRIBUTE_UNUSED;
    1434      8747054 :   x2 = XVECEXP (x1, 0, 0);
    1435      8747054 :   x3 = XEXP (x2, 1);
    1436      8747054 :   x4 = XEXP (x3, 0);
    1437      8747054 :   operands[1] = x4;
    1438      8747054 :   x5 = XEXP (x3, 1);
    1439      8747054 :   switch (GET_CODE (x5))
    1440              :     {
    1441              :     case CONST_INT:
    1442              :     case CONST_WIDE_INT:
    1443              :     case CONST_POLY_INT:
    1444              :     case CONST_FIXED:
    1445              :     case CONST_DOUBLE:
    1446              :     case CONST_VECTOR:
    1447              :     case CONST:
    1448              :     case REG:
    1449              :     case SUBREG:
    1450              :     case LABEL_REF:
    1451              :     case SYMBOL_REF:
    1452              :     case HIGH:
    1453              :       return 0;
    1454              : 
    1455         4844 :     case AND:
    1456         4844 :       if (GET_MODE (x5) != E_QImode)
    1457              :         return -1;
    1458         4604 :       x6 = XVECEXP (x1, 0, 1);
    1459         4604 :       if (GET_CODE (x6) != CLOBBER)
    1460              :         return -1;
    1461         4437 :       x7 = XEXP (x6, 0);
    1462         4437 :       if (GET_CODE (x7) != REG
    1463         4437 :           || REGNO (x7) != 17
    1464         8874 :           || GET_MODE (x7) != E_CCmode)
    1465              :         return -1;
    1466         4437 :       res = pattern341 (x2);
    1467         4437 :       if (res >= 0)
    1468         3423 :         return res + 1; /* [1, 3] */
    1469              :       return -1;
    1470              : 
    1471        20336 :     case PLUS:
    1472        20336 :       if (GET_MODE (x5) != E_QImode)
    1473              :         return -1;
    1474        20336 :       x6 = XVECEXP (x1, 0, 1);
    1475        20336 :       if (GET_CODE (x6) != CLOBBER)
    1476              :         return -1;
    1477        18201 :       x7 = XEXP (x6, 0);
    1478        18201 :       if (GET_CODE (x7) != REG
    1479        18201 :           || REGNO (x7) != 17
    1480        36402 :           || GET_MODE (x7) != E_CCmode)
    1481              :         return -1;
    1482        18201 :       res = pattern343 (x2);
    1483        18201 :       if (res >= 0)
    1484        14365 :         return res + 4; /* [4, 5] */
    1485              :       return -1;
    1486              : 
    1487        15737 :     case MINUS:
    1488        15737 :       if (GET_MODE (x5) != E_QImode)
    1489              :         return -1;
    1490        15705 :       x6 = XVECEXP (x1, 0, 1);
    1491        15705 :       if (GET_CODE (x6) != CLOBBER)
    1492              :         return -1;
    1493        12211 :       x7 = XEXP (x6, 0);
    1494        12211 :       if (GET_CODE (x7) != REG
    1495        12211 :           || REGNO (x7) != 17
    1496        24422 :           || GET_MODE (x7) != E_CCmode)
    1497              :         return -1;
    1498        12211 :       res = pattern344 (x2);
    1499        12211 :       if (res >= 0)
    1500         2589 :         return res + 6; /* [6, 7] */
    1501              :       return -1;
    1502              : 
    1503              :     default:
    1504              :       return -1;
    1505              :     }
    1506              : }
    1507              : 
    1508              : int
    1509        27679 : pattern361 (rtx x1)
    1510              : {
    1511        27679 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1512        27679 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1513        27679 :   rtx x10;
    1514        27679 :   int res ATTRIBUTE_UNUSED;
    1515        27679 :   x2 = XVECEXP (x1, 0, 0);
    1516        27679 :   x3 = XEXP (x2, 1);
    1517        27679 :   x4 = XEXP (x3, 0);
    1518        27679 :   x5 = XEXP (x4, 0);
    1519        27679 :   if (GET_CODE (x5) != ASHIFT)
    1520              :     return -1;
    1521         8484 :   x6 = XEXP (x5, 0);
    1522         8484 :   if (GET_CODE (x6) != ZERO_EXTEND)
    1523              :     return -1;
    1524         7779 :   x7 = XEXP (x4, 1);
    1525         7779 :   if (GET_CODE (x7) != ZERO_EXTEND)
    1526              :     return -1;
    1527         7779 :   x8 = XVECEXP (x1, 0, 1);
    1528         7779 :   if (GET_CODE (x8) != CLOBBER)
    1529              :     return -1;
    1530         6141 :   x9 = XEXP (x8, 0);
    1531         6141 :   if (GET_CODE (x9) != REG
    1532         6141 :       || REGNO (x9) != 17
    1533        12282 :       || GET_MODE (x9) != E_CCmode)
    1534              :     return -1;
    1535         6141 :   x10 = XEXP (x2, 0);
    1536         6141 :   operands[0] = x10;
    1537         6141 :   return pattern360 (x3); /* [-1, 3] */
    1538              : }
    1539              : 
    1540              : int
    1541        21093 : pattern368 (rtx x1, machine_mode i1)
    1542              : {
    1543        21093 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1544        21093 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1545        21093 :   rtx x10, x11, x12, x13;
    1546        21093 :   int res ATTRIBUTE_UNUSED;
    1547        21093 :   x2 = XVECEXP (x1, 0, 0);
    1548        21093 :   x3 = XEXP (x2, 1);
    1549        21093 :   if (GET_MODE (x3) != i1)
    1550              :     return -1;
    1551        21093 :   x4 = XEXP (x3, 0);
    1552        21093 :   x5 = XEXP (x4, 0);
    1553        21093 :   x6 = XVECEXP (x5, 0, 0);
    1554        21093 :   operands[0] = x6;
    1555        21093 :   x7 = XVECEXP (x5, 0, 1);
    1556        21093 :   operands[2] = x7;
    1557        21093 :   if (!const_int_operand (operands[2], E_SImode))
    1558              :     return -1;
    1559        21093 :   x8 = XEXP (x4, 1);
    1560        21093 :   operands[1] = x8;
    1561        21093 :   x9 = XVECEXP (x1, 0, 1);
    1562        21093 :   x10 = XEXP (x9, 1);
    1563        21093 :   x11 = XEXP (x10, 0);
    1564        21093 :   if (!rtx_equal_p (x11, operands[0]))
    1565              :     return -1;
    1566        21093 :   x12 = XEXP (x10, 1);
    1567        21093 :   if (!rtx_equal_p (x12, operands[1]))
    1568              :     return -1;
    1569        21093 :   x13 = XEXP (x9, 0);
    1570        21093 :   if (!rtx_equal_p (x13, operands[0]))
    1571              :     return -1;
    1572        21093 :   switch (GET_MODE (x4))
    1573              :     {
    1574         2888 :     case E_QImode:
    1575         2888 :       return pattern367 (x1, 
    1576         2888 : E_QImode); /* [-1, 0] */
    1577              : 
    1578         2588 :     case E_HImode:
    1579         2588 :       if (pattern367 (x1, 
    1580              : E_HImode) != 0)
    1581              :         return -1;
    1582              :       return 1;
    1583              : 
    1584        12083 :     case E_SImode:
    1585        12083 :       if (pattern367 (x1, 
    1586              : E_SImode) != 0)
    1587              :         return -1;
    1588              :       return 2;
    1589              : 
    1590         3534 :     case E_DImode:
    1591         3534 :       if (pattern367 (x1, 
    1592              : E_DImode) != 0)
    1593              :         return -1;
    1594              :       return 3;
    1595              : 
    1596              :     default:
    1597              :       return -1;
    1598              :     }
    1599              : }
    1600              : 
    1601              : int
    1602         7258 : pattern378 (rtx x1)
    1603              : {
    1604         7258 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1605         7258 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1606         7258 :   rtx x10, x11;
    1607         7258 :   int res ATTRIBUTE_UNUSED;
    1608         7258 :   x2 = XVECEXP (x1, 0, 0);
    1609         7258 :   x3 = XEXP (x2, 1);
    1610         7258 :   x4 = XEXP (x3, 0);
    1611         7258 :   if (GET_MODE (x4) != E_DImode)
    1612              :     return -1;
    1613         7258 :   x5 = XEXP (x4, 1);
    1614         7258 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    1615              :     return -1;
    1616         7258 :   x6 = XEXP (x2, 0);
    1617         7258 :   if (GET_CODE (x6) != ZERO_EXTRACT
    1618         7258 :       || GET_MODE (x6) != E_DImode)
    1619              :     return -1;
    1620         7258 :   x7 = XEXP (x6, 1);
    1621         7258 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    1622              :     return -1;
    1623         7258 :   x8 = XVECEXP (x1, 0, 1);
    1624         7258 :   if (GET_CODE (x8) != CLOBBER)
    1625              :     return -1;
    1626         7258 :   x9 = XEXP (x8, 0);
    1627         7258 :   if (GET_CODE (x9) != REG
    1628         7258 :       || REGNO (x9) != 17
    1629        14516 :       || GET_MODE (x9) != E_CCmode)
    1630              :     return -1;
    1631         7258 :   x10 = XEXP (x6, 0);
    1632         7258 :   operands[0] = x10;
    1633         7258 :   if (!nonimmediate_operand (operands[0], E_DImode))
    1634              :     return -1;
    1635         7258 :   x11 = XEXP (x6, 2);
    1636         7258 :   operands[1] = x11;
    1637         7258 :   if (!const_0_to_63_operand (operands[1], E_QImode))
    1638              :     return -1;
    1639              :   return 0;
    1640              : }
    1641              : 
    1642              : int
    1643           57 : pattern394 (rtx x1)
    1644              : {
    1645           57 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1646           57 :   rtx x2, x3;
    1647           57 :   int res ATTRIBUTE_UNUSED;
    1648           57 :   x2 = XVECEXP (x1, 0, 2);
    1649           57 :   if (XVECLEN (x2, 0) != 1
    1650           57 :       || XINT (x2, 1) != 33)
    1651              :     return -1;
    1652           57 :   x3 = XVECEXP (x2, 0, 0);
    1653           57 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1654              :     return -1;
    1655           57 :   switch (GET_MODE (operands[0]))
    1656              :     {
    1657           38 :     case E_SImode:
    1658           38 :       return pattern393 (x1, 
    1659           38 : E_SImode); /* [-1, 0] */
    1660              : 
    1661           19 :     case E_DImode:
    1662           19 :       if (pattern393 (x1, 
    1663              : E_DImode) != 0)
    1664              :         return -1;
    1665              :       return 1;
    1666              : 
    1667              :     default:
    1668              :       return -1;
    1669              :     }
    1670              : }
    1671              : 
    1672              : int
    1673            0 : pattern403 (rtx x1, machine_mode i1, machine_mode i2)
    1674              : {
    1675            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1676            0 :   rtx x2, x3;
    1677            0 :   int res ATTRIBUTE_UNUSED;
    1678            0 :   if (!nonimmediate_operand (operands[0], i1)
    1679            0 :       || GET_MODE (x1) != i1)
    1680              :     return -1;
    1681            0 :   x2 = XEXP (x1, 0);
    1682            0 :   if (GET_MODE (x2) != i1
    1683            0 :       || !nonimmediate_operand (operands[1], i2))
    1684            0 :     return -1;
    1685            0 :   x3 = XEXP (x1, 1);
    1686            0 :   if (GET_MODE (x3) != i1
    1687            0 :       || !register_operand (operands[2], i1))
    1688            0 :     return -1;
    1689              :   return 0;
    1690              : }
    1691              : 
    1692              : int
    1693        73031 : pattern410 (rtx x1)
    1694              : {
    1695        73031 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1696        73031 :   int res ATTRIBUTE_UNUSED;
    1697        73031 :   switch (GET_MODE (operands[0]))
    1698              :     {
    1699        32530 :     case E_SImode:
    1700        32530 :       if (!register_operand (operands[0], E_SImode)
    1701        32414 :           || GET_MODE (x1) != E_SImode
    1702        64944 :           || !nonimmediate_operand (operands[1], E_SImode))
    1703         6265 :         return -1;
    1704              :       return 0;
    1705              : 
    1706        28487 :     case E_DImode:
    1707        28487 :       if (!register_operand (operands[0], E_DImode)
    1708        28116 :           || GET_MODE (x1) != E_DImode
    1709        56603 :           || !nonimmediate_operand (operands[1], E_DImode))
    1710         9503 :         return -1;
    1711              :       return 1;
    1712              : 
    1713              :     default:
    1714              :       return -1;
    1715              :     }
    1716              : }
    1717              : 
    1718              : int
    1719         2793 : pattern417 (rtx x1)
    1720              : {
    1721         2793 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1722         2793 :   rtx x2, x3, x4, x5, x6, x7;
    1723         2793 :   int res ATTRIBUTE_UNUSED;
    1724         2793 :   x2 = XEXP (x1, 0);
    1725         2793 :   x3 = XEXP (x2, 0);
    1726         2793 :   if (GET_CODE (x3) != VEC_SELECT)
    1727              :     return -1;
    1728         1414 :   x4 = XEXP (x3, 0);
    1729         1414 :   if (GET_CODE (x4) != SUBREG
    1730         1414 :       || maybe_ne (SUBREG_BYTE (x4), 0))
    1731              :     return -1;
    1732          381 :   x5 = XEXP (x3, 1);
    1733          381 :   if (GET_CODE (x5) != PARALLEL)
    1734              :     return -1;
    1735          381 :   x6 = XEXP (x1, 1);
    1736          381 :   operands[2] = x6;
    1737          381 :   x7 = XEXP (x1, 2);
    1738          381 :   operands[3] = x7;
    1739          381 :   return pattern416 (x1); /* [-1, 8] */
    1740              : }
    1741              : 
    1742              : int
    1743     18294704 : pattern421 (rtx x1, machine_mode i1)
    1744              : {
    1745     18294704 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1746     18294704 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1747     18294704 :   rtx x10, x11;
    1748     18294704 :   int res ATTRIBUTE_UNUSED;
    1749     18294704 :   operands[4] = x1;
    1750     18294704 :   if (!general_gr_operand (operands[4], i1))
    1751              :     return -1;
    1752     13265514 :   x2 = PATTERN (peep2_next_insn (1));
    1753     13265514 :   if (GET_CODE (x2) != PARALLEL
    1754      1287544 :       || XVECLEN (x2, 0) != 3)
    1755              :     return -1;
    1756        39499 :   x3 = XVECEXP (x2, 0, 0);
    1757        39499 :   if (GET_CODE (x3) != SET)
    1758              :     return -1;
    1759        37778 :   x4 = XEXP (x3, 1);
    1760        37778 :   if (GET_CODE (x4) != UNSPEC
    1761           60 :       || XVECLEN (x4, 0) != 1
    1762           30 :       || XINT (x4, 1) != 93)
    1763              :     return -1;
    1764           30 :   x5 = XVECEXP (x2, 0, 1);
    1765           30 :   if (GET_CODE (x5) != SET)
    1766              :     return -1;
    1767           30 :   x6 = XEXP (x5, 1);
    1768           30 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1769              :     return -1;
    1770           30 :   x7 = XVECEXP (x2, 0, 2);
    1771           30 :   if (GET_CODE (x7) != CLOBBER)
    1772              :     return -1;
    1773           30 :   x8 = XEXP (x7, 0);
    1774           30 :   if (GET_CODE (x8) != REG
    1775           30 :       || REGNO (x8) != 17
    1776           60 :       || GET_MODE (x8) != E_CCmode)
    1777              :     return -1;
    1778           30 :   x9 = XEXP (x3, 0);
    1779           30 :   operands[0] = x9;
    1780           30 :   x10 = XVECEXP (x4, 0, 0);
    1781           30 :   operands[1] = x10;
    1782           30 :   x11 = XEXP (x5, 0);
    1783           30 :   operands[2] = x11;
    1784           30 :   if (!general_reg_operand (operands[2], E_VOIDmode))
    1785              :     return -1;
    1786           30 :   switch (GET_MODE (operands[0]))
    1787              :     {
    1788            0 :     case E_SImode:
    1789            0 :       if (!memory_operand (operands[0], E_SImode)
    1790            0 :           || GET_MODE (x4) != E_SImode
    1791            0 :           || !memory_operand (operands[1], E_SImode))
    1792            0 :         return -1;
    1793              :       return 0;
    1794              : 
    1795           30 :     case E_DImode:
    1796           30 :       if (!memory_operand (operands[0], E_DImode)
    1797           30 :           || GET_MODE (x4) != E_DImode
    1798           60 :           || !memory_operand (operands[1], E_DImode))
    1799            0 :         return -1;
    1800              :       return 1;
    1801              : 
    1802              :     default:
    1803              :       return -1;
    1804              :     }
    1805              : }
    1806              : 
    1807              : int
    1808        47679 : pattern445 (rtx x1)
    1809              : {
    1810        47679 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1811        47679 :   rtx x2, x3, x4;
    1812        47679 :   int res ATTRIBUTE_UNUSED;
    1813        47679 :   x2 = XEXP (x1, 0);
    1814        47679 :   x3 = XEXP (x2, 0);
    1815        47679 :   operands[1] = x3;
    1816        47679 :   if (!nonimmediate_operand (operands[1], E_SImode))
    1817              :     return -1;
    1818        17556 :   x4 = XEXP (x1, 1);
    1819        17556 :   switch (GET_CODE (x4))
    1820              :     {
    1821              :     case CONST_INT:
    1822              :     case CONST_WIDE_INT:
    1823              :     case CONST:
    1824              :     case LABEL_REF:
    1825              :     case SYMBOL_REF:
    1826              :       return 0;
    1827              : 
    1828            0 :     case ASHIFT:
    1829            0 :       if (GET_MODE (x4) != E_DImode
    1830            0 :           || !nonimmediate_operand (operands[0], E_DImode))
    1831            0 :         return -1;
    1832            0 :       res = pattern39 (x4, 
    1833              : E_DImode, 
    1834              : E_SImode);
    1835            0 :       if (res >= 0)
    1836            0 :         return res + 1; /* [1, 3] */
    1837              :       return -1;
    1838              : 
    1839              :     default:
    1840              :       return -1;
    1841              :     }
    1842              : }
    1843              : 
    1844              : int
    1845         5975 : pattern456 (rtx x1, int *pnum_clobbers)
    1846              : {
    1847         5975 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1848         5975 :   rtx x2, x3, x4, x5;
    1849         5975 :   int res ATTRIBUTE_UNUSED;
    1850         5975 :   if (pnum_clobbers == NULL)
    1851              :     return -1;
    1852         5973 :   x2 = XEXP (x1, 1);
    1853         5973 :   if (maybe_ne (SUBREG_BYTE (x2), 0)
    1854         5973 :       || GET_MODE (x2) != E_QImode)
    1855              :     return -1;
    1856         5649 :   x3 = XEXP (x2, 0);
    1857         5649 :   switch (GET_CODE (x3))
    1858              :     {
    1859          886 :     case AND:
    1860          886 :       return pattern455 (x1); /* [-1, 1] */
    1861              : 
    1862            0 :     case PLUS:
    1863            0 :       x4 = XEXP (x3, 0);
    1864            0 :       operands[2] = x4;
    1865            0 :       if (!int_nonimmediate_operand (operands[2], E_VOIDmode))
    1866              :         return -1;
    1867            0 :       res = pattern454 (x1);
    1868            0 :       if (res >= 0)
    1869            0 :         return res + 2; /* [2, 3] */
    1870              :       return -1;
    1871              : 
    1872            0 :     case MINUS:
    1873            0 :       x4 = XEXP (x3, 0);
    1874            0 :       operands[3] = x4;
    1875            0 :       if (!const_int_operand (operands[3], E_VOIDmode))
    1876              :         return -1;
    1877            0 :       x5 = XEXP (x3, 1);
    1878            0 :       operands[2] = x5;
    1879            0 :       if (!int_nonimmediate_operand (operands[2], E_VOIDmode))
    1880              :         return -1;
    1881            0 :       res = pattern14 (x1);
    1882            0 :       if (res >= 0)
    1883            0 :         return res + 4; /* [4, 5] */
    1884              :       return -1;
    1885              : 
    1886              :     default:
    1887              :       return -1;
    1888              :     }
    1889              : }
    1890              : 
    1891              : int
    1892         4331 : pattern468 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    1893              : {
    1894         4331 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1895         4331 :   rtx x2;
    1896         4331 :   int res ATTRIBUTE_UNUSED;
    1897         4331 :   if (!register_operand (operands[0], i2)
    1898         4331 :       || GET_MODE (x1) != i2)
    1899              :     return -1;
    1900         4170 :   x2 = XEXP (x1, 0);
    1901         4170 :   if (GET_MODE (x2) != i2
    1902         4170 :       || !register_operand (operands[1], i3)
    1903         4166 :       || !nonimmediate_operand (operands[2], i3)
    1904         4165 :       || !nonimm_or_0_operand (operands[3], i2)
    1905         8208 :       || !register_operand (operands[4], i1))
    1906          354 :     return -1;
    1907              :   return 0;
    1908              : }
    1909              : 
    1910              : int
    1911         1048 : pattern475 (rtx x1, machine_mode i1, machine_mode i2)
    1912              : {
    1913         1048 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1914         1048 :   rtx x2, x3;
    1915         1048 :   int res ATTRIBUTE_UNUSED;
    1916         1048 :   if (!register_operand (operands[0], i2)
    1917         1048 :       || GET_MODE (x1) != i2)
    1918              :     return -1;
    1919         1020 :   x2 = XEXP (x1, 0);
    1920         1020 :   if (GET_MODE (x2) != i2
    1921         1020 :       || !vector_operand (operands[1], i2)
    1922         1016 :       || !vector_operand (operands[2], i2)
    1923         2036 :       || !vector_operand (operands[3], i2))
    1924            4 :     return -1;
    1925         1016 :   x3 = XEXP (x1, 2);
    1926         1016 :   if (GET_MODE (x3) != i1
    1927         1016 :       || !register_operand (operands[4], E_QImode))
    1928           90 :     return -1;
    1929              :   return 0;
    1930              : }
    1931              : 
    1932              : int
    1933         4225 : pattern483 (rtx x1)
    1934              : {
    1935         4225 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1936         4225 :   rtx x2, x3, x4, x5, x6, x7;
    1937         4225 :   int res ATTRIBUTE_UNUSED;
    1938         4225 :   x2 = XEXP (x1, 0);
    1939         4225 :   x3 = XVECEXP (x2, 0, 0);
    1940         4225 :   operands[1] = x3;
    1941         4225 :   x4 = XVECEXP (x2, 0, 1);
    1942         4225 :   operands[2] = x4;
    1943         4225 :   x5 = XVECEXP (x2, 0, 2);
    1944         4225 :   operands[3] = x5;
    1945         4225 :   if (!const_0_to_255_operand (operands[3], E_SImode))
    1946              :     return -1;
    1947         4225 :   x6 = XEXP (x1, 1);
    1948         4225 :   operands[4] = x6;
    1949         4225 :   x7 = XEXP (x1, 2);
    1950         4225 :   operands[5] = x7;
    1951         4225 :   switch (GET_MODE (operands[0]))
    1952              :     {
    1953          400 :     case E_V32HImode:
    1954          400 :       return pattern482 (x1, 
    1955              : E_V32HImode, 
    1956          400 : E_SImode); /* [-1, 0] */
    1957              : 
    1958          509 :     case E_V16SImode:
    1959          509 :       if (pattern482 (x1, 
    1960              : E_V16SImode, 
    1961              : E_HImode) != 0)
    1962              :         return -1;
    1963              :       return 1;
    1964              : 
    1965          536 :     case E_V8DImode:
    1966          536 :       if (pattern482 (x1, 
    1967              : E_V8DImode, 
    1968              : E_QImode) != 0)
    1969              :         return -1;
    1970              :       return 2;
    1971              : 
    1972          434 :     case E_V16HImode:
    1973          434 :       if (pattern482 (x1, 
    1974              : E_V16HImode, 
    1975              : E_HImode) != 0)
    1976              :         return -1;
    1977              :       return 3;
    1978              : 
    1979          488 :     case E_V8SImode:
    1980          488 :       if (pattern482 (x1, 
    1981              : E_V8SImode, 
    1982              : E_QImode) != 0)
    1983              :         return -1;
    1984              :       return 4;
    1985              : 
    1986          502 :     case E_V4DImode:
    1987          502 :       if (pattern482 (x1, 
    1988              : E_V4DImode, 
    1989              : E_QImode) != 0)
    1990              :         return -1;
    1991              :       return 5;
    1992              : 
    1993          426 :     case E_V8HImode:
    1994          426 :       if (pattern482 (x1, 
    1995              : E_V8HImode, 
    1996              : E_QImode) != 0)
    1997              :         return -1;
    1998              :       return 6;
    1999              : 
    2000          458 :     case E_V4SImode:
    2001          458 :       if (pattern482 (x1, 
    2002              : E_V4SImode, 
    2003              : E_QImode) != 0)
    2004              :         return -1;
    2005              :       return 7;
    2006              : 
    2007          472 :     case E_V2DImode:
    2008          472 :       if (pattern482 (x1, 
    2009              : E_V2DImode, 
    2010              : E_QImode) != 0)
    2011              :         return -1;
    2012              :       return 8;
    2013              : 
    2014              :     default:
    2015              :       return -1;
    2016              :     }
    2017              : }
    2018              : 
    2019              : int
    2020            8 : pattern498 (rtx x1, machine_mode i1)
    2021              : {
    2022            8 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2023            8 :   int res ATTRIBUTE_UNUSED;
    2024            8 :   if (!register_operand (operands[0], i1)
    2025            8 :       || GET_MODE (x1) != i1
    2026            8 :       || !register_operand (operands[1], i1)
    2027           12 :       || !nonimmediate_operand (operands[2], i1))
    2028            6 :     return -1;
    2029              :   return 0;
    2030              : }
    2031              : 
    2032              : int
    2033          696 : pattern501 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    2034              : {
    2035          696 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2036          696 :   rtx x2, x3, x4;
    2037          696 :   int res ATTRIBUTE_UNUSED;
    2038          696 :   if (!register_operand (operands[0], i2)
    2039          696 :       || GET_MODE (x1) != i2)
    2040              :     return -1;
    2041          678 :   x2 = XEXP (x1, 0);
    2042          678 :   if (GET_MODE (x2) != i1)
    2043              :     return -1;
    2044          678 :   x3 = XEXP (x2, 0);
    2045          678 :   if (GET_MODE (x3) != i1
    2046          678 :       || !nonimmediate_operand (operands[1], i3))
    2047            0 :     return -1;
    2048          678 :   x4 = XEXP (x2, 1);
    2049          678 :   if (GET_MODE (x4) != i1
    2050          678 :       || !nonimm_or_0_operand (operands[2], i2)
    2051         1351 :       || !const0_operand (operands[4], i1))
    2052            5 :     return -1;
    2053              :   return 0;
    2054              : }
    2055              : 
    2056              : int
    2057            0 : pattern507 (rtx x1)
    2058              : {
    2059            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2060            0 :   rtx x2, x3, x4, x5, x6, x7;
    2061            0 :   int res ATTRIBUTE_UNUSED;
    2062            0 :   x2 = XEXP (x1, 0);
    2063            0 :   x3 = XEXP (x2, 0);
    2064            0 :   if (GET_MODE (x3) != E_V2SImode)
    2065              :     return -1;
    2066            0 :   x4 = XEXP (x1, 1);
    2067            0 :   if (GET_CODE (x4) != CONST_VECTOR
    2068            0 :       || XVECLEN (x4, 0) != 2
    2069            0 :       || GET_MODE (x4) != E_V2SImode)
    2070              :     return -1;
    2071            0 :   x5 = XVECEXP (x4, 0, 0);
    2072            0 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2073              :     return -1;
    2074            0 :   x6 = XVECEXP (x4, 0, 1);
    2075            0 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    2076            0 :       || !register_operand (operands[0], E_V4SImode)
    2077            0 :       || GET_MODE (x1) != E_V4SImode
    2078            0 :       || GET_MODE (x2) != E_V2SImode)
    2079            0 :     return -1;
    2080            0 :   x7 = XEXP (x3, 0);
    2081            0 :   operands[1] = x7;
    2082            0 :   if (!nonimmediate_operand (operands[1], E_V2DFmode))
    2083              :     return -1;
    2084            0 :   return pattern506 (x2); /* [-1, 1] */
    2085              : }
    2086              : 
    2087              : int
    2088          720 : pattern512 (rtx x1, machine_mode i1, machine_mode i2)
    2089              : {
    2090          720 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2091          720 :   rtx x2, x3, x4;
    2092          720 :   int res ATTRIBUTE_UNUSED;
    2093          720 :   if (!register_operand (operands[0], i2)
    2094          720 :       || GET_MODE (x1) != i2)
    2095              :     return -1;
    2096          720 :   x2 = XEXP (x1, 0);
    2097          720 :   if (GET_MODE (x2) != i1)
    2098              :     return -1;
    2099          720 :   x3 = XEXP (x2, 0);
    2100          720 :   if (GET_MODE (x3) != i1)
    2101              :     return -1;
    2102          720 :   x4 = XEXP (x2, 1);
    2103          720 :   if (GET_MODE (x4) != i1)
    2104              :     return -1;
    2105          720 :   switch (GET_MODE (operands[1]))
    2106              :     {
    2107          360 :     case E_V4SImode:
    2108          360 :       if (!register_operand (operands[1], E_V4SImode))
    2109              :         return -1;
    2110              :       return 0;
    2111              : 
    2112          360 :     case E_V4DImode:
    2113          360 :       if (!register_operand (operands[1], E_V4DImode))
    2114              :         return -1;
    2115              :       return 1;
    2116              : 
    2117              :     default:
    2118              :       return -1;
    2119              :     }
    2120              : }
    2121              : 
    2122              : int
    2123          251 : pattern520 (rtx x1)
    2124              : {
    2125          251 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2126          251 :   int res ATTRIBUTE_UNUSED;
    2127          251 :   if (!register_operand (operands[0], E_V16HFmode)
    2128          251 :       || GET_MODE (x1) != E_V16HFmode)
    2129              :     return -1;
    2130          221 :   switch (GET_MODE (operands[1]))
    2131              :     {
    2132          138 :     case E_V16HImode:
    2133          138 :       if (!vector_operand (operands[1], E_V16HImode))
    2134              :         return -1;
    2135              :       return 0;
    2136              : 
    2137           79 :     case E_V16SImode:
    2138           79 :       if (!vector_operand (operands[1], E_V16SImode))
    2139              :         return -1;
    2140              :       return 1;
    2141              : 
    2142              :     default:
    2143              :       return -1;
    2144              :     }
    2145              : }
    2146              : 
    2147              : int
    2148            8 : pattern524 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    2149              : {
    2150            8 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2151            8 :   rtx x2, x3;
    2152            8 :   int res ATTRIBUTE_UNUSED;
    2153            8 :   if (!register_operand (operands[0], i1)
    2154            8 :       || GET_MODE (x1) != i1)
    2155              :     return -1;
    2156            8 :   x2 = XEXP (x1, 0);
    2157            8 :   if (GET_MODE (x2) != i3)
    2158              :     return -1;
    2159            8 :   x3 = XEXP (x2, 0);
    2160            8 :   if (GET_MODE (x3) != i1
    2161            8 :       || !nonimmediate_operand (operands[1], i2)
    2162            8 :       || !const0_operand (operands[2], i2)
    2163           16 :       || !const0_operand (operands[3], i1))
    2164            0 :     return -1;
    2165              :   return 0;
    2166              : }
    2167              : 
    2168              : int
    2169        26981 : pattern533 (rtx x1)
    2170              : {
    2171        26981 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2172        26981 :   rtx x2, x3, x4;
    2173        26981 :   int res ATTRIBUTE_UNUSED;
    2174        26981 :   x2 = XEXP (x1, 0);
    2175        26981 :   x3 = XEXP (x2, 1);
    2176        26981 :   operands[2] = x3;
    2177        26981 :   x4 = XEXP (x1, 1);
    2178        26981 :   operands[3] = x4;
    2179        26981 :   switch (GET_CODE (x2))
    2180              :     {
    2181        18904 :     case GT:
    2182        18904 :       switch (GET_MODE (operands[0]))
    2183              :         {
    2184           27 :         case E_V4DImode:
    2185           27 :           return pattern532 (x1, 
    2186           27 : E_V4DImode); /* [-1, 0] */
    2187              : 
    2188          118 :         case E_V2DImode:
    2189          118 :           if (pattern532 (x1, 
    2190              : E_V2DImode) != 0)
    2191              :             return -1;
    2192              :           return 1;
    2193              : 
    2194              :         default:
    2195              :           return -1;
    2196              :         }
    2197              : 
    2198              :     case LT:
    2199              :       return 2;
    2200              : 
    2201              :     default:
    2202              :       return -1;
    2203              :     }
    2204              : }
    2205              : 
    2206              : int
    2207        10373 : pattern538 (rtx x1, machine_mode i1)
    2208              : {
    2209        10373 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2210        10373 :   rtx x2, x3;
    2211        10373 :   int res ATTRIBUTE_UNUSED;
    2212        10373 :   if (!register_operand (operands[0], i1)
    2213        10373 :       || GET_MODE (x1) != i1)
    2214              :     return -1;
    2215        10373 :   x2 = XEXP (x1, 0);
    2216        10373 :   if (GET_MODE (x2) != i1)
    2217              :     return -1;
    2218        10373 :   x3 = XEXP (x2, 0);
    2219        10373 :   if (GET_MODE (x3) != i1
    2220        10373 :       || !regmem_or_bitnot_regmem_operand (operands[1], i1)
    2221        10065 :       || !regmem_or_bitnot_regmem_operand (operands[2], i1)
    2222        10061 :       || !regmem_or_bitnot_regmem_operand (operands[3], i1)
    2223        20430 :       || !regmem_or_bitnot_regmem_operand (operands[4], i1))
    2224          320 :     return -1;
    2225              :   return 0;
    2226              : }
    2227              : 
    2228              : int
    2229       125163 : pattern544 (rtx x1)
    2230              : {
    2231       125163 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2232       125163 :   rtx x2, x3, x4, x5, x6, x7;
    2233       125163 :   int res ATTRIBUTE_UNUSED;
    2234       125163 :   x2 = XEXP (x1, 0);
    2235       125163 :   x3 = XEXP (x2, 0);
    2236       125163 :   x4 = XEXP (x3, 0);
    2237       125163 :   operands[1] = x4;
    2238       125163 :   x5 = XEXP (x3, 1);
    2239       125163 :   operands[2] = x5;
    2240       125163 :   x6 = XEXP (x2, 1);
    2241       125163 :   operands[3] = x6;
    2242       125163 :   x7 = XEXP (x1, 1);
    2243       125163 :   operands[4] = x7;
    2244       125163 :   switch (GET_MODE (operands[0]))
    2245              :     {
    2246            0 :     case E_V32HFmode:
    2247            0 :       return pattern538 (x1, 
    2248            0 : E_V32HFmode); /* [-1, 0] */
    2249              : 
    2250            0 :     case E_V16HFmode:
    2251            0 :       if (pattern538 (x1, 
    2252              : E_V16HFmode) != 0)
    2253              :         return -1;
    2254              :       return 1;
    2255              : 
    2256            0 :     case E_V8HFmode:
    2257            0 :       if (pattern538 (x1, 
    2258              : E_V8HFmode) != 0)
    2259              :         return -1;
    2260              :       return 2;
    2261              : 
    2262            0 :     case E_V32BFmode:
    2263            0 :       if (pattern538 (x1, 
    2264              : E_V32BFmode) != 0)
    2265              :         return -1;
    2266              :       return 3;
    2267              : 
    2268            0 :     case E_V16BFmode:
    2269            0 :       if (pattern538 (x1, 
    2270              : E_V16BFmode) != 0)
    2271              :         return -1;
    2272              :       return 4;
    2273              : 
    2274            0 :     case E_V8BFmode:
    2275            0 :       if (pattern538 (x1, 
    2276              : E_V8BFmode) != 0)
    2277              :         return -1;
    2278              :       return 5;
    2279              : 
    2280            0 :     case E_V16SFmode:
    2281            0 :       if (pattern538 (x1, 
    2282              : E_V16SFmode) != 0)
    2283              :         return -1;
    2284              :       return 6;
    2285              : 
    2286            0 :     case E_V8SFmode:
    2287            0 :       if (pattern538 (x1, 
    2288              : E_V8SFmode) != 0)
    2289              :         return -1;
    2290              :       return 7;
    2291              : 
    2292           18 :     case E_V4SFmode:
    2293           18 :       if (pattern538 (x1, 
    2294              : E_V4SFmode) != 0)
    2295              :         return -1;
    2296              :       return 8;
    2297              : 
    2298            0 :     case E_V8DFmode:
    2299            0 :       if (pattern538 (x1, 
    2300              : E_V8DFmode) != 0)
    2301              :         return -1;
    2302              :       return 9;
    2303              : 
    2304            0 :     case E_V4DFmode:
    2305            0 :       if (pattern538 (x1, 
    2306              : E_V4DFmode) != 0)
    2307              :         return -1;
    2308              :       return 10;
    2309              : 
    2310            0 :     case E_V2DFmode:
    2311            0 :       if (pattern538 (x1, 
    2312              : E_V2DFmode) != 0)
    2313              :         return -1;
    2314              :       return 11;
    2315              : 
    2316              :     default:
    2317              :       return -1;
    2318              :     }
    2319              : }
    2320              : 
    2321              : int
    2322           85 : pattern552 (rtx x1, int i1)
    2323              : {
    2324           85 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2325           85 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2326           85 :   int res ATTRIBUTE_UNUSED;
    2327           85 :   x2 = XVECEXP (x1, 0, 0);
    2328           85 :   x3 = XEXP (x2, 1);
    2329           85 :   if (GET_MODE (x3) != E_XFmode)
    2330              :     return -1;
    2331           85 :   x4 = XVECEXP (x1, 0, 1);
    2332           85 :   if (GET_CODE (x4) != SET)
    2333              :     return -1;
    2334           85 :   x5 = XEXP (x4, 1);
    2335           85 :   if (GET_CODE (x5) != UNSPEC
    2336           85 :       || XVECLEN (x5, 0) != 1
    2337           85 :       || XINT (x5, 1) != i1
    2338           85 :       || GET_MODE (x5) != E_XFmode)
    2339              :     return -1;
    2340           85 :   x6 = XEXP (x2, 0);
    2341           85 :   operands[0] = x6;
    2342           85 :   if (!register_operand (operands[0], E_XFmode))
    2343              :     return -1;
    2344           85 :   x7 = XVECEXP (x3, 0, 0);
    2345           85 :   operands[2] = x7;
    2346           85 :   if (!register_operand (operands[2], E_XFmode))
    2347              :     return -1;
    2348           49 :   x8 = XEXP (x4, 0);
    2349           49 :   operands[1] = x8;
    2350           49 :   if (!register_operand (operands[1], E_XFmode))
    2351              :     return -1;
    2352           49 :   x9 = XVECEXP (x5, 0, 0);
    2353           49 :   if (!rtx_equal_p (x9, operands[2]))
    2354              :     return -1;
    2355              :   return 0;
    2356              : }
    2357              : 
    2358              : int
    2359         6791 : pattern561 (rtx x1)
    2360              : {
    2361         6791 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2362         6791 :   rtx x2, x3, x4;
    2363         6791 :   int res ATTRIBUTE_UNUSED;
    2364         6791 :   x2 = XEXP (x1, 0);
    2365         6791 :   x3 = XEXP (x2, 0);
    2366         6791 :   operands[0] = x3;
    2367         6791 :   switch (GET_MODE (operands[0]))
    2368              :     {
    2369         6147 :     case E_QImode:
    2370         6147 :       x4 = XEXP (x1, 1);
    2371         6147 :       return pattern560 (x4, 
    2372         6147 : E_QImode); /* [-1, 0] */
    2373              : 
    2374          644 :     case E_HImode:
    2375          644 :       x4 = XEXP (x1, 1);
    2376          644 :       if (pattern560 (x4, 
    2377              : E_HImode) != 0)
    2378              :         return -1;
    2379              :       return 1;
    2380              : 
    2381              :     default:
    2382              :       return -1;
    2383              :     }
    2384              : }
    2385              : 
    2386              : int
    2387       301502 : pattern566 (rtx x1, machine_mode i1, machine_mode i2)
    2388              : {
    2389       301502 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2390       301502 :   int res ATTRIBUTE_UNUSED;
    2391       301502 :   if (!register_operand (operands[0], i2)
    2392       301441 :       || GET_MODE (x1) != i2
    2393       602943 :       || pattern565 (x1, 
    2394              : i1, 
    2395              : i2) != 0)
    2396        13826 :     return -1;
    2397              :   return 0;
    2398              : }
    2399              : 
    2400              : int
    2401     26781859 : pattern570 (rtx x1)
    2402              : {
    2403     26781859 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2404     26781859 :   int res ATTRIBUTE_UNUSED;
    2405     26781859 :   if (!nonimmediate_operand (operands[0], E_SImode)
    2406     26754122 :       || GET_MODE (x1) != E_SImode
    2407     26754122 :       || !nonimmediate_operand (operands[1], E_SImode)
    2408     53209823 :       || !x86_64_general_operand (operands[2], E_SImode))
    2409       387796 :     return -1;
    2410              :   return 0;
    2411              : }
    2412              : 
    2413              : int
    2414       798339 : pattern575 (rtx x1)
    2415              : {
    2416       798339 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2417       798339 :   rtx x2, x3, x4, x5;
    2418       798339 :   int res ATTRIBUTE_UNUSED;
    2419       798339 :   x2 = XVECEXP (x1, 0, 1);
    2420       798339 :   x3 = XEXP (x2, 0);
    2421       798339 :   if (GET_CODE (x3) != REG
    2422       798339 :       || REGNO (x3) != 17
    2423      1596678 :       || GET_MODE (x3) != E_CCmode)
    2424              :     return -1;
    2425       798339 :   x4 = XVECEXP (x1, 0, 0);
    2426       798339 :   x5 = XEXP (x4, 1);
    2427       798339 :   if (GET_MODE (x5) != E_QImode)
    2428       181369 :     return -1;
    2429              :   return 0;
    2430              : }
    2431              : 
    2432              : int
    2433          343 : pattern579 (rtx x1)
    2434              : {
    2435          343 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2436          343 :   int res ATTRIBUTE_UNUSED;
    2437          343 :   if (GET_MODE (x1) != E_BLKmode
    2438          343 :       || !memory_operand (operands[0], E_BLKmode)
    2439          343 :       || !register_operand (operands[1], E_SImode)
    2440          666 :       || !register_operand (operands[2], E_SImode))
    2441          141 :     return -1;
    2442              :   return 0;
    2443              : }
    2444              : 
    2445              : int
    2446          100 : pattern584 (rtx x1)
    2447              : {
    2448          100 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2449          100 :   rtx x2, x3, x4, x5;
    2450          100 :   int res ATTRIBUTE_UNUSED;
    2451          100 :   x2 = XEXP (x1, 1);
    2452          100 :   x3 = XEXP (x2, 0);
    2453          100 :   x4 = XEXP (x3, 0);
    2454          100 :   operands[2] = x4;
    2455          100 :   if (!int248_register_operand (operands[2], E_VOIDmode))
    2456              :     return -1;
    2457          100 :   x5 = XEXP (x3, 1);
    2458          100 :   operands[3] = x5;
    2459          100 :   if (!const_int_operand (operands[3], E_VOIDmode))
    2460              :     return -1;
    2461          100 :   return pattern583 (x1); /* [-1, 3] */
    2462              : }
    2463              : 
    2464              : int
    2465          848 : pattern591 (rtx x1)
    2466              : {
    2467          848 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2468          848 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2469          848 :   int res ATTRIBUTE_UNUSED;
    2470          848 :   x2 = XVECEXP (x1, 0, 0);
    2471          848 :   x3 = XEXP (x2, 1);
    2472          848 :   x4 = XEXP (x3, 0);
    2473          848 :   x5 = XEXP (x4, 0);
    2474          848 :   x6 = XEXP (x5, 0);
    2475          848 :   x7 = XEXP (x6, 0);
    2476          848 :   operands[1] = x7;
    2477          848 :   if (!int248_register_operand (operands[1], E_VOIDmode))
    2478              :     return -1;
    2479          848 :   x8 = XEXP (x4, 1);
    2480          848 :   operands[2] = x8;
    2481          848 :   if (!general_operand (operands[2], E_QImode))
    2482              :     return -1;
    2483          848 :   x9 = XVECEXP (x1, 0, 1);
    2484          848 :   return pattern590 (x9); /* [-1, 2] */
    2485              : }
    2486              : 
    2487              : int
    2488           49 : pattern595 (rtx x1)
    2489              : {
    2490           49 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2491           49 :   rtx x2, x3;
    2492           49 :   int res ATTRIBUTE_UNUSED;
    2493           49 :   x2 = XVECEXP (x1, 0, 1);
    2494           49 :   if (GET_CODE (x2) != CLOBBER)
    2495              :     return -1;
    2496           49 :   x3 = XEXP (x2, 0);
    2497           49 :   if (GET_CODE (x3) != REG
    2498           49 :       || REGNO (x3) != 17
    2499           98 :       || GET_MODE (x3) != E_CCmode)
    2500              :     return -1;
    2501           49 :   return pattern229 (x1); /* [-1, 1] */
    2502              : }
    2503              : 
    2504              : int
    2505        16049 : pattern600 (rtx x1)
    2506              : {
    2507        16049 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2508        16049 :   int res ATTRIBUTE_UNUSED;
    2509        16049 :   if (!register_operand (operands[0], E_HImode)
    2510        16049 :       || GET_MODE (x1) != E_HImode)
    2511              :     return -1;
    2512        15997 :   switch (GET_MODE (operands[1]))
    2513              :     {
    2514         1521 :     case E_V16QImode:
    2515         1521 :       if (!general_operand (operands[1], E_V16QImode)
    2516         1521 :           || !general_operand (operands[2], E_V16QImode))
    2517           29 :         return -1;
    2518              :       return 0;
    2519              : 
    2520         2741 :     case E_V16HImode:
    2521         2741 :       if (!general_operand (operands[1], E_V16HImode)
    2522         2741 :           || !general_operand (operands[2], E_V16HImode))
    2523           25 :         return -1;
    2524              :       return 1;
    2525              : 
    2526        10862 :     case E_V16SImode:
    2527        10862 :       if (!general_operand (operands[1], E_V16SImode)
    2528        10862 :           || !general_operand (operands[2], E_V16SImode))
    2529          110 :         return -1;
    2530              :       return 2;
    2531              : 
    2532              :     default:
    2533              :       return -1;
    2534              :     }
    2535              : }
    2536              : 
    2537              : int
    2538     14941982 : pattern608 (rtx x1, machine_mode i1)
    2539              : {
    2540     14941982 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2541     14941982 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2542     14941982 :   rtx x10, x11, x12, x13, x14, x15;
    2543     14941982 :   int res ATTRIBUTE_UNUSED;
    2544     14941982 :   x2 = XEXP (x1, 0);
    2545     14941982 :   operands[5] = x2;
    2546     14941982 :   if (!memory_operand (operands[5], i1))
    2547              :     return -1;
    2548      3677813 :   x3 = XEXP (x1, 1);
    2549      3677813 :   operands[0] = x3;
    2550      3677813 :   if (!general_reg_operand (operands[0], i1))
    2551              :     return -1;
    2552      2401832 :   x4 = PATTERN (peep2_next_insn (1));
    2553      2401832 :   if (GET_CODE (x4) != SET)
    2554              :     return -1;
    2555      2212277 :   x5 = XEXP (x4, 1);
    2556      2212277 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2557              :     return -1;
    2558        98746 :   x6 = XEXP (x4, 0);
    2559        98746 :   operands[1] = x6;
    2560        98746 :   if (!memory_operand (operands[1], i1))
    2561              :     return -1;
    2562        44686 :   x7 = PATTERN (peep2_next_insn (2));
    2563        44686 :   if (GET_CODE (x7) != SET)
    2564              :     return -1;
    2565        42723 :   x8 = XEXP (x7, 1);
    2566        42723 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2567              :     return -1;
    2568        18604 :   x9 = XEXP (x7, 0);
    2569        18604 :   operands[2] = x9;
    2570        18604 :   if (!memory_operand (operands[2], i1))
    2571              :     return -1;
    2572        15382 :   x10 = PATTERN (peep2_next_insn (3));
    2573        15382 :   if (GET_CODE (x10) != SET)
    2574              :     return -1;
    2575        14538 :   x11 = XEXP (x10, 1);
    2576        14538 :   if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2577              :     return -1;
    2578         7398 :   x12 = XEXP (x10, 0);
    2579         7398 :   operands[3] = x12;
    2580         7398 :   if (!memory_operand (operands[3], i1))
    2581              :     return -1;
    2582         6910 :   x13 = PATTERN (peep2_next_insn (4));
    2583         6910 :   if (GET_CODE (x13) != SET)
    2584              :     return -1;
    2585         6694 :   x14 = XEXP (x13, 1);
    2586         6694 :   if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2587              :     return -1;
    2588         2253 :   x15 = XEXP (x13, 0);
    2589         2253 :   operands[4] = x15;
    2590         2253 :   if (!memory_operand (operands[4], i1))
    2591              :     return -1;
    2592              :   return 0;
    2593              : }
    2594              : 
    2595              : int
    2596        12449 : pattern622 (rtx x1)
    2597              : {
    2598        12449 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2599        12449 :   rtx x2, x3, x4, x5;
    2600        12449 :   int res ATTRIBUTE_UNUSED;
    2601        12449 :   x2 = XEXP (x1, 0);
    2602        12449 :   x3 = XEXP (x2, 1);
    2603        12449 :   x4 = XVECEXP (x3, 0, 0);
    2604        12449 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2605              :     return -1;
    2606        12447 :   x5 = XVECEXP (x3, 0, 1);
    2607        12447 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    2608              :     return -1;
    2609        12298 :   switch (GET_MODE (operands[0]))
    2610              :     {
    2611         3915 :     case E_V2SImode:
    2612         3915 :       if (!register_operand (operands[0], E_V2SImode)
    2613         3915 :           || GET_MODE (x1) != E_V2SImode)
    2614              :         return -1;
    2615         3767 :       switch (GET_MODE (x2))
    2616              :         {
    2617         3374 :         case E_V2HImode:
    2618         3374 :           if (!register_operand (operands[1], E_V4HImode))
    2619              :             return -1;
    2620              :           return 0;
    2621              : 
    2622          393 :         case E_V2QImode:
    2623          393 :           if (!register_operand (operands[1], E_V4QImode))
    2624              :             return -1;
    2625              :           return 1;
    2626              : 
    2627              :         default:
    2628              :           return -1;
    2629              :         }
    2630              : 
    2631          162 :     case E_V2HImode:
    2632          162 :       if (pattern620 (x1, 
    2633              : E_V4QImode, 
    2634              : E_V2QImode, 
    2635              : E_V2HImode) != 0)
    2636              :         return -1;
    2637              :       return 2;
    2638              : 
    2639              :     default:
    2640              :       return -1;
    2641              :     }
    2642              : }
    2643              : 
    2644              : int
    2645         7115 : pattern640 (rtx x1, machine_mode i1, machine_mode i2)
    2646              : {
    2647         7115 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2648         7115 :   rtx x2;
    2649         7115 :   int res ATTRIBUTE_UNUSED;
    2650         7115 :   if (!register_operand (operands[0], i1)
    2651         7115 :       || GET_MODE (x1) != i1)
    2652              :     return -1;
    2653         6788 :   x2 = XEXP (x1, 0);
    2654         6788 :   if (GET_MODE (x2) != i1
    2655         6788 :       || !nonimmediate_operand (operands[1], i1)
    2656         6764 :       || !nonimm_or_0_operand (operands[2], i1)
    2657        13447 :       || !register_operand (operands[3], i2))
    2658          217 :     return -1;
    2659              :   return 0;
    2660              : }
    2661              : 
    2662              : int
    2663        12625 : pattern646 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    2664              : {
    2665        12625 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2666        12625 :   rtx x2;
    2667        12625 :   int res ATTRIBUTE_UNUSED;
    2668        12625 :   if (!register_operand (operands[0], i1)
    2669        12625 :       || GET_MODE (x1) != i1)
    2670              :     return -1;
    2671        12170 :   x2 = XEXP (x1, 0);
    2672        12170 :   if (GET_MODE (x2) != i1
    2673        12170 :       || !vector_operand (operands[1], i3)
    2674        12170 :       || !nonimm_or_0_operand (operands[2], i1)
    2675        24024 :       || !register_operand (operands[3], i2))
    2676          928 :     return -1;
    2677              :   return 0;
    2678              : }
    2679              : 
    2680              : int
    2681        20190 : pattern652 (rtx x1)
    2682              : {
    2683        20190 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2684        20190 :   rtx x2, x3, x4;
    2685        20190 :   int res ATTRIBUTE_UNUSED;
    2686        20190 :   x2 = XEXP (x1, 0);
    2687        20190 :   x3 = XEXP (x2, 2);
    2688        20190 :   switch (GET_CODE (x3))
    2689              :     {
    2690        10208 :     case REG:
    2691        10208 :     case SUBREG:
    2692        10208 :     case MEM:
    2693        10208 :     case VEC_DUPLICATE:
    2694        10208 :       operands[3] = x3;
    2695        10208 :       return pattern651 (x1); /* [-1, 28] */
    2696              : 
    2697         9542 :     case NEG:
    2698         9542 :       x4 = XEXP (x3, 0);
    2699         9542 :       operands[3] = x4;
    2700         9542 :       return 29;
    2701              : 
    2702              :     default:
    2703              :       return -1;
    2704              :     }
    2705              : }
    2706              : 
    2707              : int
    2708          330 : pattern655 (rtx x1, machine_mode i1)
    2709              : {
    2710          330 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2711          330 :   int res ATTRIBUTE_UNUSED;
    2712          330 :   if (!register_operand (operands[0], i1)
    2713          330 :       || GET_MODE (x1) != i1)
    2714              :     return -1;
    2715          305 :   switch (GET_MODE (operands[1]))
    2716              :     {
    2717          147 :     case E_V16HFmode:
    2718          147 :       if (!vector_operand (operands[1], E_V16HFmode))
    2719              :         return -1;
    2720              :       return 0;
    2721              : 
    2722          158 :     case E_V16SFmode:
    2723          158 :       if (!vector_operand (operands[1], E_V16SFmode))
    2724              :         return -1;
    2725              :       return 1;
    2726              : 
    2727              :     default:
    2728              :       return -1;
    2729              :     }
    2730              : }
    2731              : 
    2732              : int
    2733         2180 : pattern661 (rtx x1)
    2734              : {
    2735         2180 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2736         2180 :   rtx x2, x3, x4, x5;
    2737         2180 :   int res ATTRIBUTE_UNUSED;
    2738         2180 :   x2 = XVECEXP (x1, 0, 0);
    2739         2180 :   x3 = XEXP (x2, 2);
    2740         2180 :   if (XWINT (x3, 0) != 1L)
    2741              :     return -1;
    2742         2136 :   x4 = XVECEXP (x1, 0, 1);
    2743         2136 :   operands[3] = x4;
    2744         2136 :   x5 = XEXP (x2, 1);
    2745         2136 :   if (!rtx_equal_p (x5, operands[1]))
    2746              :     return -1;
    2747         2124 :   switch (GET_MODE (operands[0]))
    2748              :     {
    2749          340 :     case E_V8HFmode:
    2750          340 :       return pattern660 (x1, 
    2751          340 : E_V8HFmode); /* [-1, 0] */
    2752              : 
    2753          352 :     case E_V4SFmode:
    2754          352 :       if (pattern660 (x1, 
    2755              : E_V4SFmode) != 0)
    2756              :         return -1;
    2757              :       return 1;
    2758              : 
    2759         1432 :     case E_V2DFmode:
    2760         1432 :       if (pattern660 (x1, 
    2761              : E_V2DFmode) != 0)
    2762              :         return -1;
    2763              :       return 2;
    2764              : 
    2765              :     default:
    2766              :       return -1;
    2767              :     }
    2768              : }
    2769              : 
    2770              : int
    2771          190 : pattern669 (rtx x1, machine_mode i1)
    2772              : {
    2773          190 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2774          190 :   rtx x2;
    2775          190 :   int res ATTRIBUTE_UNUSED;
    2776          190 :   if (!register_operand (operands[0], i1)
    2777          187 :       || GET_MODE (x1) != i1
    2778          187 :       || !register_operand (operands[1], i1)
    2779          367 :       || !vector_operand (operands[2], i1))
    2780           18 :     return -1;
    2781          172 :   x2 = XVECEXP (x1, 0, 2);
    2782          172 :   if (GET_MODE (x2) != i1
    2783          172 :       || !register_operand (operands[3], i1)
    2784          336 :       || !const0_operand (operands[4], i1))
    2785            8 :     return -1;
    2786              :   return 0;
    2787              : }
    2788              : 
    2789              : int
    2790          851 : pattern675 (rtx x1)
    2791              : {
    2792          851 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2793          851 :   rtx x2, x3, x4, x5;
    2794          851 :   int res ATTRIBUTE_UNUSED;
    2795          851 :   x2 = XVECEXP (x1, 0, 1);
    2796          851 :   operands[2] = x2;
    2797          851 :   x3 = XVECEXP (x1, 0, 2);
    2798          851 :   x4 = XEXP (x3, 0);
    2799          851 :   operands[3] = x4;
    2800          851 :   x5 = XEXP (x3, 1);
    2801          851 :   operands[4] = x5;
    2802          851 :   switch (GET_MODE (operands[0]))
    2803              :     {
    2804           50 :     case E_V8SFmode:
    2805           50 :       return pattern673 (x1, 
    2806              : E_V8SImode, 
    2807           50 : E_V8SFmode); /* [-1, 0] */
    2808              : 
    2809          180 :     case E_V4SFmode:
    2810          180 :       if (pattern673 (x1, 
    2811              : E_V4SImode, 
    2812              : E_V4SFmode) != 0)
    2813              :         return -1;
    2814              :       return 1;
    2815              : 
    2816           67 :     case E_V4DFmode:
    2817           67 :       if (pattern673 (x1, 
    2818              : E_V4DImode, 
    2819              : E_V4DFmode) != 0)
    2820              :         return -1;
    2821              :       return 2;
    2822              : 
    2823          122 :     case E_V2DFmode:
    2824          122 :       if (pattern673 (x1, 
    2825              : E_V2DImode, 
    2826              : E_V2DFmode) != 0)
    2827              :         return -1;
    2828              :       return 3;
    2829              : 
    2830           47 :     case E_V32QImode:
    2831           47 :       if (pattern674 (x1, 
    2832              : E_V32QImode) != 0)
    2833              :         return -1;
    2834              :       return 4;
    2835              : 
    2836          244 :     case E_V16QImode:
    2837          244 :       if (pattern674 (x1, 
    2838              : E_V16QImode) != 0)
    2839              :         return -1;
    2840              :       return 5;
    2841              : 
    2842              :     default:
    2843              :       return -1;
    2844              :     }
    2845              : }
    2846              : 
    2847              : int
    2848         3562 : pattern683 (rtx x1)
    2849              : {
    2850         3562 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2851         3562 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2852         3562 :   int res ATTRIBUTE_UNUSED;
    2853         3562 :   x2 = XVECEXP (x1, 0, 0);
    2854         3562 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2855              :     return -1;
    2856         3511 :   x3 = XVECEXP (x1, 0, 1);
    2857         3511 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    2858              :     return -1;
    2859         3511 :   x4 = XVECEXP (x1, 0, 2);
    2860         3511 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    2861              :     return -1;
    2862         3511 :   x5 = XVECEXP (x1, 0, 3);
    2863         3511 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    2864              :     return -1;
    2865         3511 :   x6 = XVECEXP (x1, 0, 4);
    2866         3511 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    2867              :     return -1;
    2868         3511 :   x7 = XVECEXP (x1, 0, 5);
    2869         3511 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    2870              :     return -1;
    2871         3511 :   x8 = XVECEXP (x1, 0, 6);
    2872         3511 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
    2873              :     return -1;
    2874         3511 :   x9 = XVECEXP (x1, 0, 7);
    2875         3511 :   if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
    2876            0 :     return -1;
    2877              :   return 0;
    2878              : }
    2879              : 
    2880              : int
    2881         1889 : pattern694 (rtx x1, rtx_code i1, machine_mode i2)
    2882              : {
    2883         1889 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2884         1889 :   rtx x2, x3, x4;
    2885         1889 :   int res ATTRIBUTE_UNUSED;
    2886         1889 :   x2 = XVECEXP (x1, 0, 0);
    2887         1889 :   x3 = XEXP (x2, 0);
    2888         1889 :   if (GET_CODE (x3) != REG
    2889         1889 :       || REGNO (x3) != 17
    2890         3778 :       || GET_MODE (x3) != i2)
    2891              :     return -1;
    2892         1889 :   x4 = XVECEXP (x1, 0, 1);
    2893         1889 :   if (GET_CODE (x4) != i1)
    2894          422 :     return -1;
    2895              :   return 0;
    2896              : }
    2897              : 
    2898              : int
    2899        14686 : pattern700 (rtx x1)
    2900              : {
    2901        14686 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2902        14686 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2903        14686 :   int res ATTRIBUTE_UNUSED;
    2904        14686 :   x2 = XVECEXP (x1, 0, 0);
    2905        14686 :   x3 = XEXP (x2, 1);
    2906        14686 :   x4 = XEXP (x3, 1);
    2907        14686 :   operands[2] = x4;
    2908        14686 :   x5 = XEXP (x4, 0);
    2909        14686 :   if (GET_CODE (x5) != REG
    2910        14686 :       || REGNO (x5) != 17)
    2911              :     return -1;
    2912        13330 :   x6 = XEXP (x4, 1);
    2913        13330 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2914              :     return -1;
    2915        13330 :   x7 = XVECEXP (x1, 0, 1);
    2916        13330 :   if (GET_CODE (x7) != CLOBBER)
    2917              :     return -1;
    2918        13216 :   x8 = XEXP (x7, 0);
    2919        13216 :   if (GET_CODE (x8) != REG
    2920        13216 :       || REGNO (x8) != 17
    2921        26432 :       || GET_MODE (x8) != E_CCmode)
    2922              :     return -1;
    2923        13216 :   x9 = XEXP (x2, 0);
    2924        13216 :   operands[0] = x9;
    2925        13216 :   switch (GET_MODE (operands[0]))
    2926              :     {
    2927              :     case E_QImode:
    2928              :       return 0;
    2929              : 
    2930              :     case E_HImode:
    2931              :       return 1;
    2932              : 
    2933              :     case E_SImode:
    2934              :       return 2;
    2935              : 
    2936              :     case E_DImode:
    2937              :       return 3;
    2938              : 
    2939              :     default:
    2940              :       return -1;
    2941              :     }
    2942              : }
    2943              : 
    2944              : int
    2945        51667 : pattern708 (rtx x1, machine_mode i1)
    2946              : {
    2947        51667 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2948        51667 :   int res ATTRIBUTE_UNUSED;
    2949        51667 :   if (!register_operand (operands[0], i1)
    2950        51243 :       || GET_MODE (x1) != i1
    2951        51243 :       || !vector_operand (operands[1], i1)
    2952       102296 :       || !vector_operand (operands[2], i1))
    2953        10355 :     return -1;
    2954              :   return 0;
    2955              : }
    2956              : 
    2957              : int
    2958            1 : pattern713 (rtx x1)
    2959              : {
    2960            1 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2961            1 :   rtx x2;
    2962            1 :   int res ATTRIBUTE_UNUSED;
    2963            1 :   x2 = XVECEXP (x1, 0, 1);
    2964            1 :   if (XVECLEN (x2, 0) != 1
    2965            1 :       || XINT (x2, 1) != 39)
    2966              :     return -1;
    2967            1 :   return pattern234 (x1); /* [-1, 1] */
    2968              : }
    2969              : 
    2970              : int
    2971      1723977 : pattern718 (rtx x1)
    2972              : {
    2973      1723977 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2974      1723977 :   rtx x2, x3, x4, x5;
    2975      1723977 :   int res ATTRIBUTE_UNUSED;
    2976      1723977 :   switch (GET_CODE (x1))
    2977              :     {
    2978        21977 :     case UNSPEC:
    2979        21977 :       if (XVECLEN (x1, 0) != 1
    2980        21976 :           || XINT (x1, 1) != 38)
    2981              :         return -1;
    2982         1506 :       x2 = XVECEXP (x1, 0, 0);
    2983         1506 :       if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2984            0 :         return -1;
    2985              :       return 0;
    2986              : 
    2987      1702000 :     case SET:
    2988      1702000 :       x3 = XEXP (x1, 1);
    2989      1702000 :       if (GET_CODE (x3) != PLUS
    2990      1699626 :           || GET_MODE (x3) != E_SImode)
    2991              :         return -1;
    2992      1699588 :       x4 = XEXP (x3, 0);
    2993      1699588 :       if (GET_CODE (x4) != REG
    2994      1699588 :           || REGNO (x4) != 7
    2995      3399176 :           || GET_MODE (x4) != E_SImode)
    2996              :         return -1;
    2997      1699588 :       x5 = XEXP (x1, 0);
    2998      1699588 :       if (GET_CODE (x5) != REG
    2999      1699588 :           || REGNO (x5) != 7
    3000      3399176 :           || GET_MODE (x5) != E_SImode)
    3001            0 :         return -1;
    3002              :       return 1;
    3003              : 
    3004              :     default:
    3005              :       return -1;
    3006              :     }
    3007              : }
    3008              : 
    3009              : int
    3010       108302 : pattern725 (rtx x1)
    3011              : {
    3012       108302 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3013       108302 :   rtx x2, x3, x4, x5, x6;
    3014       108302 :   int res ATTRIBUTE_UNUSED;
    3015       108302 :   x2 = XEXP (x1, 0);
    3016       108302 :   x3 = XEXP (x2, 0);
    3017       108302 :   x4 = XEXP (x3, 0);
    3018       108302 :   operands[1] = x4;
    3019       108302 :   if (!const_int_operand (operands[2], E_QImode))
    3020              :     return -1;
    3021       107783 :   x5 = XEXP (x1, 1);
    3022       107783 :   switch (GET_CODE (x5))
    3023              :     {
    3024        96755 :     case ZERO_EXTEND:
    3025        96755 :       x6 = XEXP (x5, 0);
    3026        96755 :       operands[3] = x6;
    3027        96755 :       switch (GET_MODE (operands[0]))
    3028              :         {
    3029          497 :         case E_DImode:
    3030          497 :           return pattern723 (x1, 
    3031              : E_SImode, 
    3032          497 : E_DImode); /* [-1, 0] */
    3033              : 
    3034        96258 :         case E_TImode:
    3035        96258 :           if (pattern723 (x1, 
    3036              : E_DImode, 
    3037              : E_TImode) != 0)
    3038              :             return -1;
    3039              :           return 1;
    3040              : 
    3041              :         default:
    3042              :           return -1;
    3043              :         }
    3044              : 
    3045         6530 :     case CONST_INT:
    3046         6530 :     case CONST_WIDE_INT:
    3047         6530 :       operands[3] = x5;
    3048         6530 :       switch (GET_MODE (operands[0]))
    3049              :         {
    3050          543 :         case E_DImode:
    3051          543 :           if (pattern724 (x1, 
    3052              : E_DImode, 
    3053              : E_SImode) != 0)
    3054              :             return -1;
    3055              :           return 2;
    3056              : 
    3057         5981 :         case E_TImode:
    3058         5981 :           if (pattern724 (x1, 
    3059              : E_TImode, 
    3060              : E_DImode) != 0)
    3061              :             return -1;
    3062              :           return 3;
    3063              : 
    3064              :         default:
    3065              :           return -1;
    3066              :         }
    3067              : 
    3068              :     default:
    3069              :       return -1;
    3070              :     }
    3071              : }
    3072              : 
    3073              : int
    3074         2497 : pattern743 (rtx x1)
    3075              : {
    3076         2497 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3077         2497 :   rtx x2, x3, x4;
    3078         2497 :   int res ATTRIBUTE_UNUSED;
    3079         2497 :   x2 = XVECEXP (x1, 0, 2);
    3080         2497 :   x3 = XEXP (x2, 0);
    3081         2497 :   operands[3] = x3;
    3082         2497 :   x4 = XEXP (x2, 1);
    3083         2497 :   operands[4] = x4;
    3084         2497 :   switch (GET_MODE (operands[0]))
    3085              :     {
    3086           43 :     case E_SFmode:
    3087           43 :       return pattern742 (x1, 
    3088           43 : E_SFmode); /* [-1, 0] */
    3089              : 
    3090            0 :     case E_DFmode:
    3091            0 :       if (pattern742 (x1, 
    3092              : E_DFmode) != 0)
    3093              :         return -1;
    3094              :       return 1;
    3095              : 
    3096              :     default:
    3097              :       return -1;
    3098              :     }
    3099              : }
    3100              : 
    3101              : int
    3102         6975 : pattern749 ()
    3103              : {
    3104         6975 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3105         6975 :   int res ATTRIBUTE_UNUSED;
    3106         6975 :   switch (GET_MODE (operands[1]))
    3107              :     {
    3108         1183 :     case E_V8HImode:
    3109         1183 :       if (!register_operand (operands[1], E_V8HImode)
    3110         1183 :           || !nonimmediate_operand (operands[2], E_V8HImode))
    3111            1 :         return -1;
    3112              :       return 0;
    3113              : 
    3114         1135 :     case E_V8SImode:
    3115         1135 :       if (!register_operand (operands[1], E_V8SImode)
    3116         1135 :           || !nonimmediate_operand (operands[2], E_V8SImode))
    3117            0 :         return -1;
    3118              :       return 1;
    3119              : 
    3120         1144 :     case E_V4SImode:
    3121         1144 :       if (!register_operand (operands[1], E_V4SImode)
    3122         1144 :           || !nonimmediate_operand (operands[2], E_V4SImode))
    3123            0 :         return -1;
    3124              :       return 2;
    3125              : 
    3126         1141 :     case E_V8DImode:
    3127         1141 :       if (!register_operand (operands[1], E_V8DImode)
    3128         1141 :           || !nonimmediate_operand (operands[2], E_V8DImode))
    3129            4 :         return -1;
    3130              :       return 3;
    3131              : 
    3132         1147 :     case E_V4DImode:
    3133         1147 :       if (!register_operand (operands[1], E_V4DImode)
    3134         1147 :           || !nonimmediate_operand (operands[2], E_V4DImode))
    3135            8 :         return -1;
    3136              :       return 4;
    3137              : 
    3138         1225 :     case E_V2DImode:
    3139         1225 :       if (!register_operand (operands[1], E_V2DImode)
    3140         1225 :           || !nonimmediate_operand (operands[2], E_V2DImode))
    3141           88 :         return -1;
    3142              :       return 5;
    3143              : 
    3144              :     default:
    3145              :       return -1;
    3146              :     }
    3147              : }
    3148              : 
    3149              : int
    3150            0 : pattern768 (rtx x1, machine_mode i1, machine_mode i2)
    3151              : {
    3152            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3153            0 :   rtx x2, x3, x4, x5;
    3154            0 :   int res ATTRIBUTE_UNUSED;
    3155            0 :   if (!register_operand (operands[0], i1)
    3156            0 :       || GET_MODE (x1) != i1)
    3157              :     return -1;
    3158            0 :   x2 = XEXP (x1, 0);
    3159            0 :   if (GET_MODE (x2) != i2)
    3160              :     return -1;
    3161            0 :   x3 = XEXP (x2, 0);
    3162            0 :   if (GET_MODE (x3) != i2)
    3163              :     return -1;
    3164            0 :   x4 = XEXP (x3, 0);
    3165            0 :   if (GET_MODE (x4) != i2
    3166            0 :       || !nonimmediate_operand (operands[1], i1))
    3167            0 :     return -1;
    3168            0 :   x5 = XEXP (x3, 1);
    3169            0 :   if (GET_MODE (x5) != i2
    3170            0 :       || !nonimmediate_operand (operands[2], i1))
    3171            0 :     return -1;
    3172              :   return 0;
    3173              : }
    3174              : 
    3175              : int
    3176         3034 : pattern776 (rtx x1)
    3177              : {
    3178         3034 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3179         3034 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3180         3034 :   int res ATTRIBUTE_UNUSED;
    3181         3034 :   x2 = XEXP (x1, 2);
    3182         3034 :   if (XWINT (x2, 0) != 1L)
    3183              :     return -1;
    3184         3034 :   x3 = XEXP (x1, 0);
    3185         3034 :   x4 = XEXP (x3, 0);
    3186         3034 :   x5 = XVECEXP (x4, 0, 0);
    3187         3034 :   operands[1] = x5;
    3188         3034 :   x6 = XVECEXP (x4, 0, 1);
    3189         3034 :   operands[2] = x6;
    3190         3034 :   x7 = XEXP (x3, 1);
    3191         3034 :   operands[3] = x7;
    3192         3034 :   x8 = XEXP (x3, 2);
    3193         3034 :   operands[4] = x8;
    3194         3034 :   if (!register_operand (operands[4], E_QImode))
    3195              :     return -1;
    3196         2998 :   x9 = XEXP (x1, 1);
    3197         2998 :   if (!rtx_equal_p (x9, operands[1]))
    3198              :     return -1;
    3199         2998 :   switch (GET_MODE (operands[0]))
    3200              :     {
    3201          770 :     case E_V8HFmode:
    3202          770 :       return pattern775 (x1, 
    3203          770 : E_V8HFmode); /* [-1, 0] */
    3204              : 
    3205         1196 :     case E_V4SFmode:
    3206         1196 :       if (pattern775 (x1, 
    3207              : E_V4SFmode) != 0)
    3208              :         return -1;
    3209              :       return 1;
    3210              : 
    3211         1032 :     case E_V2DFmode:
    3212         1032 :       if (pattern775 (x1, 
    3213              : E_V2DFmode) != 0)
    3214              :         return -1;
    3215              :       return 2;
    3216              : 
    3217              :     default:
    3218              :       return -1;
    3219              :     }
    3220              : }
    3221              : 
    3222              : int
    3223         1045 : pattern787 (rtx x1, machine_mode i1)
    3224              : {
    3225         1045 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3226         1045 :   int res ATTRIBUTE_UNUSED;
    3227         1045 :   if (!register_operand (operands[0], i1)
    3228          917 :       || GET_MODE (x1) != i1
    3229          917 :       || !nonimmediate_operand (operands[1], i1)
    3230         1884 :       || !const_0_to_255_operand (operands[2], E_SImode))
    3231          206 :     return -1;
    3232              :   return 0;
    3233              : }
    3234              : 
    3235              : int
    3236         1005 : pattern794 (rtx x1, machine_mode i1, machine_mode i2)
    3237              : {
    3238         1005 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3239         1005 :   rtx x2, x3;
    3240         1005 :   int res ATTRIBUTE_UNUSED;
    3241         1005 :   if (!memory_operand (operands[0], i1)
    3242          887 :       || GET_MODE (x1) != i1
    3243         1892 :       || !register_operand (operands[1], i2))
    3244          342 :     return -1;
    3245          663 :   x2 = XVECEXP (x1, 0, 1);
    3246          663 :   operands[2] = x2;
    3247          663 :   if (!register_operand (operands[2], i1))
    3248              :     return -1;
    3249          552 :   x3 = XVECEXP (x1, 0, 2);
    3250          552 :   if (!rtx_equal_p (x3, operands[0]))
    3251              :     return -1;
    3252              :   return 0;
    3253              : }
    3254              : 
    3255              : int
    3256       120625 : pattern805 (machine_mode i1)
    3257              : {
    3258       120625 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3259       120625 :   int res ATTRIBUTE_UNUSED;
    3260       120625 :   if (!register_operand (operands[0], i1)
    3261       120615 :       || !sse_comparison_operator (operands[3], i1)
    3262       119496 :       || !register_operand (operands[1], i1)
    3263       206984 :       || !vector_operand (operands[2], i1))
    3264        42622 :     return -1;
    3265              :   return 0;
    3266              : }
    3267              : 
    3268              : int
    3269        67689 : pattern812 (rtx x1)
    3270              : {
    3271        67689 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3272        67689 :   rtx x2, x3, x4, x5;
    3273        67689 :   int res ATTRIBUTE_UNUSED;
    3274        67689 :   x2 = XEXP (x1, 0);
    3275        67689 :   x3 = XEXP (x2, 1);
    3276        67689 :   operands[2] = x3;
    3277        67689 :   x4 = XEXP (x1, 1);
    3278        67689 :   if (XVECLEN (x4, 0) < 1)
    3279              :     return -1;
    3280        67689 :   operands[3] = x4;
    3281        67689 :   x5 = XVECEXP (x4, 0, 0);
    3282        67689 :   operands[4] = x5;
    3283        67689 :   if (!const_int_operand (operands[4], E_VOIDmode))
    3284              :     return -1;
    3285        67689 :   switch (GET_MODE (operands[0]))
    3286              :     {
    3287          117 :     case E_V32QImode:
    3288          117 :       return pattern808 (x1, 
    3289              : E_V32QImode, 
    3290          117 : E_V64QImode); /* [-1, 0] */
    3291              : 
    3292          103 :     case E_V64QImode:
    3293          103 :       if (pattern808 (x1, 
    3294              : E_V64QImode, 
    3295              : E_V128QImode) != 0)
    3296              :         return -1;
    3297              :       return 1;
    3298              : 
    3299        19850 :     case E_V16QImode:
    3300        19850 :       if (pattern809 (x1, 
    3301              : E_V16QImode, 
    3302              : E_V32QImode) != 0)
    3303              :         return -1;
    3304              :       return 2;
    3305              : 
    3306          152 :     case E_V32HImode:
    3307          152 :       if (pattern808 (x1, 
    3308              : E_V32HImode, 
    3309              : E_V64HImode) != 0)
    3310              :         return -1;
    3311              :       return 3;
    3312              : 
    3313          164 :     case E_V16HImode:
    3314          164 :       if (pattern808 (x1, 
    3315              : E_V16HImode, 
    3316              : E_V32HImode) != 0)
    3317              :         return -1;
    3318              :       return 4;
    3319              : 
    3320        24592 :     case E_V8HImode:
    3321        24592 :       if (pattern809 (x1, 
    3322              : E_V8HImode, 
    3323              : E_V16HImode) != 0)
    3324              :         return -1;
    3325              :       return 5;
    3326              : 
    3327          186 :     case E_V16SImode:
    3328          186 :       if (pattern810 (x1, 
    3329              : E_V16SImode, 
    3330              : E_V32SImode) != 0)
    3331              :         return -1;
    3332              :       return 6;
    3333              : 
    3334          187 :     case E_V8SImode:
    3335          187 :       if (pattern810 (x1, 
    3336              : E_V8SImode, 
    3337              : E_V16SImode) != 0)
    3338              :         return -1;
    3339              :       return 7;
    3340              : 
    3341        10825 :     case E_V4SImode:
    3342        10825 :       if (!register_operand (operands[0], E_V4SImode)
    3343        10730 :           || GET_MODE (x1) != E_V4SImode
    3344        10730 :           || GET_MODE (x2) != E_V8SImode
    3345        21510 :           || !const0_operand (operands[2], E_V4SImode))
    3346          309 :         return -1;
    3347              :       return 8;
    3348              : 
    3349           21 :     case E_V8DImode:
    3350           21 :       if (pattern811 (x1, 
    3351              : E_V8DImode, 
    3352              : E_V16DImode) != 0)
    3353              :         return -1;
    3354              :       return 9;
    3355              : 
    3356           41 :     case E_V4DImode:
    3357           41 :       if (pattern811 (x1, 
    3358              : E_V4DImode, 
    3359              : E_V8DImode) != 0)
    3360              :         return -1;
    3361              :       return 10;
    3362              : 
    3363          257 :     case E_V2DImode:
    3364          257 :       if (pattern811 (x1, 
    3365              : E_V2DImode, 
    3366              : E_V4DImode) != 0)
    3367              :         return -1;
    3368              :       return 11;
    3369              : 
    3370            0 :     case E_V32HFmode:
    3371            0 :       if (pattern811 (x1, 
    3372              : E_V32HFmode, 
    3373              : E_V64HFmode) != 0)
    3374              :         return -1;
    3375              :       return 12;
    3376              : 
    3377            0 :     case E_V16HFmode:
    3378            0 :       if (pattern811 (x1, 
    3379              : E_V16HFmode, 
    3380              : E_V32HFmode) != 0)
    3381              :         return -1;
    3382              :       return 13;
    3383              : 
    3384           28 :     case E_V8HFmode:
    3385           28 :       if (pattern811 (x1, 
    3386              : E_V8HFmode, 
    3387              : E_V16HFmode) != 0)
    3388              :         return -1;
    3389              :       return 14;
    3390              : 
    3391            0 :     case E_V32BFmode:
    3392            0 :       if (pattern811 (x1, 
    3393              : E_V32BFmode, 
    3394              : E_V64BFmode) != 0)
    3395              :         return -1;
    3396              :       return 15;
    3397              : 
    3398            0 :     case E_V16BFmode:
    3399            0 :       if (pattern811 (x1, 
    3400              : E_V16BFmode, 
    3401              : E_V32BFmode) != 0)
    3402              :         return -1;
    3403              :       return 16;
    3404              : 
    3405            0 :     case E_V8BFmode:
    3406            0 :       if (pattern811 (x1, 
    3407              : E_V8BFmode, 
    3408              : E_V16BFmode) != 0)
    3409              :         return -1;
    3410              :       return 17;
    3411              : 
    3412           38 :     case E_V16SFmode:
    3413           38 :       if (pattern811 (x1, 
    3414              : E_V16SFmode, 
    3415              : E_V32SFmode) != 0)
    3416              :         return -1;
    3417              :       return 18;
    3418              : 
    3419           58 :     case E_V8SFmode:
    3420           58 :       if (pattern811 (x1, 
    3421              : E_V8SFmode, 
    3422              : E_V16SFmode) != 0)
    3423              :         return -1;
    3424              :       return 19;
    3425              : 
    3426          221 :     case E_V4SFmode:
    3427          221 :       if (pattern811 (x1, 
    3428              : E_V4SFmode, 
    3429              : E_V8SFmode) != 0)
    3430              :         return -1;
    3431              :       return 20;
    3432              : 
    3433           41 :     case E_V8DFmode:
    3434           41 :       if (pattern811 (x1, 
    3435              : E_V8DFmode, 
    3436              : E_V16DFmode) != 0)
    3437              :         return -1;
    3438              :       return 21;
    3439              : 
    3440          101 :     case E_V4DFmode:
    3441          101 :       if (pattern811 (x1, 
    3442              : E_V4DFmode, 
    3443              : E_V8DFmode) != 0)
    3444              :         return -1;
    3445              :       return 22;
    3446              : 
    3447           18 :     case E_V2DFmode:
    3448           18 :       if (pattern811 (x1, 
    3449              : E_V2DFmode, 
    3450              : E_V4DFmode) != 0)
    3451              :         return -1;
    3452              :       return 23;
    3453              : 
    3454              :     default:
    3455              :       return -1;
    3456              :     }
    3457              : }
    3458              : 
    3459              : int
    3460        13532 : pattern852 (rtx x1)
    3461              : {
    3462        13532 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3463        13532 :   rtx x2;
    3464        13532 :   int res ATTRIBUTE_UNUSED;
    3465        13532 :   if (peep2_current_count < 3
    3466        13496 :       || XVECLEN (x1, 0) != 1
    3467        13493 :       || XINT (x1, 1) != 1)
    3468              :     return -1;
    3469        13487 :   x2 = XVECEXP (x1, 0, 0);
    3470        13487 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3471            0 :     return -1;
    3472              :   return 0;
    3473              : }
    3474              : 
    3475              : int
    3476        26360 : pattern856 (rtx x1)
    3477              : {
    3478        26360 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3479        26360 :   rtx x2, x3, x4;
    3480        26360 :   int res ATTRIBUTE_UNUSED;
    3481        26360 :   x2 = XEXP (x1, 0);
    3482        26360 :   x3 = XEXP (x2, 0);
    3483        26360 :   operands[0] = x3;
    3484        26360 :   x4 = XEXP (x1, 1);
    3485        26360 :   operands[1] = x4;
    3486        26360 :   switch (GET_MODE (x1))
    3487              :     {
    3488          683 :     case E_QImode:
    3489          683 :       if (GET_MODE (x2) != E_QImode
    3490          683 :           || !register_operand (operands[0], E_QImode)
    3491         1180 :           || !nonmemory_operand (operands[1], E_QImode))
    3492          317 :         return -1;
    3493              :       return 0;
    3494              : 
    3495         3040 :     case E_HImode:
    3496         3040 :       if (GET_MODE (x2) != E_HImode
    3497         3040 :           || !register_operand (operands[0], E_HImode)
    3498         5633 :           || !nonmemory_operand (operands[1], E_HImode))
    3499          447 :         return -1;
    3500              :       return 1;
    3501              : 
    3502        13890 :     case E_SImode:
    3503        13890 :       if (GET_MODE (x2) != E_SImode
    3504        13890 :           || !register_operand (operands[0], E_SImode)
    3505        25598 :           || !x86_64_szext_nonmemory_operand (operands[1], E_SImode))
    3506         2204 :         return -1;
    3507              :       return 2;
    3508              : 
    3509         8372 :     case E_DImode:
    3510         8372 :       if (GET_MODE (x2) != E_DImode)
    3511              :         return -1;
    3512              :       return 3;
    3513              : 
    3514          375 :     case E_TImode:
    3515          375 :       if (GET_MODE (x2) != E_TImode
    3516          375 :           || !nonimmediate_operand (operands[0], E_TImode)
    3517          747 :           || !nonimmediate_operand (operands[1], E_TImode))
    3518            3 :         return -1;
    3519              :       return 4;
    3520              : 
    3521              :     default:
    3522              :       return -1;
    3523              :     }
    3524              : }
    3525              : 
    3526              : int
    3527        23764 : pattern867 (rtx x1, machine_mode i1, machine_mode i2)
    3528              : {
    3529        23764 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3530        23764 :   rtx x2, x3;
    3531        23764 :   int res ATTRIBUTE_UNUSED;
    3532        23764 :   x2 = XEXP (x1, 0);
    3533        23764 :   if (GET_MODE (x2) != i2
    3534        23764 :       || !register_operand (operands[1], i1))
    3535         1149 :     return -1;
    3536        22615 :   x3 = XEXP (x1, 1);
    3537        22615 :   if (GET_MODE (x3) != i2
    3538        22615 :       || !nonimmediate_operand (operands[2], i1))
    3539          270 :     return -1;
    3540              :   return 0;
    3541              : }
    3542              : 
    3543              : int
    3544           65 : pattern873 (rtx x1, machine_mode i1)
    3545              : {
    3546           65 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3547           65 :   int res ATTRIBUTE_UNUSED;
    3548           65 :   if (!register_operand (operands[0], i1)
    3549           65 :       || GET_MODE (x1) != i1
    3550           65 :       || !register_operand (operands[2], i1)
    3551           44 :       || !register_operand (operands[1], i1)
    3552           99 :       || !const_0_to_7_operand (operands[3], E_SImode))
    3553           31 :     return -1;
    3554              :   return 0;
    3555              : }
    3556              : 
    3557              : int
    3558         8867 : pattern879 (rtx x1, machine_mode i1)
    3559              : {
    3560         8867 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3561         8867 :   rtx x2, x3;
    3562         8867 :   int res ATTRIBUTE_UNUSED;
    3563         8867 :   if (!register_operand (operands[0], i1)
    3564         8867 :       || GET_MODE (x1) != i1)
    3565              :     return -1;
    3566         8843 :   x2 = XEXP (x1, 0);
    3567         8843 :   if (GET_MODE (x2) != i1)
    3568              :     return -1;
    3569         8843 :   x3 = XEXP (x1, 2);
    3570         8843 :   if (GET_MODE (x3) != i1)
    3571            0 :     return -1;
    3572              :   return 0;
    3573              : }
    3574              : 
    3575              : int
    3576         1392 : pattern885 (rtx x1)
    3577              : {
    3578         1392 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3579         1392 :   rtx x2;
    3580         1392 :   int res ATTRIBUTE_UNUSED;
    3581         1392 :   switch (GET_MODE (operands[0]))
    3582              :     {
    3583          276 :     case E_DImode:
    3584          276 :       return pattern884 (x1, 
    3585              : E_DImode, 
    3586          276 : E_V64QImode); /* [-1, 0] */
    3587              : 
    3588          584 :     case E_SImode:
    3589          584 :       if (!register_operand (operands[0], E_SImode)
    3590          584 :           || GET_MODE (x1) != E_SImode)
    3591              :         return -1;
    3592          568 :       x2 = XEXP (x1, 0);
    3593          568 :       if (GET_MODE (x2) != E_SImode
    3594          568 :           || !register_operand (operands[3], E_SImode))
    3595           96 :         return -1;
    3596          472 :       res = pattern881 ();
    3597          472 :       if (res >= 0)
    3598          472 :         return res + 1; /* [1, 2] */
    3599              :       return -1;
    3600              : 
    3601              :     default:
    3602              :       return -1;
    3603              :     }
    3604              : }
    3605              : 
    3606              : int
    3607          614 : pattern894 (rtx x1)
    3608              : {
    3609          614 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3610          614 :   rtx x2;
    3611          614 :   int res ATTRIBUTE_UNUSED;
    3612          614 :   x2 = XEXP (x1, 2);
    3613          614 :   if (XWINT (x2, 0) != 1L)
    3614              :     return -1;
    3615          434 :   switch (GET_MODE (operands[0]))
    3616              :     {
    3617          210 :     case E_V4SFmode:
    3618          210 :       return pattern641 (x1, 
    3619          210 : E_V4SFmode); /* [-1, 0] */
    3620              : 
    3621          224 :     case E_V8HFmode:
    3622          224 :       if (pattern641 (x1, 
    3623              : E_V8HFmode) != 0)
    3624              :         return -1;
    3625              :       return 1;
    3626              : 
    3627              :     default:
    3628              :       return -1;
    3629              :     }
    3630              : }
    3631              : 
    3632              : int
    3633         1994 : pattern902 (rtx x1, machine_mode i1)
    3634              : {
    3635         1994 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3636         1994 :   rtx x2, x3;
    3637         1994 :   int res ATTRIBUTE_UNUSED;
    3638         1994 :   if (!register_operand (operands[0], i1)
    3639         1994 :       || GET_MODE (x1) != i1)
    3640              :     return -1;
    3641         1741 :   x2 = XEXP (x1, 0);
    3642         1741 :   operands[2] = x2;
    3643         1741 :   if (!register_operand (operands[2], i1))
    3644              :     return -1;
    3645         1522 :   x3 = XEXP (x1, 1);
    3646         1522 :   operands[1] = x3;
    3647         1522 :   if (!reg_or_0_operand (operands[1], i1))
    3648              :     return -1;
    3649              :   return 0;
    3650              : }
    3651              : 
    3652              : int
    3653         1370 : pattern912 (rtx x1)
    3654              : {
    3655         1370 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3656         1370 :   rtx x2, x3, x4, x5, x6, x7;
    3657         1370 :   int res ATTRIBUTE_UNUSED;
    3658         1370 :   x2 = XVECEXP (x1, 0, 0);
    3659         1370 :   x3 = XEXP (x2, 0);
    3660         1370 :   x4 = XEXP (x3, 0);
    3661         1370 :   x5 = XEXP (x4, 0);
    3662         1370 :   operands[2] = x5;
    3663         1370 :   x6 = XEXP (x2, 1);
    3664         1370 :   operands[1] = x6;
    3665         1370 :   x7 = XVECEXP (x1, 0, 1);
    3666         1370 :   operands[3] = x7;
    3667         1370 :   if (!const_4_or_8_to_11_operand (operands[3], E_SImode))
    3668              :     return -1;
    3669         1370 :   switch (GET_MODE (operands[0]))
    3670              :     {
    3671          572 :     case E_V8HFmode:
    3672          572 :       return pattern911 (x1, 
    3673              : E_V8HFmode, 
    3674          572 : E_HFmode); /* [-1, 1] */
    3675              : 
    3676          556 :     case E_V4SFmode:
    3677          556 :       res = pattern911 (x1, 
    3678              : E_V4SFmode, 
    3679              : E_SFmode);
    3680          556 :       if (res >= 0)
    3681          540 :         return res + 2; /* [2, 3] */
    3682              :       return -1;
    3683              : 
    3684          242 :     case E_V2DFmode:
    3685          242 :       if (!register_operand (operands[0], E_V2DFmode)
    3686          236 :           || GET_MODE (x1) != E_V2DFmode
    3687          236 :           || GET_MODE (x2) != E_V2DFmode
    3688          236 :           || GET_MODE (x3) != E_V2DFmode
    3689          236 :           || GET_MODE (x4) != E_DFmode
    3690          236 :           || !register_operand (operands[2], E_DImode)
    3691          478 :           || !register_operand (operands[1], E_V2DFmode))
    3692            8 :         return -1;
    3693              :       return 4;
    3694              : 
    3695              :     default:
    3696              :       return -1;
    3697              :     }
    3698              : }
    3699              : 
    3700              : int
    3701       599830 : pattern925 (rtx x1, machine_mode i1, machine_mode i2)
    3702              : {
    3703       599830 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3704       599830 :   int res ATTRIBUTE_UNUSED;
    3705       599830 :   if (!register_operand (operands[0], i2)
    3706       580669 :       || GET_MODE (x1) != i2
    3707       580669 :       || !nonimmediate_operand (operands[1], i1)
    3708      1160224 :       || !const0_operand (operands[2], i1))
    3709        45012 :     return -1;
    3710              :   return 0;
    3711              : }
    3712              : 
    3713              : int
    3714          232 : pattern927 (rtx x1, machine_mode i1)
    3715              : {
    3716          232 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3717          232 :   rtx x2;
    3718          232 :   int res ATTRIBUTE_UNUSED;
    3719          232 :   if (!register_operand (operands[0], i1)
    3720          223 :       || GET_MODE (x1) != i1
    3721          223 :       || !nonimmediate_operand (operands[1], i1)
    3722          452 :       || !nonimmediate_operand (operands[2], i1))
    3723           12 :     return -1;
    3724          220 :   x2 = XEXP (x1, 2);
    3725          220 :   if (GET_MODE (x2) != i1
    3726          220 :       || !nonimmediate_operand (operands[3], i1))
    3727            0 :     return -1;
    3728              :   return 0;
    3729              : }
    3730              : 
    3731              : int
    3732         9112 : pattern931 (rtx x1)
    3733              : {
    3734         9112 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3735         9112 :   rtx x2, x3, x4, x5, x6, x7;
    3736         9112 :   int res ATTRIBUTE_UNUSED;
    3737         9112 :   x2 = XVECEXP (x1, 0, 2);
    3738         9112 :   if (GET_CODE (x2) != CONST_INT)
    3739              :     return -1;
    3740         9112 :   x3 = XVECEXP (x1, 0, 3);
    3741         9112 :   if (GET_CODE (x3) != CONST_INT)
    3742              :     return -1;
    3743         9112 :   x4 = XVECEXP (x1, 0, 4);
    3744         9112 :   if (GET_CODE (x4) != CONST_INT)
    3745              :     return -1;
    3746         9112 :   x5 = XVECEXP (x1, 0, 5);
    3747         9112 :   if (GET_CODE (x5) != CONST_INT)
    3748              :     return -1;
    3749         9112 :   x6 = XVECEXP (x1, 0, 6);
    3750         9112 :   if (GET_CODE (x6) != CONST_INT)
    3751              :     return -1;
    3752         9112 :   x7 = XVECEXP (x1, 0, 7);
    3753         9112 :   if (GET_CODE (x7) != CONST_INT)
    3754            0 :     return -1;
    3755              :   return 0;
    3756              : }
    3757              : 
    3758              : int
    3759           66 : pattern941 (rtx x1, int *pnum_clobbers)
    3760              : {
    3761           66 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3762           66 :   rtx x2, x3, x4, x5, x6;
    3763           66 :   int res ATTRIBUTE_UNUSED;
    3764           66 :   x2 = XVECEXP (x1, 0, 0);
    3765           66 :   x3 = XEXP (x2, 1);
    3766           66 :   x4 = XEXP (x3, 0);
    3767           66 :   x5 = XEXP (x4, 0);
    3768           66 :   operands[1] = x5;
    3769           66 :   if (!nonimmediate_operand (operands[1], E_SImode))
    3770              :     return -1;
    3771           24 :   x6 = XVECEXP (x1, 0, 1);
    3772           24 :   return pattern831 (x6, pnum_clobbers); /* [-1, 1] */
    3773              : }
    3774              : 
    3775              : int
    3776          288 : pattern947 (rtx x1)
    3777              : {
    3778          288 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3779          288 :   rtx x2, x3, x4, x5;
    3780          288 :   int res ATTRIBUTE_UNUSED;
    3781          288 :   x2 = XEXP (x1, 0);
    3782          288 :   x3 = XEXP (x2, 1);
    3783          288 :   x4 = XEXP (x3, 1);
    3784          288 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3785              :     return -1;
    3786          282 :   x5 = XEXP (x3, 0);
    3787          282 :   operands[3] = x5;
    3788          282 :   if (!int_nonimmediate_operand (operands[3], E_VOIDmode))
    3789              :     return -1;
    3790          276 :   switch (GET_MODE (operands[0]))
    3791              :     {
    3792            0 :     case E_QImode:
    3793            0 :       return pattern945 (x1, 
    3794            0 : E_QImode); /* [-1, 0] */
    3795              : 
    3796            0 :     case E_HImode:
    3797            0 :       if (pattern945 (x1, 
    3798              : E_HImode) != 0)
    3799              :         return -1;
    3800              :       return 1;
    3801              : 
    3802          192 :     case E_SImode:
    3803          192 :       if (pattern946 (x1, 
    3804              : E_SImode) != 0)
    3805              :         return -1;
    3806              :       return 2;
    3807              : 
    3808           84 :     case E_DImode:
    3809           84 :       if (pattern946 (x1, 
    3810              : E_DImode) != 0)
    3811              :         return -1;
    3812              :       return 3;
    3813              : 
    3814              :     default:
    3815              :       return -1;
    3816              :     }
    3817              : }
    3818              : 
    3819              : int
    3820          105 : pattern960 (rtx x1, machine_mode i1)
    3821              : {
    3822          105 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3823          105 :   rtx x2;
    3824          105 :   int res ATTRIBUTE_UNUSED;
    3825          105 :   if (!register_operand (operands[0], i1)
    3826          105 :       || GET_MODE (x1) != i1)
    3827              :     return -1;
    3828           81 :   x2 = XEXP (x1, 0);
    3829           81 :   if (GET_MODE (x2) != i1
    3830           81 :       || !vector_operand (operands[1], i1)
    3831           61 :       || !vector_operand (operands[2], i1)
    3832          138 :       || !const0_operand (operands[3], i1))
    3833           57 :     return -1;
    3834              :   return 0;
    3835              : }
    3836              : 
    3837              : int
    3838       143501 : pattern969 (rtx x1)
    3839              : {
    3840       143501 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3841       143501 :   int res ATTRIBUTE_UNUSED;
    3842       143501 :   switch (GET_MODE (operands[0]))
    3843              :     {
    3844        62584 :     case E_QImode:
    3845        62584 :       if (!register_operand (operands[0], E_QImode)
    3846        62584 :           || GET_MODE (x1) != E_QImode)
    3847              :         return -1;
    3848              :       return 0;
    3849              : 
    3850        59724 :     case E_HImode:
    3851        59724 :       if (!register_operand (operands[0], E_HImode)
    3852        59724 :           || GET_MODE (x1) != E_HImode)
    3853              :         return -1;
    3854              :       return 1;
    3855              : 
    3856              :     default:
    3857              :       return -1;
    3858              :     }
    3859              : }
    3860              : 
    3861              : int
    3862         8887 : pattern971 (rtx x1, machine_mode i1)
    3863              : {
    3864         8887 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3865         8887 :   int res ATTRIBUTE_UNUSED;
    3866         8887 :   if (!register_operand (operands[0], i1)
    3867         8867 :       || GET_MODE (x1) != i1
    3868         8867 :       || !register_operand (operands[1], i1)
    3869         7003 :       || !register_operand (operands[2], i1)
    3870        14525 :       || !register_operand (operands[3], i1))
    3871         3815 :     return -1;
    3872              :   return 0;
    3873              : }
    3874              : 
    3875              : int
    3876         4098 : pattern975 (rtx x1)
    3877              : {
    3878         4098 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3879         4098 :   rtx x2, x3;
    3880         4098 :   int res ATTRIBUTE_UNUSED;
    3881         4098 :   x2 = XEXP (x1, 1);
    3882         4098 :   switch (GET_CODE (x2))
    3883              :     {
    3884         1302 :     case CONST_INT:
    3885         1302 :       if (!register_operand (operands[0], E_QImode)
    3886         1302 :           || GET_MODE (x1) != E_QImode)
    3887              :         return -1;
    3888          686 :       x3 = XEXP (x1, 0);
    3889          686 :       if (GET_MODE (x3) != E_QImode)
    3890              :         return -1;
    3891          686 :       switch (XWINT (x2, 0))
    3892              :         {
    3893           13 :         case 15L:
    3894           13 :           switch (GET_MODE (operands[1]))
    3895              :             {
    3896            8 :             case E_V4SImode:
    3897            8 :               if (!nonimm_or_0_operand (operands[1], E_V4SImode)
    3898            8 :                   || !nonimm_or_0_operand (operands[2], E_V4SImode))
    3899            4 :                 return -1;
    3900              :               return 0;
    3901              : 
    3902            4 :             case E_V4DImode:
    3903            4 :               if (!nonimm_or_0_operand (operands[1], E_V4DImode)
    3904            4 :                   || !nonimm_or_0_operand (operands[2], E_V4DImode))
    3905            4 :                 return -1;
    3906              :               return 1;
    3907              : 
    3908              :             default:
    3909              :               return -1;
    3910              :             }
    3911              : 
    3912           69 :         case 3L:
    3913           69 :           if (!nonimm_or_0_operand (operands[1], E_V2DImode)
    3914           69 :               || !nonimm_or_0_operand (operands[2], E_V2DImode))
    3915           69 :             return -1;
    3916              :           return 2;
    3917              : 
    3918              :         default:
    3919              :           return -1;
    3920              :         }
    3921              : 
    3922         2690 :     case REG:
    3923         2690 :     case SUBREG:
    3924         2690 :       operands[3] = x2;
    3925         2690 :       switch (GET_MODE (operands[0]))
    3926              :         {
    3927         1062 :         case E_HImode:
    3928         1062 :           if (!register_operand (operands[0], E_HImode)
    3929         1062 :               || GET_MODE (x1) != E_HImode)
    3930              :             return -1;
    3931         1048 :           x3 = XEXP (x1, 0);
    3932         1048 :           if (GET_MODE (x3) != E_HImode
    3933         1048 :               || !register_operand (operands[3], E_HImode))
    3934            0 :             return -1;
    3935         1048 :           switch (GET_MODE (operands[1]))
    3936              :             {
    3937           86 :             case E_V16QImode:
    3938           86 :               if (!nonimm_or_0_operand (operands[1], E_V16QImode)
    3939           86 :                   || !nonimm_or_0_operand (operands[2], E_V16QImode))
    3940            0 :                 return -1;
    3941              :               return 3;
    3942              : 
    3943           91 :             case E_V16HImode:
    3944           91 :               if (!nonimm_or_0_operand (operands[1], E_V16HImode)
    3945           91 :                   || !nonimm_or_0_operand (operands[2], E_V16HImode))
    3946            0 :                 return -1;
    3947              :               return 4;
    3948              : 
    3949          867 :             case E_V16SImode:
    3950          867 :               if (!nonimm_or_0_operand (operands[1], E_V16SImode)
    3951          867 :                   || !nonimm_or_0_operand (operands[2], E_V16SImode))
    3952            8 :                 return -1;
    3953              :               return 5;
    3954              : 
    3955              :             default:
    3956              :               return -1;
    3957              :             }
    3958              : 
    3959          550 :         case E_QImode:
    3960          550 :           if (!register_operand (operands[0], E_QImode)
    3961          550 :               || GET_MODE (x1) != E_QImode)
    3962              :             return -1;
    3963          512 :           x3 = XEXP (x1, 0);
    3964          512 :           if (GET_MODE (x3) != E_QImode
    3965          512 :               || !register_operand (operands[3], E_QImode))
    3966            0 :             return -1;
    3967          512 :           switch (GET_MODE (operands[1]))
    3968              :             {
    3969           91 :             case E_V8HImode:
    3970           91 :               if (!nonimm_or_0_operand (operands[1], E_V8HImode)
    3971           91 :                   || !nonimm_or_0_operand (operands[2], E_V8HImode))
    3972            0 :                 return -1;
    3973              :               return 6;
    3974              : 
    3975           77 :             case E_V8SImode:
    3976           77 :               if (!nonimm_or_0_operand (operands[1], E_V8SImode)
    3977           77 :                   || !nonimm_or_0_operand (operands[2], E_V8SImode))
    3978            0 :                 return -1;
    3979              :               return 7;
    3980              : 
    3981           81 :             case E_V4SImode:
    3982           81 :               if (!nonimm_or_0_operand (operands[1], E_V4SImode)
    3983           81 :                   || !nonimm_or_0_operand (operands[2], E_V4SImode))
    3984            0 :                 return -1;
    3985              :               return 8;
    3986              : 
    3987           80 :             case E_V8DImode:
    3988           80 :               if (!nonimm_or_0_operand (operands[1], E_V8DImode)
    3989           80 :                   || !nonimm_or_0_operand (operands[2], E_V8DImode))
    3990            2 :                 return -1;
    3991              :               return 9;
    3992              : 
    3993           80 :             case E_V4DImode:
    3994           80 :               if (!nonimm_or_0_operand (operands[1], E_V4DImode)
    3995           80 :                   || !nonimm_or_0_operand (operands[2], E_V4DImode))
    3996            2 :                 return -1;
    3997              :               return 10;
    3998              : 
    3999           99 :             case E_V2DImode:
    4000           99 :               if (!nonimm_or_0_operand (operands[1], E_V2DImode)
    4001           99 :                   || !nonimm_or_0_operand (operands[2], E_V2DImode))
    4002            2 :                 return -1;
    4003              :               return 11;
    4004              : 
    4005              :             default:
    4006              :               return -1;
    4007              :             }
    4008              : 
    4009              :         default:
    4010              :           return -1;
    4011              :         }
    4012              : 
    4013              :     default:
    4014              :       return -1;
    4015              :     }
    4016              : }
    4017              : 
    4018              : int
    4019          598 : pattern1009 (rtx x1, machine_mode i1)
    4020              : {
    4021          598 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4022          598 :   rtx x2, x3;
    4023          598 :   int res ATTRIBUTE_UNUSED;
    4024          598 :   if (!register_operand (operands[0], i1)
    4025          598 :       || GET_MODE (x1) != i1)
    4026              :     return -1;
    4027          592 :   x2 = XEXP (x1, 0);
    4028          592 :   if (GET_MODE (x2) != i1)
    4029              :     return -1;
    4030          592 :   x3 = XEXP (x2, 0);
    4031          592 :   if (GET_MODE (x3) != i1)
    4032            0 :     return -1;
    4033              :   return 0;
    4034              : }
    4035              : 
    4036              : int
    4037          117 : pattern1016 (rtx x1)
    4038              : {
    4039          117 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4040          117 :   rtx x2, x3, x4, x5;
    4041          117 :   int res ATTRIBUTE_UNUSED;
    4042          117 :   x2 = XEXP (x1, 0);
    4043          117 :   x3 = XEXP (x2, 0);
    4044          117 :   x4 = XEXP (x3, 0);
    4045          117 :   operands[2] = x4;
    4046          117 :   x5 = XEXP (x1, 1);
    4047          117 :   operands[1] = x5;
    4048          117 :   switch (GET_MODE (operands[0]))
    4049              :     {
    4050           32 :     case E_V8HImode:
    4051           32 :       return pattern1015 (x1, 
    4052              : E_V8HImode, 
    4053           32 : E_HImode); /* [-1, 0] */
    4054              : 
    4055            0 :     case E_V8HFmode:
    4056            0 :       if (pattern1015 (x1, 
    4057              : E_V8HFmode, 
    4058              : E_HFmode) != 0)
    4059              :         return -1;
    4060              :       return 1;
    4061              : 
    4062            0 :     case E_V8BFmode:
    4063            0 :       if (pattern1015 (x1, 
    4064              : E_V8BFmode, 
    4065              : E_BFmode) != 0)
    4066              :         return -1;
    4067              :       return 2;
    4068              : 
    4069              :     default:
    4070              :       return -1;
    4071              :     }
    4072              : }
    4073              : 
    4074              : int
    4075          481 : pattern1027 (rtx x1, machine_mode i1, machine_mode i2)
    4076              : {
    4077          481 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4078          481 :   rtx x2;
    4079          481 :   int res ATTRIBUTE_UNUSED;
    4080          481 :   if (!register_operand (operands[0], i2)
    4081          481 :       || GET_MODE (x1) != i2)
    4082              :     return -1;
    4083          461 :   x2 = XVECEXP (x1, 0, 0);
    4084          461 :   if (GET_MODE (x2) != i2
    4085          461 :       || !register_operand (operands[1], i1))
    4086           32 :     return -1;
    4087              :   return 0;
    4088              : }
    4089              : 
    4090              : int
    4091          471 : pattern1033 (rtx x1)
    4092              : {
    4093          471 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4094          471 :   rtx x2;
    4095          471 :   int res ATTRIBUTE_UNUSED;
    4096          471 :   if (!const48_operand (operands[2], E_SImode))
    4097              :     return -1;
    4098          471 :   switch (GET_MODE (operands[0]))
    4099              :     {
    4100           88 :     case E_V16SImode:
    4101           88 :       return pattern1027 (x1, 
    4102              : E_V16SFmode, 
    4103           88 : E_V16SImode); /* [-1, 0] */
    4104              : 
    4105           93 :     case E_V8SImode:
    4106           93 :       if (pattern1027 (x1, 
    4107              : E_V8DFmode, 
    4108              : E_V8SImode) != 0)
    4109              :         return -1;
    4110              :       return 1;
    4111              : 
    4112          232 :     case E_V8DImode:
    4113          232 :       if (!register_operand (operands[0], E_V8DImode)
    4114          232 :           || GET_MODE (x1) != E_V8DImode)
    4115              :         return -1;
    4116          208 :       x2 = XVECEXP (x1, 0, 0);
    4117          208 :       if (GET_MODE (x2) != E_V8DImode)
    4118              :         return -1;
    4119          208 :       switch (GET_MODE (operands[1]))
    4120              :         {
    4121          106 :         case E_V8DFmode:
    4122          106 :           if (!register_operand (operands[1], E_V8DFmode))
    4123              :             return -1;
    4124              :           return 2;
    4125              : 
    4126          102 :         case E_V8SFmode:
    4127          102 :           if (!register_operand (operands[1], E_V8SFmode))
    4128              :             return -1;
    4129              :           return 3;
    4130              : 
    4131              :         default:
    4132              :           return -1;
    4133              :         }
    4134              : 
    4135              :     default:
    4136              :       return -1;
    4137              :     }
    4138              : }
    4139              : 
    4140              : int
    4141        13968 : pattern1050 (rtx x1)
    4142              : {
    4143        13968 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4144        13968 :   rtx x2;
    4145        13968 :   int res ATTRIBUTE_UNUSED;
    4146        13968 :   switch (GET_MODE (operands[0]))
    4147              :     {
    4148           23 :     case E_HImode:
    4149           23 :       if (!register_operand (operands[0], E_HImode)
    4150           23 :           || GET_MODE (x1) != E_HImode)
    4151              :         return -1;
    4152           23 :       x2 = XEXP (x1, 0);
    4153           23 :       if (GET_MODE (x2) != E_QImode
    4154           23 :           || !nonimmediate_operand (operands[1], E_QImode)
    4155           44 :           || !x86_64_general_operand (operands[2], E_QImode))
    4156            2 :         return -1;
    4157              :       return 0;
    4158              : 
    4159          426 :     case E_SImode:
    4160          426 :       if (!register_operand (operands[0], E_SImode)
    4161          426 :           || GET_MODE (x1) != E_SImode)
    4162              :         return -1;
    4163          424 :       x2 = XEXP (x1, 0);
    4164          424 :       switch (GET_MODE (x2))
    4165              :         {
    4166          228 :         case E_QImode:
    4167          228 :           if (!nonimmediate_operand (operands[1], E_QImode)
    4168          228 :               || !x86_64_general_operand (operands[2], E_QImode))
    4169            2 :             return -1;
    4170              :           return 1;
    4171              : 
    4172          196 :         case E_HImode:
    4173          196 :           if (!nonimmediate_operand (operands[1], E_HImode)
    4174          196 :               || !x86_64_general_operand (operands[2], E_HImode))
    4175           48 :             return -1;
    4176              :           return 2;
    4177              : 
    4178              :         default:
    4179              :           return -1;
    4180              :         }
    4181              : 
    4182        13518 :     case E_DImode:
    4183        13518 :       if (!register_operand (operands[0], E_DImode)
    4184        13518 :           || GET_MODE (x1) != E_DImode)
    4185              :         return -1;
    4186        13518 :       x2 = XEXP (x1, 0);
    4187        13518 :       switch (GET_MODE (x2))
    4188              :         {
    4189          253 :         case E_QImode:
    4190          253 :           if (!nonimmediate_operand (operands[1], E_QImode)
    4191          253 :               || !x86_64_general_operand (operands[2], E_QImode))
    4192            0 :             return -1;
    4193              :           return 3;
    4194              : 
    4195           19 :         case E_HImode:
    4196           19 :           if (!nonimmediate_operand (operands[1], E_HImode)
    4197           19 :               || !x86_64_general_operand (operands[2], E_HImode))
    4198            0 :             return -1;
    4199              :           return 4;
    4200              : 
    4201        13246 :         case E_SImode:
    4202        13246 :           if (!nonimmediate_operand (operands[1], E_SImode)
    4203        13246 :               || !x86_64_general_operand (operands[2], E_SImode))
    4204         1781 :             return -1;
    4205              :           return 5;
    4206              : 
    4207              :         default:
    4208              :           return -1;
    4209              :         }
    4210              : 
    4211              :     default:
    4212              :       return -1;
    4213              :     }
    4214              : }
    4215              : 
    4216              : int
    4217            0 : pattern1065 (rtx x1)
    4218              : {
    4219            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4220            0 :   rtx x2;
    4221            0 :   int res ATTRIBUTE_UNUSED;
    4222            0 :   if (!register_operand (operands[0], E_V2SFmode)
    4223            0 :       || GET_MODE (x1) != E_V2SFmode)
    4224              :     return -1;
    4225            0 :   x2 = XEXP (x1, 0);
    4226            0 :   if (GET_MODE (x2) != E_V2SFmode
    4227            0 :       || !register_operand (operands[1], E_V2SFmode)
    4228            0 :       || !nonimmediate_operand (operands[2], E_V2SFmode))
    4229            0 :     return -1;
    4230              :   return 0;
    4231              : }
    4232              : 
    4233              : int
    4234         1053 : pattern1069 (rtx x1)
    4235              : {
    4236         1053 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4237         1053 :   rtx x2, x3, x4, x5, x6, x7, x8;
    4238         1053 :   int res ATTRIBUTE_UNUSED;
    4239         1053 :   x2 = XEXP (x1, 0);
    4240         1053 :   x3 = XEXP (x2, 1);
    4241         1053 :   if (GET_MODE (x3) != E_QImode)
    4242              :     return -1;
    4243         1053 :   x4 = XEXP (x1, 1);
    4244         1053 :   operands[3] = x4;
    4245         1053 :   switch (GET_CODE (x3))
    4246              :     {
    4247          541 :     case SUBREG:
    4248          541 :       if (maybe_ne (SUBREG_BYTE (x3), 0))
    4249              :         return -1;
    4250          541 :       x5 = XEXP (x3, 0);
    4251          541 :       if (GET_CODE (x5) != AND)
    4252              :         return -1;
    4253          162 :       x6 = XEXP (x5, 0);
    4254          162 :       operands[1] = x6;
    4255          162 :       if (!int248_register_operand (operands[1], E_VOIDmode))
    4256              :         return -1;
    4257          157 :       x7 = XEXP (x5, 1);
    4258          157 :       operands[2] = x7;
    4259          157 :       if (!const_int_operand (operands[2], E_VOIDmode))
    4260              :         return -1;
    4261          157 :       switch (GET_MODE (operands[0]))
    4262              :         {
    4263           64 :         case E_SImode:
    4264           64 :           return pattern374 (x1, 
    4265           64 : E_SImode); /* [-1, 0] */
    4266              : 
    4267           65 :         case E_DImode:
    4268           65 :           if (pattern374 (x1, 
    4269              : E_DImode) != 0)
    4270              :             return -1;
    4271              :           return 1;
    4272              : 
    4273              :         default:
    4274              :           return -1;
    4275              :         }
    4276              : 
    4277            3 :     case AND:
    4278            3 :       x5 = XEXP (x3, 0);
    4279            3 :       operands[1] = x5;
    4280            3 :       if (!register_operand (operands[1], E_QImode))
    4281              :         return -1;
    4282            3 :       x8 = XEXP (x3, 1);
    4283            3 :       operands[2] = x8;
    4284            3 :       if (!const_int_operand (operands[2], E_QImode))
    4285              :         return -1;
    4286            3 :       switch (GET_MODE (operands[0]))
    4287              :         {
    4288            3 :         case E_SImode:
    4289            3 :           if (pattern374 (x1, 
    4290              : E_SImode) != 0)
    4291              :             return -1;
    4292              :           return 2;
    4293              : 
    4294            0 :         case E_DImode:
    4295            0 :           if (pattern374 (x1, 
    4296              : E_DImode) != 0)
    4297              :             return -1;
    4298              :           return 3;
    4299              : 
    4300              :         default:
    4301              :           return -1;
    4302              :         }
    4303              : 
    4304              :     default:
    4305              :       return -1;
    4306              :     }
    4307              : }
    4308              : 
    4309              : int
    4310          323 : pattern1089 (rtx x1, machine_mode i1, machine_mode i2)
    4311              : {
    4312          323 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4313          323 :   rtx x2;
    4314          323 :   int res ATTRIBUTE_UNUSED;
    4315          323 :   if (!register_operand (operands[0], i1)
    4316          323 :       || GET_MODE (x1) != i1)
    4317              :     return -1;
    4318          311 :   x2 = XEXP (x1, 0);
    4319          311 :   if (GET_MODE (x2) != i1
    4320          311 :       || !nonimmediate_operand (operands[1], i2)
    4321          618 :       || !register_operand (operands[3], i1))
    4322           53 :     return -1;
    4323              :   return 0;
    4324              : }
    4325              : 
    4326              : int
    4327            0 : pattern1097 (rtx x1)
    4328              : {
    4329            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4330            0 :   rtx x2;
    4331            0 :   int res ATTRIBUTE_UNUSED;
    4332            0 :   switch (GET_MODE (x1))
    4333              :     {
    4334            0 :     case E_DImode:
    4335            0 :       x2 = XEXP (x1, 0);
    4336            0 :       if (GET_MODE (x2) != E_DImode
    4337            0 :           || !register_operand (operands[1], E_V64QImode)
    4338            0 :           || !nonimmediate_operand (operands[2], E_V64QImode)
    4339            0 :           || !register_operand (operands[3], E_DImode))
    4340            0 :         return -1;
    4341              :       return 0;
    4342              : 
    4343            0 :     case E_SImode:
    4344            0 :       x2 = XEXP (x1, 0);
    4345            0 :       if (GET_MODE (x2) != E_SImode
    4346            0 :           || !register_operand (operands[3], E_SImode))
    4347            0 :         return -1;
    4348            0 :       switch (GET_MODE (operands[1]))
    4349              :         {
    4350            0 :         case E_V32QImode:
    4351            0 :           if (!register_operand (operands[1], E_V32QImode)
    4352            0 :               || !nonimmediate_operand (operands[2], E_V32QImode))
    4353            0 :             return -1;
    4354              :           return 1;
    4355              : 
    4356            0 :         case E_V32HImode:
    4357            0 :           if (!register_operand (operands[1], E_V32HImode)
    4358            0 :               || !nonimmediate_operand (operands[2], E_V32HImode))
    4359            0 :             return -1;
    4360              :           return 2;
    4361              : 
    4362              :         default:
    4363              :           return -1;
    4364              :         }
    4365              : 
    4366            0 :     case E_HImode:
    4367            0 :       x2 = XEXP (x1, 0);
    4368            0 :       if (GET_MODE (x2) != E_HImode
    4369            0 :           || !register_operand (operands[3], E_HImode))
    4370            0 :         return -1;
    4371            0 :       switch (GET_MODE (operands[1]))
    4372              :         {
    4373            0 :         case E_V16QImode:
    4374            0 :           if (!register_operand (operands[1], E_V16QImode)
    4375            0 :               || !nonimmediate_operand (operands[2], E_V16QImode))
    4376            0 :             return -1;
    4377              :           return 3;
    4378              : 
    4379            0 :         case E_V16HImode:
    4380            0 :           if (!register_operand (operands[1], E_V16HImode)
    4381            0 :               || !nonimmediate_operand (operands[2], E_V16HImode))
    4382            0 :             return -1;
    4383              :           return 4;
    4384              : 
    4385            0 :         case E_V16SImode:
    4386            0 :           if (!register_operand (operands[1], E_V16SImode)
    4387            0 :               || !nonimmediate_operand (operands[2], E_V16SImode))
    4388            0 :             return -1;
    4389              :           return 5;
    4390              : 
    4391              :         default:
    4392              :           return -1;
    4393              :         }
    4394              : 
    4395            0 :     case E_QImode:
    4396            0 :       x2 = XEXP (x1, 0);
    4397            0 :       if (GET_MODE (x2) != E_QImode
    4398            0 :           || !register_operand (operands[3], E_QImode))
    4399            0 :         return -1;
    4400            0 :       switch (GET_MODE (operands[1]))
    4401              :         {
    4402            0 :         case E_V8HImode:
    4403            0 :           if (!register_operand (operands[1], E_V8HImode)
    4404            0 :               || !nonimmediate_operand (operands[2], E_V8HImode))
    4405            0 :             return -1;
    4406              :           return 6;
    4407              : 
    4408            0 :         case E_V8SImode:
    4409            0 :           if (!register_operand (operands[1], E_V8SImode)
    4410            0 :               || !nonimmediate_operand (operands[2], E_V8SImode))
    4411            0 :             return -1;
    4412              :           return 7;
    4413              : 
    4414            0 :         case E_V4SImode:
    4415            0 :           if (!register_operand (operands[1], E_V4SImode)
    4416            0 :               || !nonimmediate_operand (operands[2], E_V4SImode))
    4417            0 :             return -1;
    4418              :           return 8;
    4419              : 
    4420            0 :         case E_V8DImode:
    4421            0 :           if (!register_operand (operands[1], E_V8DImode)
    4422            0 :               || !nonimmediate_operand (operands[2], E_V8DImode))
    4423            0 :             return -1;
    4424              :           return 9;
    4425              : 
    4426            0 :         case E_V4DImode:
    4427            0 :           if (!register_operand (operands[1], E_V4DImode)
    4428            0 :               || !nonimmediate_operand (operands[2], E_V4DImode))
    4429            0 :             return -1;
    4430              :           return 10;
    4431              : 
    4432            0 :         case E_V2DImode:
    4433            0 :           if (!register_operand (operands[1], E_V2DImode)
    4434            0 :               || !nonimmediate_operand (operands[2], E_V2DImode))
    4435            0 :             return -1;
    4436              :           return 11;
    4437              : 
    4438              :         default:
    4439              :           return -1;
    4440              :         }
    4441              : 
    4442              :     default:
    4443              :       return -1;
    4444              :     }
    4445              : }
    4446              : 
    4447              : int
    4448          958 : pattern1141 (rtx x1)
    4449              : {
    4450          958 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4451          958 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4452          958 :   rtx x10, x11;
    4453          958 :   int res ATTRIBUTE_UNUSED;
    4454          958 :   x2 = XVECEXP (x1, 0, 0);
    4455          958 :   x3 = XEXP (x2, 2);
    4456          958 :   if (XWINT (x3, 0) != 1L)
    4457              :     return -1;
    4458          958 :   x4 = XEXP (x2, 0);
    4459          958 :   x5 = XEXP (x4, 0);
    4460          958 :   x6 = XVECEXP (x5, 0, 0);
    4461          958 :   operands[1] = x6;
    4462          958 :   x7 = XVECEXP (x5, 0, 1);
    4463          958 :   operands[2] = x7;
    4464          958 :   x8 = XEXP (x4, 1);
    4465          958 :   operands[3] = x8;
    4466          958 :   x9 = XEXP (x4, 2);
    4467          958 :   operands[4] = x9;
    4468          958 :   if (!register_operand (operands[4], E_QImode))
    4469              :     return -1;
    4470          940 :   x10 = XVECEXP (x1, 0, 1);
    4471          940 :   operands[5] = x10;
    4472          940 :   if (!const48_operand (operands[5], E_SImode))
    4473              :     return -1;
    4474          940 :   x11 = XEXP (x2, 1);
    4475          940 :   if (!rtx_equal_p (x11, operands[1]))
    4476              :     return -1;
    4477          940 :   switch (GET_MODE (operands[0]))
    4478              :     {
    4479          520 :     case E_V8HFmode:
    4480          520 :       return pattern1140 (x1, 
    4481          520 : E_V8HFmode); /* [-1, 0] */
    4482              : 
    4483          210 :     case E_V4SFmode:
    4484          210 :       if (pattern1140 (x1, 
    4485              : E_V4SFmode) != 0)
    4486              :         return -1;
    4487              :       return 1;
    4488              : 
    4489          210 :     case E_V2DFmode:
    4490          210 :       if (pattern1140 (x1, 
    4491              : E_V2DFmode) != 0)
    4492              :         return -1;
    4493              :       return 2;
    4494              : 
    4495              :     default:
    4496              :       return -1;
    4497              :     }
    4498              : }
    4499              : 
    4500              : int
    4501         7394 : pattern1158 (rtx x1)
    4502              : {
    4503         7394 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4504         7394 :   rtx x2, x3, x4, x5;
    4505         7394 :   int res ATTRIBUTE_UNUSED;
    4506         7394 :   x2 = XEXP (x1, 2);
    4507         7394 :   x3 = XEXP (x2, 0);
    4508         7394 :   if (!rtx_equal_p (x3, operands[1]))
    4509              :     return -1;
    4510         7394 :   x4 = XEXP (x2, 1);
    4511         7394 :   x5 = XEXP (x4, 0);
    4512         7394 :   if (!rtx_equal_p (x5, operands[2]))
    4513              :     return -1;
    4514         7372 :   switch (GET_MODE (operands[0]))
    4515              :     {
    4516          468 :     case E_V16QImode:
    4517          468 :       return pattern1157 (x1, 
    4518          468 : E_V16QImode); /* [-1, 0] */
    4519              : 
    4520          410 :     case E_V8HImode:
    4521          410 :       if (pattern1157 (x1, 
    4522              : E_V8HImode) != 0)
    4523              :         return -1;
    4524              :       return 1;
    4525              : 
    4526         4204 :     case E_V4SImode:
    4527         4204 :       if (pattern1157 (x1, 
    4528              : E_V4SImode) != 0)
    4529              :         return -1;
    4530              :       return 2;
    4531              : 
    4532         2290 :     case E_V2DImode:
    4533         2290 :       if (pattern1157 (x1, 
    4534              : E_V2DImode) != 0)
    4535              :         return -1;
    4536              :       return 3;
    4537              : 
    4538              :     default:
    4539              :       return -1;
    4540              :     }
    4541              : }
    4542              : 
    4543              : int
    4544          237 : pattern1170 (rtx x1, machine_mode i1)
    4545              : {
    4546          237 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4547          237 :   rtx x2, x3;
    4548          237 :   int res ATTRIBUTE_UNUSED;
    4549          237 :   if (!nonimmediate_operand (operands[0], i1)
    4550          237 :       || GET_MODE (x1) != i1)
    4551              :     return -1;
    4552          237 :   x2 = XEXP (x1, 0);
    4553          237 :   if (GET_MODE (x2) != i1)
    4554              :     return -1;
    4555          237 :   x3 = XEXP (x2, 0);
    4556          237 :   if (GET_MODE (x3) != i1
    4557          237 :       || !nonimmediate_operand (operands[1], i1)
    4558          425 :       || !x86_64_general_operand (operands[2], i1))
    4559           49 :     return -1;
    4560              :   return 0;
    4561              : }
    4562              : 
    4563              : int
    4564        26283 : pattern1178 (rtx x1)
    4565              : {
    4566        26283 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4567        26283 :   rtx x2, x3, x4, x5;
    4568        26283 :   int res ATTRIBUTE_UNUSED;
    4569        26283 :   x2 = XEXP (x1, 1);
    4570        26283 :   x3 = XEXP (x2, 0);
    4571        26283 :   switch (GET_CODE (x3))
    4572              :     {
    4573         4377 :     case AND:
    4574         4377 :       x4 = XEXP (x3, 0);
    4575         4377 :       operands[2] = x4;
    4576         4377 :       if (!int248_register_operand (operands[2], E_VOIDmode))
    4577              :         return -1;
    4578         4227 :       return pattern1177 (x1); /* [-1, 3] */
    4579              : 
    4580            0 :     case PLUS:
    4581            0 :       x4 = XEXP (x3, 0);
    4582            0 :       operands[2] = x4;
    4583            0 :       if (!int_nonimmediate_operand (operands[2], E_VOIDmode))
    4584              :         return -1;
    4585            0 :       res = pattern1177 (x1);
    4586            0 :       if (res >= 0)
    4587            0 :         return res + 4; /* [4, 7] */
    4588              :       return -1;
    4589              : 
    4590            0 :     case MINUS:
    4591            0 :       x4 = XEXP (x3, 0);
    4592            0 :       operands[3] = x4;
    4593            0 :       if (!const_int_operand (operands[3], E_VOIDmode))
    4594              :         return -1;
    4595            0 :       x5 = XEXP (x3, 1);
    4596            0 :       operands[2] = x5;
    4597            0 :       if (!int_nonimmediate_operand (operands[2], E_VOIDmode))
    4598              :         return -1;
    4599            0 :       res = pattern207 (x1);
    4600            0 :       if (res >= 0)
    4601            0 :         return res + 8; /* [8, 11] */
    4602              :       return -1;
    4603              : 
    4604              :     default:
    4605              :       return -1;
    4606              :     }
    4607              : }
    4608              : 
    4609              : int
    4610          683 : pattern1196 (rtx x1, machine_mode i1, machine_mode i2)
    4611              : {
    4612          683 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4613          683 :   int res ATTRIBUTE_UNUSED;
    4614          683 :   if (!register_operand (operands[0], i2)
    4615          677 :       || GET_MODE (x1) != i2
    4616          677 :       || !const0_operand (operands[2], i2)
    4617            8 :       || !vector_all_ones_operand (operands[3], i2)
    4618          683 :       || !register_operand (operands[1], i1))
    4619          683 :     return -1;
    4620              :   return 0;
    4621              : }
    4622              : 
    4623              : int
    4624            4 : pattern1201 (rtx x1, machine_mode i1)
    4625              : {
    4626            4 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4627            4 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4628            4 :   rtx x10, x11, x12;
    4629            4 :   int res ATTRIBUTE_UNUSED;
    4630            4 :   x2 = XVECEXP (x1, 0, 0);
    4631            4 :   x3 = XEXP (x2, 1);
    4632            4 :   x4 = XEXP (x3, 0);
    4633            4 :   operands[2] = x4;
    4634            4 :   if (!memory_operand (operands[2], i1))
    4635              :     return -1;
    4636            4 :   x5 = XVECEXP (x1, 0, 1);
    4637            4 :   x6 = XEXP (x5, 1);
    4638            4 :   if (GET_CODE (x6) != MINUS)
    4639              :     return -1;
    4640            4 :   x7 = XEXP (x2, 0);
    4641            4 :   if (GET_MODE (x7) != E_CCmode
    4642            4 :       || GET_MODE (x3) != E_CCmode)
    4643              :     return -1;
    4644            4 :   x8 = XEXP (x3, 1);
    4645            4 :   if (!rtx_equal_p (x8, operands[0]))
    4646              :     return -1;
    4647            4 :   x9 = XEXP (x6, 0);
    4648            4 :   if (!rtx_equal_p (x9, operands[2]))
    4649              :     return -1;
    4650            4 :   x10 = XEXP (x6, 1);
    4651            4 :   if (!rtx_equal_p (x10, operands[0]))
    4652              :     return -1;
    4653            4 :   x11 = PATTERN (peep2_next_insn (2));
    4654            4 :   x12 = XEXP (x11, 0);
    4655            4 :   if (!rtx_equal_p (x12, operands[2]))
    4656              :     return -1;
    4657              :   return 0;
    4658              : }
    4659              : 
    4660              : int
    4661      1129725 : pattern1210 (rtx x1)
    4662              : {
    4663      1129725 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4664      1129725 :   int res ATTRIBUTE_UNUSED;
    4665      1129725 :   if (!register_operand (operands[0], E_QImode)
    4666      1126343 :       || GET_MODE (x1) != E_QImode
    4667      1126343 :       || !ix86_comparison_operator (operands[1], E_VOIDmode)
    4668      1126343 :       || !register_operand (operands[2], E_QImode)
    4669      2243520 :       || !register_operand (operands[3], E_QImode))
    4670       523420 :     return -1;
    4671              :   return 0;
    4672              : }
    4673              : 
    4674              : int
    4675          159 : pattern1215 (rtx x1, machine_mode i1)
    4676              : {
    4677          159 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4678          159 :   rtx x2, x3;
    4679          159 :   int res ATTRIBUTE_UNUSED;
    4680          159 :   if (!nonimmediate_operand (operands[0], i1)
    4681          159 :       || GET_MODE (x1) != i1)
    4682              :     return -1;
    4683          159 :   x2 = XEXP (x1, 0);
    4684          159 :   if (GET_MODE (x2) != i1)
    4685              :     return -1;
    4686          159 :   x3 = XEXP (x2, 0);
    4687          159 :   if (GET_MODE (x3) != i1
    4688          159 :       || !nonimmediate_operand (operands[1], i1)
    4689          269 :       || !x86_64_general_operand (operands[2], i1))
    4690           49 :     return -1;
    4691              :   return 0;
    4692              : }
    4693              : 
    4694              : int
    4695         1933 : pattern1222 (rtx x1, machine_mode i1, machine_mode i2)
    4696              : {
    4697         1933 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4698         1933 :   rtx x2;
    4699         1933 :   int res ATTRIBUTE_UNUSED;
    4700         1933 :   if (!register_operand (operands[0], i1)
    4701         1933 :       || GET_MODE (x1) != i1)
    4702              :     return -1;
    4703         1799 :   x2 = XEXP (x1, 0);
    4704         1799 :   if (GET_MODE (x2) != i1
    4705         1799 :       || !vector_operand (operands[1], i1)
    4706         1799 :       || !nonimm_or_0_operand (operands[3], i1)
    4707         3568 :       || !register_operand (operands[4], i2))
    4708          139 :     return -1;
    4709              :   return 0;
    4710              : }
    4711              : 
    4712              : int
    4713          652 : pattern1230 (rtx x1, machine_mode i1)
    4714              : {
    4715          652 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4716          652 :   rtx x2;
    4717          652 :   int res ATTRIBUTE_UNUSED;
    4718          652 :   if (!register_operand (operands[0], i1)
    4719          652 :       || GET_MODE (x1) != i1)
    4720              :     return -1;
    4721          626 :   x2 = XVECEXP (x1, 0, 0);
    4722          626 :   if (GET_MODE (x2) != i1
    4723          626 :       || !nonimmediate_operand (operands[1], i1))
    4724            2 :     return -1;
    4725              :   return 0;
    4726              : }
    4727              : 
    4728              : int
    4729           42 : pattern1235 (rtx x1)
    4730              : {
    4731           42 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4732           42 :   rtx x2, x3, x4, x5, x6, x7;
    4733           42 :   int res ATTRIBUTE_UNUSED;
    4734           42 :   x2 = XVECEXP (x1, 0, 2);
    4735           42 :   x3 = XEXP (x2, 0);
    4736           42 :   x4 = XEXP (x3, 0);
    4737           42 :   if (maybe_ne (SUBREG_BYTE (x4), 0))
    4738              :     return -1;
    4739           42 :   x5 = XEXP (x4, 0);
    4740           42 :   if (GET_CODE (x5) != NOT)
    4741              :     return -1;
    4742           18 :   x6 = XEXP (x5, 0);
    4743           18 :   operands[3] = x6;
    4744           18 :   x7 = XEXP (x3, 1);
    4745           18 :   operands[4] = x7;
    4746           18 :   switch (GET_MODE (operands[0]))
    4747              :     {
    4748           18 :     case E_V16QImode:
    4749           18 :       if (!register_operand (operands[0], E_V16QImode)
    4750           18 :           || GET_MODE (x1) != E_V16QImode
    4751           18 :           || !register_operand (operands[1], E_V16QImode)
    4752           18 :           || !vector_operand (operands[2], E_V16QImode)
    4753           18 :           || GET_MODE (x2) != E_V16QImode
    4754           18 :           || GET_MODE (x5) != E_V16QImode
    4755           36 :           || !register_operand (operands[3], E_V16QImode))
    4756            0 :         return -1;
    4757           18 :       switch (GET_MODE (x3))
    4758              :         {
    4759           18 :         case E_V4SImode:
    4760           18 :           if (GET_MODE (x4) != E_V4SImode
    4761           18 :               || !const0_operand (operands[4], E_V4SImode))
    4762            0 :             return -1;
    4763              :           return 0;
    4764              : 
    4765            0 :         case E_V2DImode:
    4766            0 :           if (GET_MODE (x4) != E_V2DImode
    4767            0 :               || !const0_operand (operands[4], E_V2DImode))
    4768            0 :             return -1;
    4769              :           return 1;
    4770              : 
    4771              :         default:
    4772              :           return -1;
    4773              :         }
    4774              : 
    4775            0 :     case E_V32QImode:
    4776            0 :       if (!register_operand (operands[0], E_V32QImode)
    4777            0 :           || GET_MODE (x1) != E_V32QImode
    4778            0 :           || !register_operand (operands[1], E_V32QImode)
    4779            0 :           || !vector_operand (operands[2], E_V32QImode)
    4780            0 :           || GET_MODE (x2) != E_V32QImode
    4781            0 :           || GET_MODE (x5) != E_V32QImode
    4782            0 :           || !register_operand (operands[3], E_V32QImode))
    4783            0 :         return -1;
    4784            0 :       switch (GET_MODE (x3))
    4785              :         {
    4786            0 :         case E_V8SImode:
    4787            0 :           if (GET_MODE (x4) != E_V8SImode
    4788            0 :               || !const0_operand (operands[4], E_V8SImode))
    4789            0 :             return -1;
    4790              :           return 2;
    4791              : 
    4792            0 :         case E_V4DImode:
    4793            0 :           if (GET_MODE (x4) != E_V4DImode
    4794            0 :               || !const0_operand (operands[4], E_V4DImode))
    4795            0 :             return -1;
    4796              :           return 3;
    4797              : 
    4798              :         default:
    4799              :           return -1;
    4800              :         }
    4801              : 
    4802              :     default:
    4803              :       return -1;
    4804              :     }
    4805              : }
    4806              : 
    4807              : int
    4808           58 : pattern1256 (rtx x1)
    4809              : {
    4810           58 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4811           58 :   rtx x2, x3, x4, x5;
    4812           58 :   int res ATTRIBUTE_UNUSED;
    4813           58 :   x2 = XEXP (x1, 0);
    4814           58 :   x3 = XEXP (x2, 0);
    4815           58 :   x4 = XEXP (x3, 0);
    4816           58 :   operands[1] = x4;
    4817           58 :   x5 = XEXP (x3, 1);
    4818           58 :   operands[2] = x5;
    4819           58 :   if (!register_operand (operands[2], E_QImode))
    4820              :     return -1;
    4821           50 :   return pattern1255 (x1); /* [-1, 1] */
    4822              : }
    4823              : 
    4824              : int
    4825        12499 : pattern1261 (rtx x1)
    4826              : {
    4827        12499 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4828        12499 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4829        12499 :   int res ATTRIBUTE_UNUSED;
    4830        12499 :   x2 = XVECEXP (x1, 0, 1);
    4831        12499 :   if (GET_CODE (x2) != CLOBBER)
    4832              :     return -1;
    4833        12499 :   x3 = XVECEXP (x1, 0, 2);
    4834        12499 :   if (GET_CODE (x3) != CLOBBER)
    4835              :     return -1;
    4836        12499 :   x4 = XVECEXP (x1, 0, 3);
    4837        12499 :   x5 = XEXP (x4, 0);
    4838        12499 :   if (GET_CODE (x5) != REG
    4839        12499 :       || REGNO (x5) != 17
    4840        12499 :       || GET_MODE (x5) != E_CCmode
    4841        24998 :       || !register_operand (operands[0], E_SImode))
    4842            0 :     return -1;
    4843        12499 :   x6 = XVECEXP (x1, 0, 0);
    4844        12499 :   x7 = XEXP (x6, 1);
    4845        12499 :   x8 = XVECEXP (x7, 0, 0);
    4846        12499 :   operands[1] = x8;
    4847        12499 :   if (!register_operand (operands[1], E_SImode))
    4848              :     return -1;
    4849        12045 :   x9 = XVECEXP (x7, 0, 1);
    4850        12045 :   operands[2] = x9;
    4851        12045 :   return 0;
    4852              : }
    4853              : 
    4854              : int
    4855            2 : pattern1272 (rtx x1)
    4856              : {
    4857            2 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4858            2 :   rtx x2, x3, x4, x5, x6, x7;
    4859            2 :   int res ATTRIBUTE_UNUSED;
    4860            2 :   x2 = XEXP (x1, 2);
    4861            2 :   switch (GET_CODE (x2))
    4862              :     {
    4863            0 :     case REG:
    4864            0 :     case SUBREG:
    4865            0 :       operands[1] = x2;
    4866            0 :       x3 = XEXP (x1, 0);
    4867            0 :       operands[0] = x3;
    4868            0 :       x4 = XEXP (x1, 1);
    4869            0 :       operands[3] = x4;
    4870            0 :       switch (GET_MODE (x1))
    4871              :         {
    4872            0 :         case E_V32QImode:
    4873            0 :           if (!vector_all_ones_operand (operands[0], E_V32QImode)
    4874            0 :               || !const0_operand (operands[3], E_V32QImode)
    4875            0 :               || !register_operand (operands[1], E_SImode))
    4876            0 :             return -1;
    4877              :           return 0;
    4878              : 
    4879            0 :         case E_V16QImode:
    4880            0 :           if (!vector_all_ones_operand (operands[0], E_V16QImode)
    4881            0 :               || !const0_operand (operands[3], E_V16QImode)
    4882            0 :               || !register_operand (operands[1], E_HImode))
    4883            0 :             return -1;
    4884              :           return 1;
    4885              : 
    4886              :         default:
    4887              :           return -1;
    4888              :         }
    4889              : 
    4890            2 :     case UNSPEC:
    4891            2 :       if (XVECLEN (x2, 0) != 3
    4892            2 :           || XINT (x2, 1) != 60)
    4893              :         return -1;
    4894            2 :       x5 = XVECEXP (x2, 0, 2);
    4895            2 :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4896              :         return -1;
    4897            2 :       x3 = XEXP (x1, 0);
    4898            2 :       operands[3] = x3;
    4899            2 :       x4 = XEXP (x1, 1);
    4900            2 :       operands[4] = x4;
    4901            2 :       x6 = XVECEXP (x2, 0, 0);
    4902            2 :       operands[0] = x6;
    4903            2 :       x7 = XVECEXP (x2, 0, 1);
    4904            2 :       operands[1] = x7;
    4905            2 :       switch (GET_MODE (x1))
    4906              :         {
    4907            0 :         case E_V32QImode:
    4908            0 :           if (pattern1271 (x2, 
    4909              : E_V32QImode, 
    4910              : E_SImode) != 0)
    4911              :             return -1;
    4912              :           return 2;
    4913              : 
    4914            2 :         case E_V16QImode:
    4915            2 :           if (pattern1271 (x2, 
    4916              : E_V16QImode, 
    4917              : E_HImode) != 0)
    4918              :             return -1;
    4919              :           return 3;
    4920              : 
    4921              :         default:
    4922              :           return -1;
    4923              :         }
    4924              : 
    4925              :     default:
    4926              :       return -1;
    4927              :     }
    4928              : }
    4929              : 
    4930              : int
    4931          787 : pattern1298 (rtx x1, machine_mode i1, machine_mode i2)
    4932              : {
    4933          787 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4934          787 :   rtx x2;
    4935          787 :   int res ATTRIBUTE_UNUSED;
    4936          787 :   if (!register_operand (operands[0], i2)
    4937          787 :       || GET_MODE (x1) != i2)
    4938              :     return -1;
    4939          763 :   x2 = XEXP (x1, 0);
    4940          763 :   if (GET_MODE (x2) != i2
    4941          763 :       || !nonimmediate_operand (operands[1], i2)
    4942          736 :       || !nonimmediate_operand (operands[2], i2)
    4943          736 :       || !nonimmediate_operand (operands[3], i2)
    4944         1490 :       || !register_operand (operands[4], i1))
    4945           36 :     return -1;
    4946              :   return 0;
    4947              : }
    4948              : 
    4949              : int
    4950          460 : pattern1308 (rtx x1, int i1, int i2, int i3, int i4)
    4951              : {
    4952          460 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4953          460 :   rtx x2, x3, x4, x5;
    4954          460 :   int res ATTRIBUTE_UNUSED;
    4955          460 :   x2 = XVECEXP (x1, 0, 8);
    4956          460 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + i4])
    4957              :     return -1;
    4958          460 :   x3 = XVECEXP (x1, 0, 9);
    4959          460 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + i3])
    4960              :     return -1;
    4961          460 :   x4 = XVECEXP (x1, 0, 10);
    4962          460 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + i2])
    4963              :     return -1;
    4964          460 :   x5 = XVECEXP (x1, 0, 11);
    4965          460 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    4966            0 :     return -1;
    4967              :   return 0;
    4968              : }
    4969              : 
    4970              : int
    4971          972 : pattern1317 (rtx x1)
    4972              : {
    4973          972 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4974          972 :   rtx x2, x3;
    4975          972 :   int res ATTRIBUTE_UNUSED;
    4976          972 :   if (!register_operand (operands[0], E_V16HFmode)
    4977          972 :       || GET_MODE (x1) != E_V16HFmode)
    4978              :     return -1;
    4979          944 :   x2 = XVECEXP (x1, 0, 0);
    4980          944 :   if (GET_MODE (x2) != E_V16HFmode)
    4981              :     return -1;
    4982          944 :   x3 = XEXP (x2, 0);
    4983          944 :   if (GET_MODE (x3) != E_V16HFmode
    4984          944 :       || !nonimm_or_0_operand (operands[2], E_V16HFmode)
    4985         1888 :       || !register_operand (operands[3], E_HImode))
    4986           20 :     return -1;
    4987          924 :   switch (GET_MODE (operands[1]))
    4988              :     {
    4989            0 :     case E_V16HImode:
    4990            0 :       if (!register_operand (operands[1], E_V16HImode))
    4991              :         return -1;
    4992              :       return 0;
    4993              : 
    4994          924 :     case E_V16SImode:
    4995          924 :       if (!register_operand (operands[1], E_V16SImode))
    4996              :         return -1;
    4997              :       return 1;
    4998              : 
    4999              :     default:
    5000              :       return -1;
    5001              :     }
    5002              : }
    5003              : 
    5004              : int
    5005         6828 : pattern1326 (rtx x1)
    5006              : {
    5007         6828 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5008         6828 :   rtx x2, x3, x4, x5, x6, x7;
    5009         6828 :   int res ATTRIBUTE_UNUSED;
    5010         6828 :   x2 = XEXP (x1, 1);
    5011         6828 :   x3 = XEXP (x2, 2);
    5012         6828 :   if (maybe_ne (SUBREG_BYTE (x3), 0)
    5013         6828 :       || GET_MODE (x3) != E_QImode)
    5014              :     return -1;
    5015         6828 :   x4 = XEXP (x3, 0);
    5016         6828 :   if (GET_CODE (x4) != AND)
    5017              :     return -1;
    5018         1127 :   x5 = XEXP (x1, 0);
    5019         1127 :   operands[0] = x5;
    5020         1127 :   x6 = XEXP (x4, 0);
    5021         1127 :   operands[2] = x6;
    5022         1127 :   if (!int248_register_operand (operands[2], E_VOIDmode))
    5023              :     return -1;
    5024         1040 :   x7 = XEXP (x4, 1);
    5025         1040 :   operands[3] = x7;
    5026         1040 :   if (!const_int_operand (operands[3], E_VOIDmode))
    5027              :     return -1;
    5028         1040 :   return pattern410 (x2); /* [-1, 1] */
    5029              : }
    5030              : 
    5031              : int
    5032          130 : pattern1333 (rtx x1, machine_mode i1)
    5033              : {
    5034          130 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5035          130 :   int res ATTRIBUTE_UNUSED;
    5036          130 :   if (!register_operand (operands[0], i1)
    5037          130 :       || GET_MODE (x1) != i1
    5038          130 :       || !register_operand (operands[1], i1)
    5039          251 :       || !general_operand (operands[2], i1))
    5040           30 :     return -1;
    5041              :   return 0;
    5042              : }
    5043              : 
    5044              : int
    5045            0 : pattern1340 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    5046              : {
    5047            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5048            0 :   int res ATTRIBUTE_UNUSED;
    5049            0 :   if (!register_operand (operands[0], i3)
    5050            0 :       || GET_MODE (x1) != i3
    5051            0 :       || pattern565 (x1, 
    5052              : i1, 
    5053              : i2) != 0)
    5054            0 :     return -1;
    5055              :   return 0;
    5056              : }
    5057              : 
    5058              : int
    5059          184 : pattern1344 (rtx x1)
    5060              : {
    5061          184 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5062          184 :   rtx x2, x3, x4;
    5063          184 :   int res ATTRIBUTE_UNUSED;
    5064          184 :   x2 = XEXP (x1, 0);
    5065          184 :   x3 = XEXP (x2, 0);
    5066          184 :   operands[0] = x3;
    5067          184 :   if (!nonmemory_operand (operands[2], E_QImode))
    5068              :     return -1;
    5069          177 :   x4 = XEXP (x1, 1);
    5070          177 :   return pattern379 (x4); /* [-1, 1] */
    5071              : }
    5072              : 
    5073              : int
    5074            0 : pattern1351 (rtx x1)
    5075              : {
    5076            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5077            0 :   rtx x2, x3, x4, x5, x6;
    5078            0 :   int res ATTRIBUTE_UNUSED;
    5079            0 :   x2 = XEXP (x1, 1);
    5080            0 :   if (GET_CODE (x2) != CALL)
    5081              :     return -1;
    5082            0 :   x3 = XEXP (x2, 0);
    5083            0 :   if (GET_CODE (x3) != MEM
    5084            0 :       || GET_MODE (x3) != E_QImode)
    5085              :     return -1;
    5086            0 :   x4 = XEXP (x1, 0);
    5087            0 :   operands[2] = x4;
    5088            0 :   x5 = XEXP (x2, 1);
    5089            0 :   operands[3] = x5;
    5090            0 :   x6 = XEXP (x3, 0);
    5091            0 :   if (!rtx_equal_p (x6, operands[0]))
    5092              :     return -1;
    5093              :   return 0;
    5094              : }
    5095              : 
    5096              : int
    5097       224067 : pattern1356 (rtx x1, machine_mode i1)
    5098              : {
    5099       224067 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5100       224067 :   rtx x2, x3, x4, x5, x6, x7, x8;
    5101       224067 :   int res ATTRIBUTE_UNUSED;
    5102       224067 :   x2 = XVECEXP (x1, 0, 0);
    5103       224067 :   x3 = XEXP (x2, 0);
    5104       224067 :   if (GET_CODE (x3) != REG
    5105       224067 :       || REGNO (x3) != 17)
    5106              :     return -1;
    5107         7497 :   x4 = XVECEXP (x1, 0, 1);
    5108         7497 :   if (GET_CODE (x4) != SET)
    5109              :     return -1;
    5110         6696 :   x5 = XEXP (x2, 1);
    5111         6696 :   operands[5] = x5;
    5112         6696 :   x6 = XEXP (x4, 1);
    5113         6696 :   operands[6] = x6;
    5114         6696 :   x7 = XEXP (x4, 0);
    5115         6696 :   if (!rtx_equal_p (x7, operands[0]))
    5116              :     return -1;
    5117         6513 :   x8 = PATTERN (peep2_next_insn (2));
    5118         6513 :   return pattern1355 (x8, 
    5119         6513 : i1); /* [-1, 0] */
    5120              : }
    5121              : 
    5122              : int
    5123       653022 : pattern1365 (rtx x1, machine_mode i1)
    5124              : {
    5125       653022 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5126       653022 :   int res ATTRIBUTE_UNUSED;
    5127       653022 :   if (!register_operand (operands[0], i1)
    5128       648154 :       || GET_MODE (x1) != i1
    5129       648154 :       || !nonimmediate_operand (operands[1], i1)
    5130      1285129 :       || !const_int_operand (operands[2], i1))
    5131        79034 :     return -1;
    5132              :   return 0;
    5133              : }
    5134              : 
    5135              : int
    5136          826 : pattern1371 (rtx x1)
    5137              : {
    5138          826 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5139          826 :   rtx x2, x3, x4, x5, x6, x7, x8;
    5140          826 :   int res ATTRIBUTE_UNUSED;
    5141          826 :   if (!nonimmediate_operand (operands[0], E_DImode))
    5142              :     return -1;
    5143          826 :   x2 = XEXP (x1, 1);
    5144          826 :   if (GET_MODE (x2) != E_DImode)
    5145              :     return -1;
    5146          826 :   x3 = XEXP (x2, 0);
    5147          826 :   if (GET_MODE (x3) != E_TImode)
    5148              :     return -1;
    5149          826 :   x4 = XEXP (x3, 0);
    5150          826 :   if (GET_MODE (x4) != E_TImode)
    5151              :     return -1;
    5152          826 :   x5 = XEXP (x4, 0);
    5153          826 :   operands[1] = x5;
    5154          826 :   if (!register_operand (operands[1], E_DImode))
    5155              :     return -1;
    5156          826 :   x6 = XEXP (x3, 1);
    5157          826 :   operands[3] = x6;
    5158          826 :   if (!const_0_to_255_operand (operands[3], E_QImode))
    5159              :     return -1;
    5160          826 :   x7 = XEXP (x1, 0);
    5161          826 :   x8 = XEXP (x7, 0);
    5162          826 :   if (!rtx_equal_p (x8, operands[0]))
    5163              :     return -1;
    5164              :   return 0;
    5165              : }
    5166              : 
    5167              : int
    5168          276 : pattern1380 (rtx x1, machine_mode i1, machine_mode i2)
    5169              : {
    5170          276 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5171          276 :   rtx x2;
    5172          276 :   int res ATTRIBUTE_UNUSED;
    5173          276 :   if (!register_operand (operands[0], i2)
    5174          276 :       || GET_MODE (x1) != i2)
    5175              :     return -1;
    5176          264 :   x2 = XEXP (x1, 0);
    5177          264 :   if (GET_MODE (x2) != i2
    5178          264 :       || !register_operand (operands[1], i2)
    5179          264 :       || !register_operand (operands[2], i1)
    5180          524 :       || !nonimmediate_operand (operands[3], i1))
    5181            4 :     return -1;
    5182              :   return 0;
    5183              : }
    5184              : 
    5185              : int
    5186          436 : pattern1387 (rtx x1, machine_mode i1)
    5187              : {
    5188          436 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5189          436 :   rtx x2;
    5190          436 :   int res ATTRIBUTE_UNUSED;
    5191          436 :   if (!register_operand (operands[0], i1)
    5192          436 :       || GET_MODE (x1) != i1)
    5193              :     return -1;
    5194          436 :   x2 = XEXP (x1, 0);
    5195          436 :   if (GET_MODE (x2) != i1
    5196          436 :       || !nonimmediate_operand (operands[1], i1)
    5197          436 :       || !nonimmediate_operand (operands[2], i1)
    5198          436 :       || !nonimmediate_operand (operands[3], i1)
    5199          872 :       || !const0_operand (operands[4], i1))
    5200            0 :     return -1;
    5201              :   return 0;
    5202              : }
    5203              : 
    5204              : int
    5205           40 : pattern1398 (rtx x1, machine_mode i1)
    5206              : {
    5207           40 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5208           40 :   rtx x2, x3;
    5209           40 :   int res ATTRIBUTE_UNUSED;
    5210           40 :   if (!register_operand (operands[0], i1)
    5211           40 :       || GET_MODE (x1) != i1)
    5212              :     return -1;
    5213           40 :   x2 = XEXP (x1, 0);
    5214           40 :   if (GET_MODE (x2) != i1)
    5215              :     return -1;
    5216           40 :   x3 = XEXP (x2, 0);
    5217           40 :   if (GET_MODE (x3) != i1
    5218           40 :       || !nonimmediate_operand (operands[1], i1)
    5219           40 :       || !nonimmediate_operand (operands[2], i1)
    5220           40 :       || !nonimmediate_operand (operands[3], i1)
    5221           80 :       || !const0_operand (operands[4], i1))
    5222            0 :     return -1;
    5223              :   return 0;
    5224              : }
    5225              : 
    5226              : int
    5227         1136 : pattern1410 (rtx x1, machine_mode i1)
    5228              : {
    5229         1136 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5230         1136 :   rtx x2, x3, x4, x5, x6;
    5231         1136 :   int res ATTRIBUTE_UNUSED;
    5232         1136 :   if (!register_operand (operands[0], i1)
    5233         1136 :       || GET_MODE (x1) != i1)
    5234              :     return -1;
    5235         1085 :   x2 = XVECEXP (x1, 0, 0);
    5236         1085 :   if (GET_MODE (x2) != i1)
    5237              :     return -1;
    5238         1085 :   x3 = XEXP (x2, 0);
    5239         1085 :   if (GET_MODE (x3) != i1)
    5240              :     return -1;
    5241         1085 :   x4 = XEXP (x3, 0);
    5242         1085 :   if (GET_MODE (x4) != i1)
    5243              :     return -1;
    5244         1085 :   x5 = XEXP (x4, 0);
    5245         1085 :   if (GET_MODE (x5) != i1)
    5246              :     return -1;
    5247         1085 :   x6 = XEXP (x4, 1);
    5248         1085 :   if (!register_operand (x6, i1))
    5249              :     return -1;
    5250              :   return 0;
    5251              : }
    5252              : 
    5253              : int
    5254         1459 : pattern1418 (rtx x1)
    5255              : {
    5256         1459 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5257         1459 :   rtx x2;
    5258         1459 :   int res ATTRIBUTE_UNUSED;
    5259         1459 :   x2 = XVECEXP (x1, 0, 1);
    5260         1459 :   operands[4] = x2;
    5261         1459 :   if (!const48_operand (operands[4], E_SImode))
    5262              :     return -1;
    5263         1459 :   return pattern1417 (x1); /* [-1, 2] */
    5264              : }
    5265              : 
    5266              : int
    5267          333 : pattern1422 (rtx x1, machine_mode i1)
    5268              : {
    5269          333 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5270          333 :   rtx x2, x3;
    5271          333 :   int res ATTRIBUTE_UNUSED;
    5272          333 :   if (!register_operand (operands[0], i1)
    5273          333 :       || GET_MODE (x1) != i1)
    5274              :     return -1;
    5275          320 :   x2 = XVECEXP (x1, 0, 0);
    5276          320 :   if (GET_MODE (x2) != i1)
    5277              :     return -1;
    5278          320 :   x3 = XEXP (x2, 0);
    5279          320 :   if (GET_MODE (x3) != i1
    5280          320 :       || !register_operand (operands[1], i1)
    5281          312 :       || !register_operand (operands[2], i1)
    5282          627 :       || !register_operand (operands[3], i1))
    5283           13 :     return -1;
    5284              :   return 0;
    5285              : }
    5286              : 
    5287              : int
    5288          614 : pattern1430 (rtx x1, machine_mode i1)
    5289              : {
    5290          614 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5291          614 :   int res ATTRIBUTE_UNUSED;
    5292          614 :   if (!register_operand (operands[0], i1)
    5293          614 :       || GET_MODE (x1) != i1
    5294          614 :       || !nonimmediate_operand (operands[1], i1)
    5295         1228 :       || !register_operand (operands[2], i1))
    5296          107 :     return -1;
    5297              :   return 0;
    5298              : }
    5299              : 
    5300              : int
    5301          213 : pattern1437 (rtx x1, machine_mode i1)
    5302              : {
    5303          213 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5304          213 :   int res ATTRIBUTE_UNUSED;
    5305          213 :   if (GET_MODE (x1) != i1
    5306          213 :       || !register_operand (operands[1], i1)
    5307          213 :       || !nonimmediate_operand (operands[2], i1)
    5308          230 :       || !scratch_operand (operands[0], i1))
    5309          196 :     return -1;
    5310              :   return 0;
    5311              : }
    5312              : 
    5313              : int
    5314           59 : pattern1443 (rtx x1)
    5315              : {
    5316           59 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5317           59 :   rtx x2, x3, x4, x5, x6, x7;
    5318           59 :   int res ATTRIBUTE_UNUSED;
    5319           59 :   x2 = XEXP (x1, 0);
    5320           59 :   operands[0] = x2;
    5321           59 :   x3 = XEXP (x1, 1);
    5322           59 :   x4 = XEXP (x3, 0);
    5323           59 :   x5 = XEXP (x4, 0);
    5324           59 :   x6 = XEXP (x5, 1);
    5325           59 :   operands[2] = x6;
    5326           59 :   if (!register_operand (operands[2], E_QImode))
    5327              :     return -1;
    5328           34 :   x7 = XEXP (x3, 1);
    5329           34 :   operands[1] = x7;
    5330           34 :   switch (GET_MODE (operands[0]))
    5331              :     {
    5332           22 :     case E_QImode:
    5333           22 :       return pattern1442 (x3, 
    5334           22 : E_QImode); /* [-1, 0] */
    5335              : 
    5336           12 :     case E_HImode:
    5337           12 :       if (pattern1442 (x3, 
    5338              : E_HImode) != 0)
    5339              :         return -1;
    5340              :       return 1;
    5341              : 
    5342              :     default:
    5343              :       return -1;
    5344              :     }
    5345              : }
    5346              : 
    5347              : int
    5348         4052 : pattern1456 (rtx x1, machine_mode i1)
    5349              : {
    5350         4052 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5351         4052 :   rtx x2, x3;
    5352         4052 :   int res ATTRIBUTE_UNUSED;
    5353         4052 :   if (!register_operand (operands[0], i1)
    5354         4052 :       || !addsub_vm_operator (operands[6], i1))
    5355            0 :     return -1;
    5356         4052 :   x2 = XEXP (x1, 0);
    5357         4052 :   if (GET_MODE (x2) != i1
    5358         4052 :       || !register_operand (operands[1], i1)
    5359         8104 :       || !vector_operand (operands[2], i1))
    5360            0 :     return -1;
    5361         4052 :   x3 = XEXP (x1, 1);
    5362         4052 :   if (GET_MODE (x3) != i1
    5363         4052 :       || !vector_operand (operands[3], i1)
    5364         8104 :       || !vector_operand (operands[4], i1))
    5365            0 :     return -1;
    5366              :   return 0;
    5367              : }
    5368              : 
    5369              : int
    5370          678 : pattern1464 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    5371              : {
    5372          678 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5373          678 :   rtx x2, x3;
    5374          678 :   int res ATTRIBUTE_UNUSED;
    5375          678 :   if (!register_operand (operands[0], i1)
    5376          678 :       || GET_MODE (x1) != i1)
    5377              :     return -1;
    5378          647 :   x2 = XEXP (x1, 0);
    5379          647 :   if (GET_MODE (x2) != i1
    5380          647 :       || !register_operand (operands[2], i2)
    5381          647 :       || !register_operand (operands[1], i1)
    5382         1265 :       || !nonimmediate_operand (operands[3], i1))
    5383           29 :     return -1;
    5384          618 :   x3 = XEXP (x1, 1);
    5385          618 :   if (GET_MODE (x3) != i1
    5386          618 :       || !register_operand (operands[4], i3))
    5387           36 :     return -1;
    5388              :   return 0;
    5389              : }
    5390              : 
    5391              : int
    5392           48 : pattern1475 (rtx x1, machine_mode i1, machine_mode i2)
    5393              : {
    5394           48 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5395           48 :   rtx x2, x3, x4;
    5396           48 :   int res ATTRIBUTE_UNUSED;
    5397           48 :   if (!register_operand (operands[0], i1)
    5398           48 :       || GET_MODE (x1) != i1
    5399           48 :       || !vector_operand (operands[1], i1)
    5400           96 :       || !vector_operand (operands[2], i1))
    5401            0 :     return -1;
    5402           48 :   x2 = XEXP (x1, 2);
    5403           48 :   if (GET_MODE (x2) != E_QImode)
    5404              :     return -1;
    5405           48 :   x3 = XVECEXP (x2, 0, 0);
    5406           48 :   if (GET_MODE (x3) != i1)
    5407              :     return -1;
    5408           48 :   x4 = XEXP (x3, 0);
    5409           48 :   if (GET_MODE (x4) != i2
    5410           48 :       || !vector_operand (operands[3], i2)
    5411           96 :       || !const0_operand (operands[4], i1))
    5412           24 :     return -1;
    5413              :   return 0;
    5414              : }
    5415              : 
    5416              : int
    5417         1188 : pattern1484 (rtx x1, machine_mode i1, machine_mode i2)
    5418              : {
    5419         1188 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5420         1188 :   rtx x2, x3;
    5421         1188 :   int res ATTRIBUTE_UNUSED;
    5422         1188 :   if (!register_operand (operands[0], i1)
    5423         1188 :       || GET_MODE (x1) != i1)
    5424              :     return -1;
    5425         1155 :   x2 = XVECEXP (x1, 0, 0);
    5426         1155 :   if (GET_MODE (x2) != i1)
    5427              :     return -1;
    5428         1155 :   x3 = XEXP (x2, 0);
    5429         1155 :   if (GET_MODE (x3) != i1
    5430         1155 :       || !register_operand (operands[1], i1)
    5431         1147 :       || !nonimm_or_0_operand (operands[2], i1)
    5432         2302 :       || !register_operand (operands[3], i2))
    5433           23 :     return -1;
    5434              :   return 0;
    5435              : }
    5436              : 
    5437              : int
    5438        89429 : pattern1491 (rtx x1, machine_mode i1, machine_mode i2)
    5439              : {
    5440        89429 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5441        89429 :   rtx x2;
    5442        89429 :   int res ATTRIBUTE_UNUSED;
    5443        89429 :   if (!nonimmediate_operand (operands[0], i1)
    5444        89429 :       || GET_MODE (x1) != i1)
    5445              :     return -1;
    5446        89429 :   x2 = XEXP (x1, 0);
    5447        89429 :   if (GET_MODE (x2) != i2
    5448        89429 :       || !nonimmediate_operand (operands[1], i1)
    5449       178838 :       || !nonimmediate_operand (operands[2], i1))
    5450          213 :     return -1;
    5451              :   return 0;
    5452              : }
    5453              : 
    5454              : int
    5455        11924 : pattern1497 (rtx x1, machine_mode i1)
    5456              : {
    5457        11924 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5458        11924 :   int res ATTRIBUTE_UNUSED;
    5459        11924 :   if (!nonimmediate_operand (operands[1], i1)
    5460        11924 :       || !general_operand (operands[2], i1)
    5461        11888 :       || !nonimmediate_operand (operands[0], i1)
    5462        23812 :       || GET_MODE (x1) != i1)
    5463           36 :     return -1;
    5464              :   return 0;
    5465              : }
    5466              : 
    5467              : int
    5468        69343 : pattern1503 (rtx x1, machine_mode i1)
    5469              : {
    5470        69343 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5471        69343 :   rtx x2, x3, x4, x5;
    5472        69343 :   int res ATTRIBUTE_UNUSED;
    5473        69343 :   if (!register_operand (operands[0], i1))
    5474              :     return -1;
    5475        69339 :   x2 = XVECEXP (x1, 0, 0);
    5476        69339 :   x3 = XEXP (x2, 1);
    5477        69339 :   if (GET_MODE (x3) != i1
    5478        69339 :       || !register_operand (operands[2], i1)
    5479        69051 :       || !const_int_operand (operands[3], i1)
    5480       138390 :       || !register_operand (operands[1], i1))
    5481          288 :     return -1;
    5482        69051 :   x4 = XVECEXP (x1, 0, 1);
    5483        69051 :   x5 = XEXP (x4, 1);
    5484        69051 :   if (GET_MODE (x5) != i1)
    5485              :     return -1;
    5486              :   return 0;
    5487              : }
    5488              : 
    5489              : int
    5490          734 : pattern1513 (rtx x1, int i1, int i2, int i3, int i4, int i5)
    5491              : {
    5492          734 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5493          734 :   rtx x2, x3, x4, x5, x6;
    5494          734 :   int res ATTRIBUTE_UNUSED;
    5495          734 :   x2 = XVECEXP (x1, 0, 7);
    5496          734 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + i5])
    5497              :     return -1;
    5498          734 :   x3 = XVECEXP (x1, 0, 8);
    5499          734 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + i4])
    5500              :     return -1;
    5501          734 :   x4 = XVECEXP (x1, 0, 9);
    5502          734 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + i3])
    5503              :     return -1;
    5504          734 :   x5 = XVECEXP (x1, 0, 10);
    5505          734 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + i2])
    5506              :     return -1;
    5507          734 :   x6 = XVECEXP (x1, 0, 11);
    5508          734 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + i1]
    5509          734 :       || pattern1426 (x1) != 0)
    5510            0 :     return -1;
    5511              :   return 0;
    5512              : }
    5513              : 
    5514              : int
    5515          121 : pattern1523 (rtx x1, machine_mode i1)
    5516              : {
    5517          121 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5518          121 :   rtx x2;
    5519          121 :   int res ATTRIBUTE_UNUSED;
    5520          121 :   if (!register_operand (operands[0], i1)
    5521          121 :       || GET_MODE (x1) != i1
    5522          242 :       || !register_operand (operands[2], i1))
    5523           20 :     return -1;
    5524          101 :   x2 = XEXP (x1, 1);
    5525          101 :   if (GET_MODE (x2) != i1
    5526          101 :       || !nonimmediate_operand (operands[3], i1))
    5527           75 :     return -1;
    5528              :   return 0;
    5529              : }
    5530              : 
    5531              : int
    5532       669776 : pattern1529 ()
    5533              : {
    5534       669776 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5535       669776 :   int res ATTRIBUTE_UNUSED;
    5536       669776 :   if (!const_0_to_3_operand (operands[3], E_VOIDmode)
    5537       622642 :       || !const_0_to_3_operand (operands[4], E_VOIDmode)
    5538       427765 :       || !const_4_to_7_operand (operands[5], E_VOIDmode)
    5539      1094126 :       || !const_4_to_7_operand (operands[6], E_VOIDmode))
    5540       248857 :     return -1;
    5541              :   return 0;
    5542              : }
    5543              : 
    5544              : int
    5545         2935 : pattern1536 (rtx x1, machine_mode i1)
    5546              : {
    5547         2935 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5548         2935 :   int res ATTRIBUTE_UNUSED;
    5549         2935 :   if (!nonimmediate_operand (operands[0], i1)
    5550         2935 :       || GET_MODE (x1) != i1
    5551         2935 :       || !ix86_carry_flag_operator (operands[2], i1)
    5552         5870 :       || !nonimmediate_operand (operands[1], i1))
    5553          849 :     return -1;
    5554              :   return 0;
    5555              : }
    5556              : 
    5557              : int
    5558         8739 : pattern1540 (rtx x1)
    5559              : {
    5560         8739 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5561         8739 :   rtx x2;
    5562         8739 :   int res ATTRIBUTE_UNUSED;
    5563         8739 :   if (maybe_ne (SUBREG_BYTE (x1), 0)
    5564         8739 :       || GET_MODE (x1) != E_QImode
    5565        17478 :       || !nonimmediate_operand (operands[0], E_SImode))
    5566            0 :     return -1;
    5567         8739 :   x2 = XEXP (x1, 0);
    5568         8739 :   return pattern1243 (x2); /* [-1, 2] */
    5569              : }
    5570              : 
    5571              : int
    5572            3 : pattern1547 (rtx x1, machine_mode i1)
    5573              : {
    5574            3 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5575            3 :   int res ATTRIBUTE_UNUSED;
    5576            3 :   if (GET_MODE (x1) != i1
    5577            3 :       || !ix86_carry_flag_operator (operands[3], i1)
    5578            3 :       || !nonimmediate_operand (operands[1], i1)
    5579            6 :       || !x86_64_general_operand (operands[2], i1))
    5580            0 :     return -1;
    5581              :   return 0;
    5582              : }
    5583              : 
    5584              : int
    5585           52 : pattern1552 (rtx x1, machine_mode i1)
    5586              : {
    5587           52 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5588           52 :   rtx x2, x3, x4;
    5589           52 :   int res ATTRIBUTE_UNUSED;
    5590           52 :   if (!register_operand (operands[0], i1)
    5591           52 :       || GET_MODE (x1) != i1)
    5592              :     return -1;
    5593           43 :   x2 = XEXP (x1, 0);
    5594           43 :   if (GET_MODE (x2) != i1)
    5595              :     return -1;
    5596           43 :   x3 = XEXP (x2, 0);
    5597           43 :   if (GET_MODE (x3) != i1)
    5598              :     return -1;
    5599           43 :   x4 = XEXP (x3, 0);
    5600           43 :   if (GET_MODE (x4) != i1
    5601           43 :       || !nonimmediate_operand (operands[2], i1)
    5602           43 :       || !nonimmediate_operand (operands[1], i1)
    5603           43 :       || !nonimmediate_operand (operands[3], i1)
    5604           86 :       || !const0_operand (operands[4], i1))
    5605            0 :     return -1;
    5606              :   return 0;
    5607              : }
    5608              : 
    5609              : int
    5610          190 : pattern1563 (rtx x1, machine_mode i1)
    5611              : {
    5612          190 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5613          190 :   rtx x2, x3, x4, x5, x6, x7;
    5614          190 :   int res ATTRIBUTE_UNUSED;
    5615          190 :   x2 = XEXP (x1, 0);
    5616          190 :   if (GET_CODE (x2) != VEC_SELECT
    5617          190 :       || GET_MODE (x2) != i1)
    5618              :     return -1;
    5619          190 :   x3 = XEXP (x2, 1);
    5620          190 :   if (GET_CODE (x3) != PARALLEL
    5621          190 :       || XVECLEN (x3, 0) != 1)
    5622              :     return -1;
    5623          190 :   x4 = XVECEXP (x3, 0, 0);
    5624          190 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    5625              :     return -1;
    5626          190 :   x5 = XEXP (x1, 1);
    5627          190 :   if (GET_CODE (x5) != VEC_SELECT
    5628          190 :       || GET_MODE (x5) != i1)
    5629              :     return -1;
    5630          190 :   x6 = XEXP (x5, 1);
    5631          190 :   if (GET_CODE (x6) != PARALLEL
    5632          190 :       || XVECLEN (x6, 0) != 1)
    5633              :     return -1;
    5634          190 :   x7 = XVECEXP (x6, 0, 0);
    5635          190 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    5636            0 :     return -1;
    5637              :   return 0;
    5638              : }
    5639              : 
    5640              : int
    5641         5129 : pattern1578 (rtx x1, machine_mode i1, machine_mode i2)
    5642              : {
    5643         5129 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5644         5129 :   rtx x2, x3, x4;
    5645         5129 :   int res ATTRIBUTE_UNUSED;
    5646         5129 :   if (!register_operand (operands[0], i2)
    5647         5129 :       || GET_MODE (x1) != i2)
    5648              :     return -1;
    5649         5129 :   x2 = XEXP (x1, 0);
    5650         5129 :   if (GET_MODE (x2) != i2)
    5651              :     return -1;
    5652         5129 :   x3 = XEXP (x2, 0);
    5653         5129 :   if (GET_MODE (x3) != i2
    5654         5129 :       || !register_operand (operands[1], i1))
    5655            0 :     return -1;
    5656         5129 :   x4 = XEXP (x1, 1);
    5657         5129 :   if (GET_MODE (x4) != i2
    5658         5129 :       || !register_operand (operands[2], i1))
    5659          164 :     return -1;
    5660              :   return 0;
    5661              : }
    5662              : 
    5663              : int
    5664          104 : pattern1586 (rtx x1)
    5665              : {
    5666          104 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5667          104 :   rtx x2, x3, x4;
    5668          104 :   int res ATTRIBUTE_UNUSED;
    5669          104 :   x2 = XEXP (x1, 2);
    5670          104 :   operands[3] = x2;
    5671          104 :   x3 = XEXP (x1, 1);
    5672          104 :   x4 = XEXP (x3, 0);
    5673          104 :   if (!rtx_equal_p (x4, operands[2]))
    5674              :     return -1;
    5675          104 :   switch (GET_MODE (operands[0]))
    5676              :     {
    5677           17 :     case E_HImode:
    5678           17 :       return pattern1585 (x1, 
    5679           17 : E_HImode); /* [-1, 0] */
    5680              : 
    5681           69 :     case E_SImode:
    5682           69 :       if (pattern1585 (x1, 
    5683              : E_SImode) != 0)
    5684              :         return -1;
    5685              :       return 1;
    5686              : 
    5687           18 :     case E_DImode:
    5688           18 :       if (pattern1585 (x1, 
    5689              : E_DImode) != 0)
    5690              :         return -1;
    5691              :       return 2;
    5692              : 
    5693              :     default:
    5694              :       return -1;
    5695              :     }
    5696              : }
    5697              : 
    5698              : int
    5699            0 : pattern1594 (rtx x1, machine_mode i1, machine_mode i2)
    5700              : {
    5701            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5702            0 :   rtx x2, x3, x4, x5;
    5703            0 :   int res ATTRIBUTE_UNUSED;
    5704            0 :   if (!register_operand (operands[0], i1)
    5705            0 :       || GET_MODE (x1) != i1)
    5706              :     return -1;
    5707            0 :   x2 = XVECEXP (x1, 0, 0);
    5708            0 :   if (GET_MODE (x2) != i1)
    5709              :     return -1;
    5710            0 :   x3 = XEXP (x2, 0);
    5711            0 :   if (GET_MODE (x3) != i1)
    5712              :     return -1;
    5713            0 :   x4 = XEXP (x3, 0);
    5714            0 :   if (GET_MODE (x4) != i1)
    5715              :     return -1;
    5716            0 :   x5 = XEXP (x4, 0);
    5717            0 :   if (GET_MODE (x5) != i2
    5718            0 :       || !nonimmediate_operand (operands[1], i2)
    5719            0 :       || !nonimm_or_0_operand (operands[3], i1)
    5720            0 :       || !register_operand (operands[2], i1))
    5721            0 :     return -1;
    5722              :   return 0;
    5723              : }
    5724              : 
    5725              : int
    5726            0 : pattern1606 (rtx x1, machine_mode i1, machine_mode i2)
    5727              : {
    5728            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5729            0 :   rtx x2, x3, x4, x5;
    5730            0 :   int res ATTRIBUTE_UNUSED;
    5731            0 :   if (!register_operand (operands[0], i1)
    5732            0 :       || GET_MODE (x1) != i1)
    5733              :     return -1;
    5734            0 :   x2 = XVECEXP (x1, 0, 0);
    5735            0 :   if (GET_MODE (x2) != i1)
    5736              :     return -1;
    5737            0 :   x3 = XEXP (x2, 0);
    5738            0 :   if (GET_MODE (x3) != i1
    5739            0 :       || !nonimmediate_operand (operands[1], i1)
    5740            0 :       || !register_operand (operands[2], i1))
    5741            0 :     return -1;
    5742            0 :   x4 = XEXP (x3, 2);
    5743            0 :   if (GET_MODE (x4) != i1
    5744            0 :       || !register_operand (operands[3], i1)
    5745            0 :       || !register_operand (operands[4], i2))
    5746            0 :     return -1;
    5747            0 :   x5 = XEXP (x2, 1);
    5748            0 :   if (!rtx_equal_p (x5, operands[1]))
    5749              :     return -1;
    5750              :   return 0;
    5751              : }
    5752              : 
    5753              : int
    5754          270 : pattern1617 (rtx x1, machine_mode i1)
    5755              : {
    5756          270 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5757          270 :   rtx x2, x3, x4;
    5758          270 :   int res ATTRIBUTE_UNUSED;
    5759          270 :   if (!vsib_mem_operator (operands[5], i1)
    5760          270 :       || !register_operand (operands[6], E_QImode))
    5761          114 :     return -1;
    5762          156 :   x2 = XEXP (x1, 1);
    5763          156 :   if (GET_MODE (x2) != i1
    5764          156 :       || !register_operand (operands[3], i1))
    5765            0 :     return -1;
    5766          156 :   x3 = XEXP (x1, 0);
    5767          156 :   x4 = XEXP (x3, 0);
    5768          156 :   switch (GET_MODE (x4))
    5769              :     {
    5770            0 :     case E_SImode:
    5771            0 :       return pattern1616 (
    5772            0 : E_SImode); /* [-1, 1] */
    5773              : 
    5774          156 :     case E_DImode:
    5775          156 :       res = pattern1616 (
    5776              : E_DImode);
    5777          156 :       if (res >= 0)
    5778           88 :         return res + 2; /* [2, 3] */
    5779              :       return -1;
    5780              : 
    5781              :     default:
    5782              :       return -1;
    5783              :     }
    5784              : }
    5785              : 
    5786              : int
    5787           36 : pattern1628 (machine_mode i1)
    5788              : {
    5789           36 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5790           36 :   int res ATTRIBUTE_UNUSED;
    5791           36 :   if (!vsib_address_operand (operands[3], i1))
    5792              :     return -1;
    5793           36 :   switch (GET_MODE (operands[2]))
    5794              :     {
    5795            9 :     case E_V4SImode:
    5796            9 :       if (!register_operand (operands[2], E_V4SImode))
    5797              :         return -1;
    5798              :       return 0;
    5799              : 
    5800           27 :     case E_V2DImode:
    5801           27 :       if (!register_operand (operands[2], E_V2DImode))
    5802              :         return -1;
    5803              :       return 1;
    5804              : 
    5805              :     default:
    5806              :       return -1;
    5807              :     }
    5808              : }
    5809              : 
    5810              : int
    5811           13 : pattern1637 (rtx x1, machine_mode i1)
    5812              : {
    5813           13 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5814           13 :   rtx x2, x3, x4, x5, x6;
    5815           13 :   int res ATTRIBUTE_UNUSED;
    5816           13 :   if (!nonimmediate_operand (operands[1], i1)
    5817           13 :       || !general_operand (operands[2], i1)
    5818           25 :       || !nonimmediate_operand (operands[0], i1))
    5819            1 :     return -1;
    5820           12 :   x2 = XVECEXP (x1, 0, 1);
    5821           12 :   x3 = XEXP (x2, 1);
    5822           12 :   if (GET_MODE (x3) != i1)
    5823              :     return -1;
    5824           12 :   x4 = XVECEXP (x1, 0, 0);
    5825           12 :   x5 = XEXP (x4, 1);
    5826           12 :   x6 = XEXP (x5, 1);
    5827           12 :   if (!rtx_equal_p (x6, operands[2]))
    5828              :     return -1;
    5829              :   return 0;
    5830              : }
    5831              : 
    5832              : int
    5833         2034 : pattern1647 (rtx x1, machine_mode i1)
    5834              : {
    5835         2034 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5836         2034 :   rtx x2, x3, x4;
    5837         2034 :   int res ATTRIBUTE_UNUSED;
    5838         2034 :   if (!nonmemory_operand (operands[1], i1))
    5839              :     return -1;
    5840         2034 :   operands[3] = x1;
    5841         2034 :   if (!register_operand (operands[3], i1))
    5842              :     return -1;
    5843            8 :   x2 = PATTERN (peep2_next_insn (1));
    5844            8 :   x3 = XEXP (x2, 1);
    5845            8 :   if (!rtx_equal_p (x3, operands[3]))
    5846              :     return -1;
    5847            8 :   x4 = XEXP (x2, 0);
    5848            8 :   if (!rtx_equal_p (x4, operands[0]))
    5849              :     return -1;
    5850              :   return 0;
    5851              : }
    5852              : 
    5853              : int
    5854          890 : pattern1655 (rtx x1, machine_mode i1, machine_mode i2)
    5855              : {
    5856          890 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5857          890 :   rtx x2, x3, x4;
    5858          890 :   int res ATTRIBUTE_UNUSED;
    5859          890 :   if (!register_operand (operands[0], i1)
    5860          890 :       || GET_MODE (x1) != i1)
    5861              :     return -1;
    5862          840 :   x2 = XEXP (x1, 0);
    5863          840 :   if (GET_MODE (x2) != i1)
    5864              :     return -1;
    5865          840 :   x3 = XEXP (x2, 0);
    5866          840 :   if (GET_MODE (x3) != i2)
    5867              :     return -1;
    5868          840 :   x4 = XEXP (x1, 1);
    5869          840 :   if (!nonimm_or_0_operand (x4, i1))
    5870              :     return -1;
    5871              :   return 0;
    5872              : }
    5873              : 
    5874              : int
    5875          725 : pattern1662 (rtx x1, machine_mode i1, machine_mode i2)
    5876              : {
    5877          725 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5878          725 :   rtx x2, x3;
    5879          725 :   int res ATTRIBUTE_UNUSED;
    5880          725 :   if (!register_operand (operands[0], i2)
    5881          725 :       || GET_MODE (x1) != i2)
    5882              :     return -1;
    5883          705 :   x2 = XVECEXP (x1, 0, 0);
    5884          705 :   if (GET_MODE (x2) != i2)
    5885              :     return -1;
    5886          705 :   x3 = XEXP (x2, 0);
    5887          705 :   if (GET_MODE (x3) != i2
    5888          705 :       || !register_operand (operands[1], i2)
    5889          700 :       || !register_operand (operands[2], i2)
    5890          696 :       || !register_operand (operands[3], i2)
    5891          696 :       || !const0_operand (operands[4], i2)
    5892         1401 :       || !register_operand (operands[5], i1))
    5893           19 :     return -1;
    5894              :   return 0;
    5895              : }
    5896              : 
    5897              : int
    5898          115 : pattern1672 (machine_mode i1)
    5899              : {
    5900          115 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5901          115 :   int res ATTRIBUTE_UNUSED;
    5902          115 :   if (!vsib_address_operand (operands[4], i1))
    5903              :     return -1;
    5904          115 :   switch (GET_MODE (operands[3]))
    5905              :     {
    5906           82 :     case E_V4SImode:
    5907           82 :       if (!register_operand (operands[3], E_V4SImode))
    5908              :         return -1;
    5909              :       return 0;
    5910              : 
    5911           33 :     case E_V4DImode:
    5912           33 :       if (!register_operand (operands[3], E_V4DImode))
    5913              :         return -1;
    5914              :       return 1;
    5915              : 
    5916              :     default:
    5917              :       return -1;
    5918              :     }
    5919              : }
    5920              : 
    5921              : int
    5922           31 : pattern1680 (rtx x1, machine_mode i1)
    5923              : {
    5924           31 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5925           31 :   rtx x2, x3, x4;
    5926           31 :   int res ATTRIBUTE_UNUSED;
    5927           31 :   x2 = XVECEXP (x1, 0, 0);
    5928           31 :   x3 = XEXP (x2, 0);
    5929           31 :   if (GET_MODE (x3) != i1)
    5930              :     return -1;
    5931           31 :   x4 = XEXP (x2, 1);
    5932           31 :   if (GET_MODE (x4) != i1)
    5933              :     return -1;
    5934           31 :   switch (GET_MODE (operands[2]))
    5935              :     {
    5936           19 :     case E_SImode:
    5937           19 :       return pattern1679 (x1, 
    5938           19 : E_SImode); /* [-1, 0] */
    5939              : 
    5940           12 :     case E_DImode:
    5941           12 :       if (pattern1679 (x1, 
    5942              : E_DImode) != 0)
    5943              :         return -1;
    5944              :       return 1;
    5945              : 
    5946              :     default:
    5947              :       return -1;
    5948              :     }
    5949              : }
    5950              : 
    5951              : int
    5952         1356 : pattern1691 (rtx x1, machine_mode i1)
    5953              : {
    5954         1356 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5955         1356 :   rtx x2, x3, x4, x5;
    5956         1356 :   int res ATTRIBUTE_UNUSED;
    5957         1356 :   if (!register_operand (operands[0], i1)
    5958         1356 :       || GET_MODE (x1) != i1)
    5959              :     return -1;
    5960         1316 :   x2 = XVECEXP (x1, 0, 0);
    5961         1316 :   if (GET_MODE (x2) != i1)
    5962              :     return -1;
    5963         1316 :   x3 = XEXP (x2, 0);
    5964         1316 :   if (GET_MODE (x3) != i1)
    5965              :     return -1;
    5966         1316 :   x4 = XEXP (x3, 0);
    5967         1316 :   if (GET_MODE (x4) != i1
    5968         1316 :       || !register_operand (operands[2], i1))
    5969           15 :     return -1;
    5970         1301 :   x5 = XEXP (x4, 2);
    5971         1301 :   if (GET_MODE (x5) != i1)
    5972              :     return -1;
    5973              :   return 0;
    5974              : }
    5975              : 
    5976              : int
    5977          541 : pattern1700 (rtx x1)
    5978              : {
    5979          541 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5980          541 :   rtx x2, x3, x4, x5, x6, x7, x8;
    5981          541 :   int res ATTRIBUTE_UNUSED;
    5982          541 :   if (!register_operand (operands[0], E_DImode))
    5983              :     return -1;
    5984          541 :   x2 = XEXP (x1, 0);
    5985          541 :   x3 = XEXP (x2, 0);
    5986          541 :   operands[1] = x3;
    5987          541 :   if (!nonimmediate_operand (operands[1], E_DImode))
    5988              :     return -1;
    5989          541 :   x4 = XEXP (x1, 1);
    5990          541 :   if (GET_MODE (x4) != E_DImode)
    5991              :     return -1;
    5992          541 :   x5 = XEXP (x4, 0);
    5993          541 :   if (GET_MODE (x5) != E_TImode)
    5994              :     return -1;
    5995          541 :   x6 = XEXP (x5, 0);
    5996          541 :   if (GET_MODE (x6) != E_TImode)
    5997              :     return -1;
    5998          541 :   x7 = XEXP (x6, 0);
    5999          541 :   operands[2] = x7;
    6000          541 :   if (!register_operand (operands[2], E_DImode))
    6001              :     return -1;
    6002          541 :   x8 = XEXP (x5, 1);
    6003          541 :   operands[4] = x8;
    6004          541 :   if (!const_0_to_255_operand (operands[4], E_QImode))
    6005              :     return -1;
    6006              :   return 0;
    6007              : }
    6008              : 
    6009              : int
    6010        10000 : pattern1711 (rtx x1)
    6011              : {
    6012        10000 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6013        10000 :   rtx x2, x3, x4, x5, x6, x7, x8;
    6014        10000 :   int res ATTRIBUTE_UNUSED;
    6015        10000 :   x2 = XVECEXP (x1, 0, 0);
    6016        10000 :   x3 = XEXP (x2, 1);
    6017        10000 :   x4 = XVECEXP (x3, 0, 3);
    6018        10000 :   operands[4] = x4;
    6019        10000 :   if (!const_int_operand (operands[4], E_SImode))
    6020              :     return -1;
    6021        10000 :   x5 = XVECEXP (x3, 0, 1);
    6022        10000 :   if (!rtx_equal_p (x5, operands[0]))
    6023              :     return -1;
    6024         7097 :   x6 = XEXP (x2, 0);
    6025         7097 :   if (!rtx_equal_p (x6, operands[0]))
    6026              :     return -1;
    6027         7097 :   x7 = XVECEXP (x1, 0, 1);
    6028         7097 :   x8 = XEXP (x7, 0);
    6029         7097 :   if (!rtx_equal_p (x8, operands[2]))
    6030              :     return -1;
    6031              :   return 0;
    6032              : }
    6033              : 
    6034              : int
    6035          215 : pattern1720 (machine_mode i1)
    6036              : {
    6037          215 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6038          215 :   int res ATTRIBUTE_UNUSED;
    6039          215 :   if (!vsib_address_operand (operands[2], i1))
    6040              :     return -1;
    6041          165 :   switch (GET_MODE (operands[3]))
    6042              :     {
    6043           66 :     case E_V4SImode:
    6044           66 :       if (!register_operand (operands[3], E_V4SImode))
    6045              :         return -1;
    6046              :       return 0;
    6047              : 
    6048           99 :     case E_V2DImode:
    6049           99 :       if (!register_operand (operands[3], E_V2DImode))
    6050              :         return -1;
    6051              :       return 1;
    6052              : 
    6053              :     default:
    6054              :       return -1;
    6055              :     }
    6056              : }
    6057              : 
    6058              : int
    6059         1110 : pattern1727 (machine_mode i1)
    6060              : {
    6061         1110 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6062         1110 :   int res ATTRIBUTE_UNUSED;
    6063         1110 :   if (!vsib_address_operand (operands[0], i1))
    6064              :     return -1;
    6065         1068 :   switch (GET_MODE (operands[2]))
    6066              :     {
    6067          615 :     case E_V8SImode:
    6068          615 :       if (!register_operand (operands[2], E_V8SImode))
    6069              :         return -1;
    6070              :       return 0;
    6071              : 
    6072          453 :     case E_V8DImode:
    6073          453 :       if (!register_operand (operands[2], E_V8DImode))
    6074              :         return -1;
    6075              :       return 1;
    6076              : 
    6077              :     default:
    6078              :       return -1;
    6079              :     }
    6080              : }
    6081              : 
    6082              : int
    6083         1443 : pattern1737 (rtx x1, machine_mode i1, machine_mode i2)
    6084              : {
    6085         1443 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6086         1443 :   rtx x2, x3;
    6087         1443 :   int res ATTRIBUTE_UNUSED;
    6088         1443 :   if (!register_operand (operands[0], i2)
    6089         1415 :       || GET_MODE (x1) != i2
    6090         1415 :       || !register_operand (operands[6], E_QImode)
    6091          855 :       || !vsib_mem_operator (operands[5], i1)
    6092         2298 :       || !scratch_operand (operands[1], E_QImode))
    6093          588 :     return -1;
    6094          855 :   x2 = XVECEXP (x1, 0, 2);
    6095          855 :   x3 = XEXP (x2, 0);
    6096          855 :   switch (GET_MODE (x3))
    6097              :     {
    6098            0 :     case E_SImode:
    6099            0 :       return pattern1736 (
    6100            0 : E_SImode); /* [-1, 1] */
    6101              : 
    6102          855 :     case E_DImode:
    6103          855 :       res = pattern1736 (
    6104              : E_DImode);
    6105          855 :       if (res >= 0)
    6106          776 :         return res + 2; /* [2, 3] */
    6107              :       return -1;
    6108              : 
    6109              :     default:
    6110              :       return -1;
    6111              :     }
    6112              : }
    6113              : 
    6114              : int
    6115            0 : pattern1749 (rtx x1, machine_mode i1)
    6116              : {
    6117            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6118            0 :   rtx x2, x3, x4, x5;
    6119            0 :   int res ATTRIBUTE_UNUSED;
    6120            0 :   x2 = XVECEXP (x1, 0, 1);
    6121            0 :   if (GET_CODE (x2) != CLOBBER)
    6122              :     return -1;
    6123            0 :   x3 = XEXP (x2, 0);
    6124            0 :   if (GET_CODE (x3) != REG
    6125            0 :       || REGNO (x3) != 17
    6126            0 :       || GET_MODE (x3) != E_CCmode)
    6127              :     return -1;
    6128            0 :   x4 = XVECEXP (x1, 0, 0);
    6129            0 :   x5 = XEXP (x4, 0);
    6130            0 :   operands[3] = x5;
    6131            0 :   if (!any_QIreg_operand (operands[3], i1))
    6132              :     return -1;
    6133              :   return 0;
    6134              : }
    6135              : 
    6136              : int
    6137          148 : pattern1757 (machine_mode i1)
    6138              : {
    6139          148 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6140          148 :   int res ATTRIBUTE_UNUSED;
    6141          148 :   if (!vsib_address_operand (operands[0], i1))
    6142              :     return -1;
    6143          131 :   switch (GET_MODE (operands[2]))
    6144              :     {
    6145           75 :     case E_V8SImode:
    6146           75 :       if (!register_operand (operands[2], E_V8SImode)
    6147           75 :           || !register_operand (operands[3], E_V8SImode))
    6148           48 :         return -1;
    6149              :       return 0;
    6150              : 
    6151           56 :     case E_V4DImode:
    6152           56 :       if (!register_operand (operands[2], E_V4DImode)
    6153           56 :           || !register_operand (operands[3], E_V4SImode))
    6154           29 :         return -1;
    6155              :       return 1;
    6156              : 
    6157              :     default:
    6158              :       return -1;
    6159              :     }
    6160              : }
    6161              : 
    6162              : int
    6163          574 : pattern1763 (machine_mode i1)
    6164              : {
    6165          574 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6166          574 :   int res ATTRIBUTE_UNUSED;
    6167          574 :   if (!vsib_address_operand (operands[4], i1))
    6168              :     return -1;
    6169          574 :   switch (GET_MODE (operands[3]))
    6170              :     {
    6171          324 :     case E_V8SImode:
    6172          324 :       if (!register_operand (operands[3], E_V8SImode))
    6173              :         return -1;
    6174              :       return 0;
    6175              : 
    6176          250 :     case E_V8DImode:
    6177          250 :       if (!register_operand (operands[3], E_V8DImode))
    6178              :         return -1;
    6179              :       return 1;
    6180              : 
    6181              :     default:
    6182              :       return -1;
    6183              :     }
    6184              : }
    6185              : 
    6186              : int
    6187           22 : pattern1771 (rtx x1, machine_mode i1)
    6188              : {
    6189           22 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6190           22 :   int res ATTRIBUTE_UNUSED;
    6191           22 :   if (GET_MODE (x1) != i1
    6192           22 :       || !nonimmediate_operand (operands[1], i1)
    6193           22 :       || !ix86_carry_flag_operator (operands[3], i1)
    6194           44 :       || !x86_64_general_operand (operands[2], i1))
    6195            0 :     return -1;
    6196              :   return 0;
    6197              : }
    6198              : 
    6199              : int
    6200       147368 : pattern1779 (rtx x1, machine_mode i1, machine_mode i2)
    6201              : {
    6202       147368 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6203       147368 :   rtx x2, x3;
    6204       147368 :   int res ATTRIBUTE_UNUSED;
    6205       147368 :   if (!register_operand (operands[1], i1)
    6206       147368 :       || GET_MODE (x1) != i2)
    6207              :     return -1;
    6208       146325 :   x2 = XEXP (x1, 0);
    6209       146325 :   if (GET_MODE (x2) != i2)
    6210              :     return -1;
    6211       146325 :   x3 = XEXP (x1, 1);
    6212       146325 :   if (GET_MODE (x3) != i2
    6213       146325 :       || !x86_64_sext_operand (operands[2], i1)
    6214       292301 :       || !scratch_operand (operands[0], i1))
    6215          429 :     return -1;
    6216              :   return 0;
    6217              : }
    6218              : 
    6219              : int
    6220          327 : pattern1787 (rtx x1, machine_mode i1, machine_mode i2)
    6221              : {
    6222          327 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6223          327 :   rtx x2, x3, x4;
    6224          327 :   int res ATTRIBUTE_UNUSED;
    6225          327 :   if (!register_operand (operands[0], i1)
    6226          327 :       || GET_MODE (x1) != i1)
    6227              :     return -1;
    6228          321 :   x2 = XVECEXP (x1, 0, 0);
    6229          321 :   if (GET_MODE (x2) != i1)
    6230              :     return -1;
    6231          321 :   x3 = XEXP (x2, 0);
    6232          321 :   if (GET_MODE (x3) != i1)
    6233              :     return -1;
    6234          321 :   x4 = XEXP (x3, 0);
    6235          321 :   if (GET_MODE (x4) != i1
    6236          321 :       || !register_operand (operands[1], i1)
    6237          321 :       || !register_operand (operands[2], i1)
    6238          321 :       || !register_operand (operands[3], i2)
    6239          642 :       || !const0_operand (operands[5], i1))
    6240            0 :     return -1;
    6241              :   return 0;
    6242              : }
    6243              : 
    6244              : int
    6245          653 : pattern1797 (rtx x1, machine_mode i1, machine_mode i2)
    6246              : {
    6247          653 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6248          653 :   rtx x2, x3;
    6249          653 :   int res ATTRIBUTE_UNUSED;
    6250          653 :   if (!register_operand (operands[0], i1)
    6251          645 :       || GET_MODE (x1) != i1
    6252          645 :       || !vsib_mem_operator (operands[6], i2)
    6253          645 :       || !register_operand (operands[4], i1)
    6254         1176 :       || !scratch_operand (operands[1], i1))
    6255          130 :     return -1;
    6256          523 :   x2 = XVECEXP (x1, 0, 1);
    6257          523 :   x3 = XEXP (x2, 0);
    6258          523 :   switch (GET_MODE (x3))
    6259              :     {
    6260            0 :     case E_SImode:
    6261            0 :       return pattern1796 (
    6262            0 : E_SImode); /* [-1, 1] */
    6263              : 
    6264          523 :     case E_DImode:
    6265          523 :       res = pattern1796 (
    6266              : E_DImode);
    6267          523 :       if (res >= 0)
    6268          435 :         return res + 2; /* [2, 3] */
    6269              :       return -1;
    6270              : 
    6271              :     default:
    6272              :       return -1;
    6273              :     }
    6274              : }
    6275              : 
    6276              : int
    6277          376 : pattern1809 (machine_mode i1)
    6278              : {
    6279          376 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6280          376 :   int res ATTRIBUTE_UNUSED;
    6281          376 :   if (!vsib_address_operand (operands[2], i1))
    6282              :     return -1;
    6283          361 :   switch (GET_MODE (operands[3]))
    6284              :     {
    6285          230 :     case E_V8SImode:
    6286          230 :       if (!register_operand (operands[3], E_V8SImode)
    6287          230 :           || !register_operand (operands[4], E_V8SFmode))
    6288          188 :         return -1;
    6289              :       return 0;
    6290              : 
    6291          131 :     case E_V4DImode:
    6292          131 :       if (!register_operand (operands[3], E_V4DImode)
    6293          131 :           || !register_operand (operands[4], E_V4SFmode))
    6294          118 :         return -1;
    6295              :       return 1;
    6296              : 
    6297              :     default:
    6298              :       return -1;
    6299              :     }
    6300              : }
    6301              : 
    6302              : int
    6303            1 : pattern1817 (rtx x1, machine_mode i1)
    6304              : {
    6305            1 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6306            1 :   rtx x2;
    6307            1 :   int res ATTRIBUTE_UNUSED;
    6308            1 :   if (!general_operand (operands[2], i1)
    6309            1 :       || !nonimmediate_operand (operands[0], i1)
    6310            2 :       || GET_MODE (x1) != i1)
    6311            0 :     return -1;
    6312            1 :   x2 = XEXP (x1, 0);
    6313            1 :   if (GET_MODE (x2) != i1)
    6314              :     return -1;
    6315              :   return 0;
    6316              : }
    6317              : 
    6318              : int
    6319        42734 : pattern1823 (rtx x1, machine_mode i1, machine_mode i2)
    6320              : {
    6321        42734 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6322        42734 :   rtx x2, x3, x4, x5, x6, x7;
    6323        42734 :   int res ATTRIBUTE_UNUSED;
    6324        42734 :   x2 = XVECEXP (x1, 0, 0);
    6325        42734 :   x3 = XEXP (x2, 1);
    6326        42734 :   x4 = XEXP (x3, 1);
    6327        42734 :   if (GET_MODE (x4) != i2)
    6328              :     return -1;
    6329        42734 :   x5 = XEXP (x4, 0);
    6330        42734 :   if (GET_MODE (x5) != i1
    6331        42734 :       || !register_operand (operands[0], i1))
    6332            0 :     return -1;
    6333        42734 :   x6 = XVECEXP (x1, 0, 1);
    6334        42734 :   x7 = XEXP (x6, 1);
    6335        42734 :   if (GET_MODE (x7) != i1)
    6336              :     return -1;
    6337              :   return 0;
    6338              : }
    6339              : 
    6340              : int
    6341           10 : pattern1831 (rtx x1, machine_mode i1)
    6342              : {
    6343           10 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6344           10 :   rtx x2, x3, x4, x5;
    6345           10 :   int res ATTRIBUTE_UNUSED;
    6346           10 :   if (!register_operand (operands[2], i1))
    6347              :     return -1;
    6348           10 :   x2 = XVECEXP (x1, 0, 0);
    6349           10 :   x3 = XEXP (x2, 1);
    6350           10 :   if (GET_MODE (x3) != i1
    6351           10 :       || !memory_operand (operands[3], i1)
    6352           20 :       || !register_operand (operands[4], i1))
    6353            0 :     return -1;
    6354           10 :   x4 = XVECEXP (x1, 0, 1);
    6355           10 :   x5 = XEXP (x4, 1);
    6356           10 :   if (GET_MODE (x5) != i1)
    6357              :     return -1;
    6358              :   return 0;
    6359              : }
    6360              : 
    6361              : int
    6362          234 : pattern1838 (rtx x1, machine_mode i1)
    6363              : {
    6364          234 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6365          234 :   rtx x2, x3, x4, x5, x6, x7, x8;
    6366          234 :   int res ATTRIBUTE_UNUSED;
    6367          234 :   x2 = XEXP (x1, 0);
    6368          234 :   x3 = XEXP (x2, 0);
    6369          234 :   x4 = XEXP (x3, 0);
    6370          234 :   x5 = XEXP (x4, 0);
    6371          234 :   operands[2] = x5;
    6372          234 :   if (!register_operand (operands[2], i1))
    6373              :     return -1;
    6374          233 :   x6 = XEXP (x3, 2);
    6375          233 :   if (GET_MODE (x6) != i1
    6376          233 :       || !nonimmediate_operand (operands[3], i1))
    6377            0 :     return -1;
    6378          233 :   x7 = XEXP (x2, 1);
    6379          233 :   if (!rtx_equal_p (x7, operands[3]))
    6380              :     return -1;
    6381          233 :   x8 = XEXP (x1, 1);
    6382          233 :   if (!rtx_equal_p (x8, operands[3]))
    6383              :     return -1;
    6384              :   return 0;
    6385              : }
    6386              : 
    6387              : int
    6388          634 : pattern1849 (rtx x1)
    6389              : {
    6390          634 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6391          634 :   int res ATTRIBUTE_UNUSED;
    6392          634 :   switch (GET_MODE (operands[0]))
    6393              :     {
    6394          464 :     case E_V8SFmode:
    6395          464 :       if (!nonimmediate_operand (operands[0], E_V8SFmode)
    6396          464 :           || pattern1555 (x1, 
    6397              : E_V8SFmode, 
    6398              : E_V16SFmode) != 0)
    6399            8 :         return -1;
    6400              :       return 0;
    6401              : 
    6402          170 :     case E_V8SImode:
    6403          170 :       if (!nonimmediate_operand (operands[0], E_V8SImode)
    6404          170 :           || pattern1555 (x1, 
    6405              : E_V8SImode, 
    6406              : E_V16SImode) != 0)
    6407            0 :         return -1;
    6408              :       return 1;
    6409              : 
    6410              :     default:
    6411              :       return -1;
    6412              :     }
    6413              : }
    6414              : 
    6415              : int
    6416         1053 : pattern1855 (rtx x1)
    6417              : {
    6418         1053 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6419         1053 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6420         1053 :   rtx x10, x11;
    6421         1053 :   int res ATTRIBUTE_UNUSED;
    6422         1053 :   if (!register_operand (operands[3], E_V2DImode))
    6423              :     return -1;
    6424          912 :   x2 = XEXP (x1, 0);
    6425          912 :   x3 = XEXP (x2, 0);
    6426          912 :   x4 = XEXP (x3, 1);
    6427          912 :   x5 = XVECEXP (x4, 0, 0);
    6428          912 :   switch (XWINT (x5, 0))
    6429              :     {
    6430          421 :     case 0L:
    6431          421 :       x6 = XVECEXP (x4, 0, 1);
    6432          421 :       if (XWINT (x6, 0) != 2L)
    6433              :         return -1;
    6434          421 :       x7 = XEXP (x1, 1);
    6435          421 :       x8 = XEXP (x7, 0);
    6436          421 :       x9 = XEXP (x8, 1);
    6437          421 :       x10 = XVECEXP (x9, 0, 0);
    6438          421 :       if (XWINT (x10, 0) != 0L)
    6439              :         return -1;
    6440          421 :       x11 = XVECEXP (x9, 0, 1);
    6441          421 :       if (XWINT (x11, 0) != 2L)
    6442            0 :         return -1;
    6443              :       return 0;
    6444              : 
    6445          491 :     case 1L:
    6446          491 :       x6 = XVECEXP (x4, 0, 1);
    6447          491 :       if (XWINT (x6, 0) != 3L)
    6448              :         return -1;
    6449          491 :       x7 = XEXP (x1, 1);
    6450          491 :       x8 = XEXP (x7, 0);
    6451          491 :       x9 = XEXP (x8, 1);
    6452          491 :       x10 = XVECEXP (x9, 0, 0);
    6453          491 :       if (XWINT (x10, 0) != 1L)
    6454              :         return -1;
    6455          491 :       x11 = XVECEXP (x9, 0, 1);
    6456          491 :       if (XWINT (x11, 0) != 3L)
    6457            0 :         return -1;
    6458              :       return 1;
    6459              : 
    6460              :     default:
    6461              :       return -1;
    6462              :     }
    6463              : }
    6464              : 
    6465              : int
    6466          614 : pattern1867 (rtx x1, machine_mode i1, machine_mode i2)
    6467              : {
    6468          614 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6469          614 :   int res ATTRIBUTE_UNUSED;
    6470          614 :   if (!register_operand (operands[2], i1)
    6471          614 :       || !register_operand (operands[4], i2))
    6472           44 :     return -1;
    6473          570 :   return pattern1866 (x1, 
    6474          570 : i1); /* [-1, 1] */
    6475              : }
    6476              : 
    6477              : int
    6478         1107 : pattern1873 (rtx x1, machine_mode i1)
    6479              : {
    6480         1107 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6481         1107 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6482         1107 :   int res ATTRIBUTE_UNUSED;
    6483         1107 :   operands[5] = x1;
    6484         1107 :   if (!register_operand (operands[5], i1))
    6485              :     return -1;
    6486           58 :   x2 = PATTERN (peep2_next_insn (3));
    6487           58 :   x3 = XEXP (x2, 1);
    6488           58 :   if (!rtx_equal_p (x3, operands[5]))
    6489              :     return -1;
    6490            5 :   x4 = XEXP (x2, 0);
    6491            5 :   if (!rtx_equal_p (x4, operands[1]))
    6492              :     return -1;
    6493            5 :   x5 = PATTERN (peep2_next_insn (4));
    6494            5 :   if (GET_CODE (x5) != SET)
    6495              :     return -1;
    6496            5 :   x6 = XEXP (x5, 1);
    6497            5 :   if (GET_CODE (x6) != COMPARE)
    6498              :     return -1;
    6499            0 :   x7 = XEXP (x6, 1);
    6500            0 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6501              :     return -1;
    6502            0 :   x8 = XEXP (x5, 0);
    6503            0 :   if (GET_CODE (x8) != REG
    6504            0 :       || REGNO (x8) != 17)
    6505              :     return -1;
    6506            0 :   x9 = XEXP (x6, 0);
    6507            0 :   if (!rtx_equal_p (x9, operands[5]))
    6508              :     return -1;
    6509              :   return 0;
    6510              : }
    6511              : 
    6512              : int
    6513        17263 : pattern1882 (rtx x1, machine_mode i1, machine_mode i2)
    6514              : {
    6515        17263 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6516        17263 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6517        17263 :   rtx x10;
    6518        17263 :   int res ATTRIBUTE_UNUSED;
    6519        17263 :   x2 = XVECEXP (x1, 0, 0);
    6520        17263 :   x3 = XEXP (x2, 1);
    6521        17263 :   x4 = XEXP (x3, 0);
    6522        17263 :   x5 = XEXP (x4, 0);
    6523        17263 :   if (GET_MODE (x5) != i1)
    6524              :     return -1;
    6525        17263 :   x6 = XEXP (x5, 0);
    6526        17263 :   if (GET_MODE (x6) != i1
    6527        17263 :       || !ix86_carry_flag_operator (operands[5], i1)
    6528        17263 :       || !nonimmediate_operand (operands[1], i1)
    6529        34446 :       || !x86_64_immediate_operand (operands[2], i1))
    6530        16439 :     return -1;
    6531          824 :   x7 = XEXP (x3, 1);
    6532          824 :   if (GET_MODE (x7) != i2
    6533          824 :       || !ix86_carry_flag_operator (operands[4], i2)
    6534          824 :       || !const_scalar_int_operand (operands[6], i2)
    6535         1644 :       || !nonimmediate_operand (operands[0], i1))
    6536            4 :     return -1;
    6537          820 :   x8 = XVECEXP (x1, 0, 1);
    6538          820 :   x9 = XEXP (x8, 1);
    6539          820 :   if (GET_MODE (x9) != i1)
    6540              :     return -1;
    6541          820 :   x10 = XEXP (x9, 0);
    6542          820 :   if (GET_MODE (x10) != i1)
    6543              :     return -1;
    6544              :   return 0;
    6545              : }
    6546              : 
    6547              : int
    6548          871 : pattern1891 (rtx x1, int i1)
    6549              : {
    6550          871 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6551          871 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6552          871 :   int res ATTRIBUTE_UNUSED;
    6553          871 :   if (XVECLEN (x1, 0) != i1)
    6554              :     return -1;
    6555          871 :   x2 = XVECEXP (x1, 0, 0);
    6556          871 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    6557              :     return -1;
    6558          871 :   x3 = XVECEXP (x1, 0, 1);
    6559          871 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    6560              :     return -1;
    6561          871 :   x4 = XVECEXP (x1, 0, 2);
    6562          871 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    6563              :     return -1;
    6564          871 :   x5 = XVECEXP (x1, 0, 3);
    6565          871 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
    6566              :     return -1;
    6567          871 :   x6 = XVECEXP (x1, 0, 4);
    6568          871 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 9])
    6569              :     return -1;
    6570          871 :   x7 = XVECEXP (x1, 0, 5);
    6571          871 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 11])
    6572              :     return -1;
    6573          871 :   x8 = XVECEXP (x1, 0, 6);
    6574          871 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 13])
    6575              :     return -1;
    6576          871 :   x9 = XVECEXP (x1, 0, 7);
    6577          871 :   if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 15])
    6578            0 :     return -1;
    6579              :   return 0;
    6580              : }
    6581              : 
    6582              : int
    6583          499 : pattern1901 (rtx x1, machine_mode i1)
    6584              : {
    6585          499 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6586          499 :   rtx x2;
    6587          499 :   int res ATTRIBUTE_UNUSED;
    6588          499 :   if (!x86_64_immediate_operand (operands[2], i1)
    6589          499 :       || !nonimmediate_operand (operands[0], i1)
    6590          998 :       || GET_MODE (x1) != i1)
    6591            0 :     return -1;
    6592          499 :   x2 = XEXP (x1, 0);
    6593          499 :   if (GET_MODE (x2) != i1)
    6594              :     return -1;
    6595              :   return 0;
    6596              : }
    6597              : 
    6598              : int
    6599          968 : pattern1905 (rtx x1, machine_mode i1, machine_mode i2)
    6600              : {
    6601          968 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6602          968 :   rtx x2, x3, x4, x5, x6, x7;
    6603          968 :   int res ATTRIBUTE_UNUSED;
    6604          968 :   x2 = XVECEXP (x1, 0, 0);
    6605          968 :   x3 = XEXP (x2, 1);
    6606          968 :   x4 = XEXP (x3, 0);
    6607          968 :   x5 = XEXP (x4, 0);
    6608          968 :   if (GET_MODE (x5) != i2)
    6609              :     return -1;
    6610          968 :   x6 = XEXP (x5, 0);
    6611          968 :   if (GET_MODE (x6) != i2
    6612          968 :       || !nonimmediate_operand (operands[1], i1)
    6613         1936 :       || !ix86_carry_flag_operator (operands[4], i2))
    6614            0 :     return -1;
    6615          968 :   x7 = XEXP (x4, 1);
    6616          968 :   if (GET_MODE (x7) != i2
    6617          968 :       || !x86_64_sext_operand (operands[2], i1)
    6618         1936 :       || pattern1903 (x1, 
    6619              : i1, 
    6620              : i2) != 0)
    6621            0 :     return -1;
    6622              :   return 0;
    6623              : }
    6624              : 
    6625              : int
    6626         1597 : pattern1913 (rtx x1)
    6627              : {
    6628         1597 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6629         1597 :   rtx x2, x3, x4, x5;
    6630         1597 :   int res ATTRIBUTE_UNUSED;
    6631         1597 :   x2 = XVECEXP (x1, 0, 24);
    6632         1597 :   if (XWINT (x2, 0) != 24L)
    6633              :     return -1;
    6634         1597 :   x3 = XVECEXP (x1, 0, 25);
    6635         1597 :   if (XWINT (x3, 0) != 25L)
    6636              :     return -1;
    6637         1597 :   x4 = XVECEXP (x1, 0, 26);
    6638         1597 :   if (XWINT (x4, 0) != 26L)
    6639              :     return -1;
    6640         1597 :   x5 = XVECEXP (x1, 0, 27);
    6641         1597 :   if (XWINT (x5, 0) != 27L)
    6642            0 :     return -1;
    6643              :   return 0;
    6644              : }
    6645              : 
    6646              : int
    6647         1060 : pattern1916 (rtx x1)
    6648              : {
    6649         1060 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6650         1060 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6651         1060 :   int res ATTRIBUTE_UNUSED;
    6652         1060 :   x2 = XVECEXP (x1, 0, 24);
    6653         1060 :   if (XWINT (x2, 0) != 28L)
    6654              :     return -1;
    6655         1060 :   x3 = XVECEXP (x1, 0, 25);
    6656         1060 :   if (XWINT (x3, 0) != 60L)
    6657              :     return -1;
    6658         1060 :   x4 = XVECEXP (x1, 0, 26);
    6659         1060 :   if (XWINT (x4, 0) != 29L)
    6660              :     return -1;
    6661         1060 :   x5 = XVECEXP (x1, 0, 27);
    6662         1060 :   if (XWINT (x5, 0) != 61L)
    6663              :     return -1;
    6664         1060 :   x6 = XVECEXP (x1, 0, 28);
    6665         1060 :   if (XWINT (x6, 0) != 30L)
    6666              :     return -1;
    6667         1060 :   x7 = XVECEXP (x1, 0, 29);
    6668         1060 :   if (XWINT (x7, 0) != 62L)
    6669              :     return -1;
    6670         1060 :   x8 = XVECEXP (x1, 0, 30);
    6671         1060 :   if (XWINT (x8, 0) != 31L)
    6672              :     return -1;
    6673         1060 :   x9 = XVECEXP (x1, 0, 31);
    6674         1060 :   if (XWINT (x9, 0) != 63L)
    6675            0 :     return -1;
    6676              :   return 0;
    6677              : }
    6678              : 
    6679              :  int
    6680         2976 : recog_7 (rtx x1 ATTRIBUTE_UNUSED,
    6681              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6682              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6683              : {
    6684         2976 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6685         2976 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6686         2976 :   rtx x10;
    6687         2976 :   int res ATTRIBUTE_UNUSED;
    6688         2976 :   x2 = XEXP (x1, 1);
    6689         2976 :   if (GET_MODE (x2) != E_HImode)
    6690              :     return -1;
    6691         2976 :   x3 = XEXP (x1, 0);
    6692         2976 :   operands[0] = x3;
    6693         2976 :   if (!register_operand (operands[0], E_HImode))
    6694              :     return -1;
    6695         2976 :   x4 = XVECEXP (x2, 0, 0);
    6696         2976 :   if (GET_MODE (x4) != E_CCFPmode)
    6697              :     return -1;
    6698         2976 :   switch (GET_CODE (x4))
    6699              :     {
    6700            0 :     case COMPARE:
    6701            0 :       x5 = XEXP (x4, 0);
    6702            0 :       operands[1] = x5;
    6703            0 :       x6 = XEXP (x4, 1);
    6704            0 :       switch (GET_CODE (x6))
    6705              :         {
    6706            0 :         case CONST_INT:
    6707            0 :         case CONST_DOUBLE:
    6708            0 :         case CONST_VECTOR:
    6709            0 :         case REG:
    6710            0 :         case SUBREG:
    6711            0 :         case MEM:
    6712            0 :           operands[2] = x6;
    6713            0 :           switch (GET_MODE (operands[1]))
    6714              :             {
    6715            0 :             case E_XFmode:
    6716            0 :               if (!register_operand (operands[1], E_XFmode)
    6717            0 :                   || !reg_or_0_operand (operands[2], E_XFmode)
    6718            0 :                   || !
    6719              : #line 1946 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6720              : (TARGET_80387))
    6721              :                 return -1;
    6722              :               return 39; /* *cmpxf_i387 */
    6723              : 
    6724              :             case E_SFmode:
    6725              :               if (!register_operand (operands[1], E_SFmode)
    6726              :                   || !nonimm_or_0_operand (operands[2], E_SFmode)
    6727              :                   || !
    6728              : #line 1959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6729              : (TARGET_80387))
    6730              :                 return -1;
    6731              :               return 40; /* *cmpsf_i387 */
    6732              : 
    6733              :             case E_DFmode:
    6734              :               if (!register_operand (operands[1], E_DFmode)
    6735              :                   || !nonimm_or_0_operand (operands[2], E_DFmode)
    6736              :                   || !
    6737              : #line 1959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6738              : (TARGET_80387))
    6739              :                 return -1;
    6740              :               return 41; /* *cmpdf_i387 */
    6741              : 
    6742              :             default:
    6743              :               return -1;
    6744              :             }
    6745              : 
    6746              :         case FLOAT:
    6747              :           x7 = XEXP (x6, 0);
    6748              :           operands[2] = x7;
    6749              :           switch (GET_MODE (operands[1]))
    6750              :             {
    6751              :             case E_SFmode:
    6752              :               switch (pattern1273 (x6, 
    6753              : E_SFmode))
    6754              :                 {
    6755              :                 case 0:
    6756              :                   if (!
    6757              : #line 1973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6758              : (TARGET_80387
    6759              :    && (TARGET_USE_HIMODE_FIOP
    6760              :        || optimize_function_for_size_p (cfun))))
    6761              :                     return -1;
    6762              :                   return 42; /* *cmpsf_hi_i387 */
    6763              : 
    6764              :                 case 1:
    6765              :                   if (!
    6766              : #line 1973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6767              : (TARGET_80387
    6768              :    && (TARGET_USE_SIMODE_FIOP
    6769              :        || optimize_function_for_size_p (cfun))))
    6770              :                     return -1;
    6771              :                   return 45; /* *cmpsf_si_i387 */
    6772              : 
    6773              :                 default:
    6774              :                   return -1;
    6775              :                 }
    6776              : 
    6777              :             case E_DFmode:
    6778              :               switch (pattern1273 (x6, 
    6779              : E_DFmode))
    6780              :                 {
    6781              :                 case 0:
    6782              :                   if (!
    6783              : #line 1973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6784              : (TARGET_80387
    6785              :    && (TARGET_USE_HIMODE_FIOP
    6786              :        || optimize_function_for_size_p (cfun))))
    6787              :                     return -1;
    6788              :                   return 43; /* *cmpdf_hi_i387 */
    6789              : 
    6790              :                 case 1:
    6791              :                   if (!
    6792              : #line 1973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6793              : (TARGET_80387
    6794              :    && (TARGET_USE_SIMODE_FIOP
    6795              :        || optimize_function_for_size_p (cfun))))
    6796              :                     return -1;
    6797              :                   return 46; /* *cmpdf_si_i387 */
    6798              : 
    6799              :                 default:
    6800              :                   return -1;
    6801              :                 }
    6802              : 
    6803              :             case E_XFmode:
    6804              :               switch (pattern1273 (x6, 
    6805              : E_XFmode))
    6806              :                 {
    6807              :                 case 0:
    6808              :                   if (!
    6809              : #line 1973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6810              : (TARGET_80387
    6811              :    && (TARGET_USE_HIMODE_FIOP
    6812              :        || optimize_function_for_size_p (cfun))))
    6813              :                     return -1;
    6814              :                   return 44; /* *cmpxf_hi_i387 */
    6815              : 
    6816              :                 case 1:
    6817              :                   if (!
    6818              : #line 1973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6819              : (TARGET_80387
    6820              :    && (TARGET_USE_SIMODE_FIOP
    6821              :        || optimize_function_for_size_p (cfun))))
    6822              :                     return -1;
    6823              :                   return 47; /* *cmpxf_si_i387 */
    6824              : 
    6825              :                 default:
    6826              :                   return -1;
    6827              :                 }
    6828              : 
    6829              :             default:
    6830              :               return -1;
    6831              :             }
    6832              : 
    6833              :         default:
    6834              :           return -1;
    6835              :         }
    6836              : 
    6837              :     case UNSPEC:
    6838              :       if (XVECLEN (x4, 0) != 1
    6839              :           || XINT (x4, 1) != 27)
    6840              :         return -1;
    6841              :       x8 = XVECEXP (x4, 0, 0);
    6842              :       if (GET_CODE (x8) != COMPARE
    6843              :           || GET_MODE (x8) != E_CCFPmode)
    6844              :         return -1;
    6845              :       x9 = XEXP (x8, 0);
    6846              :       operands[1] = x9;
    6847              :       x10 = XEXP (x8, 1);
    6848              :       operands[2] = x10;
    6849              :       switch (GET_MODE (operands[1]))
    6850              :         {
    6851              :         case E_SFmode:
    6852              :           if (!register_operand (operands[1], E_SFmode)
    6853              :               || !register_operand (operands[2], E_SFmode)
    6854              :               || !
    6855              : #line 1991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6856              : (TARGET_80387))
    6857              :             return -1;
    6858              :           return 48; /* *cmpusf_i387 */
    6859              : 
    6860              :         case E_DFmode:
    6861              :           if (!register_operand (operands[1], E_DFmode)
    6862              :               || !register_operand (operands[2], E_DFmode)
    6863              :               || !
    6864              : #line 1991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6865              : (TARGET_80387))
    6866              :             return -1;
    6867              :           return 49; /* *cmpudf_i387 */
    6868              : 
    6869              :         case E_XFmode:
    6870              :           if (!register_operand (operands[1], E_XFmode)
    6871              :               || !register_operand (operands[2], E_XFmode)
    6872              :               || !
    6873              : #line 1991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6874              : (TARGET_80387))
    6875              :             return -1;
    6876              :           return 50; /* *cmpuxf_i387 */
    6877              : 
    6878              :         default:
    6879              :           return -1;
    6880              :         }
    6881              : 
    6882              :     case REG:
    6883              :       if (REGNO (x4) != 18
    6884              :           || !
    6885              : #line 24169 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6886              : (TARGET_80387))
    6887              :         return -1;
    6888              :       return 1740; /* x86_fnstsw_1 */
    6889              : 
    6890              :     default:
    6891              :       return -1;
    6892              :     }
    6893              : }
    6894              : 
    6895              :  int
    6896              : recog_14 (rtx x1 ATTRIBUTE_UNUSED,
    6897              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6898              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6899              : {
    6900              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6901              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6902              :   rtx x10, x11;
    6903              :   int res ATTRIBUTE_UNUSED;
    6904              :   x2 = XEXP (x1, 1);
    6905              :   switch (XVECLEN (x2, 0))
    6906              :     {
    6907              :     case 1:
    6908              :       return recog_13 (x1, insn, pnum_clobbers);
    6909              : 
    6910              :     case 2:
    6911              :       return recog_12 (x1, insn, pnum_clobbers);
    6912              : 
    6913              :     case 3:
    6914              :       switch (XINT (x2, 1))
    6915              :         {
    6916              :         case 40:
    6917              :           if (pnum_clobbers == NULL
    6918              :               || GET_MODE (x2) != E_CCGZmode)
    6919              :             return -1;
    6920              :           x3 = XVECEXP (x2, 0, 2);
    6921              :           if (GET_CODE (x3) != LTU)
    6922              :             return -1;
    6923              :           x4 = XEXP (x3, 0);
    6924              :           if (GET_CODE (x4) != REG
    6925              :               || REGNO (x4) != 17
    6926              :               || GET_MODE (x4) != E_CCmode)
    6927              :             return -1;
    6928              :           x5 = XEXP (x3, 1);
    6929              :           if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6930              :             return -1;
    6931              :           x6 = XEXP (x1, 0);
    6932              :           if (GET_CODE (x6) != REG
    6933              :               || REGNO (x6) != 17
    6934              :               || GET_MODE (x6) != E_CCGZmode)
    6935              :             return -1;
    6936              :           x7 = XVECEXP (x2, 0, 0);
    6937              :           operands[1] = x7;
    6938              :           x8 = XVECEXP (x2, 0, 1);
    6939              :           operands[2] = x8;
    6940              :           switch (GET_MODE (operands[1]))
    6941              :             {
    6942              :             case E_SImode:
    6943              :               if (!register_operand (operands[1], E_SImode)
    6944              :                   || !x86_64_general_operand (operands[2], E_SImode)
    6945              :                   || GET_MODE (x3) != E_SImode
    6946              :                   || !
    6947              : #line 1239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6948              : (!TARGET_64BIT))
    6949              :                 return -1;
    6950              :               *pnum_clobbers = 1;
    6951              :               return 549; /* subsi3_carry_ccgz */
    6952              : 
    6953              :             case E_DImode:
    6954              :               if (!register_operand (operands[1], E_DImode)
    6955              :                   || !x86_64_general_operand (operands[2], E_DImode)
    6956              :                   || GET_MODE (x3) != E_DImode
    6957              :                   || !
    6958              : #line 1240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6959              : (TARGET_64BIT))
    6960              :                 return -1;
    6961              :               *pnum_clobbers = 1;
    6962              :               return 550; /* subdi3_carry_ccgz */
    6963              : 
    6964              :             default:
    6965              :               return -1;
    6966              :             }
    6967              : 
    6968              :         case 60:
    6969              :           return recog_11 (x1, insn, pnum_clobbers);
    6970              : 
    6971              :         case 49:
    6972              :           if (GET_MODE (x2) != E_HFmode)
    6973              :             return -1;
    6974              :           x6 = XEXP (x1, 0);
    6975              :           operands[0] = x6;
    6976              :           if (!nonimmediate_operand (operands[0], E_HFmode))
    6977              :             return -1;
    6978              :           x7 = XVECEXP (x2, 0, 0);
    6979              :           operands[1] = x7;
    6980              :           if (!nonimmediate_operand (operands[1], E_HFmode))
    6981              :             return -1;
    6982              :           x8 = XVECEXP (x2, 0, 1);
    6983              :           operands[2] = x8;
    6984              :           if (!nonimm_or_0_operand (operands[2], E_HFmode))
    6985              :             return -1;
    6986              :           x3 = XVECEXP (x2, 0, 2);
    6987              :           operands[3] = x3;
    6988              :           if (!register_operand (operands[3], E_QImode)
    6989              :               || !
    6990              : #line 26950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6991              : (TARGET_AVX512FP16))
    6992              :             return -1;
    6993              :           return 1835; /* movhf_mask */
    6994              : 
    6995              :         case 52:
    6996              :           x6 = XEXP (x1, 0);
    6997              :           operands[0] = x6;
    6998              :           x7 = XVECEXP (x2, 0, 0);
    6999              :           operands[1] = x7;
    7000              :           x8 = XVECEXP (x2, 0, 1);
    7001              :           operands[2] = x8;
    7002              :           x3 = XVECEXP (x2, 0, 2);
    7003              :           switch (GET_CODE (x3))
    7004              :             {
    7005              :             case LT:
    7006              :               switch (pattern743 (x2))
    7007              :                 {
    7008              :                 case 0:
    7009              :                   if (
    7010              : #line 27185 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7011              : (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH
    7012              :   && (rtx_equal_p (operands[1], operands[3])
    7013              :       && rtx_equal_p (operands[2], operands[4]))
    7014              :   && ix86_pre_reload_split ()))
    7015              :                     return 1853; /* *ieee_maxsf3_1 */
    7016              :                   if (!
    7017              : #line 27206 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7018              : (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH
    7019              :   && (rtx_equal_p (operands[1], operands[4])
    7020              :       && rtx_equal_p (operands[2], operands[3]))
    7021              :   && ix86_pre_reload_split ()))
    7022              :                     return -1;
    7023              :                   return 1855; /* *ieee_minsf3_1 */
    7024              : 
    7025              :                 case 1:
    7026              :                   if (
    7027              : #line 27185 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7028              : (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH
    7029              :   && (rtx_equal_p (operands[1], operands[3])
    7030              :       && rtx_equal_p (operands[2], operands[4]))
    7031              :   && ix86_pre_reload_split ()))
    7032              :                     return 1854; /* *ieee_maxdf3_1 */
    7033              :                   if (!
    7034              : #line 27206 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7035              : (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH
    7036              :   && (rtx_equal_p (operands[1], operands[4])
    7037              :       && rtx_equal_p (operands[2], operands[3]))
    7038              :   && ix86_pre_reload_split ()))
    7039              :                     return -1;
    7040              :                   return 1856; /* *ieee_mindf3_1 */
    7041              : 
    7042              :                 default:
    7043              :                   return -1;
    7044              :                 }
    7045              : 
    7046              :             case REG:
    7047              :             case SUBREG:
    7048              :               operands[3] = x3;
    7049              :               switch (GET_MODE (operands[0]))
    7050              :                 {
    7051              :                 case E_V2SFmode:
    7052              :                   if (pattern971 (x2, 
    7053              : E_V2SFmode) == 0
    7054              :                       && 
    7055              : #line 1342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7056              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    7057              :                     return 2123; /* mmx_blendvps */
    7058              :                   break;
    7059              : 
    7060              :                 case E_V8QImode:
    7061              :                   if (pattern971 (x2, 
    7062              : E_V8QImode) == 0
    7063              :                       && 
    7064              : #line 4346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7065              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    7066              :                     return 2289; /* mmx_pblendvb_v8qi */
    7067              :                   break;
    7068              : 
    7069              :                 case E_V4QImode:
    7070              :                   if (pattern971 (x2, 
    7071              : E_V4QImode) == 0
    7072              :                       && 
    7073              : #line 4423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7074              : (TARGET_SSE4_1))
    7075              :                     return 2293; /* mmx_pblendvb_v4qi */
    7076              :                   break;
    7077              : 
    7078              :                 case E_V2QImode:
    7079              :                   if (pattern971 (x2, 
    7080              : E_V2QImode) == 0
    7081              :                       && 
    7082              : #line 4423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7083              : (TARGET_SSE4_1))
    7084              :                     return 2294; /* mmx_pblendvb_v2qi */
    7085              :                   break;
    7086              : 
    7087              :                 case E_V2HImode:
    7088              :                   if (pattern971 (x2, 
    7089              : E_V2HImode) == 0
    7090              :                       && 
    7091              : #line 4423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7092              : (TARGET_SSE4_1))
    7093              :                     return 2295; /* mmx_pblendvb_v2hi */
    7094              :                   break;
    7095              : 
    7096              :                 case E_SFmode:
    7097              :                   if (pattern971 (x2, 
    7098              : E_SFmode) == 0
    7099              :                       && 
    7100              : #line 24063 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7101              : (TARGET_SSE4_1))
    7102              :                     return 8743; /* sse4_1_blendvss */
    7103              :                   break;
    7104              : 
    7105              :                 case E_DFmode:
    7106              :                   if (pattern971 (x2, 
    7107              : E_DFmode) == 0
    7108              :                       && 
    7109              : #line 24063 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7110              : (TARGET_SSE4_1))
    7111              :                     return 8744; /* sse4_1_blendvsd */
    7112              :                   break;
    7113              : 
    7114              :                 default:
    7115              :                   break;
    7116              :                 }
    7117              :               if (GET_CODE (x3) != SUBREG)
    7118              :                 return -1;
    7119              :               switch (pattern859 (x2))
    7120              :                 {
    7121              :                 case 0:
    7122              :                   if (!
    7123              : #line 4399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7124              : (TARGET_MMX_WITH_SSE && ix86_pre_reload_split ()))
    7125              :                     return -1;
    7126              :                   return 2291; /* *mmx_pblendvb_v8qi_2 */
    7127              : 
    7128              :                 case 1:
    7129              :                   if (!
    7130              : #line 4399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7131              : (TARGET_MMX_WITH_SSE && ix86_pre_reload_split ()))
    7132              :                     return -1;
    7133              :                   return 2292; /* *mmx_pblendvb_v8qi_2 */
    7134              : 
    7135              :                 case 2:
    7136              :                   if (!
    7137              : #line 4476 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7138              : (TARGET_SSE2 && ix86_pre_reload_split ()))
    7139              :                     return -1;
    7140              :                   return 2299; /* *mmx_pblendvb_v4qi_2 */
    7141              : 
    7142              :                 default:
    7143              :                   return -1;
    7144              :                 }
    7145              : 
    7146              :             case EQ:
    7147              :               switch (pattern745 (x2))
    7148              :                 {
    7149              :                 case 0:
    7150              :                   if (!
    7151              : #line 4371 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7152              : (TARGET_MMX_WITH_SSE && ix86_pre_reload_split ()))
    7153              :                     return -1;
    7154              :                   return 2290; /* *mmx_pblendvb_v8qi_1 */
    7155              : 
    7156              :                 case 1:
    7157              :                   if (!
    7158              : #line 4448 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7159              : (TARGET_SSE2 && ix86_pre_reload_split ()))
    7160              :                     return -1;
    7161              :                   return 2296; /* *mmx_pblendvb_v4qi_1 */
    7162              : 
    7163              :                 case 2:
    7164              :                   if (!
    7165              : #line 4448 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7166              : (TARGET_SSE2 && ix86_pre_reload_split ()))
    7167              :                     return -1;
    7168              :                   return 2297; /* *mmx_pblendvb_v2qi_1 */
    7169              : 
    7170              :                 case 3:
    7171              :                   if (!
    7172              : #line 4448 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7173              : (TARGET_SSE2 && ix86_pre_reload_split ()))
    7174              :                     return -1;
    7175              :                   return 2298; /* *mmx_pblendvb_v2hi_1 */
    7176              : 
    7177              :                 default:
    7178              :                   return -1;
    7179              :                 }
    7180              : 
    7181              :             default:
    7182              :               return -1;
    7183              :             }
    7184              : 
    7185              :         case 51:
    7186              :           x6 = XEXP (x1, 0);
    7187              :           operands[0] = x6;
    7188              :           x7 = XVECEXP (x2, 0, 0);
    7189              :           operands[2] = x7;
    7190              :           x8 = XVECEXP (x2, 0, 1);
    7191              :           operands[1] = x8;
    7192              :           x3 = XVECEXP (x2, 0, 2);
    7193              :           operands[3] = x3;
    7194              :           if (!const_0_to_255_operand (operands[3], E_SImode))
    7195              :             return -1;
    7196              :           switch (GET_MODE (operands[0]))
    7197              :             {
    7198              :             case E_V2SFmode:
    7199              :               if (pattern972 (x2, 
    7200              : E_V2SFmode) != 0
    7201              :                   || !
    7202              : #line 1285 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7203              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    7204              :                 return -1;
    7205              :               return 2120; /* sse4_1_insertps_v2sf */
    7206              : 
    7207              :             case E_V2SImode:
    7208              :               if (pattern972 (x2, 
    7209              : E_V2SImode) != 0
    7210              :                   || !
    7211              : #line 1285 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7212              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    7213              :                 return -1;
    7214              :               return 2121; /* sse4_1_insertps_v2si */
    7215              : 
    7216              :             default:
    7217              :               return -1;
    7218              :             }
    7219              : 
    7220              :         case 54:
    7221              :           x6 = XEXP (x1, 0);
    7222              :           operands[0] = x6;
    7223              :           x7 = XVECEXP (x2, 0, 0);
    7224              :           operands[1] = x7;
    7225              :           x8 = XVECEXP (x2, 0, 1);
    7226              :           operands[2] = x8;
    7227              :           x3 = XVECEXP (x2, 0, 2);
    7228              :           operands[3] = x3;
    7229              :           if (!nonimmediate_operand (operands[3], E_V16QImode))
    7230              :             return -1;
    7231              :           switch (GET_MODE (operands[0]))
    7232              :             {
    7233              :             case E_V8QImode:
    7234              :               if (pattern973 (x2, 
    7235              : E_V8QImode) != 0
    7236              :                   || !
    7237              : #line 4546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7238              : (TARGET_XOP && TARGET_MMX_WITH_SSE))
    7239              :                 return -1;
    7240              :               return 2311; /* mmx_ppermv64 */
    7241              : 
    7242              :             case E_V4QImode:
    7243              :               if (pattern973 (x2, 
    7244              : E_V4QImode) != 0
    7245              :                   || !
    7246              : #line 4558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7247              : (TARGET_XOP))
    7248              :                 return -1;
    7249              :               return 2312; /* mmx_ppermv32 */
    7250              : 
    7251              :             default:
    7252              :               return -1;
    7253              :             }
    7254              : 
    7255              :         case 48:
    7256              :           if (GET_MODE (x2) != E_V8QImode)
    7257              :             return -1;
    7258              :           x3 = XVECEXP (x2, 0, 2);
    7259              :           if (GET_CODE (x3) != MEM
    7260              :               || GET_MODE (x3) != E_V8QImode)
    7261              :             return -1;
    7262              :           x6 = XEXP (x1, 0);
    7263              :           if (GET_CODE (x6) != MEM
    7264              :               || GET_MODE (x6) != E_V8QImode)
    7265              :             return -1;
    7266              :           x9 = XEXP (x6, 0);
    7267              :           operands[0] = x9;
    7268              :           x7 = XVECEXP (x2, 0, 0);
    7269              :           operands[1] = x7;
    7270              :           switch (pattern1080 (x2, 
    7271              : E_V8QImode))
    7272              :             {
    7273              :             case 0:
    7274              :               if (!(
    7275              : #line 6918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7276              : (TARGET_SSE || TARGET_3DNOW_A) && 
    7277              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7278              : (Pmode == SImode)))
    7279              :                 return -1;
    7280              :               return 2433; /* *mmx_maskmovq */
    7281              : 
    7282              :             case 1:
    7283              :               if (!(
    7284              : #line 6918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7285              : (TARGET_SSE || TARGET_3DNOW_A) && 
    7286              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7287              : (Pmode == DImode)))
    7288              :                 return -1;
    7289              :               return 2434; /* *mmx_maskmovq */
    7290              : 
    7291              :             default:
    7292              :               return -1;
    7293              :             }
    7294              : 
    7295              :         case 158:
    7296              :           switch (pattern74 (x1))
    7297              :             {
    7298              :             case 0:
    7299              :               x3 = XVECEXP (x2, 0, 2);
    7300              :               operands[3] = x3;
    7301              :               if (const_0_to_7_operand (operands[3], E_SImode))
    7302              :                 {
    7303              :                   x8 = XVECEXP (x2, 0, 1);
    7304              :                   operands[2] = x8;
    7305              :                   switch (GET_MODE (operands[0]))
    7306              :                     {
    7307              :                     case E_HImode:
    7308              :                       switch (pattern600 (x2))
    7309              :                         {
    7310              :                         case 0:
    7311              :                           if ((
    7312              : #line 4945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7313              : (TARGET_AVX512F && ix86_pre_reload_split ()
    7314              :    && rtx_equal_p (operands[1], operands[2])
    7315              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
    7316              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7317              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7318              :                             return 3534; /* *avx512vl_cmpv16qi3_dup_op */
    7319              :                           break;
    7320              : 
    7321              :                         case 1:
    7322              :                           if ((
    7323              : #line 4945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7324              : (TARGET_AVX512F && ix86_pre_reload_split ()
    7325              :    && rtx_equal_p (operands[1], operands[2])
    7326              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
    7327              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7328              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7329              :                             return 3538; /* *avx512vl_cmpv16hi3_dup_op */
    7330              :                           break;
    7331              : 
    7332              :                         case 2:
    7333              :                           if (
    7334              : #line 4945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7335              : (TARGET_AVX512F && ix86_pre_reload_split ()
    7336              :    && rtx_equal_p (operands[1], operands[2])
    7337              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))))
    7338              :                             return 3542; /* *avx512f_cmpv16si3_dup_op */
    7339              :                           break;
    7340              : 
    7341              :                         default:
    7342              :                           break;
    7343              :                         }
    7344              :                       break;
    7345              : 
    7346              :                     case E_QImode:
    7347              :                       switch (pattern601 (x2))
    7348              :                         {
    7349              :                         case 0:
    7350              :                           if ((
    7351              : #line 4945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7352              : (TARGET_AVX512F && ix86_pre_reload_split ()
    7353              :    && rtx_equal_p (operands[1], operands[2])
    7354              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
    7355              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7356              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7357              :                             return 3540; /* *avx512vl_cmpv8hi3_dup_op */
    7358              :                           break;
    7359              : 
    7360              :                         case 1:
    7361              :                           if ((
    7362              : #line 4945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7363              : (TARGET_AVX512F && ix86_pre_reload_split ()
    7364              :    && rtx_equal_p (operands[1], operands[2])
    7365              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
    7366              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7367              : (TARGET_AVX512VL)))
    7368              :                             return 3544; /* *avx512vl_cmpv8si3_dup_op */
    7369              :                           break;
    7370              : 
    7371              :                         case 2:
    7372              :                           if ((
    7373              : #line 4945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7374              : (TARGET_AVX512F && ix86_pre_reload_split ()
    7375              :    && rtx_equal_p (operands[1], operands[2])
    7376              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
    7377              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7378              : (TARGET_AVX512VL)))
    7379              :                             return 3546; /* *avx512vl_cmpv4si3_dup_op */
    7380              :                           break;
    7381              : 
    7382              :                         case 3:
    7383              :                           if (
    7384              : #line 4945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7385              : (TARGET_AVX512F && ix86_pre_reload_split ()
    7386              :    && rtx_equal_p (operands[1], operands[2])
    7387              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))))
    7388              :                             return 3548; /* *avx512f_cmpv8di3_dup_op */
    7389              :                           break;
    7390              : 
    7391              :                         case 4:
    7392              :                           if ((
    7393              : #line 4945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7394              : (TARGET_AVX512F && ix86_pre_reload_split ()
    7395              :    && rtx_equal_p (operands[1], operands[2])
    7396              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
    7397              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7398              : (TARGET_AVX512VL)))
    7399              :                             return 3550; /* *avx512vl_cmpv4di3_dup_op */
    7400              :                           break;
    7401              : 
    7402              :                         case 5:
    7403              :                           if ((
    7404              : #line 4945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7405              : (TARGET_AVX512F && ix86_pre_reload_split ()
    7406              :    && rtx_equal_p (operands[1], operands[2])
    7407              :    && (!MEM_P (operands[1]) || !MEM_VOLATILE_P (operands[1]))) && 
    7408              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7409              : (TARGET_AVX512VL)))
    7410              :                             return 3552; /* *avx512vl_cmpv2di3_dup_op */
    7411              :                           break;
    7412              : 
    7413              :                         default:
    7414              :                           break;
    7415              :                         }
    7416              :                       break;
    7417              : 
    7418              :                     default:
    7419              :                       break;
    7420              :                     }
    7421              :                 }
    7422              :               x8 = XVECEXP (x2, 0, 1);
    7423              :               operands[2] = x8;
    7424              :               if (XWINT (x3, 0) == 0L)
    7425              :                 {
    7426              :                   switch (pattern970 (x2))
    7427              :                     {
    7428              :                     case 0:
    7429              :                       if ((
    7430              : #line 4973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7431              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7432              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7433              : (TARGET_AVX512VL)))
    7434              :                         return 3559; /* *avx512vl_eqv16qi3_1 */
    7435              :                       break;
    7436              : 
    7437              :                     case 1:
    7438              :                       if ((
    7439              : #line 4973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7440              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7441              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7442              : (TARGET_AVX512VL)))
    7443              :                         return 3571; /* *avx512vl_eqv16hi3_1 */
    7444              :                       break;
    7445              : 
    7446              :                     case 2:
    7447              :                       if (
    7448              : #line 5049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7449              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7450              :                         return 3615; /* *avx512f_eqv16si3_1 */
    7451              :                       break;
    7452              : 
    7453              :                     case 3:
    7454              :                       if ((
    7455              : #line 4973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7456              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7457              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7458              : (TARGET_AVX512VL)))
    7459              :                         return 3575; /* *avx512vl_eqv8hi3_1 */
    7460              :                       break;
    7461              : 
    7462              :                     case 4:
    7463              :                       if ((
    7464              : #line 5049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7465              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7466              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7467              : (TARGET_AVX512VL)))
    7468              :                         return 3619; /* *avx512vl_eqv8si3_1 */
    7469              :                       break;
    7470              : 
    7471              :                     case 5:
    7472              :                       if ((
    7473              : #line 5049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7474              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7475              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7476              : (TARGET_AVX512VL)))
    7477              :                         return 3623; /* *avx512vl_eqv4si3_1 */
    7478              :                       break;
    7479              : 
    7480              :                     case 6:
    7481              :                       if (
    7482              : #line 5049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7483              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7484              :                         return 3627; /* *avx512f_eqv8di3_1 */
    7485              :                       break;
    7486              : 
    7487              :                     case 7:
    7488              :                       if ((
    7489              : #line 5049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7490              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7491              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7492              : (TARGET_AVX512VL)))
    7493              :                         return 3631; /* *avx512vl_eqv4di3_1 */
    7494              :                       break;
    7495              : 
    7496              :                     case 8:
    7497              :                       if ((
    7498              : #line 5049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7499              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7500              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7501              : (TARGET_AVX512VL)))
    7502              :                         return 3635; /* *avx512vl_eqv2di3_1 */
    7503              :                       break;
    7504              : 
    7505              :                     default:
    7506              :                       break;
    7507              :                     }
    7508              :                 }
    7509              :               operands[3] = x3;
    7510              :               if (!const_0_to_7_operand (operands[3], E_SImode))
    7511              :                 return -1;
    7512              :               switch (pattern70 (x2))
    7513              :                 {
    7514              :                 case 0:
    7515              :                   if (!(
    7516              : #line 5066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7517              : (TARGET_AVX512F) && 
    7518              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7519              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7520              :                     return -1;
    7521              :                   return 3641; /* avx512vl_ucmpv16qi3 */
    7522              : 
    7523              :                 case 1:
    7524              :                   if (!(
    7525              : #line 5066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7526              : (TARGET_AVX512F) && 
    7527              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7528              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7529              :                     return -1;
    7530              :                   return 3645; /* avx512vl_ucmpv16hi3 */
    7531              : 
    7532              :                 case 2:
    7533              :                   if (!
    7534              : #line 5066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7535              : (TARGET_AVX512F))
    7536              :                     return -1;
    7537              :                   return 3649; /* avx512f_ucmpv16si3 */
    7538              : 
    7539              :                 case 3:
    7540              :                   if (!(
    7541              : #line 5066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7542              : (TARGET_AVX512F) && 
    7543              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7544              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7545              :                     return -1;
    7546              :                   return 3647; /* avx512vl_ucmpv8hi3 */
    7547              : 
    7548              :                 case 4:
    7549              :                   if (!(
    7550              : #line 5066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7551              : (TARGET_AVX512F) && 
    7552              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7553              : (TARGET_AVX512VL)))
    7554              :                     return -1;
    7555              :                   return 3651; /* avx512vl_ucmpv8si3 */
    7556              : 
    7557              :                 case 5:
    7558              :                   if (!(
    7559              : #line 5066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7560              : (TARGET_AVX512F) && 
    7561              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7562              : (TARGET_AVX512VL)))
    7563              :                     return -1;
    7564              :                   return 3653; /* avx512vl_ucmpv4si3 */
    7565              : 
    7566              :                 case 6:
    7567              :                   if (!
    7568              : #line 5066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7569              : (TARGET_AVX512F))
    7570              :                     return -1;
    7571              :                   return 3655; /* avx512f_ucmpv8di3 */
    7572              : 
    7573              :                 case 7:
    7574              :                   if (!(
    7575              : #line 5066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7576              : (TARGET_AVX512F) && 
    7577              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7578              : (TARGET_AVX512VL)))
    7579              :                     return -1;
    7580              :                   return 3657; /* avx512vl_ucmpv4di3 */
    7581              : 
    7582              :                 case 8:
    7583              :                   if (!(
    7584              : #line 5066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7585              : (TARGET_AVX512F) && 
    7586              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7587              : (TARGET_AVX512VL)))
    7588              :                     return -1;
    7589              :                   return 3659; /* avx512vl_ucmpv2di3 */
    7590              : 
    7591              :                 default:
    7592              :                   return -1;
    7593              :                 }
    7594              : 
    7595              :             case 1:
    7596              :               if (!(
    7597              : #line 5170 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7598              : (TARGET_AVX512BW && ix86_pre_reload_split ()
    7599              :   && ix86_binary_operator_ok (US_MINUS, V16QImode, operands)
    7600              :   && (INTVAL (operands[4]) & 1) == 0) && 
    7601              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7602              : (TARGET_AVX512VL)))
    7603              :                 return -1;
    7604              :               return 3706; /* *avx512vl_ucmpv16qi3_1 */
    7605              : 
    7606              :             case 2:
    7607              :               if (!(
    7608              : #line 5170 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7609              : (TARGET_AVX512BW && ix86_pre_reload_split ()
    7610              :   && ix86_binary_operator_ok (US_MINUS, V16HImode, operands)
    7611              :   && (INTVAL (operands[4]) & 1) == 0) && 
    7612              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7613              : (TARGET_AVX512VL)))
    7614              :                 return -1;
    7615              :               return 3712; /* *avx512vl_ucmpv16hi3_1 */
    7616              : 
    7617              :             case 3:
    7618              :               if (!(
    7619              : #line 5170 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7620              : (TARGET_AVX512BW && ix86_pre_reload_split ()
    7621              :   && ix86_binary_operator_ok (US_MINUS, V8HImode, operands)
    7622              :   && (INTVAL (operands[4]) & 1) == 0) && 
    7623              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7624              : (TARGET_AVX512VL)))
    7625              :                 return -1;
    7626              :               return 3714; /* *avx512vl_ucmpv8hi3_1 */
    7627              : 
    7628              :             default:
    7629              :               return -1;
    7630              :             }
    7631              : 
    7632              :         case 53:
    7633              :           if (pattern62 (x1, pnum_clobbers, 
    7634              : E_V8QImode) != 0)
    7635              :             return -1;
    7636              :           x8 = XVECEXP (x2, 0, 1);
    7637              :           operands[2] = x8;
    7638              :           if (!register_mmxmem_operand (operands[2], E_V8QImode))
    7639              :             return -1;
    7640              :           x3 = XVECEXP (x2, 0, 2);
    7641              :           operands[4] = x3;
    7642              :           if (!reg_or_const_vector_operand (operands[4], E_V4SImode)
    7643              :               || !
    7644              : #line 23660 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7645              : ((TARGET_MMX || TARGET_MMX_WITH_SSE) && TARGET_SSSE3))
    7646              :             return -1;
    7647              :           *pnum_clobbers = 1;
    7648              :           return 8686; /* *ssse3_pshufbv8qi3 */
    7649              : 
    7650              :         case 133:
    7651              :           if (pnum_clobbers == NULL
    7652              :               || pattern257 (x1) != 0
    7653              :               || !nonimmediate_operand (operands[3], E_V16QImode))
    7654              :             return -1;
    7655              :           x3 = XVECEXP (x2, 0, 2);
    7656              :           operands[4] = x3;
    7657              :           if (!const_0_to_255_operand (operands[4], E_SImode)
    7658              :               || !
    7659              : #line 26894 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7660              : (TARGET_SSE4_2))
    7661              :             return -1;
    7662              :           *pnum_clobbers = 2;
    7663              :           return 9050; /* sse4_2_pcmpistr_cconly */
    7664              : 
    7665              :         default:
    7666              :           return -1;
    7667              :         }
    7668              : 
    7669              :     case 5:
    7670              :       if (pnum_clobbers == NULL
    7671              :           || XINT (x2, 1) != 132
    7672              :           || pattern257 (x1) != 0
    7673              :           || !register_operand (operands[3], E_SImode))
    7674              :         return -1;
    7675              :       x3 = XVECEXP (x2, 0, 2);
    7676              :       operands[4] = x3;
    7677              :       if (!nonimmediate_operand (operands[4], E_V16QImode))
    7678              :         return -1;
    7679              :       x10 = XVECEXP (x2, 0, 3);
    7680              :       operands[5] = x10;
    7681              :       if (!register_operand (operands[5], E_SImode))
    7682              :         return -1;
    7683              :       x11 = XVECEXP (x2, 0, 4);
    7684              :       operands[6] = x11;
    7685              :       if (!const_0_to_255_operand (operands[6], E_SImode)
    7686              :           || !
    7687              : #line 26766 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7688              : (TARGET_SSE4_2))
    7689              :         return -1;
    7690              :       *pnum_clobbers = 2;
    7691              :       return 9046; /* sse4_2_pcmpestr_cconly */
    7692              : 
    7693              :     default:
    7694              :       return -1;
    7695              :     }
    7696              : }
    7697              : 
    7698              :  int
    7699              : recog_37 (rtx x1 ATTRIBUTE_UNUSED,
    7700              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7701              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7702              : {
    7703              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7704              :   rtx x2;
    7705              :   int res ATTRIBUTE_UNUSED;
    7706              :   switch (pattern88 (x1, pnum_clobbers))
    7707              :     {
    7708              :     case 0:
    7709              :       switch (GET_MODE (operands[0]))
    7710              :         {
    7711              :         case E_TImode:
    7712              :           x2 = XEXP (x1, 1);
    7713              :           if (pattern79 (x2, pnum_clobbers) != 0
    7714              :               || !(
    7715              : #line 12926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7716              : (ix86_binary_operator_ok (AND, TImode, operands, TARGET_APX_NDD)) && 
    7717              : #line 1240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7718              : (TARGET_64BIT)))
    7719              :             return -1;
    7720              :           *pnum_clobbers = 1;
    7721              :           return 732; /* *andti3_doubleword */
    7722              : 
    7723              :         case E_HImode:
    7724              :           x2 = XEXP (x1, 1);
    7725              :           if (pattern80 (x2, 
    7726              : E_HImode) != 0)
    7727              :             return -1;
    7728              :           if (
    7729              : #line 13097 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7730              : (ix86_binary_operator_ok (AND, HImode, operands, TARGET_APX_NDD)
    7731              :    && TARGET_APX_NF))
    7732              :             return 747; /* *andhi_1_nf */
    7733              :           if (pnum_clobbers == NULL
    7734              :               || !
    7735              : #line 13097 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7736              : (ix86_binary_operator_ok (AND, HImode, operands, TARGET_APX_NDD)
    7737              :    && true))
    7738              :             return -1;
    7739              :           *pnum_clobbers = 1;
    7740              :           return 748; /* *andhi_1 */
    7741              : 
    7742              :         case E_QImode:
    7743              :           x2 = XEXP (x1, 1);
    7744              :           if (pattern80 (x2, 
    7745              : E_QImode) != 0)
    7746              :             return -1;
    7747              :           if (
    7748              : #line 13135 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7749              : (ix86_binary_operator_ok (AND, QImode, operands, TARGET_APX_NDD)
    7750              :    && TARGET_APX_NF))
    7751              :             return 751; /* *andqi_1_nf */
    7752              :           if (pnum_clobbers == NULL
    7753              :               || !
    7754              : #line 13135 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7755              : (ix86_binary_operator_ok (AND, QImode, operands, TARGET_APX_NDD)
    7756              :    && true))
    7757              :             return -1;
    7758              :           *pnum_clobbers = 1;
    7759              :           return 752; /* *andqi_1 */
    7760              : 
    7761              :         case E_V2SFmode:
    7762              :           x2 = XEXP (x1, 1);
    7763              :           if (pattern5 (x2, 
    7764              : E_V2SFmode) != 0
    7765              :               || !
    7766              : #line 1383 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7767              : (TARGET_MMX_WITH_SSE))
    7768              :             return -1;
    7769              :           return 2125; /* andv2sf3 */
    7770              : 
    7771              :         case E_V2BFmode:
    7772              :           x2 = XEXP (x1, 1);
    7773              :           if (pattern5 (x2, 
    7774              : E_V2BFmode) != 0
    7775              :               || !
    7776              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7777              : (TARGET_SSE))
    7778              :             return -1;
    7779              :           return 2159; /* andv2bf3 */
    7780              : 
    7781              :         case E_V4BFmode:
    7782              :           x2 = XEXP (x1, 1);
    7783              :           if (pattern5 (x2, 
    7784              : E_V4BFmode) != 0
    7785              :               || !(
    7786              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7787              : (TARGET_SSE) && 
    7788              : #line 2251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7789              : (TARGET_MMX_WITH_SSE)))
    7790              :             return -1;
    7791              :           return 2162; /* andv4bf3 */
    7792              : 
    7793              :         case E_V2HFmode:
    7794              :           x2 = XEXP (x1, 1);
    7795              :           if (pattern5 (x2, 
    7796              : E_V2HFmode) != 0
    7797              :               || !
    7798              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7799              : (TARGET_SSE))
    7800              :             return -1;
    7801              :           return 2165; /* andv2hf3 */
    7802              : 
    7803              :         case E_V4HFmode:
    7804              :           x2 = XEXP (x1, 1);
    7805              :           if (pattern5 (x2, 
    7806              : E_V4HFmode) != 0
    7807              :               || !(
    7808              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7809              : (TARGET_SSE) && 
    7810              : #line 2252 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7811              : (TARGET_MMX_WITH_SSE)))
    7812              :             return -1;
    7813              :           return 2168; /* andv4hf3 */
    7814              : 
    7815              :         case E_V8QImode:
    7816              :           x2 = XEXP (x1, 1);
    7817              :           if (pattern6 (x2, 
    7818              : E_V8QImode) != 0
    7819              :               || !
    7820              : #line 4721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7821              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7822              :    && ix86_binary_operator_ok (AND, V8QImode, operands)))
    7823              :             return -1;
    7824              :           return 2322; /* *mmx_andv8qi3 */
    7825              : 
    7826              :         case E_V4HImode:
    7827              :           x2 = XEXP (x1, 1);
    7828              :           if (pattern6 (x2, 
    7829              : E_V4HImode) != 0
    7830              :               || !
    7831              : #line 4721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7832              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7833              :    && ix86_binary_operator_ok (AND, V4HImode, operands)))
    7834              :             return -1;
    7835              :           return 2325; /* *mmx_andv4hi3 */
    7836              : 
    7837              :         case E_V2SImode:
    7838              :           x2 = XEXP (x1, 1);
    7839              :           if (pattern6 (x2, 
    7840              : E_V2SImode) != 0
    7841              :               || !
    7842              : #line 4721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7843              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7844              :    && ix86_binary_operator_ok (AND, V2SImode, operands)))
    7845              :             return -1;
    7846              :           return 2328; /* *mmx_andv2si3 */
    7847              : 
    7848              :         case E_V4QImode:
    7849              :           x2 = XEXP (x1, 1);
    7850              :           if (pattern81 (x2, pnum_clobbers, 
    7851              : E_V4QImode) != 0
    7852              :               || !
    7853              : #line 4747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7854              : (ix86_binary_operator_ok (AND, V4QImode, operands)))
    7855              :             return -1;
    7856              :           *pnum_clobbers = 1;
    7857              :           return 2331; /* *andv4qi3 */
    7858              : 
    7859              :         case E_V2QImode:
    7860              :           x2 = XEXP (x1, 1);
    7861              :           if (pattern81 (x2, pnum_clobbers, 
    7862              : E_V2QImode) != 0
    7863              :               || !
    7864              : #line 4747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7865              : (ix86_binary_operator_ok (AND, V2QImode, operands)))
    7866              :             return -1;
    7867              :           *pnum_clobbers = 1;
    7868              :           return 2334; /* *andv2qi3 */
    7869              : 
    7870              :         case E_V2HImode:
    7871              :           x2 = XEXP (x1, 1);
    7872              :           if (pattern81 (x2, pnum_clobbers, 
    7873              : E_V2HImode) != 0
    7874              :               || !
    7875              : #line 4747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7876              : (ix86_binary_operator_ok (AND, V2HImode, operands)))
    7877              :             return -1;
    7878              :           *pnum_clobbers = 1;
    7879              :           return 2337; /* *andv2hi3 */
    7880              : 
    7881              :         case E_BFmode:
    7882              :           x2 = XEXP (x1, 1);
    7883              :           if (pattern5 (x2, 
    7884              : E_BFmode) != 0
    7885              :               || !
    7886              : #line 6049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7887              : (TARGET_SSE))
    7888              :             return -1;
    7889              :           return 3842; /* andbf3 */
    7890              : 
    7891              :         case E_HFmode:
    7892              :           x2 = XEXP (x1, 1);
    7893              :           if (pattern5 (x2, 
    7894              : E_HFmode) != 0
    7895              :               || !
    7896              : #line 6049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7897              : (TARGET_SSE))
    7898              :             return -1;
    7899              :           return 3845; /* andhf3 */
    7900              : 
    7901              :         case E_SFmode:
    7902              :           x2 = XEXP (x1, 1);
    7903              :           if (pattern5 (x2, 
    7904              : E_SFmode) != 0
    7905              :               || !
    7906              : #line 6049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7907              : (TARGET_SSE))
    7908              :             return -1;
    7909              :           return 3848; /* andsf3 */
    7910              : 
    7911              :         case E_DFmode:
    7912              :           x2 = XEXP (x1, 1);
    7913              :           if (pattern5 (x2, 
    7914              : E_DFmode) != 0
    7915              :               || !(
    7916              : #line 6049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7917              : (TARGET_SSE) && 
    7918              : #line 1356 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7919              : (TARGET_SSE2)))
    7920              :             return -1;
    7921              :           return 3851; /* anddf3 */
    7922              : 
    7923              :         case E_TFmode:
    7924              :           x2 = XEXP (x1, 1);
    7925              :           if (pattern26 (x2, 
    7926              : E_TFmode) != 0
    7927              :               || !
    7928              : #line 6124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7929              : (TARGET_SSE && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7930              :             return -1;
    7931              :           return 3854; /* *andtf3 */
    7932              : 
    7933              :         default:
    7934              :           return -1;
    7935              :         }
    7936              : 
    7937              :     case 1:
    7938              :       if (!
    7939              : #line 13167 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7940              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7941              :         return -1;
    7942              :       *pnum_clobbers = 1;
    7943              :       return 753; /* *andqi_1_slp */
    7944              : 
    7945              :     case 2:
    7946              :       if (!
    7947              : #line 13167 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7948              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7949              :         return -1;
    7950              :       *pnum_clobbers = 1;
    7951              :       return 756; /* *andhi_1_slp */
    7952              : 
    7953              :     default:
    7954              :       return -1;
    7955              :     }
    7956              : }
    7957              : 
    7958              :  int
    7959              : recog_46 (rtx x1 ATTRIBUTE_UNUSED,
    7960              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7961              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7962              : {
    7963              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7964              :   rtx x2, x3, x4;
    7965              :   int res ATTRIBUTE_UNUSED;
    7966              :   switch (pattern2 (x1, pnum_clobbers))
    7967              :     {
    7968              :     case 0:
    7969              :       if (!
    7970              : #line 18461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7971              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
    7972              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (QImode)-1))
    7973              :       == GET_MODE_BITSIZE (QImode)-1
    7974              :    && ix86_pre_reload_split ()))
    7975              :         return -1;
    7976              :       *pnum_clobbers = 1;
    7977              :       return 1324; /* *rotlqi3_mask_1 */
    7978              : 
    7979              :     case 1:
    7980              :       if (!
    7981              : #line 18461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7982              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
    7983              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (HImode)-1))
    7984              :       == GET_MODE_BITSIZE (HImode)-1
    7985              :    && ix86_pre_reload_split ()))
    7986              :         return -1;
    7987              :       *pnum_clobbers = 1;
    7988              :       return 1326; /* *rotlhi3_mask_1 */
    7989              : 
    7990              :     case 2:
    7991              :       if (!
    7992              : #line 18542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7993              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
    7994              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
    7995              :    && ix86_pre_reload_split ()))
    7996              :         return -1;
    7997              :       *pnum_clobbers = 1;
    7998              :       return 1340; /* *rotlqi3_add_1 */
    7999              : 
    8000              :     case 3:
    8001              :       if (!
    8002              : #line 18542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8003              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
    8004              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
    8005              :    && ix86_pre_reload_split ()))
    8006              :         return -1;
    8007              :       *pnum_clobbers = 1;
    8008              :       return 1342; /* *rotlhi3_add_1 */
    8009              : 
    8010              :     case 4:
    8011              :       if (!
    8012              : #line 18611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8013              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
    8014              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
    8015              :    && ix86_pre_reload_split ()))
    8016              :         return -1;
    8017              :       *pnum_clobbers = 1;
    8018              :       return 1356; /* *rotlqi3_sub_1 */
    8019              : 
    8020              :     case 5:
    8021              :       if (!
    8022              : #line 18611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8023              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
    8024              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
    8025              :    && ix86_pre_reload_split ()))
    8026              :         return -1;
    8027              :       *pnum_clobbers = 1;
    8028              :       return 1358; /* *rotlhi3_sub_1 */
    8029              : 
    8030              :     case 6:
    8031              :       x2 = XEXP (x1, 0);
    8032              :       operands[0] = x2;
    8033              :       x3 = XEXP (x1, 1);
    8034              :       switch (pattern270 (x3, pnum_clobbers))
    8035              :         {
    8036              :         case 0:
    8037              :           if (
    8038              : #line 18413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8039              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
    8040              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (QImode)-1))
    8041              :       == GET_MODE_BITSIZE (QImode)-1
    8042              :    && ix86_pre_reload_split ()))
    8043              :             {
    8044              :               *pnum_clobbers = 1;
    8045              :               return 1316; /* *rotlqi3_mask */
    8046              :             }
    8047              :           break;
    8048              : 
    8049              :         case 1:
    8050              :           if (
    8051              : #line 18413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8052              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
    8053              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (HImode)-1))
    8054              :       == GET_MODE_BITSIZE (HImode)-1
    8055              :    && ix86_pre_reload_split ()))
    8056              :             {
    8057              :               *pnum_clobbers = 1;
    8058              :               return 1318; /* *rotlhi3_mask */
    8059              :             }
    8060              :           break;
    8061              : 
    8062              :         case 2:
    8063              :           if (
    8064              : #line 18506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8065              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
    8066              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
    8067              :    && ix86_pre_reload_split ()))
    8068              :             {
    8069              :               *pnum_clobbers = 1;
    8070              :               return 1332; /* *rotlqi3_add */
    8071              :             }
    8072              :           break;
    8073              : 
    8074              :         case 3:
    8075              :           if (
    8076              : #line 18506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8077              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
    8078              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
    8079              :    && ix86_pre_reload_split ()))
    8080              :             {
    8081              :               *pnum_clobbers = 1;
    8082              :               return 1334; /* *rotlhi3_add */
    8083              :             }
    8084              :           break;
    8085              : 
    8086              :         case 4:
    8087              :           if (
    8088              : #line 18575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8089              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
    8090              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
    8091              :    && ix86_pre_reload_split ()))
    8092              :             {
    8093              :               *pnum_clobbers = 1;
    8094              :               return 1348; /* *rotlqi3_sub */
    8095              :             }
    8096              :           break;
    8097              : 
    8098              :         case 5:
    8099              :           if (
    8100              : #line 18575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8101              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
    8102              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
    8103              :    && ix86_pre_reload_split ()))
    8104              :             {
    8105              :               *pnum_clobbers = 1;
    8106              :               return 1350; /* *rotlhi3_sub */
    8107              :             }
    8108              :           break;
    8109              : 
    8110              :         case 6:
    8111              :           if (pnum_clobbers != NULL
    8112              :               && pattern628 (x3) == 0
    8113              :               && 
    8114              : #line 1240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8115              : (TARGET_64BIT))
    8116              :             {
    8117              :               *pnum_clobbers = 2;
    8118              :               return 1365; /* ix86_rotlti3_doubleword */
    8119              :             }
    8120              :           x4 = XEXP (x3, 1);
    8121              :           if (XWINT (x4, 0) == 64L
    8122              :               && register_operand (operands[0], E_TImode)
    8123              :               && GET_MODE (x3) == E_TImode
    8124              :               && register_operand (operands[1], E_TImode)
    8125              :               && 
    8126              : #line 18734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8127              : (TARGET_64BIT))
    8128              :             return 1370; /* rotl64ti2_doubleword */
    8129              :           break;
    8130              : 
    8131              :         default:
    8132              :           break;
    8133              :         }
    8134              :       x4 = XEXP (x3, 1);
    8135              :       operands[2] = x4;
    8136              :       switch (pattern271 (x1, pnum_clobbers))
    8137              :         {
    8138              :         case 0:
    8139              :           if (
    8140              : #line 18934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8141              : (ix86_binary_operator_ok (ROTATE, QImode, operands, TARGET_APX_NDD)
    8142              :    && TARGET_APX_NF))
    8143              :             return 1405; /* *rotlqi3_1_nf */
    8144              :           if (pnum_clobbers == NULL
    8145              :               || !
    8146              : #line 18934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8147              : (ix86_binary_operator_ok (ROTATE, QImode, operands, TARGET_APX_NDD)
    8148              :    && true))
    8149              :             return -1;
    8150              :           *pnum_clobbers = 1;
    8151              :           return 1406; /* *rotlqi3_1 */
    8152              : 
    8153              :         case 1:
    8154              :           if (
    8155              : #line 18934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8156              : (ix86_binary_operator_ok (ROTATE, HImode, operands, TARGET_APX_NDD)
    8157              :    && TARGET_APX_NF))
    8158              :             return 1409; /* *rotlhi3_1_nf */
    8159              :           if (pnum_clobbers == NULL
    8160              :               || !
    8161              : #line 18934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8162              : (ix86_binary_operator_ok (ROTATE, HImode, operands, TARGET_APX_NDD)
    8163              :    && true))
    8164              :             return -1;
    8165              :           *pnum_clobbers = 1;
    8166              :           return 1410; /* *rotlhi3_1 */
    8167              : 
    8168              :         case 2:
    8169              :           if (!
    8170              : #line 18957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8171              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    8172              :             return -1;
    8173              :           *pnum_clobbers = 1;
    8174              :           return 1413; /* *rotlqi3_1_slp */
    8175              : 
    8176              :         case 3:
    8177              :           if (!
    8178              : #line 18957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8179              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    8180              :             return -1;
    8181              :           *pnum_clobbers = 1;
    8182              :           return 1415; /* *rotlhi3_1_slp */
    8183              : 
    8184              :         default:
    8185              :           return -1;
    8186              :         }
    8187              : 
    8188              :     default:
    8189              :       return -1;
    8190              :     }
    8191              : }
    8192              : 
    8193              :  int
    8194              : recog_52 (rtx x1 ATTRIBUTE_UNUSED,
    8195              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8196              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8197              : {
    8198              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8199              :   rtx x2, x3, x4, x5;
    8200              :   int res ATTRIBUTE_UNUSED;
    8201              :   x2 = XEXP (x1, 1);
    8202              :   x3 = XEXP (x2, 1);
    8203              :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    8204              :     return -1;
    8205              :   x4 = XEXP (x1, 0);
    8206              :   switch (GET_CODE (x4))
    8207              :     {
    8208              :     case REG:
    8209              :     case SUBREG:
    8210              :     case MEM:
    8211              :       operands[0] = x4;
    8212              :       switch (GET_MODE (operands[0]))
    8213              :         {
    8214              :         case E_HImode:
    8215              :           if (!register_operand (operands[0], E_HImode)
    8216              :               || !ix86_comparison_operator (operands[1], E_HImode))
    8217              :             return -1;
    8218              :           if (
    8219              : #line 19731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8220              : (TARGET_APX_ZU))
    8221              :             return 1468; /* *setcc_hi_zu */
    8222              :           if (pnum_clobbers != NULL
    8223              :               && 
    8224              : #line 19755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8225              : (!TARGET_PARTIAL_REG_STALL
    8226              :    && TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)))
    8227              :             {
    8228              :               *pnum_clobbers = 1;
    8229              :               return 1472; /* *setcc_hi_1_and */
    8230              :             }
    8231              :           if (!
    8232              : #line 19772 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8233              : (!TARGET_APX_ZU && !TARGET_PARTIAL_REG_STALL
    8234              :    && (!TARGET_ZERO_EXTEND_WITH_AND || optimize_function_for_size_p (cfun))))
    8235              :             return -1;
    8236              :           return 1474; /* *setcc_hi_1_movzbl */
    8237              : 
    8238              :         case E_QImode:
    8239              :           if (!nonimmediate_operand (operands[0], E_QImode)
    8240              :               || !ix86_comparison_operator (operands[1], E_QImode))
    8241              :             return -1;
    8242              :           return 1476; /* *setcc_qi */
    8243              : 
    8244              :         default:
    8245              :           return -1;
    8246              :         }
    8247              : 
    8248              :     case STRICT_LOW_PART:
    8249              :       x5 = XEXP (x4, 0);
    8250              :       operands[0] = x5;
    8251              :       if (!register_operand (operands[0], E_QImode)
    8252              :           || !ix86_comparison_operator (operands[1], E_QImode))
    8253              :         return -1;
    8254              :       return 1477; /* *setcc_qi_slp */
    8255              : 
    8256              :     default:
    8257              :       return -1;
    8258              :     }
    8259              : }
    8260              : 
    8261              :  int
    8262              : recog_57 (rtx x1 ATTRIBUTE_UNUSED,
    8263              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8264              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8265              : {
    8266              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8267              :   rtx x2, x3, x4;
    8268              :   int res ATTRIBUTE_UNUSED;
    8269              :   x2 = XEXP (x1, 0);
    8270              :   switch (GET_CODE (x2))
    8271              :     {
    8272              :     case REG:
    8273              :     case SUBREG:
    8274              :     case MEM:
    8275              :       operands[0] = x2;
    8276              :       switch (GET_MODE (operands[0]))
    8277              :         {
    8278              :         case E_TImode:
    8279              :           x3 = XEXP (x1, 1);
    8280              :           if (pattern79 (x3, pnum_clobbers) != 0
    8281              :               || !(
    8282              : #line 8184 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8283              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)) && 
    8284              : #line 1240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8285              : (TARGET_64BIT)))
    8286              :             return -1;
    8287              :           *pnum_clobbers = 1;
    8288              :           return 385; /* *subti3_doubleword */
    8289              : 
    8290              :         case E_QImode:
    8291              :           x3 = XEXP (x1, 1);
    8292              :           if (pattern80 (x3, 
    8293              : E_QImode) != 0)
    8294              :             return -1;
    8295              :           if (
    8296              : #line 8240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8297              : (ix86_binary_operator_ok (MINUS, QImode, operands, TARGET_APX_NDD)
    8298              :   && TARGET_APX_NF))
    8299              :             return 388; /* *subqi_1_nf */
    8300              :           if (pnum_clobbers == NULL
    8301              :               || !
    8302              : #line 8240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8303              : (ix86_binary_operator_ok (MINUS, QImode, operands, TARGET_APX_NDD)
    8304              :   && true))
    8305              :             return -1;
    8306              :           *pnum_clobbers = 1;
    8307              :           return 389; /* *subqi_1 */
    8308              : 
    8309              :         case E_HImode:
    8310              :           x3 = XEXP (x1, 1);
    8311              :           if (pattern80 (x3, 
    8312              : E_HImode) != 0)
    8313              :             return -1;
    8314              :           if (
    8315              : #line 8240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8316              : (ix86_binary_operator_ok (MINUS, HImode, operands, TARGET_APX_NDD)
    8317              :   && TARGET_APX_NF))
    8318              :             return 390; /* *subhi_1_nf */
    8319              :           if (pnum_clobbers == NULL
    8320              :               || !
    8321              : #line 8240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8322              : (ix86_binary_operator_ok (MINUS, HImode, operands, TARGET_APX_NDD)
    8323              :   && true))
    8324              :             return -1;
    8325              :           *pnum_clobbers = 1;
    8326              :           return 391; /* *subhi_1 */
    8327              : 
    8328              :         case E_HFmode:
    8329              :           x3 = XEXP (x1, 1);
    8330              :           if (pattern3 (x3, 
    8331              : E_HFmode) != 0
    8332              :               || !
    8333              : #line 23755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8334              : (TARGET_AVX512FP16
    8335              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8336              :             return -1;
    8337              :           return 1703; /* *subhf */
    8338              : 
    8339              :         case E_V8QImode:
    8340              :           x3 = XEXP (x1, 1);
    8341              :           if (pattern6 (x3, 
    8342              : E_V8QImode) != 0
    8343              :               || !
    8344              : #line 3242 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8345              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8346              :    && ix86_binary_operator_ok (MINUS, V8QImode, operands)))
    8347              :             return -1;
    8348              :           return 2173; /* *mmx_subv8qi3 */
    8349              : 
    8350              :         case E_V4HImode:
    8351              :           x3 = XEXP (x1, 1);
    8352              :           if (pattern6 (x3, 
    8353              : E_V4HImode) != 0
    8354              :               || !
    8355              : #line 3242 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8356              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8357              :    && ix86_binary_operator_ok (MINUS, V4HImode, operands)))
    8358              :             return -1;
    8359              :           return 2175; /* *mmx_subv4hi3 */
    8360              : 
    8361              :         case E_V2SImode:
    8362              :           x3 = XEXP (x1, 1);
    8363              :           if (pattern6 (x3, 
    8364              : E_V2SImode) != 0
    8365              :               || !
    8366              : #line 3242 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8367              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8368              :    && ix86_binary_operator_ok (MINUS, V2SImode, operands)))
    8369              :             return -1;
    8370              :           return 2177; /* *mmx_subv2si3 */
    8371              : 
    8372              :         case E_V1DImode:
    8373              :           x3 = XEXP (x1, 1);
    8374              :           if (pattern6 (x3, 
    8375              : E_V1DImode) != 0
    8376              :               || !(
    8377              : #line 3242 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8378              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8379              :    && ix86_binary_operator_ok (MINUS, V1DImode, operands)) && 
    8380              : #line 50 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8381              : (TARGET_SSE2)))
    8382              :             return -1;
    8383              :           return 2179; /* *mmx_subv1di3 */
    8384              : 
    8385              :         case E_V4QImode:
    8386              :           x3 = XEXP (x1, 1);
    8387              :           if (pattern5 (x3, 
    8388              : E_V4QImode) != 0
    8389              :               || !
    8390              : #line 3258 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8391              : (TARGET_SSE2))
    8392              :             return -1;
    8393              :           return 2181; /* subv4qi3 */
    8394              : 
    8395              :         case E_V2HImode:
    8396              :           x3 = XEXP (x1, 1);
    8397              :           if (pattern5 (x3, 
    8398              : E_V2HImode) != 0
    8399              :               || !
    8400              : #line 3258 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8401              : (TARGET_SSE2))
    8402              :             return -1;
    8403              :           return 2183; /* subv2hi3 */
    8404              : 
    8405              :         case E_V2QImode:
    8406              :           if (pnum_clobbers == NULL)
    8407              :             return -1;
    8408              :           x3 = XEXP (x1, 1);
    8409              :           if (pattern5 (x3, 
    8410              : E_V2QImode) != 0
    8411              :               || !
    8412              : #line 3272 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8413              : (!TARGET_PARTIAL_REG_STALL || optimize_size || TARGET_SSE2))
    8414              :             return -1;
    8415              :           *pnum_clobbers = 1;
    8416              :           return 2185; /* subv2qi3 */
    8417              : 
    8418              :         default:
    8419              :           return -1;
    8420              :         }
    8421              : 
    8422              :     case STRICT_LOW_PART:
    8423              :       if (pnum_clobbers == NULL)
    8424              :         return -1;
    8425              :       x4 = XEXP (x2, 0);
    8426              :       operands[0] = x4;
    8427              :       switch (GET_MODE (operands[0]))
    8428              :         {
    8429              :         case E_QImode:
    8430              :           x3 = XEXP (x1, 1);
    8431              :           if (pattern1093 (x3, 
    8432              : E_QImode) != 0
    8433              :               || !
    8434              : #line 8304 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8435              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    8436              :             return -1;
    8437              :           *pnum_clobbers = 1;
    8438              :           return 407; /* *subqi_1_slp */
    8439              : 
    8440              :         case E_HImode:
    8441              :           x3 = XEXP (x1, 1);
    8442              :           if (pattern1093 (x3, 
    8443              : E_HImode) != 0
    8444              :               || !
    8445              : #line 8304 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8446              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    8447              :             return -1;
    8448              :           *pnum_clobbers = 1;
    8449              :           return 408; /* *subhi_1_slp */
    8450              : 
    8451              :         default:
    8452              :           return -1;
    8453              :         }
    8454              : 
    8455              :     default:
    8456              :       return -1;
    8457              :     }
    8458              : }
    8459              : 
    8460              :  int
    8461              : recog_64 (rtx x1 ATTRIBUTE_UNUSED,
    8462              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8463              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8464              : {
    8465              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8466              :   rtx x2, x3, x4, x5, x6, x7;
    8467              :   int res ATTRIBUTE_UNUSED;
    8468              :   x2 = XEXP (x1, 0);
    8469              :   operands[0] = x2;
    8470              :   x3 = XEXP (x1, 1);
    8471              :   x4 = XEXP (x3, 0);
    8472              :   switch (GET_CODE (x4))
    8473              :     {
    8474              :     case REG:
    8475              :     case SUBREG:
    8476              :       operands[2] = x4;
    8477              :       x5 = XEXP (x3, 2);
    8478              :       if (GET_CODE (x5) != CONST_INT)
    8479              :         return -1;
    8480              :       operands[3] = x5;
    8481              :       x6 = XEXP (x3, 1);
    8482              :       operands[1] = x6;
    8483              :       switch (GET_MODE (operands[0]))
    8484              :         {
    8485              :         case E_V2SFmode:
    8486              :           if (register_operand (operands[0], E_V2SFmode)
    8487              :               && GET_MODE (x3) == E_V2SFmode
    8488              :               && register_operand (operands[2], E_V2SFmode)
    8489              :               && register_operand (operands[1], E_V2SFmode)
    8490              :               && const_0_to_3_operand (operands[3], E_SImode)
    8491              :               && 
    8492              : #line 1321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8493              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8494              :             return 2122; /* *mmx_blendps */
    8495              :           break;
    8496              : 
    8497              :         case E_V4HFmode:
    8498              :           if (pattern872 (x3, 
    8499              : E_V4HFmode) == 0
    8500              :               && 
    8501              : #line 5643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8502              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8503              :             return 2384; /* *mmx_pblendw64 */
    8504              :           break;
    8505              : 
    8506              :         case E_V4BFmode:
    8507              :           if (pattern872 (x3, 
    8508              : E_V4BFmode) == 0
    8509              :               && 
    8510              : #line 5643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8511              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8512              :             return 2385; /* *mmx_pblendw64 */
    8513              :           break;
    8514              : 
    8515              :         case E_V4HImode:
    8516              :           if (pattern872 (x3, 
    8517              : E_V4HImode) == 0
    8518              :               && 
    8519              : #line 5643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8520              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8521              :             return 2386; /* *mmx_pblendw64 */
    8522              :           break;
    8523              : 
    8524              :         case E_V2HFmode:
    8525              :           if (pattern873 (x3, 
    8526              : E_V2HFmode) == 0
    8527              :               && 
    8528              : #line 5662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8529              : (TARGET_SSE4_1))
    8530              :             return 2387; /* *mmx_pblendw32 */
    8531              :           break;
    8532              : 
    8533              :         case E_V2BFmode:
    8534              :           if (pattern873 (x3, 
    8535              : E_V2BFmode) == 0
    8536              :               && 
    8537              : #line 5662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8538              : (TARGET_SSE4_1))
    8539              :             return 2388; /* *mmx_pblendw32 */
    8540              :           break;
    8541              : 
    8542              :         case E_V2HImode:
    8543              :           if (pattern873 (x3, 
    8544              : E_V2HImode) == 0
    8545              :               && 
    8546              : #line 5662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8547              : (TARGET_SSE4_1))
    8548              :             return 2389; /* *mmx_pblendw32 */
    8549              :           break;
    8550              : 
    8551              :         default:
    8552              :           break;
    8553              :         }
    8554              :       if (XWINT (x5, 0) != 1L)
    8555              :         return -1;
    8556              :       operands[1] = x6;
    8557              :       switch (GET_MODE (operands[0]))
    8558              :         {
    8559              :         case E_V2SFmode:
    8560              :           if (pattern874 (x3, 
    8561              : E_V2SFmode) != 0
    8562              :               || !
    8563              : #line 1767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8564              : (TARGET_MMX_WITH_SSE))
    8565              :             return -1;
    8566              :           return 2138; /* *mmx_movss_v2sf */
    8567              : 
    8568              :         case E_V2SImode:
    8569              :           if (pattern874 (x3, 
    8570              : E_V2SImode) != 0
    8571              :               || !
    8572              : #line 1767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8573              : (TARGET_MMX_WITH_SSE))
    8574              :             return -1;
    8575              :           return 2139; /* *mmx_movss_v2si */
    8576              : 
    8577              :         default:
    8578              :           return -1;
    8579              :         }
    8580              : 
    8581              :     case VEC_DUPLICATE:
    8582              :       x7 = XEXP (x4, 0);
    8583              :       operands[2] = x7;
    8584              :       x6 = XEXP (x3, 1);
    8585              :       operands[1] = x6;
    8586              :       x5 = XEXP (x3, 2);
    8587              :       operands[3] = x5;
    8588              :       if (!const_int_operand (operands[3], E_SImode))
    8589              :         return -1;
    8590              :       switch (GET_MODE (operands[0]))
    8591              :         {
    8592              :         case E_V2SImode:
    8593              :           if (pattern875 (x3, 
    8594              : E_V2SImode, 
    8595              : E_SImode) != 0
    8596              :               || !
    8597              : #line 5300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8598              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE
    8599              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8600              :        < GET_MODE_NUNITS (V2SImode))))
    8601              :             return -1;
    8602              :           return 2364; /* *mmx_pinsrd */
    8603              : 
    8604              :         case E_V4HFmode:
    8605              :           if (pattern875 (x3, 
    8606              : E_V4HFmode, 
    8607              : E_HFmode) != 0
    8608              :               || !
    8609              : #line 5331 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8610              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8611              :    && (TARGET_SSE || TARGET_3DNOW_A)
    8612              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8613              :        < GET_MODE_NUNITS (V4HImode))))
    8614              :             return -1;
    8615              :           return 2365; /* *mmx_pinsrw */
    8616              : 
    8617              :         case E_V4BFmode:
    8618              :           if (pattern875 (x3, 
    8619              : E_V4BFmode, 
    8620              : E_BFmode) != 0
    8621              :               || !
    8622              : #line 5331 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8623              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8624              :    && (TARGET_SSE || TARGET_3DNOW_A)
    8625              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8626              :        < GET_MODE_NUNITS (V4HImode))))
    8627              :             return -1;
    8628              :           return 2366; /* *mmx_pinsrw */
    8629              : 
    8630              :         case E_V4HImode:
    8631              :           if (pattern875 (x3, 
    8632              : E_V4HImode, 
    8633              : E_HImode) != 0
    8634              :               || !
    8635              : #line 5331 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8636              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8637              :    && (TARGET_SSE || TARGET_3DNOW_A)
    8638              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8639              :        < GET_MODE_NUNITS (V4HImode))))
    8640              :             return -1;
    8641              :           return 2367; /* *mmx_pinsrw */
    8642              : 
    8643              :         case E_V8QImode:
    8644              :           if (pattern875 (x3, 
    8645              : E_V8QImode, 
    8646              : E_QImode) != 0
    8647              :               || !
    8648              : #line 5387 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8649              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE
    8650              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8651              :        < GET_MODE_NUNITS (V8QImode))))
    8652              :             return -1;
    8653              :           return 2368; /* *mmx_pinsrb */
    8654              : 
    8655              :         case E_V2HFmode:
    8656              :           if (pattern875 (x3, 
    8657              : E_V2HFmode, 
    8658              : E_HFmode) != 0
    8659              :               || !
    8660              : #line 6010 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8661              : (TARGET_SSE2
    8662              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8663              :        < GET_MODE_NUNITS (V2HImode))))
    8664              :             return -1;
    8665              :           return 2403; /* *pinsrw */
    8666              : 
    8667              :         case E_V2BFmode:
    8668              :           if (pattern875 (x3, 
    8669              : E_V2BFmode, 
    8670              : E_BFmode) != 0
    8671              :               || !
    8672              : #line 6010 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8673              : (TARGET_SSE2
    8674              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8675              :        < GET_MODE_NUNITS (V2HImode))))
    8676              :             return -1;
    8677              :           return 2404; /* *pinsrw */
    8678              : 
    8679              :         case E_V2HImode:
    8680              :           if (pattern875 (x3, 
    8681              : E_V2HImode, 
    8682              : E_HImode) != 0
    8683              :               || !
    8684              : #line 6010 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8685              : (TARGET_SSE2
    8686              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8687              :        < GET_MODE_NUNITS (V2HImode))))
    8688              :             return -1;
    8689              :           return 2405; /* *pinsrw */
    8690              : 
    8691              :         case E_V4QImode:
    8692              :           if (pattern875 (x3, 
    8693              : E_V4QImode, 
    8694              : E_QImode) != 0
    8695              :               || !
    8696              : #line 6064 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8697              : (TARGET_SSE4_1
    8698              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8699              :        < GET_MODE_NUNITS (V4QImode))))
    8700              :             return -1;
    8701              :           return 2406; /* *pinsrb */
    8702              : 
    8703              :         default:
    8704              :           return -1;
    8705              :         }
    8706              : 
    8707              :     case SS_TRUNCATE:
    8708              :       switch (pattern107 (x3))
    8709              :         {
    8710              :         case 0:
    8711              :           if (!
    8712              : #line 15845 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8713              : (TARGET_AVX512VL))
    8714              :             return -1;
    8715              :           return 7331; /* avx512vl_ss_truncatev2div2qi2_mask_store_1 */
    8716              : 
    8717              :         case 1:
    8718              :           if (!
    8719              : #line 15940 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8720              : (TARGET_AVX512VL))
    8721              :             return -1;
    8722              :           return 7358; /* avx512vl_ss_truncatev4siv4qi2_mask_store_1 */
    8723              : 
    8724              :         case 2:
    8725              :           if (!
    8726              : #line 15940 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8727              : (TARGET_AVX512VL))
    8728              :             return -1;
    8729              :           return 7361; /* avx512vl_ss_truncatev4div4qi2_mask_store_1 */
    8730              : 
    8731              :         case 3:
    8732              :           if (!(
    8733              : #line 16038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8734              : (TARGET_AVX512VL) && 
    8735              : #line 15962 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8736              : (TARGET_AVX512BW)))
    8737              :             return -1;
    8738              :           return 7388; /* avx512vl_ss_truncatev8hiv8qi2_mask_store_1 */
    8739              : 
    8740              :         case 4:
    8741              :           if (!
    8742              : #line 16038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8743              : (TARGET_AVX512VL))
    8744              :             return -1;
    8745              :           return 7391; /* avx512vl_ss_truncatev8siv8qi2_mask_store_1 */
    8746              : 
    8747              :         case 5:
    8748              :           if (!
    8749              : #line 16554 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8750              : (TARGET_AVX512F))
    8751              :             return -1;
    8752              :           return 7483; /* avx512f_ss_truncatev8div16qi2_mask_store_1 */
    8753              : 
    8754              :         case 6:
    8755              :           if (!
    8756              : #line 16192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8757              : (TARGET_AVX512VL))
    8758              :             return -1;
    8759              :           return 7428; /* avx512vl_ss_truncatev4siv4hi2_mask_store_1 */
    8760              : 
    8761              :         case 7:
    8762              :           if (!
    8763              : #line 16192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8764              : (TARGET_AVX512VL))
    8765              :             return -1;
    8766              :           return 7431; /* avx512vl_ss_truncatev4div4hi2_mask_store_1 */
    8767              : 
    8768              :         case 8:
    8769              :           if (!
    8770              : #line 16283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8771              : (TARGET_AVX512VL))
    8772              :             return -1;
    8773              :           return 7446; /* avx512vl_ss_truncatev2div2hi2_mask_store_1 */
    8774              : 
    8775              :         case 9:
    8776              :           if (!
    8777              : #line 16429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8778              : (TARGET_AVX512VL))
    8779              :             return -1;
    8780              :           return 7465; /* avx512vl_ss_truncatev2div2si2_mask_store_1 */
    8781              : 
    8782              :         default:
    8783              :           return -1;
    8784              :         }
    8785              : 
    8786              :     case TRUNCATE:
    8787              :       switch (pattern107 (x3))
    8788              :         {
    8789              :         case 0:
    8790              :           if (!
    8791              : #line 15845 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8792              : (TARGET_AVX512VL))
    8793              :             return -1;
    8794              :           return 7332; /* avx512vl_truncatev2div2qi2_mask_store_1 */
    8795              : 
    8796              :         case 1:
    8797              :           if (!
    8798              : #line 15940 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8799              : (TARGET_AVX512VL))
    8800              :             return -1;
    8801              :           return 7359; /* avx512vl_truncatev4siv4qi2_mask_store_1 */
    8802              : 
    8803              :         case 2:
    8804              :           if (!
    8805              : #line 15940 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8806              : (TARGET_AVX512VL))
    8807              :             return -1;
    8808              :           return 7362; /* avx512vl_truncatev4div4qi2_mask_store_1 */
    8809              : 
    8810              :         case 3:
    8811              :           if (!(
    8812              : #line 16038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8813              : (TARGET_AVX512VL) && 
    8814              : #line 15962 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8815              : (TARGET_AVX512BW)))
    8816              :             return -1;
    8817              :           return 7389; /* avx512vl_truncatev8hiv8qi2_mask_store_1 */
    8818              : 
    8819              :         case 4:
    8820              :           if (!
    8821              : #line 16038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8822              : (TARGET_AVX512VL))
    8823              :             return -1;
    8824              :           return 7392; /* avx512vl_truncatev8siv8qi2_mask_store_1 */
    8825              : 
    8826              :         case 5:
    8827              :           if (!
    8828              : #line 16554 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8829              : (TARGET_AVX512F))
    8830              :             return -1;
    8831              :           return 7484; /* avx512f_truncatev8div16qi2_mask_store_1 */
    8832              : 
    8833              :         case 6:
    8834              :           if (!
    8835              : #line 16192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8836              : (TARGET_AVX512VL))
    8837              :             return -1;
    8838              :           return 7429; /* avx512vl_truncatev4siv4hi2_mask_store_1 */
    8839              : 
    8840              :         case 7:
    8841              :           if (!
    8842              : #line 16192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8843              : (TARGET_AVX512VL))
    8844              :             return -1;
    8845              :           return 7432; /* avx512vl_truncatev4div4hi2_mask_store_1 */
    8846              : 
    8847              :         case 8:
    8848              :           if (!
    8849              : #line 16283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8850              : (TARGET_AVX512VL))
    8851              :             return -1;
    8852              :           return 7447; /* avx512vl_truncatev2div2hi2_mask_store_1 */
    8853              : 
    8854              :         case 9:
    8855              :           if (!
    8856              : #line 16429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8857              : (TARGET_AVX512VL))
    8858              :             return -1;
    8859              :           return 7466; /* avx512vl_truncatev2div2si2_mask_store_1 */
    8860              : 
    8861              :         default:
    8862              :           return -1;
    8863              :         }
    8864              : 
    8865              :     case US_TRUNCATE:
    8866              :       switch (pattern107 (x3))
    8867              :         {
    8868              :         case 0:
    8869              :           if (!
    8870              : #line 15845 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8871              : (TARGET_AVX512VL))
    8872              :             return -1;
    8873              :           return 7333; /* avx512vl_us_truncatev2div2qi2_mask_store_1 */
    8874              : 
    8875              :         case 1:
    8876              :           if (!
    8877              : #line 15940 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8878              : (TARGET_AVX512VL))
    8879              :             return -1;
    8880              :           return 7360; /* avx512vl_us_truncatev4siv4qi2_mask_store_1 */
    8881              : 
    8882              :         case 2:
    8883              :           if (!
    8884              : #line 15940 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8885              : (TARGET_AVX512VL))
    8886              :             return -1;
    8887              :           return 7363; /* avx512vl_us_truncatev4div4qi2_mask_store_1 */
    8888              : 
    8889              :         case 3:
    8890              :           if (!(
    8891              : #line 16038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8892              : (TARGET_AVX512VL) && 
    8893              : #line 15962 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8894              : (TARGET_AVX512BW)))
    8895              :             return -1;
    8896              :           return 7390; /* avx512vl_us_truncatev8hiv8qi2_mask_store_1 */
    8897              : 
    8898              :         case 4:
    8899              :           if (!
    8900              : #line 16038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8901              : (TARGET_AVX512VL))
    8902              :             return -1;
    8903              :           return 7393; /* avx512vl_us_truncatev8siv8qi2_mask_store_1 */
    8904              : 
    8905              :         case 5:
    8906              :           if (!
    8907              : #line 16554 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8908              : (TARGET_AVX512F))
    8909              :             return -1;
    8910              :           return 7485; /* avx512f_us_truncatev8div16qi2_mask_store_1 */
    8911              : 
    8912              :         case 6:
    8913              :           if (!
    8914              : #line 16192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8915              : (TARGET_AVX512VL))
    8916              :             return -1;
    8917              :           return 7430; /* avx512vl_us_truncatev4siv4hi2_mask_store_1 */
    8918              : 
    8919              :         case 7:
    8920              :           if (!
    8921              : #line 16192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8922              : (TARGET_AVX512VL))
    8923              :             return -1;
    8924              :           return 7433; /* avx512vl_us_truncatev4div4hi2_mask_store_1 */
    8925              : 
    8926              :         case 8:
    8927              :           if (!
    8928              : #line 16283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8929              : (TARGET_AVX512VL))
    8930              :             return -1;
    8931              :           return 7448; /* avx512vl_us_truncatev2div2hi2_mask_store_1 */
    8932              : 
    8933              :         case 9:
    8934              :           if (!
    8935              : #line 16429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8936              : (TARGET_AVX512VL))
    8937              :             return -1;
    8938              :           return 7467; /* avx512vl_us_truncatev2div2si2_mask_store_1 */
    8939              : 
    8940              :         default:
    8941              :           return -1;
    8942              :         }
    8943              : 
    8944              :     default:
    8945              :       return -1;
    8946              :     }
    8947              : }
    8948              : 
    8949              :  int
    8950              : recog_76 (rtx x1 ATTRIBUTE_UNUSED,
    8951              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8952              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8953              : {
    8954              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8955              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    8956              :   rtx x10, x11;
    8957              :   int res ATTRIBUTE_UNUSED;
    8958              :   x2 = XEXP (x1, 1);
    8959              :   x3 = XEXP (x2, 0);
    8960              :   x4 = XEXP (x3, 0);
    8961              :   switch (GET_CODE (x4))
    8962              :     {
    8963              :     case REG:
    8964              :     case SUBREG:
    8965              :     case MEM:
    8966              :       operands[1] = x4;
    8967              :       x5 = XEXP (x3, 1);
    8968              :       operands[2] = x5;
    8969              :       switch (GET_CODE (operands[2]))
    8970              :         {
    8971              :         case CONST_INT:
    8972              :         case CONST_WIDE_INT:
    8973              :         case CONST_POLY_INT:
    8974              :         case CONST_FIXED:
    8975              :         case CONST_DOUBLE:
    8976              :         case CONST_VECTOR:
    8977              :         case CONST:
    8978              :         case REG:
    8979              :         case SUBREG:
    8980              :         case MEM:
    8981              :         case LABEL_REF:
    8982              :         case SYMBOL_REF:
    8983              :         case HIGH:
    8984              :           switch (pattern114 (x2, pnum_clobbers))
    8985              :             {
    8986              :             case 0:
    8987              :               if (
    8988              : #line 8259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8989              : (TARGET_APX_NDD && TARGET_APX_NF
    8990              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8991              :                 return 398; /* *subqi_1_zextsi_nf */
    8992              :               if (pnum_clobbers == NULL
    8993              :                   || !
    8994              : #line 8259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8995              : (TARGET_APX_NDD && true
    8996              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8997              :                 return -1;
    8998              :               *pnum_clobbers = 1;
    8999              :               return 399; /* *subqi_1_zextsi */
    9000              : 
    9001              :             case 1:
    9002              :               if (
    9003              : #line 8273 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9004              : (TARGET_APX_NDD && TARGET_APX_NF
    9005              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9006              :                 return 402; /* *subhi_1_zextsi_nf */
    9007              :               if (pnum_clobbers == NULL
    9008              :                   || !
    9009              : #line 8273 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9010              : (TARGET_APX_NDD && true
    9011              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9012              :                 return -1;
    9013              :               *pnum_clobbers = 1;
    9014              :               return 403; /* *subhi_1_zextsi */
    9015              : 
    9016              :             case 2:
    9017              :               if (
    9018              : #line 8259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9019              : (TARGET_APX_NDD && TARGET_APX_NF
    9020              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9021              :                 return 400; /* *subqi_1_zextdi_nf */
    9022              :               if (pnum_clobbers == NULL
    9023              :                   || !
    9024              : #line 8259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9025              : (TARGET_APX_NDD && true
    9026              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9027              :                 return -1;
    9028              :               *pnum_clobbers = 1;
    9029              :               return 401; /* *subqi_1_zextdi */
    9030              : 
    9031              :             case 3:
    9032              :               if (
    9033              : #line 8273 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9034              : (TARGET_APX_NDD && TARGET_APX_NF
    9035              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9036              :                 return 404; /* *subhi_1_zextdi_nf */
    9037              :               if (pnum_clobbers == NULL
    9038              :                   || !
    9039              : #line 8273 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9040              : (TARGET_APX_NDD && true
    9041              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9042              :                 return -1;
    9043              :               *pnum_clobbers = 1;
    9044              :               return 405; /* *subhi_1_zextdi */
    9045              : 
    9046              :             case 4:
    9047              :               if (!
    9048              : #line 8288 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9049              : (TARGET_64BIT
    9050              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
    9051              :                 return -1;
    9052              :               *pnum_clobbers = 1;
    9053              :               return 406; /* *subsi_1_zext */
    9054              : 
    9055              :             default:
    9056              :               return -1;
    9057              :             }
    9058              : 
    9059              :         case LTU:
    9060              :         case UNLT:
    9061              :           switch (pattern762 (x2, pnum_clobbers))
    9062              :             {
    9063              :             case 0:
    9064              :               if (!nonimmediate_operand (operands[1], E_QImode)
    9065              :                   || !ix86_carry_flag_operator (operands[2], E_QImode)
    9066              :                   || !
    9067              : #line 9819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9068              : (TARGET_APX_NDD))
    9069              :                 return -1;
    9070              :               *pnum_clobbers = 1;
    9071              :               return 534; /* *subqi3_carry_zextsi_0 */
    9072              : 
    9073              :             case 1:
    9074              :               if (!nonimmediate_operand (operands[1], E_HImode)
    9075              :                   || !ix86_carry_flag_operator (operands[2], E_HImode)
    9076              :                   || !
    9077              : #line 9834 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9078              : (TARGET_APX_NDD))
    9079              :                 return -1;
    9080              :               *pnum_clobbers = 1;
    9081              :               return 536; /* *subhi3_carry_zextsi_0 */
    9082              : 
    9083              :             case 2:
    9084              :               if (!nonimmediate_operand (operands[1], E_QImode)
    9085              :                   || !ix86_carry_flag_operator (operands[2], E_QImode)
    9086              :                   || !
    9087              : #line 9819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9088              : (TARGET_APX_NDD))
    9089              :                 return -1;
    9090              :               *pnum_clobbers = 1;
    9091              :               return 535; /* *subqi3_carry_zextdi_0 */
    9092              : 
    9093              :             case 3:
    9094              :               if (!nonimmediate_operand (operands[1], E_HImode)
    9095              :                   || !ix86_carry_flag_operator (operands[2], E_HImode)
    9096              :                   || !
    9097              : #line 9834 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9098              : (TARGET_APX_NDD))
    9099              :                 return -1;
    9100              :               *pnum_clobbers = 1;
    9101              :               return 537; /* *subhi3_carry_zextdi_0 */
    9102              : 
    9103              :             case 4:
    9104              :               if (!nonimmediate_operand (operands[1], E_SImode)
    9105              :                   || !ix86_carry_flag_operator (operands[2], E_SImode)
    9106              :                   || !
    9107              : #line 9849 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9108              : (TARGET_64BIT))
    9109              :                 return -1;
    9110              :               *pnum_clobbers = 1;
    9111              :               return 538; /* *subsi3_carry_zext_0 */
    9112              : 
    9113              :             default:
    9114              :               return -1;
    9115              :             }
    9116              : 
    9117              :         case GE:
    9118              :         case GEU:
    9119              :           switch (pattern762 (x2, pnum_clobbers))
    9120              :             {
    9121              :             case 0:
    9122              :               if (!nonimmediate_operand (operands[1], E_QImode)
    9123              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode)
    9124              :                   || !
    9125              : #line 9867 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9126              : (TARGET_APX_NDD))
    9127              :                 return -1;
    9128              :               *pnum_clobbers = 1;
    9129              :               return 540; /* *subqi3_carry_zextsi_0r */
    9130              : 
    9131              :             case 1:
    9132              :               if (!nonimmediate_operand (operands[1], E_HImode)
    9133              :                   || !ix86_carry_flag_unset_operator (operands[2], E_HImode)
    9134              :                   || !
    9135              : #line 9882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9136              : (TARGET_APX_NDD))
    9137              :                 return -1;
    9138              :               *pnum_clobbers = 1;
    9139              :               return 542; /* *subhi3_carry_zextsi_0r */
    9140              : 
    9141              :             case 2:
    9142              :               if (!nonimmediate_operand (operands[1], E_QImode)
    9143              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode)
    9144              :                   || !
    9145              : #line 9867 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9146              : (TARGET_APX_NDD))
    9147              :                 return -1;
    9148              :               *pnum_clobbers = 1;
    9149              :               return 541; /* *subqi3_carry_zextdi_0r */
    9150              : 
    9151              :             case 3:
    9152              :               if (!nonimmediate_operand (operands[1], E_HImode)
    9153              :                   || !ix86_carry_flag_unset_operator (operands[2], E_HImode)
    9154              :                   || !
    9155              : #line 9882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9156              : (TARGET_APX_NDD))
    9157              :                 return -1;
    9158              :               *pnum_clobbers = 1;
    9159              :               return 543; /* *subhi3_carry_zextdi_0r */
    9160              : 
    9161              :             case 4:
    9162              :               if (!nonimmediate_operand (operands[1], E_SImode)
    9163              :                   || !ix86_carry_flag_unset_operator (operands[2], E_SImode)
    9164              :                   || !
    9165              : #line 9897 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9166              : (TARGET_64BIT))
    9167              :                 return -1;
    9168              :               *pnum_clobbers = 1;
    9169              :               return 544; /* *subsi3_carry_zext_0r */
    9170              : 
    9171              :             default:
    9172              :               return -1;
    9173              :             }
    9174              : 
    9175              :         default:
    9176              :           return -1;
    9177              :         }
    9178              : 
    9179              :     case MINUS:
    9180              :       if (pnum_clobbers == NULL)
    9181              :         return -1;
    9182              :       x6 = XEXP (x4, 1);
    9183              :       switch (GET_CODE (x6))
    9184              :         {
    9185              :         case LTU:
    9186              :         case UNLT:
    9187              :           operands[3] = x6;
    9188              :           x7 = XEXP (x6, 0);
    9189              :           if (GET_CODE (x7) != REG
    9190              :               || REGNO (x7) != 17)
    9191              :             return -1;
    9192              :           x8 = XEXP (x6, 1);
    9193              :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    9194              :             return -1;
    9195              :           x9 = XEXP (x4, 0);
    9196              :           operands[1] = x9;
    9197              :           x5 = XEXP (x3, 1);
    9198              :           operands[2] = x5;
    9199              :           switch (pattern281 (x2))
    9200              :             {
    9201              :             case 0:
    9202              :               if (pattern1548 (x4, 
    9203              : E_QImode) != 0
    9204              :                   || !
    9205              : #line 9759 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9206              : (TARGET_APX_NDD
    9207              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9208              :                 return -1;
    9209              :               *pnum_clobbers = 1;
    9210              :               return 528; /* *subqi3_carry_zextsi */
    9211              : 
    9212              :             case 1:
    9213              :               if (pattern1548 (x4, 
    9214              : E_HImode) != 0
    9215              :                   || !
    9216              : #line 9779 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9217              : (TARGET_APX_NDD
    9218              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9219              :                 return -1;
    9220              :               *pnum_clobbers = 1;
    9221              :               return 530; /* *subhi3_carry_zextsi */
    9222              : 
    9223              :             case 2:
    9224              :               if (pattern1548 (x4, 
    9225              : E_QImode) != 0
    9226              :                   || !
    9227              : #line 9759 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9228              : (TARGET_APX_NDD
    9229              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9230              :                 return -1;
    9231              :               *pnum_clobbers = 1;
    9232              :               return 529; /* *subqi3_carry_zextdi */
    9233              : 
    9234              :             case 3:
    9235              :               if (pattern1548 (x4, 
    9236              : E_HImode) != 0
    9237              :                   || !
    9238              : #line 9779 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9239              : (TARGET_APX_NDD
    9240              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9241              :                 return -1;
    9242              :               *pnum_clobbers = 1;
    9243              :               return 531; /* *subhi3_carry_zextdi */
    9244              : 
    9245              :             case 4:
    9246              :               if (pattern1548 (x4, 
    9247              : E_SImode) != 0
    9248              :                   || !
    9249              : #line 9799 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9250              : (TARGET_64BIT
    9251              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
    9252              :                 return -1;
    9253              :               *pnum_clobbers = 1;
    9254              :               return 532; /* *subsi3_carry_zext */
    9255              : 
    9256              :             default:
    9257              :               return -1;
    9258              :             }
    9259              : 
    9260              :         default:
    9261              :           return -1;
    9262              :         }
    9263              : 
    9264              :     case CONST_INT:
    9265              :       if (pnum_clobbers == NULL
    9266              :           || !register_operand (operands[0], E_DImode)
    9267              :           || GET_MODE (x2) != E_DImode
    9268              :           || GET_MODE (x3) != E_SImode)
    9269              :         return -1;
    9270              :       x5 = XEXP (x3, 1);
    9271              :       if (GET_MODE (x5) != E_SImode)
    9272              :         return -1;
    9273              :       switch (XWINT (x4, 0))
    9274              :         {
    9275              :         case 63L:
    9276              :           if (GET_CODE (x5) != SUBREG
    9277              :               || maybe_ne (SUBREG_BYTE (x5), 0))
    9278              :             return -1;
    9279              :           x10 = XEXP (x5, 0);
    9280              :           if (GET_CODE (x10) != CLZ
    9281              :               || GET_MODE (x10) != E_DImode)
    9282              :             return -1;
    9283              :           x11 = XEXP (x10, 0);
    9284              :           operands[1] = x11;
    9285              :           if (!nonimmediate_operand (operands[1], E_DImode)
    9286              :               || !
    9287              : #line 21527 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9288              : (!TARGET_LZCNT && TARGET_64BIT))
    9289              :             return -1;
    9290              :           *pnum_clobbers = 1;
    9291              :           return 1550; /* bsr_rex64_1_zext */
    9292              : 
    9293              :         case 31L:
    9294              :           if (GET_CODE (x5) != CLZ)
    9295              :             return -1;
    9296              :           x10 = XEXP (x5, 0);
    9297              :           operands[1] = x10;
    9298              :           if (!nonimmediate_operand (operands[1], E_SImode)
    9299              :               || !
    9300              : #line 21570 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9301              : (!TARGET_LZCNT && TARGET_64BIT))
    9302              :             return -1;
    9303              :           *pnum_clobbers = 1;
    9304              :           return 1553; /* bsr_zext_1 */
    9305              : 
    9306              :         default:
    9307              :           return -1;
    9308              :         }
    9309              : 
    9310              :     default:
    9311              :       return -1;
    9312              :     }
    9313              : }
    9314              : 
    9315              :  int
    9316              : recog_87 (rtx x1 ATTRIBUTE_UNUSED,
    9317              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9318              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9319              : {
    9320              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9321              :   rtx x2, x3, x4, x5, x6;
    9322              :   int res ATTRIBUTE_UNUSED;
    9323              :   x2 = XEXP (x1, 0);
    9324              :   operands[0] = x2;
    9325              :   x3 = XEXP (x1, 1);
    9326              :   x4 = XEXP (x3, 0);
    9327              :   switch (GET_CODE (x4))
    9328              :     {
    9329              :     case CONST_INT:
    9330              :     case CONST_WIDE_INT:
    9331              :     case CONST_POLY_INT:
    9332              :     case CONST_FIXED:
    9333              :     case CONST_DOUBLE:
    9334              :     case CONST_VECTOR:
    9335              :     case CONST:
    9336              :     case REG:
    9337              :     case SUBREG:
    9338              :     case MEM:
    9339              :     case LABEL_REF:
    9340              :     case SYMBOL_REF:
    9341              :     case HIGH:
    9342              :       operands[1] = x4;
    9343              :       res = recog_86 (x1, insn, pnum_clobbers);
    9344              :       if (res >= 0)
    9345              :         return res;
    9346              :       if (pnum_clobbers == NULL
    9347              :           || GET_CODE (x4) != CONST_INT)
    9348              :         return -1;
    9349              :       x5 = XEXP (x3, 1);
    9350              :       if (GET_CODE (x5) != CLZ)
    9351              :         return -1;
    9352              :       x6 = XEXP (x5, 0);
    9353              :       operands[1] = x6;
    9354              :       switch (XWINT (x4, 0))
    9355              :         {
    9356              :         case 63L:
    9357              :           if (pattern883 (x3, 
    9358              : E_DImode) != 0
    9359              :               || !
    9360              : #line 21511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9361              : (!TARGET_LZCNT && TARGET_64BIT))
    9362              :             return -1;
    9363              :           *pnum_clobbers = 1;
    9364              :           return 1549; /* bsr_rex64_1 */
    9365              : 
    9366              :         case 31L:
    9367              :           if (pattern883 (x3, 
    9368              : E_SImode) != 0
    9369              :               || !
    9370              : #line 21555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9371              : (!TARGET_LZCNT))
    9372              :             return -1;
    9373              :           *pnum_clobbers = 1;
    9374              :           return 1552; /* bsr_1 */
    9375              : 
    9376              :         default:
    9377              :           return -1;
    9378              :         }
    9379              : 
    9380              :     case MINUS:
    9381              :       if (pnum_clobbers == NULL)
    9382              :         return -1;
    9383              :       switch (pattern292 (x3))
    9384              :         {
    9385              :         case 0:
    9386              :           switch (GET_MODE (operands[0]))
    9387              :             {
    9388              :             case E_SImode:
    9389              :               if (pattern1279 (x3, 
    9390              : E_SImode) != 0
    9391              :                   || !
    9392              : #line 9587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9393              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
    9394              :                 return -1;
    9395              :               *pnum_clobbers = 1;
    9396              :               return 505; /* subsi3_carry */
    9397              : 
    9398              :             case E_DImode:
    9399              :               if (pattern1279 (x3, 
    9400              : E_DImode) != 0
    9401              :                   || !(
    9402              : #line 9587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9403              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)) && 
    9404              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9405              : (TARGET_64BIT)))
    9406              :                 return -1;
    9407              :               *pnum_clobbers = 1;
    9408              :               return 506; /* subdi3_carry */
    9409              : 
    9410              :             default:
    9411              :               return -1;
    9412              :             }
    9413              : 
    9414              :         case 1:
    9415              :           switch (GET_MODE (operands[0]))
    9416              :             {
    9417              :             case E_SImode:
    9418              :               if (pattern1219 (x3, 
    9419              : E_SImode) != 0
    9420              :                   || !
    9421              : #line 10655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9422              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)
    9423              :    && ix86_pre_reload_split ()))
    9424              :                 return -1;
    9425              :               *pnum_clobbers = 1;
    9426              :               return 600; /* *subsi3_eq */
    9427              : 
    9428              :             case E_DImode:
    9429              :               if (pattern1219 (x3, 
    9430              : E_DImode) != 0
    9431              :                   || !(
    9432              : #line 10655 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9433              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)
    9434              :    && ix86_pre_reload_split ()) && 
    9435              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9436              : (TARGET_64BIT)))
    9437              :                 return -1;
    9438              :               *pnum_clobbers = 1;
    9439              :               return 601; /* *subdi3_eq */
    9440              : 
    9441              :             default:
    9442              :               return -1;
    9443              :             }
    9444              : 
    9445              :         default:
    9446              :           return -1;
    9447              :         }
    9448              : 
    9449              :     default:
    9450              :       return -1;
    9451              :     }
    9452              : }
    9453              : 
    9454              :  int
    9455              : recog_88 (rtx x1 ATTRIBUTE_UNUSED,
    9456              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9457              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9458              : {
    9459              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9460              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    9461              :   int res ATTRIBUTE_UNUSED;
    9462              :   x2 = XEXP (x1, 1);
    9463              :   x3 = XEXP (x2, 2);
    9464              :   operands[3] = x3;
    9465              :   x4 = XEXP (x2, 0);
    9466              :   x5 = XEXP (x4, 1);
    9467              :   switch (XWINT (x5, 0))
    9468              :     {
    9469              :     case 0L:
    9470              :       x6 = XEXP (x2, 1);
    9471              :       if (GET_CODE (x6) != PLUS)
    9472              :         return -1;
    9473              :       x7 = XEXP (x6, 1);
    9474              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
    9475              :         return -1;
    9476              :       x8 = XEXP (x4, 0);
    9477              :       operands[2] = x8;
    9478              :       x9 = XEXP (x6, 0);
    9479              :       if (!rtx_equal_p (x9, operands[2]))
    9480              :         return -1;
    9481              :       switch (GET_MODE (operands[0]))
    9482              :         {
    9483              :         case E_SImode:
    9484              :           if (pattern1523 (x2, 
    9485              : E_SImode) != 0
    9486              :               || !
    9487              : #line 8879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9488              : (TARGET_CMOVE))
    9489              :             return -1;
    9490              :           *pnum_clobbers = 1;
    9491              :           return 454; /* *dec_cmovsi */
    9492              : 
    9493              :         case E_DImode:
    9494              :           if (pattern1523 (x2, 
    9495              : E_DImode) != 0
    9496              :               || !(
    9497              : #line 8879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9498              : (TARGET_CMOVE) && 
    9499              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9500              : (TARGET_64BIT)))
    9501              :             return -1;
    9502              :           *pnum_clobbers = 1;
    9503              :           return 455; /* *dec_cmovdi */
    9504              : 
    9505              :         default:
    9506              :           return -1;
    9507              :         }
    9508              : 
    9509              :     case -1L:
    9510              :       x8 = XEXP (x4, 0);
    9511              :       operands[4] = x8;
    9512              :       x6 = XEXP (x2, 1);
    9513              :       operands[2] = x6;
    9514              :       switch (GET_MODE (operands[0]))
    9515              :         {
    9516              :         case E_SImode:
    9517              :           switch (pattern1376 (x2, 
    9518              : E_SImode))
    9519              :             {
    9520              :             case 0:
    9521              :               if (!(
    9522              : #line 2532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9523              : (TARGET_AVX512BW && TARGET_CMOVE
    9524              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
    9525              : #line 1561 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9526              : (TARGET_AVX512DQ)))
    9527              :                 return -1;
    9528              :               *pnum_clobbers = 1;
    9529              :               return 2693; /* *kortest_cmpqi_movsicc */
    9530              : 
    9531              :             case 1:
    9532              :               if (!
    9533              : #line 2532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9534              : (TARGET_AVX512BW && TARGET_CMOVE
    9535              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
    9536              :                 return -1;
    9537              :               *pnum_clobbers = 1;
    9538              :               return 2696; /* *kortest_cmphi_movsicc */
    9539              : 
    9540              :             case 2:
    9541              :               if (!(
    9542              : #line 2532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9543              : (TARGET_AVX512BW && TARGET_CMOVE
    9544              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
    9545              : #line 1562 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9546              : (TARGET_AVX512BW)))
    9547              :                 return -1;
    9548              :               *pnum_clobbers = 1;
    9549              :               return 2699; /* *kortest_cmpsi_movsicc */
    9550              : 
    9551              :             case 3:
    9552              :               if (!(
    9553              : #line 2532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9554              : (TARGET_AVX512BW && TARGET_CMOVE
    9555              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
    9556              : #line 1562 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9557              : (TARGET_AVX512BW && TARGET_64BIT)))
    9558              :                 return -1;
    9559              :               *pnum_clobbers = 1;
    9560              :               return 2702; /* *kortest_cmpdi_movsicc */
    9561              : 
    9562              :             default:
    9563              :               return -1;
    9564              :             }
    9565              : 
    9566              :         case E_DImode:
    9567              :           switch (pattern1376 (x2, 
    9568              : E_DImode))
    9569              :             {
    9570              :             case 0:
    9571              :               if (!(
    9572              : #line 2532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9573              : (TARGET_AVX512BW && TARGET_CMOVE
    9574              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && ((((
    9575              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9576              : (TARGET_64BIT) && 
    9577              : #line 1561 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9578              : (TARGET_AVX512DQ)) && 
    9579              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9580              : (TARGET_64BIT)) && 
    9581              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9582              : (TARGET_64BIT)) && 
    9583              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9584              : (TARGET_64BIT))))
    9585              :                 return -1;
    9586              :               *pnum_clobbers = 1;
    9587              :               return 2694; /* *kortest_cmpqi_movdicc */
    9588              : 
    9589              :             case 1:
    9590              :               if (!(
    9591              : #line 2532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9592              : (TARGET_AVX512BW && TARGET_CMOVE
    9593              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
    9594              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9595              : (TARGET_64BIT)))
    9596              :                 return -1;
    9597              :               *pnum_clobbers = 1;
    9598              :               return 2697; /* *kortest_cmphi_movdicc */
    9599              : 
    9600              :             case 2:
    9601              :               if (!(
    9602              : #line 2532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9603              : (TARGET_AVX512BW && TARGET_CMOVE
    9604              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && ((((
    9605              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9606              : (TARGET_64BIT) && 
    9607              : #line 1562 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9608              : (TARGET_AVX512BW)) && 
    9609              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9610              : (TARGET_64BIT)) && 
    9611              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9612              : (TARGET_64BIT)) && 
    9613              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9614              : (TARGET_64BIT))))
    9615              :                 return -1;
    9616              :               *pnum_clobbers = 1;
    9617              :               return 2700; /* *kortest_cmpsi_movdicc */
    9618              : 
    9619              :             case 3:
    9620              :               if (!(
    9621              : #line 2532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9622              : (TARGET_AVX512BW && TARGET_CMOVE
    9623              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && ((((
    9624              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9625              : (TARGET_64BIT) && 
    9626              : #line 1562 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9627              : (TARGET_AVX512BW && TARGET_64BIT)) && 
    9628              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9629              : (TARGET_64BIT)) && 
    9630              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9631              : (TARGET_64BIT)) && 
    9632              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9633              : (TARGET_64BIT))))
    9634              :                 return -1;
    9635              :               *pnum_clobbers = 1;
    9636              :               return 2703; /* *kortest_cmpdi_movdicc */
    9637              : 
    9638              :             default:
    9639              :               return -1;
    9640              :             }
    9641              : 
    9642              :         default:
    9643              :           return -1;
    9644              :         }
    9645              : 
    9646              :     default:
    9647              :       return -1;
    9648              :     }
    9649              : }
    9650              : 
    9651              :  int
    9652              : recog_92 (rtx x1 ATTRIBUTE_UNUSED,
    9653              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9654              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9655              : {
    9656              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9657              :   rtx x2, x3, x4, x5, x6, x7;
    9658              :   int res ATTRIBUTE_UNUSED;
    9659              :   if (pnum_clobbers == NULL)
    9660              :     return -1;
    9661              :   x2 = XEXP (x1, 1);
    9662              :   x3 = XEXP (x2, 0);
    9663              :   if (GET_CODE (x3) != LSHIFTRT)
    9664              :     return -1;
    9665              :   x4 = XEXP (x3, 0);
    9666              :   if (GET_CODE (x4) != MULT)
    9667              :     return -1;
    9668              :   x5 = XEXP (x3, 1);
    9669              :   if (GET_CODE (x5) != CONST_INT)
    9670              :     return -1;
    9671              :   x6 = XEXP (x1, 0);
    9672              :   operands[0] = x6;
    9673              :   x7 = XEXP (x4, 0);
    9674              :   switch (GET_CODE (x7))
    9675              :     {
    9676              :     case SIGN_EXTEND:
    9677              :       switch (pattern769 (x2, 
    9678              : SIGN_EXTEND))
    9679              :         {
    9680              :         case 0:
    9681              :           if (!
    9682              : #line 11599 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9683              : (TARGET_64BIT
    9684              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9685              :             return -1;
    9686              :           *pnum_clobbers = 2;
    9687              :           return 661; /* *smuldi3_highpart_1 */
    9688              : 
    9689              :         case 1:
    9690              :           if (!
    9691              : #line 11648 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9692              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9693              :             return -1;
    9694              :           *pnum_clobbers = 2;
    9695              :           return 665; /* *smulsi3_highpart_1 */
    9696              : 
    9697              :         default:
    9698              :           return -1;
    9699              :         }
    9700              : 
    9701              :     case ZERO_EXTEND:
    9702              :       switch (pattern769 (x2, 
    9703              : ZERO_EXTEND))
    9704              :         {
    9705              :         case 0:
    9706              :           if (!
    9707              : #line 11599 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9708              : (TARGET_64BIT
    9709              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9710              :             return -1;
    9711              :           *pnum_clobbers = 2;
    9712              :           return 662; /* *umuldi3_highpart_1 */
    9713              : 
    9714              :         case 1:
    9715              :           if (!
    9716              : #line 11648 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9717              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9718              :             return -1;
    9719              :           *pnum_clobbers = 2;
    9720              :           return 666; /* *umulsi3_highpart_1 */
    9721              : 
    9722              :         default:
    9723              :           return -1;
    9724              :         }
    9725              : 
    9726              :     default:
    9727              :       return -1;
    9728              :     }
    9729              : }
    9730              : 
    9731              :  int
    9732              : recog_94 (rtx x1 ATTRIBUTE_UNUSED,
    9733              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9734              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9735              : {
    9736              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9737              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    9738              :   rtx x10, x11, x12, x13;
    9739              :   int res ATTRIBUTE_UNUSED;
    9740              :   x2 = XEXP (x1, 0);
    9741              :   operands[0] = x2;
    9742              :   x3 = XEXP (x1, 1);
    9743              :   x4 = XEXP (x3, 0);
    9744              :   switch (GET_CODE (x4))
    9745              :     {
    9746              :     case REG:
    9747              :     case SUBREG:
    9748              :     case MEM:
    9749              :       operands[1] = x4;
    9750              :       res = recog_93 (x1, insn, pnum_clobbers);
    9751              :       if (res >= 0)
    9752              :         return res;
    9753              :       if (pnum_clobbers == NULL
    9754              :           || GET_CODE (x4) != SUBREG
    9755              :           || maybe_ne (SUBREG_BYTE (x4), 0)
    9756              :           || GET_MODE (x4) != E_DImode)
    9757              :         return -1;
    9758              :       x5 = XEXP (x3, 1);
    9759              :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 63]
    9760              :           || !register_operand (operands[0], E_DImode)
    9761              :           || GET_MODE (x3) != E_DImode)
    9762              :         return -1;
    9763              :       x6 = XEXP (x4, 0);
    9764              :       if (GET_MODE (x6) != E_SImode)
    9765              :         return -1;
    9766              :       switch (GET_CODE (x6))
    9767              :         {
    9768              :         case CTZ:
    9769              :           x7 = XEXP (x6, 0);
    9770              :           operands[1] = x7;
    9771              :           if (!nonimmediate_operand (operands[1], E_SImode)
    9772              :               || !
    9773              : #line 21391 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9774              : (TARGET_BMI && TARGET_64BIT))
    9775              :             return -1;
    9776              :           *pnum_clobbers = 1;
    9777              :           return 1542; /* *ctzsi2_zext */
    9778              : 
    9779              :         case CLZ:
    9780              :           x7 = XEXP (x6, 0);
    9781              :           operands[1] = x7;
    9782              :           if (!nonimmediate_operand (operands[1], E_SImode)
    9783              :               || !
    9784              : #line 21840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9785              : (TARGET_LZCNT && TARGET_64BIT))
    9786              :             return -1;
    9787              :           *pnum_clobbers = 1;
    9788              :           return 1566; /* *clzsi2_lzcnt_zext */
    9789              : 
    9790              :         case POPCOUNT:
    9791              :           x7 = XEXP (x6, 0);
    9792              :           operands[1] = x7;
    9793              :           if (!nonimmediate_operand (operands[1], E_SImode)
    9794              :               || !
    9795              : #line 22667 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9796              : (TARGET_POPCNT && TARGET_64BIT))
    9797              :             return -1;
    9798              :           *pnum_clobbers = 1;
    9799              :           return 1658; /* *popcountsi2_zext */
    9800              : 
    9801              :         default:
    9802              :           return -1;
    9803              :         }
    9804              : 
    9805              :     case NOT:
    9806              :       if (pnum_clobbers == NULL)
    9807              :         return -1;
    9808              :       x6 = XEXP (x4, 0);
    9809              :       switch (GET_CODE (x6))
    9810              :         {
    9811              :         case REG:
    9812              :         case SUBREG:
    9813              :           operands[1] = x6;
    9814              :           x5 = XEXP (x3, 1);
    9815              :           operands[2] = x5;
    9816              :           switch (GET_MODE (operands[0]))
    9817              :             {
    9818              :             case E_DImode:
    9819              :               if (pattern747 (x3, 
    9820              : E_DImode) != 0)
    9821              :                 return -1;
    9822              :               if ((
    9823              : #line 13716 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9824              : (TARGET_BMI) && 
    9825              : #line 1239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9826              : (!TARGET_64BIT)))
    9827              :                 {
    9828              :                   *pnum_clobbers = 1;
    9829              :                   return 837; /* *andndi3_doubleword_bmi */
    9830              :                 }
    9831              :               if ((
    9832              : #line 13734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9833              : (!TARGET_BMI
    9834              :    && ix86_pre_reload_split ()) && 
    9835              : #line 1199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9836              : (!TARGET_64BIT)))
    9837              :                 {
    9838              :                   *pnum_clobbers = 1;
    9839              :                   return 839; /* *andndi3_doubleword */
    9840              :                 }
    9841              :               if (!(
    9842              : #line 13750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9843              : (TARGET_BMI || TARGET_AVX512BW) && 
    9844              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9845              : (TARGET_64BIT)))
    9846              :                 return -1;
    9847              :               *pnum_clobbers = 1;
    9848              :               return 842; /* *andndi_1 */
    9849              : 
    9850              :             case E_SImode:
    9851              :               if (pattern747 (x3, 
    9852              : E_SImode) != 0
    9853              :                   || !
    9854              : #line 13750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9855              : (TARGET_BMI || TARGET_AVX512BW))
    9856              :                 return -1;
    9857              :               *pnum_clobbers = 1;
    9858              :               return 841; /* *andnsi_1 */
    9859              : 
    9860              :             default:
    9861              :               return -1;
    9862              :             }
    9863              : 
    9864              :         case LSHIFTRT:
    9865              :           x5 = XEXP (x3, 1);
    9866              :           if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    9867              :             return -1;
    9868              :           x7 = XEXP (x6, 0);
    9869              :           operands[1] = x7;
    9870              :           x8 = XEXP (x6, 1);
    9871              :           operands[2] = x8;
    9872              :           if (!register_operand (operands[2], E_QImode))
    9873              :             return -1;
    9874              :           switch (GET_MODE (operands[0]))
    9875              :             {
    9876              :             case E_SImode:
    9877              :               if (pattern992 (x3, 
    9878              : E_SImode) != 0
    9879              :                   || !
    9880              : #line 19620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9881              : (TARGET_USE_BT && ix86_pre_reload_split ()))
    9882              :                 return -1;
    9883              :               *pnum_clobbers = 1;
    9884              :               return 1462; /* *btsi_setncsi */
    9885              : 
    9886              :             case E_DImode:
    9887              :               if (pattern992 (x3, 
    9888              : E_DImode) != 0
    9889              :                   || !(
    9890              : #line 19620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9891              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
    9892              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9893              : (TARGET_64BIT)))
    9894              :                 return -1;
    9895              :               *pnum_clobbers = 1;
    9896              :               return 1463; /* *btdi_setncdi */
    9897              : 
    9898              :             default:
    9899              :               return -1;
    9900              :             }
    9901              : 
    9902              :         case ASHIFT:
    9903              :           x7 = XEXP (x6, 0);
    9904              :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
    9905              :             return -1;
    9906              :           switch (pattern634 (x3))
    9907              :             {
    9908              :             case 0:
    9909              :               if (!
    9910              : #line 22368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9911              : (TARGET_BMI2))
    9912              :                 return -1;
    9913              :               *pnum_clobbers = 1;
    9914              :               return 1622; /* *bmi2_bzhi_si3_3 */
    9915              : 
    9916              :             case 1:
    9917              :               if (!(
    9918              : #line 22368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9919              : (TARGET_BMI2) && 
    9920              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9921              : (TARGET_64BIT)))
    9922              :                 return -1;
    9923              :               *pnum_clobbers = 1;
    9924              :               return 1623; /* *bmi2_bzhi_di3_3 */
    9925              : 
    9926              :             default:
    9927              :               return -1;
    9928              :             }
    9929              : 
    9930              :         default:
    9931              :           return -1;
    9932              :         }
    9933              : 
    9934              :     case ROTATE:
    9935              :       if (pnum_clobbers == NULL)
    9936              :         return -1;
    9937              :       x6 = XEXP (x4, 0);
    9938              :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + -2])
    9939              :         return -1;
    9940              :       switch (pattern288 (x3))
    9941              :         {
    9942              :         case 0:
    9943              :           x9 = XEXP (x4, 1);
    9944              :           operands[2] = x9;
    9945              :           if (register_operand (operands[2], E_QImode))
    9946              :             {
    9947              :               switch (pattern761 (x3))
    9948              :                 {
    9949              :                 case 0:
    9950              :                   if (
    9951              : #line 19127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9952              : (TARGET_USE_BT))
    9953              :                     {
    9954              :                       *pnum_clobbers = 1;
    9955              :                       return 1435; /* *btrsi */
    9956              :                     }
    9957              :                   break;
    9958              : 
    9959              :                 case 1:
    9960              :                   if ((
    9961              : #line 19127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9962              : (TARGET_USE_BT) && 
    9963              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9964              : (TARGET_64BIT)))
    9965              :                     {
    9966              :                       *pnum_clobbers = 1;
    9967              :                       return 1436; /* *btrdi */
    9968              :                     }
    9969              :                   break;
    9970              : 
    9971              :                 default:
    9972              :                   break;
    9973              :                 }
    9974              :             }
    9975              :           if (GET_CODE (x9) != SUBREG)
    9976              :             return -1;
    9977              :           switch (pattern770 (x3))
    9978              :             {
    9979              :             case 0:
    9980              :               if (!
    9981              : #line 19147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9982              : (TARGET_USE_BT
    9983              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
    9984              :       == GET_MODE_BITSIZE (SImode)-1
    9985              :    && ix86_pre_reload_split ()))
    9986              :                 return -1;
    9987              :               *pnum_clobbers = 1;
    9988              :               return 1437; /* *btrsi_mask */
    9989              : 
    9990              :             case 1:
    9991              :               if (!(
    9992              : #line 19147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9993              : (TARGET_USE_BT
    9994              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
    9995              :       == GET_MODE_BITSIZE (DImode)-1
    9996              :    && ix86_pre_reload_split ()) && 
    9997              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9998              : (TARGET_64BIT)))
    9999              :                 return -1;
   10000              :               *pnum_clobbers = 1;
   10001              :               return 1438; /* *btrdi_mask */
   10002              : 
   10003              :             default:
   10004              :               return -1;
   10005              :             }
   10006              : 
   10007              :         case 1:
   10008              :           if (!
   10009              : #line 19175 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10010              : (TARGET_USE_BT
   10011              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
   10012              :       == GET_MODE_BITSIZE (SImode)-1
   10013              :    && ix86_pre_reload_split ()))
   10014              :             return -1;
   10015              :           *pnum_clobbers = 1;
   10016              :           return 1439; /* *btrsi_mask_1 */
   10017              : 
   10018              :         case 2:
   10019              :           if (!(
   10020              : #line 19175 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10021              : (TARGET_USE_BT
   10022              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
   10023              :       == GET_MODE_BITSIZE (DImode)-1
   10024              :    && ix86_pre_reload_split ()) && 
   10025              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10026              : (TARGET_64BIT)))
   10027              :             return -1;
   10028              :           *pnum_clobbers = 1;
   10029              :           return 1440; /* *btrdi_mask_1 */
   10030              : 
   10031              :         default:
   10032              :           return -1;
   10033              :         }
   10034              : 
   10035              :     case NEG:
   10036              :       if (pnum_clobbers == NULL)
   10037              :         return -1;
   10038              :       x6 = XEXP (x4, 0);
   10039              :       operands[1] = x6;
   10040              :       x5 = XEXP (x3, 1);
   10041              :       if (!rtx_equal_p (x5, operands[1]))
   10042              :         return -1;
   10043              :       switch (GET_MODE (operands[0]))
   10044              :         {
   10045              :         case E_SImode:
   10046              :           if (pattern764 (x3, 
   10047              : E_SImode) != 0
   10048              :               || !
   10049              : #line 22045 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10050              : (TARGET_BMI))
   10051              :             return -1;
   10052              :           *pnum_clobbers = 1;
   10053              :           return 1596; /* *bmi_blsi_si */
   10054              : 
   10055              :         case E_DImode:
   10056              :           if (pattern764 (x3, 
   10057              : E_DImode) != 0
   10058              :               || !(
   10059              : #line 22045 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10060              : (TARGET_BMI) && 
   10061              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10062              : (TARGET_64BIT)))
   10063              :             return -1;
   10064              :           *pnum_clobbers = 1;
   10065              :           return 1597; /* *bmi_blsi_di */
   10066              : 
   10067              :         default:
   10068              :           return -1;
   10069              :         }
   10070              : 
   10071              :     case PLUS:
   10072              :       if (pnum_clobbers == NULL)
   10073              :         return -1;
   10074              :       x9 = XEXP (x4, 1);
   10075              :       if (GET_CODE (x9) != CONST_INT)
   10076              :         return -1;
   10077              :       x6 = XEXP (x4, 0);
   10078              :       switch (GET_CODE (x6))
   10079              :         {
   10080              :         case REG:
   10081              :         case SUBREG:
   10082              :         case MEM:
   10083              :           operands[1] = x6;
   10084              :           switch (XWINT (x9, 0))
   10085              :             {
   10086              :             case -1L:
   10087              :               switch (pattern766 (x3))
   10088              :                 {
   10089              :                 case 0:
   10090              :                   if (!
   10091              : #line 22190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10092              : (TARGET_BMI))
   10093              :                     return -1;
   10094              :                   *pnum_clobbers = 1;
   10095              :                   return 1608; /* *bmi_blsr_si */
   10096              : 
   10097              :                 case 1:
   10098              :                   if (!(
   10099              : #line 22190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10100              : (TARGET_BMI) && 
   10101              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10102              : (TARGET_64BIT)))
   10103              :                     return -1;
   10104              :                   *pnum_clobbers = 1;
   10105              :                   return 1609; /* *bmi_blsr_di */
   10106              : 
   10107              :                 case 2:
   10108              :                   if (!
   10109              : #line 22561 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10110              : (TARGET_TBM))
   10111              :                     return -1;
   10112              :                   *pnum_clobbers = 1;
   10113              :                   return 1648; /* *tbm_tzmsk_si */
   10114              : 
   10115              :                 case 3:
   10116              :                   if (!(
   10117              : #line 22561 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10118              : (TARGET_TBM) && 
   10119              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10120              : (TARGET_64BIT)))
   10121              :                     return -1;
   10122              :                   *pnum_clobbers = 1;
   10123              :                   return 1649; /* *tbm_tzmsk_di */
   10124              : 
   10125              :                 default:
   10126              :                   return -1;
   10127              :                 }
   10128              : 
   10129              :             case 1L:
   10130              :               switch (pattern766 (x3))
   10131              :                 {
   10132              :                 case 0:
   10133              :                   if (!
   10134              : #line 22452 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10135              : (TARGET_TBM))
   10136              :                     return -1;
   10137              :                   *pnum_clobbers = 1;
   10138              :                   return 1632; /* *tbm_blcfill_si */
   10139              : 
   10140              :                 case 1:
   10141              :                   if (!(
   10142              : #line 22452 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10143              : (TARGET_TBM) && 
   10144              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10145              : (TARGET_64BIT)))
   10146              :                     return -1;
   10147              :                   *pnum_clobbers = 1;
   10148              :                   return 1633; /* *tbm_blcfill_di */
   10149              : 
   10150              :                 case 2:
   10151              :                   if (!
   10152              : #line 22480 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10153              : (TARGET_TBM))
   10154              :                     return -1;
   10155              :                   *pnum_clobbers = 1;
   10156              :                   return 1636; /* *tbm_blcic_si */
   10157              : 
   10158              :                 case 3:
   10159              :                   if (!(
   10160              : #line 22480 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10161              : (TARGET_TBM) && 
   10162              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10163              : (TARGET_64BIT)))
   10164              :                     return -1;
   10165              :                   *pnum_clobbers = 1;
   10166              :                   return 1637; /* *tbm_blcic_di */
   10167              : 
   10168              :                 default:
   10169              :                   return -1;
   10170              :                 }
   10171              : 
   10172              :             default:
   10173              :               return -1;
   10174              :             }
   10175              : 
   10176              :         case ASHIFT:
   10177              :           x7 = XEXP (x6, 0);
   10178              :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   10179              :               || XWINT (x9, 0) != -1L)
   10180              :             return -1;
   10181              :           switch (pattern634 (x3))
   10182              :             {
   10183              :             case 0:
   10184              :               if (!
   10185              : #line 22354 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10186              : (TARGET_BMI2))
   10187              :                 return -1;
   10188              :               *pnum_clobbers = 1;
   10189              :               return 1620; /* *bmi2_bzhi_si3_2 */
   10190              : 
   10191              :             case 1:
   10192              :               if (!(
   10193              : #line 22354 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10194              : (TARGET_BMI2) && 
   10195              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10196              : (TARGET_64BIT)))
   10197              :                 return -1;
   10198              :               *pnum_clobbers = 1;
   10199              :               return 1621; /* *bmi2_bzhi_di3_2 */
   10200              : 
   10201              :             default:
   10202              :               return -1;
   10203              :             }
   10204              : 
   10205              :         default:
   10206              :           return -1;
   10207              :         }
   10208              : 
   10209              :     case ZERO_EXTEND:
   10210              :       if (pnum_clobbers == NULL
   10211              :           || GET_MODE (x4) != E_DImode)
   10212              :         return -1;
   10213              :       x6 = XEXP (x4, 0);
   10214              :       if (GET_CODE (x6) != PLUS
   10215              :           || pattern443 (x6) != 0)
   10216              :         return -1;
   10217              :       x8 = XEXP (x6, 1);
   10218              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + -1]
   10219              :           || !register_operand (operands[0], E_DImode)
   10220              :           || GET_MODE (x3) != E_DImode)
   10221              :         return -1;
   10222              :       x7 = XEXP (x6, 0);
   10223              :       x10 = XEXP (x7, 1);
   10224              :       operands[2] = x10;
   10225              :       if (!register_operand (operands[2], E_QImode))
   10226              :         return -1;
   10227              :       x5 = XEXP (x3, 1);
   10228              :       operands[1] = x5;
   10229              :       if (!nonimmediate_operand (operands[1], E_DImode)
   10230              :           || !
   10231              : #line 22400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10232              : (TARGET_64BIT && TARGET_BMI2))
   10233              :         return -1;
   10234              :       *pnum_clobbers = 1;
   10235              :       return 1625; /* *bmi2_bzhi_zero_extendsidi_5 */
   10236              : 
   10237              :     case UNSPEC:
   10238              :       switch (XVECLEN (x4, 0))
   10239              :         {
   10240              :         case 3:
   10241              :           x11 = XVECEXP (x4, 0, 2);
   10242              :           if (GET_CODE (x11) != CONST_INT)
   10243              :             return -1;
   10244              :           x12 = XVECEXP (x4, 0, 0);
   10245              :           operands[1] = x12;
   10246              :           x13 = XVECEXP (x4, 0, 1);
   10247              :           operands[2] = x13;
   10248              :           switch (XINT (x4, 1))
   10249              :             {
   10250              :             case 60:
   10251              :               operands[3] = x11;
   10252              :               x5 = XEXP (x3, 1);
   10253              :               operands[4] = x5;
   10254              :               switch (GET_MODE (operands[0]))
   10255              :                 {
   10256              :                 case E_SImode:
   10257              :                   if (pattern1087 (x3, 
   10258              : E_SImode) == 0)
   10259              :                     {
   10260              :                       switch (GET_MODE (operands[1]))
   10261              :                         {
   10262              :                         case E_V32HFmode:
   10263              :                           if (register_operand (operands[1], E_V32HFmode)
   10264              :                               && nonimmediate_operand (operands[2], E_V32HFmode)
   10265              :                               && const_0_to_31_operand (operands[3], E_SImode)
   10266              :                               && (
   10267              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10268              : (TARGET_AVX512F) && (
   10269              : #line 4658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10270              : (TARGET_AVX512F && 1) && 
   10271              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10272              : (TARGET_AVX512FP16))))
   10273              :                             return 3315; /* avx512bw_cmpv32hf3_mask */
   10274              :                           break;
   10275              : 
   10276              :                         case E_V32QImode:
   10277              :                           if (register_operand (operands[1], E_V32QImode)
   10278              :                               && nonimmediate_operand (operands[2], E_V32QImode)
   10279              :                               && const_0_to_7_operand (operands[3], E_SImode)
   10280              :                               && (
   10281              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10282              : (TARGET_AVX512F) && (
   10283              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10284              : (TARGET_AVX512F) && 
   10285              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10286              : (TARGET_AVX512VL && TARGET_AVX512BW))))
   10287              :                             return 3460; /* avx512vl_cmpv32qi3_mask */
   10288              :                           break;
   10289              : 
   10290              :                         case E_V32HImode:
   10291              :                           if (register_operand (operands[1], E_V32HImode)
   10292              :                               && nonimmediate_operand (operands[2], E_V32HImode)
   10293              :                               && const_0_to_7_operand (operands[3], E_SImode)
   10294              :                               && (
   10295              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10296              : (TARGET_AVX512F) && (
   10297              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10298              : (TARGET_AVX512F) && 
   10299              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10300              : (TARGET_AVX512BW))))
   10301              :                             return 3464; /* avx512bw_cmpv32hi3_mask */
   10302              :                           break;
   10303              : 
   10304              :                         case E_V32BFmode:
   10305              :                           if (register_operand (operands[1], E_V32BFmode)
   10306              :                               && nonimmediate_operand (operands[2], E_V32BFmode)
   10307              :                               && const_0_to_31_operand (operands[3], E_VOIDmode)
   10308              :                               && (
   10309              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10310              : (TARGET_AVX512F) && 
   10311              : #line 33435 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10312              : (TARGET_AVX10_2)))
   10313              :                             return 10810; /* avx10_2_cmpbf16_v32bf_mask */
   10314              :                           break;
   10315              : 
   10316              :                         default:
   10317              :                           break;
   10318              :                         }
   10319              :                     }
   10320              :                   break;
   10321              : 
   10322              :                 case E_DImode:
   10323              :                   if (pattern995 (x3) == 0
   10324              :                       && register_operand (operands[4], E_DImode)
   10325              :                       && (
   10326              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10327              : (TARGET_AVX512F) && (
   10328              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10329              : (TARGET_AVX512F) && 
   10330              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10331              : (TARGET_AVX512BW))))
   10332              :                     return 3458; /* avx512bw_cmpv64qi3_mask */
   10333              :                   break;
   10334              : 
   10335              :                 default:
   10336              :                   break;
   10337              :                 }
   10338              :               if (XWINT (x11, 0) != 0L)
   10339              :                 return -1;
   10340              :               switch (pattern993 (x3))
   10341              :                 {
   10342              :                 case 0:
   10343              :                   if (!(
   10344              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10345              : (TARGET_AVX512F) && 
   10346              : #line 4973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10347              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   10348              :                     return -1;
   10349              :                   return 3554; /* *avx512bw_eqv64qi3_mask_1 */
   10350              : 
   10351              :                 case 1:
   10352              :                   if (!(
   10353              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10354              : (TARGET_AVX512F) && (
   10355              : #line 4973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10356              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   10357              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10358              : (TARGET_AVX512VL))))
   10359              :                     return -1;
   10360              :                   return 3562; /* *avx512vl_eqv32qi3_mask_1 */
   10361              : 
   10362              :                 case 2:
   10363              :                   if (!(
   10364              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10365              : (TARGET_AVX512F) && 
   10366              : #line 4973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10367              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   10368              :                     return -1;
   10369              :                   return 3566; /* *avx512bw_eqv32hi3_mask_1 */
   10370              : 
   10371              :                 default:
   10372              :                   return -1;
   10373              :                 }
   10374              : 
   10375              :             case 158:
   10376              :               if (XWINT (x11, 0) == 0L)
   10377              :                 {
   10378              :                   switch (pattern993 (x3))
   10379              :                     {
   10380              :                     case 0:
   10381              :                       if ((
   10382              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10383              : (TARGET_AVX512F) && 
   10384              : #line 4973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10385              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   10386              :                         return 3556; /* *avx512bw_eqv64qi3_mask_1 */
   10387              :                       break;
   10388              : 
   10389              :                     case 1:
   10390              :                       if ((
   10391              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10392              : (TARGET_AVX512F) && (
   10393              : #line 4973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10394              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   10395              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10396              : (TARGET_AVX512VL))))
   10397              :                         return 3564; /* *avx512vl_eqv32qi3_mask_1 */
   10398              :                       break;
   10399              : 
   10400              :                     case 2:
   10401              :                       if ((
   10402              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10403              : (TARGET_AVX512F) && 
   10404              : #line 4973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10405              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   10406              :                         return 3568; /* *avx512bw_eqv32hi3_mask_1 */
   10407              :                       break;
   10408              : 
   10409              :                     default:
   10410              :                       break;
   10411              :                     }
   10412              :                 }
   10413              :               operands[3] = x11;
   10414              :               if (!const_0_to_7_operand (operands[3], E_SImode))
   10415              :                 return -1;
   10416              :               x5 = XEXP (x3, 1);
   10417              :               operands[4] = x5;
   10418              :               switch (GET_MODE (operands[0]))
   10419              :                 {
   10420              :                 case E_DImode:
   10421              :                   if (pattern1104 (x3, 
   10422              : E_V64QImode, 
   10423              : E_DImode) != 0
   10424              :                       || !register_operand (operands[4], E_DImode)
   10425              :                       || !(
   10426              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10427              : (TARGET_AVX512F) && (
   10428              : #line 5066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10429              : (TARGET_AVX512F) && 
   10430              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10431              : (TARGET_AVX512BW))))
   10432              :                     return -1;
   10433              :                   return 3638; /* avx512bw_ucmpv64qi3_mask */
   10434              : 
   10435              :                 case E_SImode:
   10436              :                   if (pattern1087 (x3, 
   10437              : E_SImode) != 0)
   10438              :                     return -1;
   10439              :                   switch (pattern881 ())
   10440              :                     {
   10441              :                     case 0:
   10442              :                       if (!(
   10443              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10444              : (TARGET_AVX512F) && (
   10445              : #line 5066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10446              : (TARGET_AVX512F) && 
   10447              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10448              : (TARGET_AVX512VL && TARGET_AVX512BW))))
   10449              :                         return -1;
   10450              :                       return 3640; /* avx512vl_ucmpv32qi3_mask */
   10451              : 
   10452              :                     case 1:
   10453              :                       if (!(
   10454              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10455              : (TARGET_AVX512F) && (
   10456              : #line 5066 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10457              : (TARGET_AVX512F) && 
   10458              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10459              : (TARGET_AVX512BW))))
   10460              :                         return -1;
   10461              :                       return 3644; /* avx512bw_ucmpv32hi3_mask */
   10462              : 
   10463              :                     default:
   10464              :                       return -1;
   10465              :                     }
   10466              : 
   10467              :                 default:
   10468              :                   return -1;
   10469              :                 }
   10470              : 
   10471              :             default:
   10472              :               return -1;
   10473              :             }
   10474              : 
   10475              :         case 2:
   10476              :           x12 = XVECEXP (x4, 0, 0);
   10477              :           operands[1] = x12;
   10478              :           x13 = XVECEXP (x4, 0, 1);
   10479              :           operands[2] = x13;
   10480              :           x5 = XEXP (x3, 1);
   10481              :           operands[3] = x5;
   10482              :           switch (XINT (x4, 1))
   10483              :             {
   10484              :             case 159:
   10485              :               switch (pattern885 (x3))
   10486              :                 {
   10487              :                 case 0:
   10488              :                   if (!(
   10489              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10490              : (TARGET_AVX512F) && (
   10491              : #line 19496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10492              : (TARGET_AVX512F) && 
   10493              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10494              : (TARGET_AVX512BW))))
   10495              :                     return -1;
   10496              :                   return 8166; /* avx512bw_testmv64qi3_mask */
   10497              : 
   10498              :                 case 1:
   10499              :                   if (!(
   10500              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10501              : (TARGET_AVX512F) && (
   10502              : #line 19496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10503              : (TARGET_AVX512F) && 
   10504              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10505              : (TARGET_AVX512VL && TARGET_AVX512BW))))
   10506              :                     return -1;
   10507              :                   return 8168; /* avx512vl_testmv32qi3_mask */
   10508              : 
   10509              :                 case 2:
   10510              :                   if (!(
   10511              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10512              : (TARGET_AVX512F) && (
   10513              : #line 19496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10514              : (TARGET_AVX512F) && 
   10515              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10516              : (TARGET_AVX512BW))))
   10517              :                     return -1;
   10518              :                   return 8172; /* avx512bw_testmv32hi3_mask */
   10519              : 
   10520              :                 default:
   10521              :                   return -1;
   10522              :                 }
   10523              : 
   10524              :             case 160:
   10525              :               switch (pattern885 (x3))
   10526              :                 {
   10527              :                 case 0:
   10528              :                   if (!(
   10529              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10530              : (TARGET_AVX512F) && (
   10531              : #line 19507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10532              : (TARGET_AVX512F) && 
   10533              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10534              : (TARGET_AVX512BW))))
   10535              :                     return -1;
   10536              :                   return 8190; /* avx512bw_testnmv64qi3_mask */
   10537              : 
   10538              :                 case 1:
   10539              :                   if (!(
   10540              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10541              : (TARGET_AVX512F) && (
   10542              : #line 19507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10543              : (TARGET_AVX512F) && 
   10544              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10545              : (TARGET_AVX512VL && TARGET_AVX512BW))))
   10546              :                     return -1;
   10547              :                   return 8192; /* avx512vl_testnmv32qi3_mask */
   10548              : 
   10549              :                 case 2:
   10550              :                   if (!(
   10551              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10552              : (TARGET_AVX512F) && (
   10553              : #line 19507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10554              : (TARGET_AVX512F) && 
   10555              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10556              : (TARGET_AVX512BW))))
   10557              :                     return -1;
   10558              :                   return 8196; /* avx512bw_testnmv32hi3_mask */
   10559              : 
   10560              :                 default:
   10561              :                   return -1;
   10562              :                 }
   10563              : 
   10564              :             case 194:
   10565              :               if (GET_MODE (x4) != E_SImode
   10566              :                   || !register_operand (operands[0], E_SImode)
   10567              :                   || GET_MODE (x3) != E_SImode
   10568              :                   || !vector_operand (operands[1], E_V32HFmode)
   10569              :                   || !const_0_to_255_operand (operands[2], E_VOIDmode)
   10570              :                   || !register_operand (operands[3], E_SImode)
   10571              :                   || !(
   10572              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10573              : (TARGET_AVX512F) && (
   10574              : #line 30812 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10575              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V32HFmode)) && 
   10576              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10577              : (TARGET_AVX512FP16))))
   10578              :                 return -1;
   10579              :               return 10068; /* avx512dq_fpclassv32hf_mask */
   10580              : 
   10581              :             case 215:
   10582              :               switch (GET_MODE (operands[0]))
   10583              :                 {
   10584              :                 case E_DImode:
   10585              :                   if (pattern884 (x3, 
   10586              : E_DImode, 
   10587              : E_V64QImode) != 0
   10588              :                       || !(
   10589              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10590              : (TARGET_AVX512F) && 
   10591              : #line 31906 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10592              : (TARGET_AVX512BITALG)))
   10593              :                     return -1;
   10594              :                   return 10410; /* avx512vl_vpshufbitqmbv64qi_mask */
   10595              : 
   10596              :                 case E_SImode:
   10597              :                   if (pattern884 (x3, 
   10598              : E_SImode, 
   10599              : E_V32QImode) != 0
   10600              :                       || !(
   10601              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10602              : (TARGET_AVX512F) && (
   10603              : #line 31906 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10604              : (TARGET_AVX512BITALG) && 
   10605              : #line 338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10606              : (TARGET_AVX512VL))))
   10607              :                     return -1;
   10608              :                   return 10414; /* avx512vl_vpshufbitqmbv32qi_mask */
   10609              : 
   10610              :                 default:
   10611              :                   return -1;
   10612              :                 }
   10613              : 
   10614              :             case 263:
   10615              :               if (GET_MODE (x4) != E_SImode
   10616              :                   || !register_operand (operands[0], E_SImode)
   10617              :                   || GET_MODE (x3) != E_SImode
   10618              :                   || !nonimmediate_operand (operands[1], E_V32BFmode)
   10619              :                   || !const_0_to_255_operand (operands[2], E_VOIDmode)
   10620              :                   || !register_operand (operands[3], E_SImode)
   10621              :                   || !(
   10622              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10623              : (TARGET_AVX512F) && 
   10624              : #line 33424 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10625              : (TARGET_AVX10_2)))
   10626              :                 return -1;
   10627              :               return 10804; /* avx10_2_fpclassbf16_v32bf_mask */
   10628              : 
   10629              :             default:
   10630              :               return -1;
   10631              :             }
   10632              : 
   10633              :         default:
   10634              :           return -1;
   10635              :         }
   10636              : 
   10637              :     default:
   10638              :       return -1;
   10639              :     }
   10640              : }
   10641              : 
   10642              :  int
   10643              : recog_128 (rtx x1 ATTRIBUTE_UNUSED,
   10644              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10645              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10646              : {
   10647              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10648              :   rtx x2;
   10649              :   int res ATTRIBUTE_UNUSED;
   10650              :   x2 = XEXP (x1, 1);
   10651              :   switch (pattern643 (x2))
   10652              :     {
   10653              :     case 0:
   10654              :       if (pattern646 (x2, 
   10655              : E_V32HImode, 
   10656              : E_SImode, 
   10657              : E_V32HFmode) != 0
   10658              :           || !(
   10659              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10660              : (TARGET_AVX512F) && 
   10661              : #line 8011 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10662              : (TARGET_AVX512FP16)))
   10663              :         return -1;
   10664              :       return 4435; /* avx512fp16_vcvtph2uw_v32hi_mask */
   10665              : 
   10666              :     case 1:
   10667              :       if (pattern142 (x2, 
   10668              : E_V16SImode, 
   10669              : E_HImode) != 0)
   10670              :         return -1;
   10671              :       switch (GET_MODE (operands[1]))
   10672              :         {
   10673              :         case E_V16HFmode:
   10674              :           if (!vector_operand (operands[1], E_V16HFmode)
   10675              :               || !(
   10676              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10677              : (TARGET_AVX512F) && 
   10678              : #line 8011 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10679              : (TARGET_AVX512FP16)))
   10680              :             return -1;
   10681              :           return 4443; /* avx512fp16_vcvtph2udq_v16si_mask */
   10682              : 
   10683              :         case E_V16SFmode:
   10684              :           if (!nonimmediate_operand (operands[1], E_V16SFmode)
   10685              :               || !
   10686              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10687              : (TARGET_AVX512F))
   10688              :             return -1;
   10689              :           return 4871; /* avx512f_fixuns_notruncv16sfv16si_mask */
   10690              : 
   10691              :         default:
   10692              :           return -1;
   10693              :         }
   10694              : 
   10695              :     case 2:
   10696              :       switch (pattern1113 (x2, 
   10697              : E_V8DImode))
   10698              :         {
   10699              :         case 0:
   10700              :           if (!(
   10701              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10702              : (TARGET_AVX512F) && 
   10703              : #line 8011 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10704              : (TARGET_AVX512FP16)))
   10705              :             return -1;
   10706              :           return 4451; /* avx512fp16_vcvtph2uqq_v8di_mask */
   10707              : 
   10708              :         case 1:
   10709              :           if (!(
   10710              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10711              : (TARGET_AVX512F) && 
   10712              : #line 9108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10713              : (TARGET_AVX512DQ && 1)))
   10714              :             return -1;
   10715              :           return 4891; /* avx512dq_cvtps2uqqv8di_mask */
   10716              : 
   10717              :         case 2:
   10718              :           if (!(
   10719              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10720              : (TARGET_AVX512F) && 
   10721              : #line 10087 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10722              : (TARGET_AVX512DQ && 1)))
   10723              :             return -1;
   10724              :           return 5117; /* fixuns_notruncv8dfv8di2_mask */
   10725              : 
   10726              :         default:
   10727              :           return -1;
   10728              :         }
   10729              : 
   10730              :     case 3:
   10731              :       if (pattern646 (x2, 
   10732              : E_V16HImode, 
   10733              : E_HImode, 
   10734              : E_V16HFmode) != 0
   10735              :           || !(
   10736              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10737              : (TARGET_AVX512F) && (
   10738              : #line 8011 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10739              : (TARGET_AVX512FP16) && 
   10740              : #line 751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10741              : (TARGET_AVX512VL))))
   10742              :         return -1;
   10743              :       return 4459; /* avx512fp16_vcvtph2uw_v16hi_mask */
   10744              : 
   10745              :     case 4:
   10746              :       switch (pattern1113 (x2, 
   10747              : E_V8SImode))
   10748              :         {
   10749              :         case 0:
   10750              :           if (!(
   10751              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10752              : (TARGET_AVX512F) && (
   10753              : #line 8011 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10754              : (TARGET_AVX512FP16) && 
   10755              : #line 751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10756              : (TARGET_AVX512VL))))
   10757              :             return -1;
   10758              :           return 4467; /* avx512fp16_vcvtph2udq_v8si_mask */
   10759              : 
   10760              :         case 1:
   10761              :           if (!(
   10762              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10763              : (TARGET_AVX512F) && (
   10764              : #line 9075 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10765              : (TARGET_AVX512F) && 
   10766              : #line 668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10767              : (TARGET_AVX512VL))))
   10768              :             return -1;
   10769              :           return 4875; /* avx512vl_fixuns_notruncv8sfv8si_mask */
   10770              : 
   10771              :         case 2:
   10772              :           if (!
   10773              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10774              : (TARGET_AVX512F))
   10775              :             return -1;
   10776              :           return 5037; /* fixuns_notruncv8dfv8si2_mask */
   10777              : 
   10778              :         default:
   10779              :           return -1;
   10780              :         }
   10781              : 
   10782              :     case 5:
   10783              :       switch (pattern1114 (x2, 
   10784              : E_V4DImode))
   10785              :         {
   10786              :         case 0:
   10787              :           if (!(
   10788              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10789              : (TARGET_AVX512F) && (
   10790              : #line 8011 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10791              : (TARGET_AVX512FP16) && 
   10792              : #line 752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10793              : (TARGET_AVX512VL))))
   10794              :             return -1;
   10795              :           return 4475; /* avx512fp16_vcvtph2uqq_v4di_mask */
   10796              : 
   10797              :         case 1:
   10798              :           if (!(
   10799              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10800              : (TARGET_AVX512F) && (
   10801              : #line 9108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10802              : (TARGET_AVX512DQ && 1) && 
   10803              : #line 620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10804              : (TARGET_AVX512VL))))
   10805              :             return -1;
   10806              :           return 4894; /* avx512dq_cvtps2uqqv4di_mask */
   10807              : 
   10808              :         case 2:
   10809              :           if (!(
   10810              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10811              : (TARGET_AVX512F) && (
   10812              : #line 10087 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10813              : (TARGET_AVX512DQ && 1) && 
   10814              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10815              : (TARGET_AVX512VL))))
   10816              :             return -1;
   10817              :           return 5120; /* fixuns_notruncv4dfv4di2_mask */
   10818              : 
   10819              :         default:
   10820              :           return -1;
   10821              :         }
   10822              : 
   10823              :     case 6:
   10824              :       if (pattern646 (x2, 
   10825              : E_V8HImode, 
   10826              : E_QImode, 
   10827              : E_V8HFmode) != 0
   10828              :           || !(
   10829              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10830              : (TARGET_AVX512F) && (
   10831              : #line 8011 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10832              : (TARGET_AVX512FP16) && 
   10833              : #line 752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10834              : (TARGET_AVX512VL))))
   10835              :         return -1;
   10836              :       return 4483; /* avx512fp16_vcvtph2uw_v8hi_mask */
   10837              : 
   10838              :     case 7:
   10839              :       switch (pattern1114 (x2, 
   10840              : E_V4SImode))
   10841              :         {
   10842              :         case 0:
   10843              :           if (!(
   10844              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10845              : (TARGET_AVX512F) && (
   10846              : #line 8011 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10847              : (TARGET_AVX512FP16) && 
   10848              : #line 753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10849              : (TARGET_AVX512VL))))
   10850              :             return -1;
   10851              :           return 4491; /* avx512fp16_vcvtph2udq_v4si_mask */
   10852              : 
   10853              :         case 1:
   10854              :           if (!(
   10855              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10856              : (TARGET_AVX512F) && (
   10857              : #line 9075 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10858              : (TARGET_AVX512F) && 
   10859              : #line 668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10860              : (TARGET_AVX512VL))))
   10861              :             return -1;
   10862              :           return 4879; /* avx512vl_fixuns_notruncv4sfv4si_mask */
   10863              : 
   10864              :         case 2:
   10865              :           if (!(
   10866              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10867              : (TARGET_AVX512F) && (
   10868              : #line 9868 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10869              : (TARGET_AVX512F) && 
   10870              : #line 469 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10871              : (TARGET_AVX512VL))))
   10872              :             return -1;
   10873              :           return 5041; /* fixuns_notruncv4dfv4si2_mask */
   10874              : 
   10875              :         default:
   10876              :           return -1;
   10877              :         }
   10878              : 
   10879              :     case 8:
   10880              :       switch (pattern1115 (x2))
   10881              :         {
   10882              :         case 0:
   10883              :           if (!vector_operand (operands[1], E_V8HFmode)
   10884              :               || !(
   10885              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10886              : (TARGET_AVX512F) && (
   10887              : #line 8011 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10888              : (TARGET_AVX512FP16) && 
   10889              : #line 753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10890              : (TARGET_AVX512VL))))
   10891              :             return -1;
   10892              :           return 4499; /* avx512fp16_vcvtph2uqq_v2di_mask */
   10893              : 
   10894              :         case 1:
   10895              :           if (!nonimmediate_operand (operands[1], E_V2DFmode)
   10896              :               || !(
   10897              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10898              : (TARGET_AVX512F) && (
   10899              : #line 10087 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10900              : (TARGET_AVX512DQ && 1) && 
   10901              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10902              : (TARGET_AVX512VL))))
   10903              :             return -1;
   10904              :           return 5122; /* fixuns_notruncv2dfv2di2_mask */
   10905              : 
   10906              :         default:
   10907              :           return -1;
   10908              :         }
   10909              : 
   10910              :     case 9:
   10911              :       if (!(
   10912              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10913              : (TARGET_AVX512F) && 
   10914              : #line 9121 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10915              : (TARGET_AVX512DQ && TARGET_AVX512VL)))
   10916              :         return -1;
   10917              :       return 4896; /* avx512dq_cvtps2uqqv2di_mask */
   10918              : 
   10919              :     default:
   10920              :       return -1;
   10921              :     }
   10922              : }
   10923              : 
   10924              :  int
   10925              : recog_136 (rtx x1 ATTRIBUTE_UNUSED,
   10926              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10927              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10928              : {
   10929              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10930              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   10931              :   int res ATTRIBUTE_UNUSED;
   10932              :   x2 = XEXP (x1, 1);
   10933              :   x3 = XEXP (x2, 0);
   10934              :   x4 = XVECEXP (x3, 0, 0);
   10935              :   operands[1] = x4;
   10936              :   x5 = XVECEXP (x3, 0, 1);
   10937              :   operands[2] = x5;
   10938              :   x6 = XVECEXP (x3, 0, 2);
   10939              :   switch (GET_CODE (x6))
   10940              :     {
   10941              :     case REG:
   10942              :     case SUBREG:
   10943              :     case MEM:
   10944              :       operands[3] = x6;
   10945              :       x7 = XEXP (x2, 1);
   10946              :       switch (GET_CODE (x7))
   10947              :         {
   10948              :         case CONST_INT:
   10949              :         case CONST_DOUBLE:
   10950              :         case CONST_VECTOR:
   10951              :           operands[4] = x7;
   10952              :           x8 = XEXP (x2, 2);
   10953              :           operands[5] = x8;
   10954              :           switch (GET_MODE (operands[0]))
   10955              :             {
   10956              :             case E_V32HFmode:
   10957              :               if (pattern1377 (x2, 
   10958              : E_V32HFmode, 
   10959              : E_SImode) != 0
   10960              :                   || !(
   10961              : #line 6802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10962              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1) && 
   10963              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10964              : (TARGET_AVX512FP16)))
   10965              :                 return -1;
   10966              :               return 4122; /* fma_fmaddsub_v32hf_maskz_1 */
   10967              : 
   10968              :             case E_V16HFmode:
   10969              :               if (pattern1377 (x2, 
   10970              : E_V16HFmode, 
   10971              : E_HImode) != 0
   10972              :                   || !(
   10973              : #line 6802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10974              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   10975              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10976              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   10977              :                 return -1;
   10978              :               return 4126; /* fma_fmaddsub_v16hf_maskz_1 */
   10979              : 
   10980              :             case E_V8HFmode:
   10981              :               if (pattern1377 (x2, 
   10982              : E_V8HFmode, 
   10983              : E_QImode) != 0
   10984              :                   || !(
   10985              : #line 6802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10986              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   10987              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10988              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   10989              :                 return -1;
   10990              :               return 4128; /* fma_fmaddsub_v8hf_maskz_1 */
   10991              : 
   10992              :             case E_V16SFmode:
   10993              :               if (pattern1377 (x2, 
   10994              : E_V16SFmode, 
   10995              : E_HImode) != 0
   10996              :                   || !
   10997              : #line 6802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10998              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
   10999              :                 return -1;
   11000              :               return 4130; /* fma_fmaddsub_v16sf_maskz_1 */
   11001              : 
   11002              :             case E_V8SFmode:
   11003              :               if (pattern1377 (x2, 
   11004              : E_V8SFmode, 
   11005              : E_QImode) != 0
   11006              :                   || !(
   11007              : #line 6802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11008              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   11009              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11010              : (TARGET_AVX512VL)))
   11011              :                 return -1;
   11012              :               return 4134; /* fma_fmaddsub_v8sf_maskz_1 */
   11013              : 
   11014              :             case E_V4SFmode:
   11015              :               if (pattern1377 (x2, 
   11016              : E_V4SFmode, 
   11017              : E_QImode) != 0
   11018              :                   || !(
   11019              : #line 6802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11020              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   11021              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11022              : (TARGET_AVX512VL)))
   11023              :                 return -1;
   11024              :               return 4136; /* fma_fmaddsub_v4sf_maskz_1 */
   11025              : 
   11026              :             case E_V8DFmode:
   11027              :               if (pattern1377 (x2, 
   11028              : E_V8DFmode, 
   11029              : E_QImode) != 0
   11030              :                   || !
   11031              : #line 6802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11032              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
   11033              :                 return -1;
   11034              :               return 4138; /* fma_fmaddsub_v8df_maskz_1 */
   11035              : 
   11036              :             case E_V4DFmode:
   11037              :               if (pattern1377 (x2, 
   11038              : E_V4DFmode, 
   11039              : E_QImode) != 0
   11040              :                   || !(
   11041              : #line 6802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11042              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   11043              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11044              : (TARGET_AVX512VL)))
   11045              :                 return -1;
   11046              :               return 4142; /* fma_fmaddsub_v4df_maskz_1 */
   11047              : 
   11048              :             case E_V2DFmode:
   11049              :               if (pattern1377 (x2, 
   11050              : E_V2DFmode, 
   11051              : E_QImode) != 0
   11052              :                   || !(
   11053              : #line 6802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11054              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   11055              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11056              : (TARGET_AVX512VL)))
   11057              :                 return -1;
   11058              :               return 4144; /* fma_fmaddsub_v2df_maskz_1 */
   11059              : 
   11060              :             default:
   11061              :               return -1;
   11062              :             }
   11063              : 
   11064              :         case REG:
   11065              :         case SUBREG:
   11066              :         case MEM:
   11067              :           x8 = XEXP (x2, 2);
   11068              :           operands[4] = x8;
   11069              :           switch (GET_MODE (operands[0]))
   11070              :             {
   11071              :             case E_V32HFmode:
   11072              :               if (pattern1281 (x2, 
   11073              : E_V32HFmode, 
   11074              : E_SImode) != 0)
   11075              :                 return -1;
   11076              :               if (register_operand (operands[1], E_V32HFmode)
   11077              :                   && vector_operand (operands[3], E_V32HFmode)
   11078              :                   && rtx_equal_p (x7, operands[1])
   11079              :                   && (
   11080              : #line 6821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11081              : (TARGET_AVX512F) && 
   11082              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11083              : (TARGET_AVX512FP16)))
   11084              :                 return 4145; /* avx512bw_fmaddsub_v32hf_mask */
   11085              :               if (!nonimmediate_operand (operands[1], E_V32HFmode)
   11086              :                   || !nonimmediate_operand (operands[3], E_V32HFmode)
   11087              :                   || !rtx_equal_p (x7, operands[3])
   11088              :                   || !(
   11089              : #line 6839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11090              : (TARGET_AVX512F) && 
   11091              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11092              : (TARGET_AVX512FP16)))
   11093              :                 return -1;
   11094              :               return 4163; /* avx512bw_fmaddsub_v32hf_mask3 */
   11095              : 
   11096              :             case E_V16HFmode:
   11097              :               if (pattern1281 (x2, 
   11098              : E_V16HFmode, 
   11099              : E_HImode) != 0)
   11100              :                 return -1;
   11101              :               if (register_operand (operands[1], E_V16HFmode)
   11102              :                   && vector_operand (operands[3], E_V16HFmode)
   11103              :                   && rtx_equal_p (x7, operands[1])
   11104              :                   && (
   11105              : #line 6821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11106              : (TARGET_AVX512F) && 
   11107              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11108              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11109              :                 return 4147; /* avx512vl_fmaddsub_v16hf_mask */
   11110              :               if (!nonimmediate_operand (operands[1], E_V16HFmode)
   11111              :                   || !nonimmediate_operand (operands[3], E_V16HFmode)
   11112              :                   || !rtx_equal_p (x7, operands[3])
   11113              :                   || !(
   11114              : #line 6839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11115              : (TARGET_AVX512F) && 
   11116              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11117              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11118              :                 return -1;
   11119              :               return 4165; /* avx512vl_fmaddsub_v16hf_mask3 */
   11120              : 
   11121              :             case E_V8HFmode:
   11122              :               if (pattern1281 (x2, 
   11123              : E_V8HFmode, 
   11124              : E_QImode) != 0)
   11125              :                 return -1;
   11126              :               if (register_operand (operands[1], E_V8HFmode)
   11127              :                   && vector_operand (operands[3], E_V8HFmode)
   11128              :                   && rtx_equal_p (x7, operands[1])
   11129              :                   && (
   11130              : #line 6821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11131              : (TARGET_AVX512F) && 
   11132              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11133              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11134              :                 return 4149; /* avx512fp16_fmaddsub_v8hf_mask */
   11135              :               if (!nonimmediate_operand (operands[1], E_V8HFmode)
   11136              :                   || !nonimmediate_operand (operands[3], E_V8HFmode)
   11137              :                   || !rtx_equal_p (x7, operands[3])
   11138              :                   || !(
   11139              : #line 6839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11140              : (TARGET_AVX512F) && 
   11141              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11142              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11143              :                 return -1;
   11144              :               return 4167; /* avx512fp16_fmaddsub_v8hf_mask3 */
   11145              : 
   11146              :             case E_V16SFmode:
   11147              :               if (pattern1281 (x2, 
   11148              : E_V16SFmode, 
   11149              : E_HImode) != 0)
   11150              :                 return -1;
   11151              :               if (register_operand (operands[1], E_V16SFmode)
   11152              :                   && vector_operand (operands[3], E_V16SFmode)
   11153              :                   && rtx_equal_p (x7, operands[1])
   11154              :                   && 
   11155              : #line 6821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11156              : (TARGET_AVX512F))
   11157              :                 return 4151; /* avx512f_fmaddsub_v16sf_mask */
   11158              :               if (!nonimmediate_operand (operands[1], E_V16SFmode)
   11159              :                   || !nonimmediate_operand (operands[3], E_V16SFmode)
   11160              :                   || !rtx_equal_p (x7, operands[3])
   11161              :                   || !
   11162              : #line 6839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11163              : (TARGET_AVX512F))
   11164              :                 return -1;
   11165              :               return 4169; /* avx512f_fmaddsub_v16sf_mask3 */
   11166              : 
   11167              :             case E_V8SFmode:
   11168              :               if (pattern1281 (x2, 
   11169              : E_V8SFmode, 
   11170              : E_QImode) != 0)
   11171              :                 return -1;
   11172              :               if (register_operand (operands[1], E_V8SFmode)
   11173              :                   && vector_operand (operands[3], E_V8SFmode)
   11174              :                   && rtx_equal_p (x7, operands[1])
   11175              :                   && (
   11176              : #line 6821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11177              : (TARGET_AVX512F) && 
   11178              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11179              : (TARGET_AVX512VL)))
   11180              :                 return 4153; /* avx512vl_fmaddsub_v8sf_mask */
   11181              :               if (!nonimmediate_operand (operands[1], E_V8SFmode)
   11182              :                   || !nonimmediate_operand (operands[3], E_V8SFmode)
   11183              :                   || !rtx_equal_p (x7, operands[3])
   11184              :                   || !(
   11185              : #line 6839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11186              : (TARGET_AVX512F) && 
   11187              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11188              : (TARGET_AVX512VL)))
   11189              :                 return -1;
   11190              :               return 4171; /* avx512vl_fmaddsub_v8sf_mask3 */
   11191              : 
   11192              :             case E_V4SFmode:
   11193              :               if (pattern1281 (x2, 
   11194              : E_V4SFmode, 
   11195              : E_QImode) != 0)
   11196              :                 return -1;
   11197              :               if (register_operand (operands[1], E_V4SFmode)
   11198              :                   && vector_operand (operands[3], E_V4SFmode)
   11199              :                   && rtx_equal_p (x7, operands[1])
   11200              :                   && (
   11201              : #line 6821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11202              : (TARGET_AVX512F) && 
   11203              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11204              : (TARGET_AVX512VL)))
   11205              :                 return 4155; /* avx512vl_fmaddsub_v4sf_mask */
   11206              :               if (!nonimmediate_operand (operands[1], E_V4SFmode)
   11207              :                   || !nonimmediate_operand (operands[3], E_V4SFmode)
   11208              :                   || !rtx_equal_p (x7, operands[3])
   11209              :                   || !(
   11210              : #line 6839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11211              : (TARGET_AVX512F) && 
   11212              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11213              : (TARGET_AVX512VL)))
   11214              :                 return -1;
   11215              :               return 4173; /* avx512vl_fmaddsub_v4sf_mask3 */
   11216              : 
   11217              :             case E_V8DFmode:
   11218              :               if (pattern1281 (x2, 
   11219              : E_V8DFmode, 
   11220              : E_QImode) != 0)
   11221              :                 return -1;
   11222              :               if (register_operand (operands[1], E_V8DFmode)
   11223              :                   && vector_operand (operands[3], E_V8DFmode)
   11224              :                   && rtx_equal_p (x7, operands[1])
   11225              :                   && 
   11226              : #line 6821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11227              : (TARGET_AVX512F))
   11228              :                 return 4157; /* avx512f_fmaddsub_v8df_mask */
   11229              :               if (!nonimmediate_operand (operands[1], E_V8DFmode)
   11230              :                   || !nonimmediate_operand (operands[3], E_V8DFmode)
   11231              :                   || !rtx_equal_p (x7, operands[3])
   11232              :                   || !
   11233              : #line 6839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11234              : (TARGET_AVX512F))
   11235              :                 return -1;
   11236              :               return 4175; /* avx512f_fmaddsub_v8df_mask3 */
   11237              : 
   11238              :             case E_V4DFmode:
   11239              :               if (pattern1281 (x2, 
   11240              : E_V4DFmode, 
   11241              : E_QImode) != 0)
   11242              :                 return -1;
   11243              :               if (register_operand (operands[1], E_V4DFmode)
   11244              :                   && vector_operand (operands[3], E_V4DFmode)
   11245              :                   && rtx_equal_p (x7, operands[1])
   11246              :                   && (
   11247              : #line 6821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11248              : (TARGET_AVX512F) && 
   11249              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11250              : (TARGET_AVX512VL)))
   11251              :                 return 4159; /* avx512vl_fmaddsub_v4df_mask */
   11252              :               if (!nonimmediate_operand (operands[1], E_V4DFmode)
   11253              :                   || !nonimmediate_operand (operands[3], E_V4DFmode)
   11254              :                   || !rtx_equal_p (x7, operands[3])
   11255              :                   || !(
   11256              : #line 6839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11257              : (TARGET_AVX512F) && 
   11258              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11259              : (TARGET_AVX512VL)))
   11260              :                 return -1;
   11261              :               return 4177; /* avx512vl_fmaddsub_v4df_mask3 */
   11262              : 
   11263              :             case E_V2DFmode:
   11264              :               if (pattern1281 (x2, 
   11265              : E_V2DFmode, 
   11266              : E_QImode) != 0)
   11267              :                 return -1;
   11268              :               if (register_operand (operands[1], E_V2DFmode)
   11269              :                   && vector_operand (operands[3], E_V2DFmode)
   11270              :                   && rtx_equal_p (x7, operands[1])
   11271              :                   && (
   11272              : #line 6821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11273              : (TARGET_AVX512F) && 
   11274              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11275              : (TARGET_AVX512VL)))
   11276              :                 return 4161; /* avx512vl_fmaddsub_v2df_mask */
   11277              :               if (!nonimmediate_operand (operands[1], E_V2DFmode)
   11278              :                   || !nonimmediate_operand (operands[3], E_V2DFmode)
   11279              :                   || !rtx_equal_p (x7, operands[3])
   11280              :                   || !(
   11281              : #line 6839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11282              : (TARGET_AVX512F) && 
   11283              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11284              : (TARGET_AVX512VL)))
   11285              :                 return -1;
   11286              :               return 4179; /* avx512vl_fmaddsub_v2df_mask3 */
   11287              : 
   11288              :             default:
   11289              :               return -1;
   11290              :             }
   11291              : 
   11292              :         default:
   11293              :           return -1;
   11294              :         }
   11295              : 
   11296              :     case NEG:
   11297              :       x9 = XEXP (x6, 0);
   11298              :       operands[3] = x9;
   11299              :       x7 = XEXP (x2, 1);
   11300              :       switch (GET_CODE (x7))
   11301              :         {
   11302              :         case CONST_INT:
   11303              :         case CONST_DOUBLE:
   11304              :         case CONST_VECTOR:
   11305              :           operands[4] = x7;
   11306              :           x8 = XEXP (x2, 2);
   11307              :           operands[5] = x8;
   11308              :           switch (GET_MODE (operands[0]))
   11309              :             {
   11310              :             case E_V32HFmode:
   11311              :               if (pattern1378 (x2, 
   11312              : E_V32HFmode, 
   11313              : E_SImode) != 0
   11314              :                   || !(
   11315              : #line 6872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11316              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1) && 
   11317              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11318              : (TARGET_AVX512FP16)))
   11319              :                 return -1;
   11320              :               return 4186; /* fma_fmsubadd_v32hf_maskz_1 */
   11321              : 
   11322              :             case E_V16HFmode:
   11323              :               if (pattern1378 (x2, 
   11324              : E_V16HFmode, 
   11325              : E_HImode) != 0
   11326              :                   || !(
   11327              : #line 6872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11328              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   11329              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11330              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11331              :                 return -1;
   11332              :               return 4190; /* fma_fmsubadd_v16hf_maskz_1 */
   11333              : 
   11334              :             case E_V8HFmode:
   11335              :               if (pattern1378 (x2, 
   11336              : E_V8HFmode, 
   11337              : E_QImode) != 0
   11338              :                   || !(
   11339              : #line 6872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11340              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   11341              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11342              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11343              :                 return -1;
   11344              :               return 4192; /* fma_fmsubadd_v8hf_maskz_1 */
   11345              : 
   11346              :             case E_V16SFmode:
   11347              :               if (pattern1378 (x2, 
   11348              : E_V16SFmode, 
   11349              : E_HImode) != 0
   11350              :                   || !
   11351              : #line 6872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11352              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
   11353              :                 return -1;
   11354              :               return 4194; /* fma_fmsubadd_v16sf_maskz_1 */
   11355              : 
   11356              :             case E_V8SFmode:
   11357              :               if (pattern1378 (x2, 
   11358              : E_V8SFmode, 
   11359              : E_QImode) != 0
   11360              :                   || !(
   11361              : #line 6872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11362              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   11363              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11364              : (TARGET_AVX512VL)))
   11365              :                 return -1;
   11366              :               return 4198; /* fma_fmsubadd_v8sf_maskz_1 */
   11367              : 
   11368              :             case E_V4SFmode:
   11369              :               if (pattern1378 (x2, 
   11370              : E_V4SFmode, 
   11371              : E_QImode) != 0
   11372              :                   || !(
   11373              : #line 6872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11374              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   11375              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11376              : (TARGET_AVX512VL)))
   11377              :                 return -1;
   11378              :               return 4200; /* fma_fmsubadd_v4sf_maskz_1 */
   11379              : 
   11380              :             case E_V8DFmode:
   11381              :               if (pattern1378 (x2, 
   11382              : E_V8DFmode, 
   11383              : E_QImode) != 0
   11384              :                   || !
   11385              : #line 6872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11386              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
   11387              :                 return -1;
   11388              :               return 4202; /* fma_fmsubadd_v8df_maskz_1 */
   11389              : 
   11390              :             case E_V4DFmode:
   11391              :               if (pattern1378 (x2, 
   11392              : E_V4DFmode, 
   11393              : E_QImode) != 0
   11394              :                   || !(
   11395              : #line 6872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11396              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   11397              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11398              : (TARGET_AVX512VL)))
   11399              :                 return -1;
   11400              :               return 4206; /* fma_fmsubadd_v4df_maskz_1 */
   11401              : 
   11402              :             case E_V2DFmode:
   11403              :               if (pattern1378 (x2, 
   11404              : E_V2DFmode, 
   11405              : E_QImode) != 0
   11406              :                   || !(
   11407              : #line 6872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11408              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   11409              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11410              : (TARGET_AVX512VL)))
   11411              :                 return -1;
   11412              :               return 4208; /* fma_fmsubadd_v2df_maskz_1 */
   11413              : 
   11414              :             default:
   11415              :               return -1;
   11416              :             }
   11417              : 
   11418              :         case REG:
   11419              :         case SUBREG:
   11420              :         case MEM:
   11421              :           x8 = XEXP (x2, 2);
   11422              :           operands[4] = x8;
   11423              :           switch (GET_MODE (operands[0]))
   11424              :             {
   11425              :             case E_V32HFmode:
   11426              :               if (pattern1282 (x2, 
   11427              : E_V32HFmode, 
   11428              : E_SImode) != 0)
   11429              :                 return -1;
   11430              :               if (vector_operand (operands[3], E_V32HFmode)
   11431              :                   && rtx_equal_p (x7, operands[1])
   11432              :                   && (
   11433              : #line 6892 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11434              : (TARGET_AVX512F) && 
   11435              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11436              : (TARGET_AVX512FP16)))
   11437              :                 return 4209; /* avx512bw_fmsubadd_v32hf_mask */
   11438              :               if (!nonimmediate_operand (operands[3], E_V32HFmode)
   11439              :                   || !rtx_equal_p (x7, operands[3])
   11440              :                   || !(
   11441              : #line 6911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11442              : (TARGET_AVX512F) && 
   11443              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11444              : (TARGET_AVX512FP16)))
   11445              :                 return -1;
   11446              :               return 4227; /* avx512bw_fmsubadd_v32hf_mask3 */
   11447              : 
   11448              :             case E_V16HFmode:
   11449              :               if (pattern1282 (x2, 
   11450              : E_V16HFmode, 
   11451              : E_HImode) != 0)
   11452              :                 return -1;
   11453              :               if (vector_operand (operands[3], E_V16HFmode)
   11454              :                   && rtx_equal_p (x7, operands[1])
   11455              :                   && (
   11456              : #line 6892 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11457              : (TARGET_AVX512F) && 
   11458              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11459              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11460              :                 return 4211; /* avx512vl_fmsubadd_v16hf_mask */
   11461              :               if (!nonimmediate_operand (operands[3], E_V16HFmode)
   11462              :                   || !rtx_equal_p (x7, operands[3])
   11463              :                   || !(
   11464              : #line 6911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11465              : (TARGET_AVX512F) && 
   11466              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11467              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11468              :                 return -1;
   11469              :               return 4229; /* avx512vl_fmsubadd_v16hf_mask3 */
   11470              : 
   11471              :             case E_V8HFmode:
   11472              :               if (pattern1282 (x2, 
   11473              : E_V8HFmode, 
   11474              : E_QImode) != 0)
   11475              :                 return -1;
   11476              :               if (vector_operand (operands[3], E_V8HFmode)
   11477              :                   && rtx_equal_p (x7, operands[1])
   11478              :                   && (
   11479              : #line 6892 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11480              : (TARGET_AVX512F) && 
   11481              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11482              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11483              :                 return 4213; /* avx512fp16_fmsubadd_v8hf_mask */
   11484              :               if (!nonimmediate_operand (operands[3], E_V8HFmode)
   11485              :                   || !rtx_equal_p (x7, operands[3])
   11486              :                   || !(
   11487              : #line 6911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11488              : (TARGET_AVX512F) && 
   11489              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11490              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11491              :                 return -1;
   11492              :               return 4231; /* avx512fp16_fmsubadd_v8hf_mask3 */
   11493              : 
   11494              :             case E_V16SFmode:
   11495              :               if (pattern1282 (x2, 
   11496              : E_V16SFmode, 
   11497              : E_HImode) != 0)
   11498              :                 return -1;
   11499              :               if (vector_operand (operands[3], E_V16SFmode)
   11500              :                   && rtx_equal_p (x7, operands[1])
   11501              :                   && 
   11502              : #line 6892 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11503              : (TARGET_AVX512F))
   11504              :                 return 4215; /* avx512f_fmsubadd_v16sf_mask */
   11505              :               if (!nonimmediate_operand (operands[3], E_V16SFmode)
   11506              :                   || !rtx_equal_p (x7, operands[3])
   11507              :                   || !
   11508              : #line 6911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11509              : (TARGET_AVX512F))
   11510              :                 return -1;
   11511              :               return 4233; /* avx512f_fmsubadd_v16sf_mask3 */
   11512              : 
   11513              :             case E_V8SFmode:
   11514              :               if (pattern1282 (x2, 
   11515              : E_V8SFmode, 
   11516              : E_QImode) != 0)
   11517              :                 return -1;
   11518              :               if (vector_operand (operands[3], E_V8SFmode)
   11519              :                   && rtx_equal_p (x7, operands[1])
   11520              :                   && (
   11521              : #line 6892 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11522              : (TARGET_AVX512F) && 
   11523              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11524              : (TARGET_AVX512VL)))
   11525              :                 return 4217; /* avx512vl_fmsubadd_v8sf_mask */
   11526              :               if (!nonimmediate_operand (operands[3], E_V8SFmode)
   11527              :                   || !rtx_equal_p (x7, operands[3])
   11528              :                   || !(
   11529              : #line 6911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11530              : (TARGET_AVX512F) && 
   11531              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11532              : (TARGET_AVX512VL)))
   11533              :                 return -1;
   11534              :               return 4235; /* avx512vl_fmsubadd_v8sf_mask3 */
   11535              : 
   11536              :             case E_V4SFmode:
   11537              :               if (pattern1282 (x2, 
   11538              : E_V4SFmode, 
   11539              : E_QImode) != 0)
   11540              :                 return -1;
   11541              :               if (vector_operand (operands[3], E_V4SFmode)
   11542              :                   && rtx_equal_p (x7, operands[1])
   11543              :                   && (
   11544              : #line 6892 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11545              : (TARGET_AVX512F) && 
   11546              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11547              : (TARGET_AVX512VL)))
   11548              :                 return 4219; /* avx512vl_fmsubadd_v4sf_mask */
   11549              :               if (!nonimmediate_operand (operands[3], E_V4SFmode)
   11550              :                   || !rtx_equal_p (x7, operands[3])
   11551              :                   || !(
   11552              : #line 6911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11553              : (TARGET_AVX512F) && 
   11554              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11555              : (TARGET_AVX512VL)))
   11556              :                 return -1;
   11557              :               return 4237; /* avx512vl_fmsubadd_v4sf_mask3 */
   11558              : 
   11559              :             case E_V8DFmode:
   11560              :               if (pattern1282 (x2, 
   11561              : E_V8DFmode, 
   11562              : E_QImode) != 0)
   11563              :                 return -1;
   11564              :               if (vector_operand (operands[3], E_V8DFmode)
   11565              :                   && rtx_equal_p (x7, operands[1])
   11566              :                   && 
   11567              : #line 6892 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11568              : (TARGET_AVX512F))
   11569              :                 return 4221; /* avx512f_fmsubadd_v8df_mask */
   11570              :               if (!nonimmediate_operand (operands[3], E_V8DFmode)
   11571              :                   || !rtx_equal_p (x7, operands[3])
   11572              :                   || !
   11573              : #line 6911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11574              : (TARGET_AVX512F))
   11575              :                 return -1;
   11576              :               return 4239; /* avx512f_fmsubadd_v8df_mask3 */
   11577              : 
   11578              :             case E_V4DFmode:
   11579              :               if (pattern1282 (x2, 
   11580              : E_V4DFmode, 
   11581              : E_QImode) != 0)
   11582              :                 return -1;
   11583              :               if (vector_operand (operands[3], E_V4DFmode)
   11584              :                   && rtx_equal_p (x7, operands[1])
   11585              :                   && (
   11586              : #line 6892 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11587              : (TARGET_AVX512F) && 
   11588              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11589              : (TARGET_AVX512VL)))
   11590              :                 return 4223; /* avx512vl_fmsubadd_v4df_mask */
   11591              :               if (!nonimmediate_operand (operands[3], E_V4DFmode)
   11592              :                   || !rtx_equal_p (x7, operands[3])
   11593              :                   || !(
   11594              : #line 6911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11595              : (TARGET_AVX512F) && 
   11596              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11597              : (TARGET_AVX512VL)))
   11598              :                 return -1;
   11599              :               return 4241; /* avx512vl_fmsubadd_v4df_mask3 */
   11600              : 
   11601              :             case E_V2DFmode:
   11602              :               if (pattern1282 (x2, 
   11603              : E_V2DFmode, 
   11604              : E_QImode) != 0)
   11605              :                 return -1;
   11606              :               if (vector_operand (operands[3], E_V2DFmode)
   11607              :                   && rtx_equal_p (x7, operands[1])
   11608              :                   && (
   11609              : #line 6892 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11610              : (TARGET_AVX512F) && 
   11611              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11612              : (TARGET_AVX512VL)))
   11613              :                 return 4225; /* avx512vl_fmsubadd_v2df_mask */
   11614              :               if (!nonimmediate_operand (operands[3], E_V2DFmode)
   11615              :                   || !rtx_equal_p (x7, operands[3])
   11616              :                   || !(
   11617              : #line 6911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11618              : (TARGET_AVX512F) && 
   11619              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11620              : (TARGET_AVX512VL)))
   11621              :                 return -1;
   11622              :               return 4243; /* avx512vl_fmsubadd_v2df_mask3 */
   11623              : 
   11624              :             default:
   11625              :               return -1;
   11626              :             }
   11627              : 
   11628              :         default:
   11629              :           return -1;
   11630              :         }
   11631              : 
   11632              :     default:
   11633              :       return -1;
   11634              :     }
   11635              : }
   11636              : 
   11637              :  int
   11638              : recog_160 (rtx x1 ATTRIBUTE_UNUSED,
   11639              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   11640              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   11641              : {
   11642              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   11643              :   rtx x2, x3, x4;
   11644              :   int res ATTRIBUTE_UNUSED;
   11645              :   switch (GET_CODE (operands[4]))
   11646              :     {
   11647              :     case REG:
   11648              :     case SUBREG:
   11649              :     case MEM:
   11650              :       x2 = XEXP (x1, 1);
   11651              :       switch (pattern1295 (x2))
   11652              :         {
   11653              :         case 0:
   11654              :           if ((
   11655              : #line 4380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11656              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   11657              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11658              : (TARGET_AVX)))
   11659              :             return 3273; /* *avx_cmpv8sf3_1 */
   11660              :           break;
   11661              : 
   11662              :         case 1:
   11663              :           if (
   11664              : #line 4380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11665              : (TARGET_AVX512VL && ix86_pre_reload_split ()))
   11666              :             return 3274; /* *avx_cmpv4sf3_1 */
   11667              :           break;
   11668              : 
   11669              :         case 2:
   11670              :           if ((
   11671              : #line 4380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11672              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   11673              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11674              : (TARGET_AVX)))
   11675              :             return 3275; /* *avx_cmpv4df3_1 */
   11676              :           break;
   11677              : 
   11678              :         case 3:
   11679              :           if ((
   11680              : #line 4380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11681              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   11682              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11683              : (TARGET_SSE2)))
   11684              :             return 3276; /* *avx_cmpv2df3_1 */
   11685              :           break;
   11686              : 
   11687              :         default:
   11688              :           break;
   11689              :         }
   11690              :       break;
   11691              : 
   11692              :     case CONST_INT:
   11693              :     case CONST_DOUBLE:
   11694              :     case CONST_VECTOR:
   11695              :       x2 = XEXP (x1, 1);
   11696              :       x3 = XEXP (x2, 2);
   11697              :       x4 = XVECEXP (x3, 0, 2);
   11698              :       if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + 1])
   11699              :         {
   11700              :           switch (GET_MODE (operands[0]))
   11701              :             {
   11702              :             case E_V32HImode:
   11703              :               if (pattern1479 (x2, 
   11704              : E_V32HImode, 
   11705              : E_SImode) == 0
   11706              :                   && (
   11707              : #line 17576 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11708              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   11709              : #line 756 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11710              : (TARGET_AVX512BW)))
   11711              :                 return 7682; /* *avx512_ashrv32hi3_1 */
   11712              :               break;
   11713              : 
   11714              :             case E_V16HImode:
   11715              :               if (pattern1479 (x2, 
   11716              : E_V16HImode, 
   11717              : E_HImode) == 0
   11718              :                   && (
   11719              : #line 17576 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11720              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   11721              : #line 757 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11722              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   11723              :                 return 7683; /* *avx512_ashrv16hi3_1 */
   11724              :               break;
   11725              : 
   11726              :             case E_V8HImode:
   11727              :               if (pattern1479 (x2, 
   11728              : E_V8HImode, 
   11729              : E_QImode) == 0
   11730              :                   && (
   11731              : #line 17576 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11732              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   11733              : #line 758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11734              : (TARGET_AVX512VL && TARGET_AVX512BW)))
   11735              :                 return 7684; /* *avx512_ashrv8hi3_1 */
   11736              :               break;
   11737              : 
   11738              :             case E_V16SImode:
   11739              :               if (pattern1479 (x2, 
   11740              : E_V16SImode, 
   11741              : E_HImode) == 0
   11742              :                   && 
   11743              : #line 17576 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11744              : (TARGET_AVX512F && ix86_pre_reload_split ()))
   11745              :                 return 7685; /* *avx512_ashrv16si3_1 */
   11746              :               break;
   11747              : 
   11748              :             case E_V8SImode:
   11749              :               if (pattern1479 (x2, 
   11750              : E_V8SImode, 
   11751              : E_QImode) == 0
   11752              :                   && (
   11753              : #line 17576 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11754              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   11755              : #line 759 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11756              : (TARGET_AVX512VL)))
   11757              :                 return 7686; /* *avx512_ashrv8si3_1 */
   11758              :               break;
   11759              : 
   11760              :             case E_V4SImode:
   11761              :               if (pattern1479 (x2, 
   11762              : E_V4SImode, 
   11763              : E_QImode) == 0
   11764              :                   && (
   11765              : #line 17576 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11766              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   11767              : #line 759 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11768              : (TARGET_AVX512VL)))
   11769              :                 return 7687; /* *avx512_ashrv4si3_1 */
   11770              :               break;
   11771              : 
   11772              :             case E_V8DImode:
   11773              :               if (pattern1479 (x2, 
   11774              : E_V8DImode, 
   11775              : E_QImode) == 0
   11776              :                   && 
   11777              : #line 17576 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11778              : (TARGET_AVX512F && ix86_pre_reload_split ()))
   11779              :                 return 7688; /* *avx512_ashrv8di3_1 */
   11780              :               break;
   11781              : 
   11782              :             case E_V4DImode:
   11783              :               if (pattern1479 (x2, 
   11784              : E_V4DImode, 
   11785              : E_QImode) == 0
   11786              :                   && (
   11787              : #line 17576 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11788              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   11789              : #line 760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11790              : (TARGET_AVX512VL)))
   11791              :                 return 7689; /* *avx512_ashrv4di3_1 */
   11792              :               break;
   11793              : 
   11794              :             case E_V2DImode:
   11795              :               if (pattern1479 (x2, 
   11796              : E_V2DImode, 
   11797              : E_QImode) == 0
   11798              :                   && (
   11799              : #line 17576 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11800              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   11801              : #line 760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11802              : (TARGET_AVX512VL)))
   11803              :                 return 7690; /* *avx512_ashrv2di3_1 */
   11804              :               break;
   11805              : 
   11806              :             default:
   11807              :               break;
   11808              :             }
   11809              :         }
   11810              :       break;
   11811              : 
   11812              :     default:
   11813              :       break;
   11814              :     }
   11815              :   x2 = XEXP (x1, 1);
   11816              :   x3 = XEXP (x2, 2);
   11817              :   x4 = XVECEXP (x3, 0, 2);
   11818              :   operands[5] = x4;
   11819              :   switch (pattern1296 (x2))
   11820              :     {
   11821              :     case 0:
   11822              :       if (vector_all_ones_operand (operands[1], E_V16QImode)
   11823              :           && const0_operand (operands[2], E_V16QImode))
   11824              :         {
   11825              :           if (nonimm_or_0_operand (operands[3], E_V16QImode)
   11826              :               && nonimm_or_0_operand (operands[4], E_V16QImode)
   11827              :               && 
   11828              : #line 18400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11829              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11830              :   /* EQ is commutative.  */
   11831              :    && ((INTVAL (operands[5]) == 0
   11832              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   11833              :           /* NLE aka GT, 3 must be register.  */
   11834              :        || (INTVAL (operands[5]) == 6
   11835              :            && !MEM_P (operands[3]))
   11836              :           /* LT, 4 must be register and we swap operands.  */
   11837              :        || (INTVAL (operands[5]) == 1
   11838              :            && !MEM_P (operands[4])))))
   11839              :             return 7946; /* *avx2_pcmpv16qi3_1 */
   11840              :           if (nonimmediate_operand (operands[3], E_V16QImode)
   11841              :               && nonimmediate_operand (operands[4], E_V16QImode)
   11842              :               && 
   11843              : #line 18564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11844              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11845              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   11846              :             return 7968; /* *avx2_pcmpv16qi3_6 */
   11847              :         }
   11848              :       if (!const0_operand (operands[1], E_V16QImode)
   11849              :           || !vector_all_ones_operand (operands[2], E_V16QImode)
   11850              :           || !nonimmediate_operand (operands[3], E_V16QImode)
   11851              :           || !nonimmediate_operand (operands[4], E_V16QImode)
   11852              :           || !
   11853              : #line 18590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11854              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11855              :      /* NE is commutative.  */
   11856              :    && (INTVAL (operands[5]) == 4
   11857              :           /* LE, 3 must be register.  */
   11858              :        || INTVAL (operands[5]) == 2
   11859              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   11860              :        || INTVAL (operands[5]) == 5)))
   11861              :         return -1;
   11862              :       return 7984; /* *avx2_pcmpv16qi3_7 */
   11863              : 
   11864              :     case 1:
   11865              :       if (vector_all_ones_operand (operands[1], E_V8HImode)
   11866              :           && const0_operand (operands[2], E_V8HImode))
   11867              :         {
   11868              :           if (nonimm_or_0_operand (operands[3], E_V8HImode)
   11869              :               && nonimm_or_0_operand (operands[4], E_V8HImode)
   11870              :               && 
   11871              : #line 18400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11872              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11873              :   /* EQ is commutative.  */
   11874              :    && ((INTVAL (operands[5]) == 0
   11875              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   11876              :           /* NLE aka GT, 3 must be register.  */
   11877              :        || (INTVAL (operands[5]) == 6
   11878              :            && !MEM_P (operands[3]))
   11879              :           /* LT, 4 must be register and we swap operands.  */
   11880              :        || (INTVAL (operands[5]) == 1
   11881              :            && !MEM_P (operands[4])))))
   11882              :             return 7947; /* *avx2_pcmpv8hi3_1 */
   11883              :           if (nonimmediate_operand (operands[3], E_V8HImode)
   11884              :               && nonimmediate_operand (operands[4], E_V8HImode)
   11885              :               && 
   11886              : #line 18564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11887              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11888              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   11889              :             return 7970; /* *avx2_pcmpv8hi3_6 */
   11890              :         }
   11891              :       if (!const0_operand (operands[1], E_V8HImode)
   11892              :           || !vector_all_ones_operand (operands[2], E_V8HImode)
   11893              :           || !nonimmediate_operand (operands[3], E_V8HImode)
   11894              :           || !nonimmediate_operand (operands[4], E_V8HImode)
   11895              :           || !
   11896              : #line 18590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11897              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11898              :      /* NE is commutative.  */
   11899              :    && (INTVAL (operands[5]) == 4
   11900              :           /* LE, 3 must be register.  */
   11901              :        || INTVAL (operands[5]) == 2
   11902              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   11903              :        || INTVAL (operands[5]) == 5)))
   11904              :         return -1;
   11905              :       return 7985; /* *avx2_pcmpv8hi3_7 */
   11906              : 
   11907              :     case 2:
   11908              :       if (vector_all_ones_operand (operands[1], E_V4SImode)
   11909              :           && const0_operand (operands[2], E_V4SImode))
   11910              :         {
   11911              :           if (nonimm_or_0_operand (operands[3], E_V4SImode)
   11912              :               && nonimm_or_0_operand (operands[4], E_V4SImode)
   11913              :               && 
   11914              : #line 18400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11915              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11916              :   /* EQ is commutative.  */
   11917              :    && ((INTVAL (operands[5]) == 0
   11918              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   11919              :           /* NLE aka GT, 3 must be register.  */
   11920              :        || (INTVAL (operands[5]) == 6
   11921              :            && !MEM_P (operands[3]))
   11922              :           /* LT, 4 must be register and we swap operands.  */
   11923              :        || (INTVAL (operands[5]) == 1
   11924              :            && !MEM_P (operands[4])))))
   11925              :             return 7948; /* *avx2_pcmpv4si3_1 */
   11926              :           if (nonimmediate_operand (operands[3], E_V4SImode)
   11927              :               && nonimmediate_operand (operands[4], E_V4SImode)
   11928              :               && 
   11929              : #line 18564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11930              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11931              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   11932              :             return 7972; /* *avx2_pcmpv4si3_6 */
   11933              :         }
   11934              :       if (!const0_operand (operands[1], E_V4SImode)
   11935              :           || !vector_all_ones_operand (operands[2], E_V4SImode)
   11936              :           || !nonimmediate_operand (operands[3], E_V4SImode)
   11937              :           || !nonimmediate_operand (operands[4], E_V4SImode)
   11938              :           || !
   11939              : #line 18590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11940              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11941              :      /* NE is commutative.  */
   11942              :    && (INTVAL (operands[5]) == 4
   11943              :           /* LE, 3 must be register.  */
   11944              :        || INTVAL (operands[5]) == 2
   11945              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   11946              :        || INTVAL (operands[5]) == 5)))
   11947              :         return -1;
   11948              :       return 7986; /* *avx2_pcmpv4si3_7 */
   11949              : 
   11950              :     case 3:
   11951              :       if (vector_all_ones_operand (operands[1], E_V2DImode)
   11952              :           && const0_operand (operands[2], E_V2DImode))
   11953              :         {
   11954              :           if (nonimm_or_0_operand (operands[3], E_V2DImode)
   11955              :               && nonimm_or_0_operand (operands[4], E_V2DImode)
   11956              :               && 
   11957              : #line 18400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11958              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11959              :   /* EQ is commutative.  */
   11960              :    && ((INTVAL (operands[5]) == 0
   11961              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   11962              :           /* NLE aka GT, 3 must be register.  */
   11963              :        || (INTVAL (operands[5]) == 6
   11964              :            && !MEM_P (operands[3]))
   11965              :           /* LT, 4 must be register and we swap operands.  */
   11966              :        || (INTVAL (operands[5]) == 1
   11967              :            && !MEM_P (operands[4])))))
   11968              :             return 7949; /* *avx2_pcmpv2di3_1 */
   11969              :           if (nonimmediate_operand (operands[3], E_V2DImode)
   11970              :               && nonimmediate_operand (operands[4], E_V2DImode)
   11971              :               && 
   11972              : #line 18564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11973              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11974              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   11975              :             return 7974; /* *avx2_pcmpv2di3_6 */
   11976              :         }
   11977              :       if (!const0_operand (operands[1], E_V2DImode)
   11978              :           || !vector_all_ones_operand (operands[2], E_V2DImode)
   11979              :           || !nonimmediate_operand (operands[3], E_V2DImode)
   11980              :           || !nonimmediate_operand (operands[4], E_V2DImode)
   11981              :           || !
   11982              : #line 18590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11983              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   11984              :      /* NE is commutative.  */
   11985              :    && (INTVAL (operands[5]) == 4
   11986              :           /* LE, 3 must be register.  */
   11987              :        || INTVAL (operands[5]) == 2
   11988              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   11989              :        || INTVAL (operands[5]) == 5)))
   11990              :         return -1;
   11991              :       return 7987; /* *avx2_pcmpv2di3_7 */
   11992              : 
   11993              :     case 4:
   11994              :       if (vector_all_ones_operand (operands[1], E_V32QImode)
   11995              :           && const0_operand (operands[2], E_V32QImode))
   11996              :         {
   11997              :           if (nonimm_or_0_operand (operands[3], E_V32QImode)
   11998              :               && nonimm_or_0_operand (operands[4], E_V32QImode)
   11999              :               && 
   12000              : #line 18400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12001              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12002              :   /* EQ is commutative.  */
   12003              :    && ((INTVAL (operands[5]) == 0
   12004              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   12005              :           /* NLE aka GT, 3 must be register.  */
   12006              :        || (INTVAL (operands[5]) == 6
   12007              :            && !MEM_P (operands[3]))
   12008              :           /* LT, 4 must be register and we swap operands.  */
   12009              :        || (INTVAL (operands[5]) == 1
   12010              :            && !MEM_P (operands[4])))))
   12011              :             return 7950; /* *avx2_pcmpv32qi3_1 */
   12012              :           if (nonimmediate_operand (operands[3], E_V32QImode)
   12013              :               && nonimmediate_operand (operands[4], E_V32QImode)
   12014              :               && 
   12015              : #line 18564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12016              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12017              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   12018              :             return 7976; /* *avx2_pcmpv32qi3_6 */
   12019              :         }
   12020              :       if (!const0_operand (operands[1], E_V32QImode)
   12021              :           || !vector_all_ones_operand (operands[2], E_V32QImode)
   12022              :           || !nonimmediate_operand (operands[3], E_V32QImode)
   12023              :           || !nonimmediate_operand (operands[4], E_V32QImode)
   12024              :           || !
   12025              : #line 18590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12026              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12027              :      /* NE is commutative.  */
   12028              :    && (INTVAL (operands[5]) == 4
   12029              :           /* LE, 3 must be register.  */
   12030              :        || INTVAL (operands[5]) == 2
   12031              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   12032              :        || INTVAL (operands[5]) == 5)))
   12033              :         return -1;
   12034              :       return 7988; /* *avx2_pcmpv32qi3_7 */
   12035              : 
   12036              :     case 5:
   12037              :       if (vector_all_ones_operand (operands[1], E_V16HImode)
   12038              :           && const0_operand (operands[2], E_V16HImode))
   12039              :         {
   12040              :           if (nonimm_or_0_operand (operands[3], E_V16HImode)
   12041              :               && nonimm_or_0_operand (operands[4], E_V16HImode)
   12042              :               && 
   12043              : #line 18400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12044              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12045              :   /* EQ is commutative.  */
   12046              :    && ((INTVAL (operands[5]) == 0
   12047              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   12048              :           /* NLE aka GT, 3 must be register.  */
   12049              :        || (INTVAL (operands[5]) == 6
   12050              :            && !MEM_P (operands[3]))
   12051              :           /* LT, 4 must be register and we swap operands.  */
   12052              :        || (INTVAL (operands[5]) == 1
   12053              :            && !MEM_P (operands[4])))))
   12054              :             return 7951; /* *avx2_pcmpv16hi3_1 */
   12055              :           if (nonimmediate_operand (operands[3], E_V16HImode)
   12056              :               && nonimmediate_operand (operands[4], E_V16HImode)
   12057              :               && 
   12058              : #line 18564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12059              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12060              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   12061              :             return 7978; /* *avx2_pcmpv16hi3_6 */
   12062              :         }
   12063              :       if (!const0_operand (operands[1], E_V16HImode)
   12064              :           || !vector_all_ones_operand (operands[2], E_V16HImode)
   12065              :           || !nonimmediate_operand (operands[3], E_V16HImode)
   12066              :           || !nonimmediate_operand (operands[4], E_V16HImode)
   12067              :           || !
   12068              : #line 18590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12069              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12070              :      /* NE is commutative.  */
   12071              :    && (INTVAL (operands[5]) == 4
   12072              :           /* LE, 3 must be register.  */
   12073              :        || INTVAL (operands[5]) == 2
   12074              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   12075              :        || INTVAL (operands[5]) == 5)))
   12076              :         return -1;
   12077              :       return 7989; /* *avx2_pcmpv16hi3_7 */
   12078              : 
   12079              :     case 6:
   12080              :       if (vector_all_ones_operand (operands[1], E_V8SImode)
   12081              :           && const0_operand (operands[2], E_V8SImode))
   12082              :         {
   12083              :           if (nonimm_or_0_operand (operands[3], E_V8SImode)
   12084              :               && nonimm_or_0_operand (operands[4], E_V8SImode)
   12085              :               && 
   12086              : #line 18400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12087              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12088              :   /* EQ is commutative.  */
   12089              :    && ((INTVAL (operands[5]) == 0
   12090              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   12091              :           /* NLE aka GT, 3 must be register.  */
   12092              :        || (INTVAL (operands[5]) == 6
   12093              :            && !MEM_P (operands[3]))
   12094              :           /* LT, 4 must be register and we swap operands.  */
   12095              :        || (INTVAL (operands[5]) == 1
   12096              :            && !MEM_P (operands[4])))))
   12097              :             return 7952; /* *avx2_pcmpv8si3_1 */
   12098              :           if (nonimmediate_operand (operands[3], E_V8SImode)
   12099              :               && nonimmediate_operand (operands[4], E_V8SImode)
   12100              :               && 
   12101              : #line 18564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12102              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12103              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   12104              :             return 7980; /* *avx2_pcmpv8si3_6 */
   12105              :         }
   12106              :       if (!const0_operand (operands[1], E_V8SImode)
   12107              :           || !vector_all_ones_operand (operands[2], E_V8SImode)
   12108              :           || !nonimmediate_operand (operands[3], E_V8SImode)
   12109              :           || !nonimmediate_operand (operands[4], E_V8SImode)
   12110              :           || !
   12111              : #line 18590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12112              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12113              :      /* NE is commutative.  */
   12114              :    && (INTVAL (operands[5]) == 4
   12115              :           /* LE, 3 must be register.  */
   12116              :        || INTVAL (operands[5]) == 2
   12117              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   12118              :        || INTVAL (operands[5]) == 5)))
   12119              :         return -1;
   12120              :       return 7990; /* *avx2_pcmpv8si3_7 */
   12121              : 
   12122              :     case 7:
   12123              :       if (vector_all_ones_operand (operands[1], E_V4DImode)
   12124              :           && const0_operand (operands[2], E_V4DImode))
   12125              :         {
   12126              :           if (nonimm_or_0_operand (operands[3], E_V4DImode)
   12127              :               && nonimm_or_0_operand (operands[4], E_V4DImode)
   12128              :               && 
   12129              : #line 18400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12130              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12131              :   /* EQ is commutative.  */
   12132              :    && ((INTVAL (operands[5]) == 0
   12133              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   12134              :           /* NLE aka GT, 3 must be register.  */
   12135              :        || (INTVAL (operands[5]) == 6
   12136              :            && !MEM_P (operands[3]))
   12137              :           /* LT, 4 must be register and we swap operands.  */
   12138              :        || (INTVAL (operands[5]) == 1
   12139              :            && !MEM_P (operands[4])))))
   12140              :             return 7953; /* *avx2_pcmpv4di3_1 */
   12141              :           if (nonimmediate_operand (operands[3], E_V4DImode)
   12142              :               && nonimmediate_operand (operands[4], E_V4DImode)
   12143              :               && 
   12144              : #line 18564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12145              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12146              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)))
   12147              :             return 7982; /* *avx2_pcmpv4di3_6 */
   12148              :         }
   12149              :       if (!const0_operand (operands[1], E_V4DImode)
   12150              :           || !vector_all_ones_operand (operands[2], E_V4DImode)
   12151              :           || !nonimmediate_operand (operands[3], E_V4DImode)
   12152              :           || !nonimmediate_operand (operands[4], E_V4DImode)
   12153              :           || !
   12154              : #line 18590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12155              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   12156              :      /* NE is commutative.  */
   12157              :    && (INTVAL (operands[5]) == 4
   12158              :           /* LE, 3 must be register.  */
   12159              :        || INTVAL (operands[5]) == 2
   12160              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   12161              :        || INTVAL (operands[5]) == 5)))
   12162              :         return -1;
   12163              :       return 7991; /* *avx2_pcmpv4di3_7 */
   12164              : 
   12165              :     default:
   12166              :       return -1;
   12167              :     }
   12168              : }
   12169              : 
   12170              :  int
   12171              : recog_167 (rtx x1 ATTRIBUTE_UNUSED,
   12172              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12173              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12174              : {
   12175              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12176              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   12177              :   rtx x10;
   12178              :   int res ATTRIBUTE_UNUSED;
   12179              :   x2 = XEXP (x1, 1);
   12180              :   x3 = XEXP (x2, 0);
   12181              :   x4 = XEXP (x3, 0);
   12182              :   x5 = XEXP (x4, 1);
   12183              :   operands[2] = x5;
   12184              :   x6 = XEXP (x2, 1);
   12185              :   operands[3] = x6;
   12186              :   x7 = XEXP (x2, 2);
   12187              :   operands[4] = x7;
   12188              :   if (!register_operand (operands[4], E_QImode))
   12189              :     return -1;
   12190              :   x8 = XEXP (x3, 1);
   12191              :   x9 = XVECEXP (x8, 0, 0);
   12192              :   switch (XWINT (x9, 0))
   12193              :     {
   12194              :     case 1L:
   12195              :       x10 = XVECEXP (x8, 0, 1);
   12196              :       if (XWINT (x10, 0) != 3L)
   12197              :         return -1;
   12198              :       switch (GET_MODE (operands[0]))
   12199              :         {
   12200              :         case E_V2DFmode:
   12201              :           if (pattern1592 (x2, 
   12202              : E_V2DFmode, 
   12203              : E_V4DFmode) != 0
   12204              :               || !
   12205              : #line 13758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12206              : (TARGET_AVX512VL))
   12207              :             return -1;
   12208              :           return 5405; /* avx512vl_unpckhpd128_mask */
   12209              : 
   12210              :         case E_V2DImode:
   12211              :           if (pattern1593 (x2, 
   12212              : E_V2DImode, 
   12213              : E_V4DImode) != 0
   12214              :               || !(
   12215              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12216              : (TARGET_AVX512F) && 
   12217              : #line 14870 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12218              : (TARGET_SSE2 && TARGET_AVX512VL)))
   12219              :             return -1;
   12220              :           return 7225; /* vec_interleave_highv2di_mask */
   12221              : 
   12222              :         default:
   12223              :           return -1;
   12224              :         }
   12225              : 
   12226              :     case 0L:
   12227              :       x10 = XVECEXP (x8, 0, 1);
   12228              :       if (XWINT (x10, 0) != 2L)
   12229              :         return -1;
   12230              :       switch (GET_MODE (operands[0]))
   12231              :         {
   12232              :         case E_V2DFmode:
   12233              :           if (pattern1592 (x2, 
   12234              : E_V2DFmode, 
   12235              : E_V4DFmode) != 0
   12236              :               || !
   12237              : #line 13901 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12238              : (TARGET_AVX512VL))
   12239              :             return -1;
   12240              :           return 5415; /* avx512vl_unpcklpd128_mask */
   12241              : 
   12242              :         case E_V2DImode:
   12243              :           if (pattern1593 (x2, 
   12244              : E_V2DImode, 
   12245              : E_V4DImode) != 0
   12246              :               || !(
   12247              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12248              : (TARGET_AVX512F) && 
   12249              : #line 14920 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12250              : (TARGET_SSE2 && TARGET_AVX512VL)))
   12251              :             return -1;
   12252              :           return 7231; /* vec_interleave_lowv2di_mask */
   12253              : 
   12254              :         default:
   12255              :           return -1;
   12256              :         }
   12257              : 
   12258              :     default:
   12259              :       return -1;
   12260              :     }
   12261              : }
   12262              : 
   12263              :  int
   12264              : recog_170 (rtx x1 ATTRIBUTE_UNUSED,
   12265              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12266              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12267              : {
   12268              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12269              :   rtx x2, x3, x4, x5, x6, x7, x8;
   12270              :   int res ATTRIBUTE_UNUSED;
   12271              :   x2 = XEXP (x1, 1);
   12272              :   x3 = XEXP (x2, 0);
   12273              :   x4 = XEXP (x3, 1);
   12274              :   x5 = XVECEXP (x4, 0, 0);
   12275              :   if (GET_CODE (x5) != CONST_INT)
   12276              :     return -1;
   12277              :   operands[2] = x5;
   12278              :   if (const_0_to_7_operand (operands[2], E_VOIDmode))
   12279              :     {
   12280              :       x6 = XVECEXP (x4, 0, 1);
   12281              :       operands[3] = x6;
   12282              :       if (const_0_to_7_operand (operands[3], E_VOIDmode))
   12283              :         {
   12284              :           x7 = XEXP (x2, 1);
   12285              :           operands[4] = x7;
   12286              :           x8 = XEXP (x2, 2);
   12287              :           operands[5] = x8;
   12288              :           if (register_operand (operands[5], E_QImode))
   12289              :             {
   12290              :               switch (GET_MODE (operands[0]))
   12291              :                 {
   12292              :                 case E_V2DFmode:
   12293              :                   if (pattern1554 (x2, 
   12294              : E_V2DFmode, 
   12295              : E_V8DFmode) == 0
   12296              :                       && 
   12297              : #line 12810 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12298              : (TARGET_AVX512DQ
   12299              :    && INTVAL (operands[2]) % 2 == 0
   12300              :    && INTVAL (operands[2]) == INTVAL (operands[3]) - 1
   12301              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[4]))))
   12302              :                     return 5337; /* avx512dq_vextractf64x2_1_mask */
   12303              :                   break;
   12304              : 
   12305              :                 case E_V2DImode:
   12306              :                   if (pattern1554 (x2, 
   12307              : E_V2DImode, 
   12308              : E_V8DImode) == 0
   12309              :                       && 
   12310              : #line 12810 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12311              : (TARGET_AVX512DQ
   12312              :    && INTVAL (operands[2]) % 2 == 0
   12313              :    && INTVAL (operands[2]) == INTVAL (operands[3]) - 1
   12314              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[4]))))
   12315              :                     return 5338; /* avx512dq_vextracti64x2_1_mask */
   12316              :                   break;
   12317              : 
   12318              :                 default:
   12319              :                   break;
   12320              :                 }
   12321              :             }
   12322              :         }
   12323              :     }
   12324              :   x6 = XVECEXP (x4, 0, 1);
   12325              :   if (GET_CODE (x6) != CONST_INT)
   12326              :     return -1;
   12327              :   x7 = XEXP (x2, 1);
   12328              :   operands[2] = x7;
   12329              :   x8 = XEXP (x2, 2);
   12330              :   operands[3] = x8;
   12331              :   if (!register_operand (operands[3], E_QImode))
   12332              :     return -1;
   12333              :   switch (XWINT (x5, 0))
   12334              :     {
   12335              :     case 0L:
   12336              :       if (XWINT (x6, 0) != 1L)
   12337              :         return -1;
   12338              :       switch (GET_MODE (operands[0]))
   12339              :         {
   12340              :         case E_V2DImode:
   12341              :           if (!nonimmediate_operand (operands[0], E_V2DImode)
   12342              :               || pattern1555 (x2, 
   12343              : E_V2DImode, 
   12344              : E_V4DImode) != 0
   12345              :               || !
   12346              : #line 13238 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12347              : (TARGET_AVX512DQ
   12348              :    && TARGET_AVX512VL
   12349              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))))
   12350              :             return -1;
   12351              :           return 5361; /* vec_extract_lo_v4di_mask */
   12352              : 
   12353              :         case E_V2DFmode:
   12354              :           if (!nonimmediate_operand (operands[0], E_V2DFmode)
   12355              :               || pattern1555 (x2, 
   12356              : E_V2DFmode, 
   12357              : E_V4DFmode) != 0
   12358              :               || !
   12359              : #line 13238 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12360              : (TARGET_AVX512DQ
   12361              :    && TARGET_AVX512VL
   12362              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))))
   12363              :             return -1;
   12364              :           return 5362; /* vec_extract_lo_v4df_mask */
   12365              : 
   12366              :         default:
   12367              :           return -1;
   12368              :         }
   12369              : 
   12370              :     case 2L:
   12371              :       if (XWINT (x6, 0) != 3L)
   12372              :         return -1;
   12373              :       switch (GET_MODE (operands[0]))
   12374              :         {
   12375              :         case E_V2DImode:
   12376              :           if (!nonimmediate_operand (operands[0], E_V2DImode)
   12377              :               || pattern1555 (x2, 
   12378              : E_V2DImode, 
   12379              : E_V4DImode) != 0
   12380              :               || !
   12381              : #line 13275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12382              : (TARGET_AVX512DQ
   12383              :    && TARGET_AVX512VL
   12384              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))))
   12385              :             return -1;
   12386              :           return 5365; /* vec_extract_hi_v4di_mask */
   12387              : 
   12388              :         case E_V2DFmode:
   12389              :           if (!nonimmediate_operand (operands[0], E_V2DFmode)
   12390              :               || pattern1555 (x2, 
   12391              : E_V2DFmode, 
   12392              : E_V4DFmode) != 0
   12393              :               || !
   12394              : #line 13275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12395              : (TARGET_AVX512DQ
   12396              :    && TARGET_AVX512VL
   12397              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[2]))))
   12398              :             return -1;
   12399              :           return 5366; /* vec_extract_hi_v4df_mask */
   12400              : 
   12401              :         default:
   12402              :           return -1;
   12403              :         }
   12404              : 
   12405              :     default:
   12406              :       return -1;
   12407              :     }
   12408              : }
   12409              : 
   12410              :  int
   12411              : recog_175 (rtx x1 ATTRIBUTE_UNUSED,
   12412              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12413              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12414              : {
   12415              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12416              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   12417              :   rtx x10;
   12418              :   int res ATTRIBUTE_UNUSED;
   12419              :   x2 = XEXP (x1, 1);
   12420              :   x3 = XEXP (x2, 0);
   12421              :   x4 = XEXP (x3, 1);
   12422              :   x5 = XVECEXP (x4, 0, 4);
   12423              :   if (GET_CODE (x5) != CONST_INT)
   12424              :     return -1;
   12425              :   operands[6] = x5;
   12426              :   res = recog_174 (x1, insn, pnum_clobbers);
   12427              :   if (res >= 0)
   12428              :     return res;
   12429              :   if (XWINT (x5, 0) != 4L)
   12430              :     return -1;
   12431              :   x6 = XVECEXP (x4, 0, 5);
   12432              :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
   12433              :     return -1;
   12434              :   x7 = XVECEXP (x4, 0, 6);
   12435              :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
   12436              :     return -1;
   12437              :   x8 = XVECEXP (x4, 0, 7);
   12438              :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 7]
   12439              :       || pattern1307 (x2, 
   12440              : E_V8HImode) != 0
   12441              :       || pattern1024 (x4) != 0)
   12442              :     return -1;
   12443              :   x9 = XEXP (x2, 1);
   12444              :   operands[6] = x9;
   12445              :   if (!nonimm_or_0_operand (operands[6], E_V8HImode))
   12446              :     return -1;
   12447              :   x10 = XEXP (x2, 2);
   12448              :   operands[7] = x10;
   12449              :   if (!register_operand (operands[7], E_QImode)
   12450              :       || !(
   12451              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12452              : (TARGET_AVX512F) && 
   12453              : #line 21305 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12454              : (TARGET_SSE2 && TARGET_AVX512BW && TARGET_AVX512VL)))
   12455              :     return -1;
   12456              :   return 8504; /* sse2_pshuflw_1_mask */
   12457              : }
   12458              : 
   12459              :  int
   12460              : recog_178 (rtx x1 ATTRIBUTE_UNUSED,
   12461              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12462              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12463              : {
   12464              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12465              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   12466              :   rtx x10, x11, x12, x13, x14;
   12467              :   int res ATTRIBUTE_UNUSED;
   12468              :   x2 = XEXP (x1, 1);
   12469              :   x3 = XEXP (x2, 0);
   12470              :   x4 = XEXP (x3, 1);
   12471              :   x5 = XVECEXP (x4, 0, 4);
   12472              :   if (GET_CODE (x5) != CONST_INT)
   12473              :     return -1;
   12474              :   operands[6] = x5;
   12475              :   res = recog_177 (x1, insn, pnum_clobbers);
   12476              :   if (res >= 0)
   12477              :     return res;
   12478              :   if (XWINT (x5, 0) != 4L)
   12479              :     return -1;
   12480              :   x6 = XVECEXP (x4, 0, 5);
   12481              :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
   12482              :     return -1;
   12483              :   x7 = XVECEXP (x4, 0, 6);
   12484              :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
   12485              :     return -1;
   12486              :   x8 = XVECEXP (x4, 0, 7);
   12487              :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 7]
   12488              :       || pattern1480 (x4) != 0
   12489              :       || pattern764 (x2, 
   12490              : E_V16HImode) != 0
   12491              :       || pattern1024 (x4) != 0)
   12492              :     return -1;
   12493              :   x9 = XVECEXP (x4, 0, 8);
   12494              :   operands[6] = x9;
   12495              :   if (!const_8_to_11_operand (operands[6], E_VOIDmode))
   12496              :     return -1;
   12497              :   x10 = XVECEXP (x4, 0, 9);
   12498              :   operands[7] = x10;
   12499              :   if (!const_8_to_11_operand (operands[7], E_VOIDmode))
   12500              :     return -1;
   12501              :   x11 = XVECEXP (x4, 0, 10);
   12502              :   operands[8] = x11;
   12503              :   if (!const_8_to_11_operand (operands[8], E_VOIDmode))
   12504              :     return -1;
   12505              :   x12 = XVECEXP (x4, 0, 11);
   12506              :   operands[9] = x12;
   12507              :   if (!const_8_to_11_operand (operands[9], E_VOIDmode))
   12508              :     return -1;
   12509              :   x13 = XEXP (x2, 1);
   12510              :   operands[10] = x13;
   12511              :   if (!nonimm_or_0_operand (operands[10], E_V16HImode))
   12512              :     return -1;
   12513              :   x14 = XEXP (x2, 2);
   12514              :   operands[11] = x14;
   12515              :   if (!register_operand (operands[11], E_HImode)
   12516              :       || !(
   12517              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12518              : (TARGET_AVX512F) && 
   12519              : #line 21239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12520              : (TARGET_AVX2
   12521              :    && TARGET_AVX512BW && TARGET_AVX512VL
   12522              :    && INTVAL (operands[2]) + 8 == INTVAL (operands[6])
   12523              :    && INTVAL (operands[3]) + 8 == INTVAL (operands[7])
   12524              :    && INTVAL (operands[4]) + 8 == INTVAL (operands[8])
   12525              :    && INTVAL (operands[5]) + 8 == INTVAL (operands[9]))))
   12526              :     return -1;
   12527              :   return 8502; /* avx2_pshuflw_1_mask */
   12528              : }
   12529              : 
   12530              :  int
   12531              : recog_185 (rtx x1 ATTRIBUTE_UNUSED,
   12532              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12533              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12534              : {
   12535              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12536              :   rtx x2, x3, x4, x5, x6;
   12537              :   int res ATTRIBUTE_UNUSED;
   12538              :   x2 = XEXP (x1, 1);
   12539              :   x3 = XEXP (x2, 0);
   12540              :   x4 = XEXP (x3, 1);
   12541              :   operands[2] = x4;
   12542              :   x5 = XEXP (x3, 0);
   12543              :   switch (GET_CODE (x5))
   12544              :     {
   12545              :     case REG:
   12546              :     case SUBREG:
   12547              :     case MEM:
   12548              :     case VEC_DUPLICATE:
   12549              :       operands[1] = x5;
   12550              :       switch (pattern652 (x2))
   12551              :         {
   12552              :         case 0:
   12553              :           if (pattern1384 (x2, 
   12554              : E_V32HFmode, 
   12555              : E_SImode) != 0
   12556              :               || !(
   12557              : #line 6323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12558              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1) && 
   12559              : #line 6310 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12560              : (TARGET_AVX512FP16)))
   12561              :             return -1;
   12562              :           return 3864; /* fma_fmadd_v32hf_maskz_1 */
   12563              : 
   12564              :         case 1:
   12565              :           if (pattern1384 (x2, 
   12566              : E_V16HFmode, 
   12567              : E_HImode) != 0
   12568              :               || !(
   12569              : #line 6323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12570              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   12571              : #line 6311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12572              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   12573              :             return -1;
   12574              :           return 3868; /* fma_fmadd_v16hf_maskz_1 */
   12575              : 
   12576              :         case 2:
   12577              :           if (pattern1384 (x2, 
   12578              : E_V8HFmode, 
   12579              : E_QImode) != 0
   12580              :               || !(
   12581              : #line 6323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12582              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   12583              : #line 6312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12584              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   12585              :             return -1;
   12586              :           return 3870; /* fma_fmadd_v8hf_maskz_1 */
   12587              : 
   12588              :         case 3:
   12589              :           if (pattern1384 (x2, 
   12590              : E_V16SFmode, 
   12591              : E_HImode) != 0
   12592              :               || !
   12593              : #line 6323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12594              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
   12595              :             return -1;
   12596              :           return 3874; /* fma_fmadd_v16sf_maskz_1 */
   12597              : 
   12598              :         case 4:
   12599              :           if (pattern1384 (x2, 
   12600              : E_V8SFmode, 
   12601              : E_QImode) != 0
   12602              :               || !(
   12603              : #line 6323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12604              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   12605              : #line 6314 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12606              : (TARGET_AVX512VL)))
   12607              :             return -1;
   12608              :           return 3878; /* fma_fmadd_v8sf_maskz_1 */
   12609              : 
   12610              :         case 5:
   12611              :           if (pattern1384 (x2, 
   12612              : E_V4SFmode, 
   12613              : E_QImode) != 0
   12614              :               || !(
   12615              : #line 6323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12616              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   12617              : #line 6314 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12618              : (TARGET_AVX512VL)))
   12619              :             return -1;
   12620              :           return 3880; /* fma_fmadd_v4sf_maskz_1 */
   12621              : 
   12622              :         case 6:
   12623              :           if (pattern1384 (x2, 
   12624              : E_V8DFmode, 
   12625              : E_QImode) != 0
   12626              :               || !
   12627              : #line 6323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12628              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
   12629              :             return -1;
   12630              :           return 3883; /* fma_fmadd_v8df_maskz_1 */
   12631              : 
   12632              :         case 7:
   12633              :           if (pattern1384 (x2, 
   12634              : E_V4DFmode, 
   12635              : E_QImode) != 0
   12636              :               || !(
   12637              : #line 6323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12638              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   12639              : #line 6315 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12640              : (TARGET_AVX512VL)))
   12641              :             return -1;
   12642              :           return 3887; /* fma_fmadd_v4df_maskz_1 */
   12643              : 
   12644              :         case 8:
   12645              :           if (pattern1384 (x2, 
   12646              : E_V2DFmode, 
   12647              : E_QImode) != 0
   12648              :               || !(
   12649              : #line 6323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12650              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   12651              : #line 6315 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12652              : (TARGET_AVX512VL)))
   12653              :             return -1;
   12654              :           return 3889; /* fma_fmadd_v2df_maskz_1 */
   12655              : 
   12656              :         case 9:
   12657              :           if (pattern1386 (x2, 
   12658              : E_SImode, 
   12659              : E_V32BFmode) != 0
   12660              :               || !
   12661              : #line 33124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12662              : (TARGET_AVX10_2))
   12663              :             return -1;
   12664              :           return 10714; /* avx10_2_fmaddbf16_v32bf_maskz_1 */
   12665              : 
   12666              :         case 10:
   12667              :           if (pattern1386 (x2, 
   12668              : E_HImode, 
   12669              : E_V16BFmode) != 0
   12670              :               || !
   12671              : #line 33124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12672              : (TARGET_AVX10_2))
   12673              :             return -1;
   12674              :           return 10716; /* avx10_2_fmaddbf16_v16bf_maskz_1 */
   12675              : 
   12676              :         case 11:
   12677              :           if (pattern1386 (x2, 
   12678              : E_QImode, 
   12679              : E_V8BFmode) != 0
   12680              :               || !
   12681              : #line 33124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12682              : (TARGET_AVX10_2))
   12683              :             return -1;
   12684              :           return 10718; /* avx10_2_fmaddbf16_v8bf_maskz_1 */
   12685              : 
   12686              :         case 12:
   12687              :           if (pattern1387 (x2, 
   12688              : E_V4SFmode) != 0
   12689              :               || !
   12690              : #line 7336 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12691              : (TARGET_FMA4))
   12692              :             return -1;
   12693              :           return 4341; /* *fma4i_vmfmadd_v4sf */
   12694              : 
   12695              :         case 13:
   12696              :           if (pattern1387 (x2, 
   12697              : E_V2DFmode) != 0
   12698              :               || !(
   12699              : #line 7336 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12700              : (TARGET_FMA4) && 
   12701              : #line 473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12702              : (TARGET_SSE2)))
   12703              :             return -1;
   12704              :           return 4342; /* *fma4i_vmfmadd_v2df */
   12705              : 
   12706              :         case 14:
   12707              :           if (pattern1297 (x2, 
   12708              : E_V32HFmode, 
   12709              : E_SImode) != 0)
   12710              :             return -1;
   12711              :           if (nonimmediate_operand (operands[1], E_V32HFmode)
   12712              :               && vector_operand (operands[3], E_V32HFmode))
   12713              :             {
   12714              :               x6 = XEXP (x2, 1);
   12715              :               if (rtx_equal_p (x6, operands[1])
   12716              :                   && (
   12717              : #line 6364 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12718              : (TARGET_AVX512F && 1) && 
   12719              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12720              : (TARGET_AVX512FP16)))
   12721              :                 return 3890; /* avx512bw_fmadd_v32hf_mask */
   12722              :             }
   12723              :           if (!vector_operand (operands[1], E_V32HFmode)
   12724              :               || !nonimmediate_operand (operands[3], E_V32HFmode))
   12725              :             return -1;
   12726              :           x6 = XEXP (x2, 1);
   12727              :           if (!rtx_equal_p (x6, operands[3])
   12728              :               || !(
   12729              : #line 6381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12730              : (TARGET_AVX512F) && 
   12731              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12732              : (TARGET_AVX512FP16)))
   12733              :             return -1;
   12734              :           return 3902; /* avx512bw_fmadd_v32hf_mask3 */
   12735              : 
   12736              :         case 15:
   12737              :           if (pattern1297 (x2, 
   12738              : E_V16HFmode, 
   12739              : E_HImode) != 0)
   12740              :             return -1;
   12741              :           if (nonimmediate_operand (operands[1], E_V16HFmode)
   12742              :               && vector_operand (operands[3], E_V16HFmode))
   12743              :             {
   12744              :               x6 = XEXP (x2, 1);
   12745              :               if (rtx_equal_p (x6, operands[1])
   12746              :                   && (
   12747              : #line 6364 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12748              : (TARGET_AVX512F && 1) && 
   12749              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12750              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   12751              :                 return 3892; /* avx512vl_fmadd_v16hf_mask */
   12752              :             }
   12753              :           if (!vector_operand (operands[1], E_V16HFmode)
   12754              :               || !nonimmediate_operand (operands[3], E_V16HFmode))
   12755              :             return -1;
   12756              :           x6 = XEXP (x2, 1);
   12757              :           if (!rtx_equal_p (x6, operands[3])
   12758              :               || !(
   12759              : #line 6381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12760              : (TARGET_AVX512F) && 
   12761              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12762              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   12763              :             return -1;
   12764              :           return 3904; /* avx512vl_fmadd_v16hf_mask3 */
   12765              : 
   12766              :         case 16:
   12767              :           if (pattern1297 (x2, 
   12768              : E_V8HFmode, 
   12769              : E_QImode) != 0)
   12770              :             return -1;
   12771              :           if (nonimmediate_operand (operands[1], E_V8HFmode)
   12772              :               && vector_operand (operands[3], E_V8HFmode))
   12773              :             {
   12774              :               x6 = XEXP (x2, 1);
   12775              :               if (rtx_equal_p (x6, operands[1])
   12776              :                   && (
   12777              : #line 6364 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12778              : (TARGET_AVX512F && 1) && 
   12779              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12780              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   12781              :                 return 3893; /* avx512fp16_fmadd_v8hf_mask */
   12782              :             }
   12783              :           if (!vector_operand (operands[1], E_V8HFmode)
   12784              :               || !nonimmediate_operand (operands[3], E_V8HFmode))
   12785              :             return -1;
   12786              :           x6 = XEXP (x2, 1);
   12787              :           if (!rtx_equal_p (x6, operands[3])
   12788              :               || !(
   12789              : #line 6381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12790              : (TARGET_AVX512F) && 
   12791              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12792              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   12793              :             return -1;
   12794              :           return 3906; /* avx512fp16_fmadd_v8hf_mask3 */
   12795              : 
   12796              :         case 17:
   12797              :           if (pattern1297 (x2, 
   12798              : E_V16SFmode, 
   12799              : E_HImode) != 0)
   12800              :             return -1;
   12801              :           if (nonimmediate_operand (operands[1], E_V16SFmode)
   12802              :               && vector_operand (operands[3], E_V16SFmode))
   12803              :             {
   12804              :               x6 = XEXP (x2, 1);
   12805              :               if (rtx_equal_p (x6, operands[1])
   12806              :                   && 
   12807              : #line 6364 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12808              : (TARGET_AVX512F && 1))
   12809              :                 return 3894; /* avx512f_fmadd_v16sf_mask */
   12810              :             }
   12811              :           if (!vector_operand (operands[1], E_V16SFmode)
   12812              :               || !nonimmediate_operand (operands[3], E_V16SFmode))
   12813              :             return -1;
   12814              :           x6 = XEXP (x2, 1);
   12815              :           if (!rtx_equal_p (x6, operands[3])
   12816              :               || !
   12817              : #line 6381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12818              : (TARGET_AVX512F))
   12819              :             return -1;
   12820              :           return 3908; /* avx512f_fmadd_v16sf_mask3 */
   12821              : 
   12822              :         case 18:
   12823              :           if (pattern1297 (x2, 
   12824              : E_V8SFmode, 
   12825              : E_QImode) != 0)
   12826              :             return -1;
   12827              :           if (nonimmediate_operand (operands[1], E_V8SFmode)
   12828              :               && vector_operand (operands[3], E_V8SFmode))
   12829              :             {
   12830              :               x6 = XEXP (x2, 1);
   12831              :               if (rtx_equal_p (x6, operands[1])
   12832              :                   && (
   12833              : #line 6364 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12834              : (TARGET_AVX512F && 1) && 
   12835              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12836              : (TARGET_AVX512VL)))
   12837              :                 return 3896; /* avx512vl_fmadd_v8sf_mask */
   12838              :             }
   12839              :           if (!vector_operand (operands[1], E_V8SFmode)
   12840              :               || !nonimmediate_operand (operands[3], E_V8SFmode))
   12841              :             return -1;
   12842              :           x6 = XEXP (x2, 1);
   12843              :           if (!rtx_equal_p (x6, operands[3])
   12844              :               || !(
   12845              : #line 6381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12846              : (TARGET_AVX512F) && 
   12847              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12848              : (TARGET_AVX512VL)))
   12849              :             return -1;
   12850              :           return 3910; /* avx512vl_fmadd_v8sf_mask3 */
   12851              : 
   12852              :         case 19:
   12853              :           if (pattern1297 (x2, 
   12854              : E_V4SFmode, 
   12855              : E_QImode) != 0)
   12856              :             return -1;
   12857              :           if (nonimmediate_operand (operands[1], E_V4SFmode)
   12858              :               && vector_operand (operands[3], E_V4SFmode))
   12859              :             {
   12860              :               x6 = XEXP (x2, 1);
   12861              :               if (rtx_equal_p (x6, operands[1])
   12862              :                   && (
   12863              : #line 6364 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12864              : (TARGET_AVX512F && 1) && 
   12865              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12866              : (TARGET_AVX512VL)))
   12867              :                 return 3897; /* avx512vl_fmadd_v4sf_mask */
   12868              :             }
   12869              :           if (!vector_operand (operands[1], E_V4SFmode)
   12870              :               || !nonimmediate_operand (operands[3], E_V4SFmode))
   12871              :             return -1;
   12872              :           x6 = XEXP (x2, 1);
   12873              :           if (!rtx_equal_p (x6, operands[3])
   12874              :               || !(
   12875              : #line 6381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12876              : (TARGET_AVX512F) && 
   12877              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12878              : (TARGET_AVX512VL)))
   12879              :             return -1;
   12880              :           return 3912; /* avx512vl_fmadd_v4sf_mask3 */
   12881              : 
   12882              :         case 20:
   12883              :           if (pattern1297 (x2, 
   12884              : E_V8DFmode, 
   12885              : E_QImode) != 0)
   12886              :             return -1;
   12887              :           if (nonimmediate_operand (operands[1], E_V8DFmode)
   12888              :               && vector_operand (operands[3], E_V8DFmode))
   12889              :             {
   12890              :               x6 = XEXP (x2, 1);
   12891              :               if (rtx_equal_p (x6, operands[1])
   12892              :                   && 
   12893              : #line 6364 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12894              : (TARGET_AVX512F && 1))
   12895              :                 return 3898; /* avx512f_fmadd_v8df_mask */
   12896              :             }
   12897              :           if (!vector_operand (operands[1], E_V8DFmode)
   12898              :               || !nonimmediate_operand (operands[3], E_V8DFmode))
   12899              :             return -1;
   12900              :           x6 = XEXP (x2, 1);
   12901              :           if (!rtx_equal_p (x6, operands[3])
   12902              :               || !
   12903              : #line 6381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12904              : (TARGET_AVX512F))
   12905              :             return -1;
   12906              :           return 3914; /* avx512f_fmadd_v8df_mask3 */
   12907              : 
   12908              :         case 21:
   12909              :           if (pattern1297 (x2, 
   12910              : E_V4DFmode, 
   12911              : E_QImode) != 0)
   12912              :             return -1;
   12913              :           if (nonimmediate_operand (operands[1], E_V4DFmode)
   12914              :               && vector_operand (operands[3], E_V4DFmode))
   12915              :             {
   12916              :               x6 = XEXP (x2, 1);
   12917              :               if (rtx_equal_p (x6, operands[1])
   12918              :                   && (
   12919              : #line 6364 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12920              : (TARGET_AVX512F && 1) && 
   12921              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12922              : (TARGET_AVX512VL)))
   12923              :                 return 3900; /* avx512vl_fmadd_v4df_mask */
   12924              :             }
   12925              :           if (!vector_operand (operands[1], E_V4DFmode)
   12926              :               || !nonimmediate_operand (operands[3], E_V4DFmode))
   12927              :             return -1;
   12928              :           x6 = XEXP (x2, 1);
   12929              :           if (!rtx_equal_p (x6, operands[3])
   12930              :               || !(
   12931              : #line 6381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12932              : (TARGET_AVX512F) && 
   12933              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12934              : (TARGET_AVX512VL)))
   12935              :             return -1;
   12936              :           return 3916; /* avx512vl_fmadd_v4df_mask3 */
   12937              : 
   12938              :         case 22:
   12939              :           if (pattern1297 (x2, 
   12940              : E_V2DFmode, 
   12941              : E_QImode) != 0)
   12942              :             return -1;
   12943              :           if (nonimmediate_operand (operands[1], E_V2DFmode)
   12944              :               && vector_operand (operands[3], E_V2DFmode))
   12945              :             {
   12946              :               x6 = XEXP (x2, 1);
   12947              :               if (rtx_equal_p (x6, operands[1])
   12948              :                   && (
   12949              : #line 6364 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12950              : (TARGET_AVX512F && 1) && 
   12951              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12952              : (TARGET_AVX512VL)))
   12953              :                 return 3901; /* avx512vl_fmadd_v2df_mask */
   12954              :             }
   12955              :           if (!vector_operand (operands[1], E_V2DFmode)
   12956              :               || !nonimmediate_operand (operands[3], E_V2DFmode))
   12957              :             return -1;
   12958              :           x6 = XEXP (x2, 1);
   12959              :           if (!rtx_equal_p (x6, operands[3])
   12960              :               || !(
   12961              : #line 6381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12962              : (TARGET_AVX512F) && 
   12963              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12964              : (TARGET_AVX512VL)))
   12965              :             return -1;
   12966              :           return 3918; /* avx512vl_fmadd_v2df_mask3 */
   12967              : 
   12968              :         case 23:
   12969              :           if (pattern1298 (x2, 
   12970              : E_SImode, 
   12971              : E_V32BFmode) != 0)
   12972              :             return -1;
   12973              :           x6 = XEXP (x2, 1);
   12974              :           if (rtx_equal_p (x6, operands[1])
   12975              :               && 
   12976              : #line 33142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12977              : (TARGET_AVX10_2))
   12978              :             return 10719; /* avx10_2_fmaddbf16_v32bf_mask */
   12979              :           if (!rtx_equal_p (x6, operands[3])
   12980              :               || !
   12981              : #line 33159 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12982              : (TARGET_AVX10_2))
   12983              :             return -1;
   12984              :           return 10722; /* avx10_2_fmaddbf16_v32bf_mask3 */
   12985              : 
   12986              :         case 24:
   12987              :           if (pattern1298 (x2, 
   12988              : E_HImode, 
   12989              : E_V16BFmode) != 0)
   12990              :             return -1;
   12991              :           x6 = XEXP (x2, 1);
   12992              :           if (rtx_equal_p (x6, operands[1])
   12993              :               && 
   12994              : #line 33142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12995              : (TARGET_AVX10_2))
   12996              :             return 10720; /* avx10_2_fmaddbf16_v16bf_mask */
   12997              :           if (!rtx_equal_p (x6, operands[3])
   12998              :               || !
   12999              : #line 33159 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13000              : (TARGET_AVX10_2))
   13001              :             return -1;
   13002              :           return 10723; /* avx10_2_fmaddbf16_v16bf_mask3 */
   13003              : 
   13004              :         case 25:
   13005              :           if (pattern1298 (x2, 
   13006              : E_QImode, 
   13007              : E_V8BFmode) != 0)
   13008              :             return -1;
   13009              :           x6 = XEXP (x2, 1);
   13010              :           if (rtx_equal_p (x6, operands[1])
   13011              :               && 
   13012              : #line 33142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13013              : (TARGET_AVX10_2))
   13014              :             return 10721; /* avx10_2_fmaddbf16_v8bf_mask */
   13015              :           if (!rtx_equal_p (x6, operands[3])
   13016              :               || !
   13017              : #line 33159 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13018              : (TARGET_AVX10_2))
   13019              :             return -1;
   13020              :           return 10724; /* avx10_2_fmaddbf16_v8bf_mask3 */
   13021              : 
   13022              :         case 26:
   13023              :           if (pattern1388 (x2, 
   13024              : E_V8HFmode) != 0
   13025              :               || !(
   13026              : #line 6977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13027              : (TARGET_FMA || TARGET_AVX512F) && 
   13028              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13029              : (TARGET_AVX512FP16)))
   13030              :             return -1;
   13031              :           return 4245; /* *fmai_fmadd_v8hf */
   13032              : 
   13033              :         case 27:
   13034              :           if (pattern1388 (x2, 
   13035              : E_V4SFmode) != 0
   13036              :               || !
   13037              : #line 6977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13038              : (TARGET_FMA || TARGET_AVX512F))
   13039              :             return -1;
   13040              :           return 4247; /* *fmai_fmadd_v4sf */
   13041              : 
   13042              :         case 28:
   13043              :           if (pattern1388 (x2, 
   13044              : E_V2DFmode) != 0
   13045              :               || !(
   13046              : #line 6977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13047              : (TARGET_FMA || TARGET_AVX512F) && 
   13048              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13049              : (TARGET_SSE2)))
   13050              :             return -1;
   13051              :           return 4249; /* *fmai_fmadd_v2df */
   13052              : 
   13053              :         case 29:
   13054              :           return recog_161 (x1, insn, pnum_clobbers);
   13055              : 
   13056              :         default:
   13057              :           return -1;
   13058              :         }
   13059              : 
   13060              :     case NEG:
   13061              :       return recog_163 (x1, insn, pnum_clobbers);
   13062              : 
   13063              :     default:
   13064              :       return -1;
   13065              :     }
   13066              : }
   13067              : 
   13068              :  int
   13069              : recog_193 (rtx x1 ATTRIBUTE_UNUSED,
   13070              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13071              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13072              : {
   13073              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13074              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   13075              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   13076              :   int res ATTRIBUTE_UNUSED;
   13077              :   x2 = XEXP (x1, 1);
   13078              :   x3 = XEXP (x2, 0);
   13079              :   x4 = XEXP (x3, 0);
   13080              :   switch (GET_CODE (x4))
   13081              :     {
   13082              :     case REG:
   13083              :     case SUBREG:
   13084              :       switch (pattern146 (x2))
   13085              :         {
   13086              :         case 0:
   13087              :           if (!
   13088              : #line 15510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13089              : (TARGET_AVX512F))
   13090              :             return -1;
   13091              :           return 7265; /* avx512f_truncatev16siv16qi2_mask */
   13092              : 
   13093              :         case 1:
   13094              :           if (!(
   13095              : #line 15682 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13096              : (TARGET_AVX512VL) && 
   13097              : #line 15599 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13098              : (TARGET_AVX512BW)))
   13099              :             return -1;
   13100              :           return 7301; /* avx512vl_truncatev16hiv16qi2_mask */
   13101              : 
   13102              :         case 2:
   13103              :           if (!
   13104              : #line 15510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13105              : (TARGET_AVX512F))
   13106              :             return -1;
   13107              :           return 7268; /* avx512f_truncatev16siv16hi2_mask */
   13108              : 
   13109              :         case 3:
   13110              :           if (!
   13111              : #line 15510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13112              : (TARGET_AVX512F))
   13113              :             return -1;
   13114              :           return 7271; /* avx512f_truncatev8div8si2_mask */
   13115              : 
   13116              :         case 4:
   13117              :           if (!
   13118              : #line 15510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13119              : (TARGET_AVX512F))
   13120              :             return -1;
   13121              :           return 7274; /* avx512f_truncatev8div8hi2_mask */
   13122              : 
   13123              :         case 5:
   13124              :           if (!
   13125              : #line 15682 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13126              : (TARGET_AVX512VL))
   13127              :             return -1;
   13128              :           return 7298; /* avx512vl_truncatev8siv8hi2_mask */
   13129              : 
   13130              :         case 6:
   13131              :           if (!
   13132              : #line 15582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13133              : (TARGET_AVX512BW))
   13134              :             return -1;
   13135              :           return 7281; /* avx512bw_truncatev32hiv32qi2_mask */
   13136              : 
   13137              :         case 7:
   13138              :           if (!
   13139              : #line 15682 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13140              : (TARGET_AVX512VL))
   13141              :             return -1;
   13142              :           return 7295; /* avx512vl_truncatev4div4si2_mask */
   13143              : 
   13144              :         default:
   13145              :           return -1;
   13146              :         }
   13147              : 
   13148              :     case LSHIFTRT:
   13149              :       x5 = XEXP (x4, 1);
   13150              :       if (GET_CODE (x5) != CONST_INT)
   13151              :         return -1;
   13152              :       x6 = XEXP (x4, 0);
   13153              :       switch (GET_CODE (x6))
   13154              :         {
   13155              :         case MULT:
   13156              :           if (XWINT (x5, 0) != 16L)
   13157              :             return -1;
   13158              :           x7 = XEXP (x2, 1);
   13159              :           operands[3] = x7;
   13160              :           x8 = XEXP (x2, 2);
   13161              :           operands[4] = x8;
   13162              :           x9 = XEXP (x6, 0);
   13163              :           switch (GET_CODE (x9))
   13164              :             {
   13165              :             case SIGN_EXTEND:
   13166              :               switch (pattern1135 (x2, 
   13167              : SIGN_EXTEND))
   13168              :                 {
   13169              :                 case 0:
   13170              :                   if (!(
   13171              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13172              : (TARGET_AVX512F) && (
   13173              : #line 16836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13174              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13175              :    && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
   13176              : #line 646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13177              : (TARGET_AVX512BW))))
   13178              :                     return -1;
   13179              :                   return 7613; /* *smulv32hi3_highpart_mask */
   13180              : 
   13181              :                 case 1:
   13182              :                   if (!(
   13183              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13184              : (TARGET_AVX512F) && (
   13185              : #line 16836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13186              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13187              :    && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
   13188              : #line 646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13189              : (TARGET_AVX2))))
   13190              :                     return -1;
   13191              :                   return 7617; /* *smulv16hi3_highpart_mask */
   13192              : 
   13193              :                 case 2:
   13194              :                   if (!(
   13195              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13196              : (TARGET_AVX512F) && 
   13197              : #line 16836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13198              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13199              :    && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
   13200              :                     return -1;
   13201              :                   return 7621; /* *smulv8hi3_highpart_mask */
   13202              : 
   13203              :                 default:
   13204              :                   return -1;
   13205              :                 }
   13206              : 
   13207              :             case ZERO_EXTEND:
   13208              :               switch (pattern1135 (x2, 
   13209              : ZERO_EXTEND))
   13210              :                 {
   13211              :                 case 0:
   13212              :                   if (!(
   13213              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13214              : (TARGET_AVX512F) && (
   13215              : #line 16836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13216              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13217              :    && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
   13218              : #line 646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13219              : (TARGET_AVX512BW))))
   13220              :                     return -1;
   13221              :                   return 7615; /* *umulv32hi3_highpart_mask */
   13222              : 
   13223              :                 case 1:
   13224              :                   if (!(
   13225              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13226              : (TARGET_AVX512F) && (
   13227              : #line 16836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13228              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13229              :    && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
   13230              : #line 646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13231              : (TARGET_AVX2))))
   13232              :                     return -1;
   13233              :                   return 7619; /* *umulv16hi3_highpart_mask */
   13234              : 
   13235              :                 case 2:
   13236              :                   if (!(
   13237              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13238              : (TARGET_AVX512F) && 
   13239              : #line 16836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13240              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13241              :    && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
   13242              :                     return -1;
   13243              :                   return 7623; /* *umulv8hi3_highpart_mask */
   13244              : 
   13245              :                 default:
   13246              :                   return -1;
   13247              :                 }
   13248              : 
   13249              :             default:
   13250              :               return -1;
   13251              :             }
   13252              : 
   13253              :         case PLUS:
   13254              :           if (XWINT (x5, 0) != 1L)
   13255              :             return -1;
   13256              :           x9 = XEXP (x6, 0);
   13257              :           switch (GET_CODE (x9))
   13258              :             {
   13259              :             case PLUS:
   13260              :               x10 = XEXP (x9, 0);
   13261              :               if (GET_CODE (x10) != ZERO_EXTEND)
   13262              :                 return -1;
   13263              :               x11 = XEXP (x9, 1);
   13264              :               if (GET_CODE (x11) != ZERO_EXTEND)
   13265              :                 return -1;
   13266              :               x12 = XEXP (x10, 0);
   13267              :               operands[1] = x12;
   13268              :               x13 = XEXP (x11, 0);
   13269              :               operands[2] = x13;
   13270              :               x14 = XEXP (x6, 1);
   13271              :               operands[5] = x14;
   13272              :               x7 = XEXP (x2, 1);
   13273              :               operands[3] = x7;
   13274              :               x8 = XEXP (x2, 2);
   13275              :               operands[4] = x8;
   13276              :               switch (GET_MODE (operands[0]))
   13277              :                 {
   13278              :                 case E_V64QImode:
   13279              :                   if (pattern1557 (x2, 
   13280              : E_DImode, 
   13281              : E_V64QImode, 
   13282              : E_V64HImode) != 0
   13283              :                       || !(
   13284              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13285              : (TARGET_AVX512F) && (
   13286              : #line 22377 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13287              : (TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13288              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13289              : #line 732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13290              : (TARGET_AVX512BW))))
   13291              :                     return -1;
   13292              :                   return 8550; /* *avx512bw_uavgv64qi3_mask */
   13293              : 
   13294              :                 case E_V32QImode:
   13295              :                   if (pattern1557 (x2, 
   13296              : E_SImode, 
   13297              : E_V32QImode, 
   13298              : E_V32HImode) != 0
   13299              :                       || !(
   13300              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13301              : (TARGET_AVX512F) && (
   13302              : #line 22377 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13303              : (TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13304              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13305              : #line 732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13306              : (TARGET_AVX2))))
   13307              :                     return -1;
   13308              :                   return 8552; /* *avx2_uavgv32qi3_mask */
   13309              : 
   13310              :                 case E_V16QImode:
   13311              :                   if (pattern1557 (x2, 
   13312              : E_HImode, 
   13313              : E_V16QImode, 
   13314              : E_V16HImode) != 0
   13315              :                       || !(
   13316              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13317              : (TARGET_AVX512F) && 
   13318              : #line 22377 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13319              : (TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13320              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   13321              :                     return -1;
   13322              :                   return 8554; /* *sse2_uavgv16qi3_mask */
   13323              : 
   13324              :                 case E_V32HImode:
   13325              :                   if (pattern1557 (x2, 
   13326              : E_SImode, 
   13327              : E_V32HImode, 
   13328              : E_V32SImode) != 0
   13329              :                       || !(
   13330              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13331              : (TARGET_AVX512F) && (
   13332              : #line 22377 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13333              : (TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13334              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13335              : #line 733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13336              : (TARGET_AVX512BW))))
   13337              :                     return -1;
   13338              :                   return 8556; /* *avx512bw_uavgv32hi3_mask */
   13339              : 
   13340              :                 case E_V16HImode:
   13341              :                   if (pattern1557 (x2, 
   13342              : E_HImode, 
   13343              : E_V16HImode, 
   13344              : E_V16SImode) != 0
   13345              :                       || !(
   13346              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13347              : (TARGET_AVX512F) && (
   13348              : #line 22377 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13349              : (TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13350              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13351              : #line 733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13352              : (TARGET_AVX2))))
   13353              :                     return -1;
   13354              :                   return 8558; /* *avx2_uavgv16hi3_mask */
   13355              : 
   13356              :                 case E_V8HImode:
   13357              :                   if (pattern1557 (x2, 
   13358              : E_QImode, 
   13359              : E_V8HImode, 
   13360              : E_V8SImode) != 0
   13361              :                       || !(
   13362              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13363              : (TARGET_AVX512F) && 
   13364              : #line 22377 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13365              : (TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13366              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   13367              :                     return -1;
   13368              :                   return 8560; /* *sse2_uavgv8hi3_mask */
   13369              : 
   13370              :                 default:
   13371              :                   return -1;
   13372              :                 }
   13373              : 
   13374              :             case LSHIFTRT:
   13375              :               x10 = XEXP (x9, 0);
   13376              :               if (GET_CODE (x10) != MULT)
   13377              :                 return -1;
   13378              :               x12 = XEXP (x10, 0);
   13379              :               if (GET_CODE (x12) != SIGN_EXTEND)
   13380              :                 return -1;
   13381              :               x15 = XEXP (x10, 1);
   13382              :               if (GET_CODE (x15) != SIGN_EXTEND)
   13383              :                 return -1;
   13384              :               x11 = XEXP (x9, 1);
   13385              :               if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 14])
   13386              :                 return -1;
   13387              :               x16 = XEXP (x12, 0);
   13388              :               operands[1] = x16;
   13389              :               if (nonimmediate_operand (operands[1], E_V32HImode))
   13390              :                 {
   13391              :                   res = recog_180 (x1, insn, pnum_clobbers);
   13392              :                   if (res >= 0)
   13393              :                     return res;
   13394              :                 }
   13395              :               x17 = XEXP (x15, 0);
   13396              :               operands[2] = x17;
   13397              :               x14 = XEXP (x6, 1);
   13398              :               operands[3] = x14;
   13399              :               x7 = XEXP (x2, 1);
   13400              :               operands[4] = x7;
   13401              :               x8 = XEXP (x2, 2);
   13402              :               operands[5] = x8;
   13403              :               switch (GET_MODE (operands[0]))
   13404              :                 {
   13405              :                 case E_V32HImode:
   13406              :                   if (pattern1659 (x2, 
   13407              : E_SImode, 
   13408              : E_V32HImode, 
   13409              : E_V32SImode) != 0
   13410              :                       || !(
   13411              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13412              : (TARGET_AVX512F) && (
   13413              : #line 23502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13414              : (TARGET_SSSE3 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13415              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13416              : #line 646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13417              : (TARGET_AVX512BW))))
   13418              :                     return -1;
   13419              :                   return 8673; /* *avx512bw_pmulhrswv32hi3_mask */
   13420              : 
   13421              :                 case E_V16HImode:
   13422              :                   if (pattern1659 (x2, 
   13423              : E_HImode, 
   13424              : E_V16HImode, 
   13425              : E_V16SImode) != 0
   13426              :                       || !(
   13427              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13428              : (TARGET_AVX512F) && (
   13429              : #line 23502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13430              : (TARGET_SSSE3 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13431              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13432              : #line 646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13433              : (TARGET_AVX2))))
   13434              :                     return -1;
   13435              :                   return 8675; /* *avx2_pmulhrswv16hi3_mask */
   13436              : 
   13437              :                 case E_V8HImode:
   13438              :                   if (pattern1659 (x2, 
   13439              : E_QImode, 
   13440              : E_V8HImode, 
   13441              : E_V8SImode) != 0
   13442              :                       || !(
   13443              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13444              : (TARGET_AVX512F) && 
   13445              : #line 23502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13446              : (TARGET_SSSE3 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW
   13447              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   13448              :                     return -1;
   13449              :                   return 8677; /* *ssse3_pmulhrswv8hi3_mask */
   13450              : 
   13451              :                 default:
   13452              :                   return -1;
   13453              :                 }
   13454              : 
   13455              :             default:
   13456              :               return -1;
   13457              :             }
   13458              : 
   13459              :         default:
   13460              :           return -1;
   13461              :         }
   13462              : 
   13463              :     default:
   13464              :       return -1;
   13465              :     }
   13466              : }
   13467              : 
   13468              :  int
   13469              : recog_206 (rtx x1 ATTRIBUTE_UNUSED,
   13470              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13471              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13472              : {
   13473              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13474              :   rtx x2, x3, x4, x5, x6, x7;
   13475              :   int res ATTRIBUTE_UNUSED;
   13476              :   x2 = XEXP (x1, 1);
   13477              :   x3 = XEXP (x2, 0);
   13478              :   x4 = XEXP (x3, 0);
   13479              :   operands[1] = x4;
   13480              :   x5 = XEXP (x3, 1);
   13481              :   operands[2] = x5;
   13482              :   x6 = XEXP (x2, 2);
   13483              :   switch (GET_CODE (x6))
   13484              :     {
   13485              :     case CONST_INT:
   13486              :       switch (pattern138 (x2))
   13487              :         {
   13488              :         case 0:
   13489              :           if (!(
   13490              : #line 2835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13491              : (TARGET_SSE) && 
   13492              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13493              : (TARGET_AVX512FP16)))
   13494              :             return -1;
   13495              :           return 2885; /* avx512fp16_vmdivv8hf3 */
   13496              : 
   13497              :         case 1:
   13498              :           if (!
   13499              : #line 2835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13500              : (TARGET_SSE))
   13501              :             return -1;
   13502              :           return 2893; /* sse_vmdivv4sf3 */
   13503              : 
   13504              :         case 2:
   13505              :           if (!(
   13506              : #line 2835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13507              : (TARGET_SSE) && 
   13508              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13509              : (TARGET_SSE2)))
   13510              :             return -1;
   13511              :           return 2901; /* sse2_vmdivv2df3 */
   13512              : 
   13513              :         default:
   13514              :           return -1;
   13515              :         }
   13516              : 
   13517              :     case REG:
   13518              :     case SUBREG:
   13519              :       operands[4] = x6;
   13520              :       x7 = XEXP (x2, 1);
   13521              :       operands[3] = x7;
   13522              :       switch (GET_MODE (operands[0]))
   13523              :         {
   13524              :         case E_V32HFmode:
   13525              :           if (pattern1017 (x2, 
   13526              : E_V32HFmode, 
   13527              : E_SImode) != 0
   13528              :               || !(
   13529              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13530              : (TARGET_AVX512F) && (
   13531              : #line 2933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13532              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && 1) && 
   13533              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13534              : (TARGET_AVX512FP16))))
   13535              :             return -1;
   13536              :           return 2907; /* avx512fp16_divv32hf3_mask */
   13537              : 
   13538              :         case E_V16HFmode:
   13539              :           if (pattern1017 (x2, 
   13540              : E_V16HFmode, 
   13541              : E_HImode) != 0
   13542              :               || !(
   13543              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13544              : (TARGET_AVX512F) && (
   13545              : #line 2933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13546              : (TARGET_SSE && (32 == 64 || TARGET_AVX512VL) && 1) && 
   13547              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13548              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13549              :             return -1;
   13550              :           return 2910; /* avx512fp16_divv16hf3_mask */
   13551              : 
   13552              :         case E_V8HFmode:
   13553              :           if (pattern1017 (x2, 
   13554              : E_V8HFmode, 
   13555              : E_QImode) != 0
   13556              :               || !(
   13557              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13558              : (TARGET_AVX512F) && (
   13559              : #line 2933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13560              : (TARGET_SSE && (16 == 64 || TARGET_AVX512VL) && 1) && 
   13561              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13562              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13563              :             return -1;
   13564              :           return 2912; /* avx512fp16_divv8hf3_mask */
   13565              : 
   13566              :         case E_V16SFmode:
   13567              :           if (pattern1017 (x2, 
   13568              : E_V16SFmode, 
   13569              : E_HImode) != 0
   13570              :               || !(
   13571              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13572              : (TARGET_AVX512F) && (
   13573              : #line 2933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13574              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && 1) && 
   13575              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13576              : (TARGET_AVX512F))))
   13577              :             return -1;
   13578              :           return 2915; /* avx512f_divv16sf3_mask */
   13579              : 
   13580              :         case E_V8SFmode:
   13581              :           if (pattern1017 (x2, 
   13582              : E_V8SFmode, 
   13583              : E_QImode) != 0
   13584              :               || !(
   13585              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13586              : (TARGET_AVX512F) && (
   13587              : #line 2933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13588              : (TARGET_SSE && (32 == 64 || TARGET_AVX512VL) && 1) && 
   13589              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13590              : (TARGET_AVX))))
   13591              :             return -1;
   13592              :           return 2918; /* avx_divv8sf3_mask */
   13593              : 
   13594              :         case E_V4SFmode:
   13595              :           if (pattern1017 (x2, 
   13596              : E_V4SFmode, 
   13597              : E_QImode) != 0
   13598              :               || !(
   13599              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13600              : (TARGET_AVX512F) && 
   13601              : #line 2933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13602              : (TARGET_SSE && (16 == 64 || TARGET_AVX512VL) && 1)))
   13603              :             return -1;
   13604              :           return 2920; /* sse_divv4sf3_mask */
   13605              : 
   13606              :         case E_V8DFmode:
   13607              :           if (pattern1017 (x2, 
   13608              : E_V8DFmode, 
   13609              : E_QImode) != 0
   13610              :               || !(
   13611              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13612              : (TARGET_AVX512F) && (
   13613              : #line 2933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13614              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && 1) && 
   13615              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13616              : (TARGET_AVX512F))))
   13617              :             return -1;
   13618              :           return 2923; /* avx512f_divv8df3_mask */
   13619              : 
   13620              :         case E_V4DFmode:
   13621              :           if (pattern1017 (x2, 
   13622              : E_V4DFmode, 
   13623              : E_QImode) != 0
   13624              :               || !(
   13625              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13626              : (TARGET_AVX512F) && (
   13627              : #line 2933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13628              : (TARGET_SSE && (32 == 64 || TARGET_AVX512VL) && 1) && 
   13629              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13630              : (TARGET_AVX))))
   13631              :             return -1;
   13632              :           return 2926; /* avx_divv4df3_mask */
   13633              : 
   13634              :         case E_V2DFmode:
   13635              :           if (pattern1017 (x2, 
   13636              : E_V2DFmode, 
   13637              : E_QImode) != 0
   13638              :               || !(
   13639              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13640              : (TARGET_AVX512F) && (
   13641              : #line 2933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13642              : (TARGET_SSE && (16 == 64 || TARGET_AVX512VL) && 1) && 
   13643              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13644              : (TARGET_SSE2))))
   13645              :             return -1;
   13646              :           return 2928; /* sse2_divv2df3_mask */
   13647              : 
   13648              :         case E_V32BFmode:
   13649              :           if (pattern136 (x2, 
   13650              : E_V32BFmode, 
   13651              : E_SImode) != 0
   13652              :               || !(
   13653              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13654              : (TARGET_AVX512F) && 
   13655              : #line 33099 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13656              : (TARGET_AVX10_2)))
   13657              :             return -1;
   13658              :           return 10696; /* avx10_2_divbf16_v32bf_mask */
   13659              : 
   13660              :         case E_V16BFmode:
   13661              :           if (pattern136 (x2, 
   13662              : E_V16BFmode, 
   13663              : E_HImode) != 0
   13664              :               || !(
   13665              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13666              : (TARGET_AVX512F) && 
   13667              : #line 33099 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13668              : (TARGET_AVX10_2)))
   13669              :             return -1;
   13670              :           return 10704; /* avx10_2_divbf16_v16bf_mask */
   13671              : 
   13672              :         case E_V8BFmode:
   13673              :           if (pattern136 (x2, 
   13674              : E_V8BFmode, 
   13675              : E_QImode) != 0
   13676              :               || !(
   13677              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13678              : (TARGET_AVX512F) && 
   13679              : #line 33099 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13680              : (TARGET_AVX10_2)))
   13681              :             return -1;
   13682              :           return 10712; /* avx10_2_divbf16_v8bf_mask */
   13683              : 
   13684              :         default:
   13685              :           return -1;
   13686              :         }
   13687              : 
   13688              :     default:
   13689              :       return -1;
   13690              :     }
   13691              : }
   13692              : 
   13693              :  int
   13694              : recog_214 (rtx x1 ATTRIBUTE_UNUSED,
   13695              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13696              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13697              : {
   13698              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13699              :   rtx x2, x3;
   13700              :   int res ATTRIBUTE_UNUSED;
   13701              :   x2 = XEXP (x1, 1);
   13702              :   x3 = XVECEXP (x2, 0, 0);
   13703              :   operands[1] = x3;
   13704              :   switch (GET_MODE (operands[0]))
   13705              :     {
   13706              :     case E_V8HImode:
   13707              :       if (!register_operand (operands[0], E_V8HImode)
   13708              :           || GET_MODE (x2) != E_V8HImode
   13709              :           || !vector_operand (operands[1], E_V8HFmode)
   13710              :           || !(
   13711              : #line 8236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13712              : (TARGET_AVX512FP16) && 
   13713              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13714              : (TARGET_AVX512VL)))
   13715              :         return -1;
   13716              :       return 4591; /* unspec_avx512fp16_fix_truncv8hi2 */
   13717              : 
   13718              :     case E_V16HImode:
   13719              :       if (!register_operand (operands[0], E_V16HImode)
   13720              :           || GET_MODE (x2) != E_V16HImode
   13721              :           || !vector_operand (operands[1], E_V16HFmode)
   13722              :           || !(
   13723              : #line 8236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13724              : (TARGET_AVX512FP16) && 
   13725              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13726              : (TARGET_AVX512VL)))
   13727              :         return -1;
   13728              :       return 4599; /* unspec_avx512fp16_fix_truncv16hi2 */
   13729              : 
   13730              :     case E_V32HImode:
   13731              :       if (!register_operand (operands[0], E_V32HImode)
   13732              :           || GET_MODE (x2) != E_V32HImode
   13733              :           || !vector_operand (operands[1], E_V32HFmode)
   13734              :           || !
   13735              : #line 8236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13736              : (TARGET_AVX512FP16))
   13737              :         return -1;
   13738              :       return 4607; /* unspec_avx512fp16_fix_truncv32hi2 */
   13739              : 
   13740              :     case E_V8SImode:
   13741              :       switch (pattern654 (x2, 
   13742              : E_V8SImode))
   13743              :         {
   13744              :         case 0:
   13745              :           if (!(
   13746              : #line 8236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13747              : (TARGET_AVX512FP16) && 
   13748              : #line 688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13749              : (TARGET_AVX512VL)))
   13750              :             return -1;
   13751              :           return 4615; /* unspec_avx512fp16_fix_truncv8si2 */
   13752              : 
   13753              :         case 1:
   13754              :           if (!
   13755              : #line 9152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13756              : (TARGET_AVX && 1))
   13757              :             return -1;
   13758              :           return 4913; /* unspec_fix_truncv8sfv8si2 */
   13759              : 
   13760              :         case 2:
   13761              :           if (!
   13762              : #line 9926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13763              : (TARGET_AVX512F))
   13764              :             return -1;
   13765              :           return 5046; /* unspec_fix_truncv8dfv8si2 */
   13766              : 
   13767              :         default:
   13768              :           return -1;
   13769              :         }
   13770              : 
   13771              :     case E_V16SImode:
   13772              :       switch (pattern655 (x2, 
   13773              : E_V16SImode))
   13774              :         {
   13775              :         case 0:
   13776              :           if (!
   13777              : #line 8236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13778              : (TARGET_AVX512FP16))
   13779              :             return -1;
   13780              :           return 4623; /* unspec_avx512fp16_fix_truncv16si2 */
   13781              : 
   13782              :         case 1:
   13783              :           if (!
   13784              : #line 9132 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13785              : (TARGET_AVX512F))
   13786              :             return -1;
   13787              :           return 4897; /* unspec_fix_truncv16sfv16si2 */
   13788              : 
   13789              :         default:
   13790              :           return -1;
   13791              :         }
   13792              : 
   13793              :     case E_V8DImode:
   13794              :       switch (pattern656 (x2))
   13795              :         {
   13796              :         case 0:
   13797              :           if (!
   13798              : #line 8236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13799              : (TARGET_AVX512FP16))
   13800              :             return -1;
   13801              :           return 4631; /* unspec_avx512fp16_fix_truncv8di2 */
   13802              : 
   13803              :         case 1:
   13804              :           if (!
   13805              : #line 10055 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13806              : (TARGET_AVX512DQ && 1))
   13807              :             return -1;
   13808              :           return 5075; /* unspec_fix_truncv8dfv8di2 */
   13809              : 
   13810              :         case 2:
   13811              :           if (!
   13812              : #line 10098 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13813              : (TARGET_AVX512DQ && 1))
   13814              :             return -1;
   13815              :           return 5123; /* unspec_fix_truncv8sfv8di2 */
   13816              : 
   13817              :         default:
   13818              :           return -1;
   13819              :         }
   13820              : 
   13821              :     case E_V4SImode:
   13822              :       if (!register_operand (operands[0], E_V4SImode)
   13823              :           || GET_MODE (x2) != E_V4SImode)
   13824              :         return -1;
   13825              :       switch (GET_MODE (operands[1]))
   13826              :         {
   13827              :         case E_V8HFmode:
   13828              :           if (!register_operand (operands[1], E_V8HFmode)
   13829              :               || !
   13830              : #line 8274 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13831              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   13832              :             return -1;
   13833              :           return 4687; /* unspec_avx512fp16_fix_truncv4si2 */
   13834              : 
   13835              :         case E_V4SFmode:
   13836              :           if (!vector_operand (operands[1], E_V4SFmode)
   13837              :               || !
   13838              : #line 9171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13839              : (TARGET_SSE2 && 1))
   13840              :             return -1;
   13841              :           return 4917; /* unspec_fix_truncv4sfv4si2 */
   13842              : 
   13843              :         case E_V4DFmode:
   13844              :           if (!nonimmediate_operand (operands[1], E_V4DFmode)
   13845              :               || !
   13846              : #line 10016 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13847              : (TARGET_AVX || (TARGET_AVX512VL && TARGET_AVX512F)))
   13848              :             return -1;
   13849              :           return 5067; /* unspec_fix_truncv4dfv4si2 */
   13850              : 
   13851              :         case E_V2DFmode:
   13852              :           if (!vector_operand (operands[1], E_V2DFmode)
   13853              :               || !
   13854              : #line 10298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13855              : (TARGET_SSE2 && 1))
   13856              :             return -1;
   13857              :           return 5163; /* unspec_sse2_cvttpd2dq */
   13858              : 
   13859              :         default:
   13860              :           return -1;
   13861              :         }
   13862              : 
   13863              :     case E_V4DImode:
   13864              :       switch (pattern657 (x2))
   13865              :         {
   13866              :         case 0:
   13867              :           if (!
   13868              : #line 8274 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13869              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   13870              :             return -1;
   13871              :           return 4691; /* unspec_avx512fp16_fix_truncv4di2 */
   13872              : 
   13873              :         case 1:
   13874              :           if (!(
   13875              : #line 10055 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13876              : (TARGET_AVX512DQ && 1) && 
   13877              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13878              : (TARGET_AVX512VL)))
   13879              :             return -1;
   13880              :           return 5083; /* unspec_fix_truncv4dfv4di2 */
   13881              : 
   13882              :         case 2:
   13883              :           if (!(
   13884              : #line 10098 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13885              : (TARGET_AVX512DQ && 1) && 
   13886              : #line 620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13887              : (TARGET_AVX512VL)))
   13888              :             return -1;
   13889              :           return 5131; /* unspec_fix_truncv4sfv4di2 */
   13890              : 
   13891              :         default:
   13892              :           return -1;
   13893              :         }
   13894              : 
   13895              :     case E_V2DImode:
   13896              :       switch (pattern658 (x2))
   13897              :         {
   13898              :         case 0:
   13899              :           if (!
   13900              : #line 8324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13901              : (TARGET_AVX512FP16 && TARGET_AVX512VL))
   13902              :             return -1;
   13903              :           return 4711; /* unspec_avx512fp16_fix_truncv2di2 */
   13904              : 
   13905              :         case 1:
   13906              :           if (!(
   13907              : #line 10055 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13908              : (TARGET_AVX512DQ && 1) && 
   13909              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13910              : (TARGET_AVX512VL)))
   13911              :             return -1;
   13912              :           return 5087; /* unspec_fix_truncv2dfv2di2 */
   13913              : 
   13914              :         case 2:
   13915              :           if (!
   13916              : #line 10119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13917              : (TARGET_AVX512DQ && TARGET_AVX512VL))
   13918              :             return -1;
   13919              :           return 5147; /* unspec_avx512dq_fix_truncv2sfv2di2 */
   13920              : 
   13921              :         default:
   13922              :           return -1;
   13923              :         }
   13924              : 
   13925              :     default:
   13926              :       return -1;
   13927              :     }
   13928              : }
   13929              : 
   13930              :  int
   13931              : recog_229 (rtx x1 ATTRIBUTE_UNUSED,
   13932              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13933              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13934              : {
   13935              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13936              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   13937              :   rtx x10, x11, x12, x13, x14;
   13938              :   int res ATTRIBUTE_UNUSED;
   13939              :   x2 = XEXP (x1, 1);
   13940              :   x3 = XVECEXP (x2, 0, 0);
   13941              :   x4 = XEXP (x3, 2);
   13942              :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   13943              :     return -1;
   13944              :   x5 = XEXP (x3, 0);
   13945              :   x6 = XEXP (x5, 0);
   13946              :   switch (GET_CODE (x6))
   13947              :     {
   13948              :     case SQRT:
   13949              :       x7 = XEXP (x6, 0);
   13950              :       operands[1] = x7;
   13951              :       x8 = XEXP (x3, 1);
   13952              :       operands[2] = x8;
   13953              :       x9 = XVECEXP (x2, 0, 1);
   13954              :       operands[3] = x9;
   13955              :       if (!const_4_or_8_to_11_operand (operands[3], E_SImode))
   13956              :         return -1;
   13957              :       switch (GET_MODE (operands[0]))
   13958              :         {
   13959              :         case E_V8HFmode:
   13960              :           if (pattern1414 (x2, 
   13961              : E_V8HFmode, 
   13962              : E_HFmode) != 0
   13963              :               || !(
   13964              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13965              : (TARGET_AVX512F) && (
   13966              : #line 3144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13967              : (TARGET_SSE) && 
   13968              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13969              : (TARGET_AVX512FP16))))
   13970              :             return -1;
   13971              :           return 2995; /* *avx512fp16_vmsqrtv8hf2_round */
   13972              : 
   13973              :         case E_V4SFmode:
   13974              :           if (pattern1414 (x2, 
   13975              : E_V4SFmode, 
   13976              : E_SFmode) != 0
   13977              :               || !(
   13978              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13979              : (TARGET_AVX512F) && 
   13980              : #line 3144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13981              : (TARGET_SSE)))
   13982              :             return -1;
   13983              :           return 2999; /* *sse_vmsqrtv4sf2_round */
   13984              : 
   13985              :         case E_V2DFmode:
   13986              :           if (pattern1414 (x2, 
   13987              : E_V2DFmode, 
   13988              : E_DFmode) != 0
   13989              :               || !(
   13990              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13991              : (TARGET_AVX512F) && (
   13992              : #line 3144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13993              : (TARGET_SSE) && 
   13994              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13995              : (TARGET_SSE2))))
   13996              :             return -1;
   13997              :           return 3003; /* *sse2_vmsqrtv2df2_round */
   13998              : 
   13999              :         default:
   14000              :           return -1;
   14001              :         }
   14002              : 
   14003              :     case FLOAT:
   14004              :       switch (pattern912 (x2))
   14005              :         {
   14006              :         case 0:
   14007              :           if (!(
   14008              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14009              : (TARGET_AVX512F) && 
   14010              : #line 8219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14011              : (TARGET_AVX512FP16)))
   14012              :             return -1;
   14013              :           return 4584; /* avx512fp16_vcvtsi2sh_round */
   14014              : 
   14015              :         case 1:
   14016              :           if (!(
   14017              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14018              : (TARGET_AVX512F) && (
   14019              : #line 8219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14020              : (TARGET_AVX512FP16) && 
   14021              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14022              : (TARGET_64BIT))))
   14023              :             return -1;
   14024              :           return 4588; /* avx512fp16_vcvtsi2shq_round */
   14025              : 
   14026              :         case 2:
   14027              :           if (!(
   14028              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14029              : (TARGET_AVX512F) && 
   14030              : #line 8885 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14031              : (TARGET_SSE)))
   14032              :             return -1;
   14033              :           return 4817; /* sse_cvtsi2ss_round */
   14034              : 
   14035              :         case 3:
   14036              :           if (!(
   14037              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14038              : (TARGET_AVX512F) && (
   14039              : #line 8885 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14040              : (TARGET_SSE) && 
   14041              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14042              : (TARGET_64BIT))))
   14043              :             return -1;
   14044              :           return 4819; /* sse_cvtsi2ssq_round */
   14045              : 
   14046              :         case 4:
   14047              :           if (!(
   14048              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14049              : (TARGET_AVX512F) && 
   14050              : #line 9370 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14051              : (TARGET_SSE2 && TARGET_64BIT)))
   14052              :             return -1;
   14053              :           return 4930; /* sse2_cvtsi2sdq_round */
   14054              : 
   14055              :         default:
   14056              :           return -1;
   14057              :         }
   14058              : 
   14059              :     case UNSIGNED_FLOAT:
   14060              :       switch (pattern912 (x2))
   14061              :         {
   14062              :         case 0:
   14063              :           if (!(
   14064              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14065              : (TARGET_AVX512F) && 
   14066              : #line 8219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14067              : (TARGET_AVX512FP16)))
   14068              :             return -1;
   14069              :           return 4586; /* avx512fp16_vcvtusi2sh_round */
   14070              : 
   14071              :         case 1:
   14072              :           if (!(
   14073              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14074              : (TARGET_AVX512F) && (
   14075              : #line 8219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14076              : (TARGET_AVX512FP16) && 
   14077              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14078              : (TARGET_64BIT))))
   14079              :             return -1;
   14080              :           return 4590; /* avx512fp16_vcvtusi2shq_round */
   14081              : 
   14082              :         case 2:
   14083              :           if (!(
   14084              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14085              : (TARGET_AVX512F) && 
   14086              : #line 8982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14087              : (TARGET_AVX512F && (V4SFmode == V4SFmode))))
   14088              :             return -1;
   14089              :           return 4835; /* cvtusi2ss32_round */
   14090              : 
   14091              :         case 3:
   14092              :           if (!(
   14093              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14094              : (TARGET_AVX512F) && 
   14095              : #line 8996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14096              : (TARGET_AVX512F && TARGET_64BIT)))
   14097              :             return -1;
   14098              :           return 4838; /* cvtusi2ss64_round */
   14099              : 
   14100              :         case 4:
   14101              :           if (!(
   14102              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14103              : (TARGET_AVX512F) && (
   14104              : #line 8996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14105              : (TARGET_AVX512F && TARGET_64BIT) && 
   14106              : #line 473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14107              : (TARGET_SSE2))))
   14108              :             return -1;
   14109              :           return 4840; /* cvtusi2sd64_round */
   14110              : 
   14111              :         default:
   14112              :           return -1;
   14113              :         }
   14114              : 
   14115              :     case FLOAT_EXTEND:
   14116              :       x7 = XEXP (x6, 0);
   14117              :       if (pattern910 (x7, 
   14118              : 1, 
   14119              : E_HFmode) != 0)
   14120              :         return -1;
   14121              :       x10 = XEXP (x7, 0);
   14122              :       operands[1] = x10;
   14123              :       if (!register_operand (operands[1], E_V8HFmode))
   14124              :         return -1;
   14125              :       x8 = XEXP (x3, 1);
   14126              :       operands[2] = x8;
   14127              :       x9 = XVECEXP (x2, 0, 1);
   14128              :       operands[3] = x9;
   14129              :       if (!const48_operand (operands[3], E_SImode))
   14130              :         return -1;
   14131              :       switch (GET_MODE (operands[0]))
   14132              :         {
   14133              :         case E_V2DFmode:
   14134              :           if (pattern1692 (x2, 
   14135              : E_V2DFmode, 
   14136              : E_DFmode) != 0
   14137              :               || !(
   14138              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14139              : (TARGET_AVX512F) && 
   14140              : #line 8666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14141              : (TARGET_AVX512FP16)))
   14142              :             return -1;
   14143              :           return 4790; /* avx512fp16_vcvtsh2sd_round */
   14144              : 
   14145              :         case E_V4SFmode:
   14146              :           if (pattern1692 (x2, 
   14147              : E_V4SFmode, 
   14148              : E_SFmode) != 0
   14149              :               || !(
   14150              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14151              : (TARGET_AVX512F) && 
   14152              : #line 8666 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14153              : (TARGET_AVX512FP16)))
   14154              :             return -1;
   14155              :           return 4794; /* avx512fp16_vcvtsh2ss_round */
   14156              : 
   14157              :         default:
   14158              :           return -1;
   14159              :         }
   14160              : 
   14161              :     case FLOAT_TRUNCATE:
   14162              :       x9 = XVECEXP (x2, 0, 1);
   14163              :       operands[3] = x9;
   14164              :       if (!const_4_or_8_to_11_operand (operands[3], E_SImode))
   14165              :         return -1;
   14166              :       x7 = XEXP (x6, 0);
   14167              :       switch (GET_CODE (x7))
   14168              :         {
   14169              :         case VEC_SELECT:
   14170              :           x11 = XEXP (x7, 1);
   14171              :           if (GET_CODE (x11) != PARALLEL
   14172              :               || XVECLEN (x11, 0) != 1)
   14173              :             return -1;
   14174              :           x12 = XVECEXP (x11, 0, 0);
   14175              :           if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   14176              :               || pattern1415 (x2, 
   14177              : E_HFmode, 
   14178              : E_V8HFmode) != 0)
   14179              :             return -1;
   14180              :           x10 = XEXP (x7, 0);
   14181              :           operands[1] = x10;
   14182              :           x8 = XEXP (x3, 1);
   14183              :           operands[2] = x8;
   14184              :           if (!register_operand (operands[2], E_V8HFmode))
   14185              :             return -1;
   14186              :           switch (GET_MODE (x7))
   14187              :             {
   14188              :             case E_DFmode:
   14189              :               if (!register_operand (operands[1], E_V2DFmode)
   14190              :                   || !(
   14191              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14192              : (TARGET_AVX512F) && 
   14193              : #line 8696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14194              : (TARGET_AVX512FP16)))
   14195              :                 return -1;
   14196              :               return 4801; /* avx512fp16_vcvtsd2sh_round */
   14197              : 
   14198              :             case E_SFmode:
   14199              :               if (!register_operand (operands[1], E_V4SFmode)
   14200              :                   || !(
   14201              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14202              : (TARGET_AVX512F) && 
   14203              : #line 8696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14204              : (TARGET_AVX512FP16)))
   14205              :                 return -1;
   14206              :               return 4805; /* avx512fp16_vcvtss2sh_round */
   14207              : 
   14208              :             default:
   14209              :               return -1;
   14210              :             }
   14211              : 
   14212              :         case REG:
   14213              :         case SUBREG:
   14214              :         case MEM:
   14215              :           operands[2] = x7;
   14216              :           if (!nonimmediate_operand (operands[2], E_V2DFmode)
   14217              :               || pattern1415 (x2, 
   14218              : E_V2SFmode, 
   14219              : E_V4SFmode) != 0)
   14220              :             return -1;
   14221              :           x8 = XEXP (x3, 1);
   14222              :           operands[1] = x8;
   14223              :           if (!register_operand (operands[1], E_V4SFmode)
   14224              :               || !(
   14225              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14226              : (TARGET_AVX512F) && 
   14227              : #line 10369 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14228              : (TARGET_SSE2)))
   14229              :             return -1;
   14230              :           return 5169; /* sse2_cvtsd2ss_round */
   14231              : 
   14232              :         default:
   14233              :           return -1;
   14234              :         }
   14235              : 
   14236              :     case UNSPEC:
   14237              :       if (XVECLEN (x6, 0) != 2
   14238              :           || XINT (x6, 1) != 95)
   14239              :         return -1;
   14240              :       x13 = XVECEXP (x6, 0, 0);
   14241              :       operands[2] = x13;
   14242              :       x14 = XVECEXP (x6, 0, 1);
   14243              :       operands[3] = x14;
   14244              :       if (!const_0_to_255_operand (operands[3], E_SImode))
   14245              :         return -1;
   14246              :       x8 = XEXP (x3, 1);
   14247              :       operands[1] = x8;
   14248              :       x9 = XVECEXP (x2, 0, 1);
   14249              :       operands[4] = x9;
   14250              :       if (!const48_operand (operands[4], E_SImode))
   14251              :         return -1;
   14252              :       switch (GET_MODE (operands[0]))
   14253              :         {
   14254              :         case E_V8HFmode:
   14255              :           if (pattern1595 (x2, 
   14256              : E_V8HFmode, 
   14257              : E_HFmode) != 0
   14258              :               || !(
   14259              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14260              : (TARGET_AVX512F) && (
   14261              : #line 14630 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14262              : (TARGET_AVX512F) && 
   14263              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14264              : (TARGET_AVX512FP16))))
   14265              :             return -1;
   14266              :           return 7208; /* *avx512f_rndscalev8hf_round */
   14267              : 
   14268              :         case E_V4SFmode:
   14269              :           if (pattern1595 (x2, 
   14270              : E_V4SFmode, 
   14271              : E_SFmode) != 0
   14272              :               || !
   14273              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14274              : (TARGET_AVX512F))
   14275              :             return -1;
   14276              :           return 7210; /* *avx512f_rndscalev4sf_round */
   14277              : 
   14278              :         case E_V2DFmode:
   14279              :           if (pattern1595 (x2, 
   14280              : E_V2DFmode, 
   14281              : E_DFmode) != 0
   14282              :               || !(
   14283              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14284              : (TARGET_AVX512F) && (
   14285              : #line 14630 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14286              : (TARGET_AVX512F) && 
   14287              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14288              : (TARGET_SSE2))))
   14289              :             return -1;
   14290              :           return 7212; /* *avx512f_rndscalev2df_round */
   14291              : 
   14292              :         default:
   14293              :           return -1;
   14294              :         }
   14295              : 
   14296              :     default:
   14297              :       return -1;
   14298              :     }
   14299              : }
   14300              : 
   14301              :  int
   14302              : recog_231 (rtx x1 ATTRIBUTE_UNUSED,
   14303              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   14304              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   14305              : {
   14306              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   14307              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   14308              :   rtx x10, x11, x12, x13, x14;
   14309              :   int res ATTRIBUTE_UNUSED;
   14310              :   x2 = XEXP (x1, 1);
   14311              :   x3 = XVECEXP (x2, 0, 0);
   14312              :   x4 = XEXP (x3, 0);
   14313              :   switch (GET_CODE (x4))
   14314              :     {
   14315              :     case PLUS:
   14316              :       switch (pattern662 (x2))
   14317              :         {
   14318              :         case 0:
   14319              :           if (!(
   14320              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14321              : (TARGET_AVX512F) && (
   14322              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14323              : (TARGET_AVX512F) && (
   14324              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14325              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V32HFmode, operands)
   14326              :    && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   14327              :                                                               || V32HFmode == V8DFmode
   14328              :                                                               || V32HFmode == V8DImode
   14329              :                                                               || V32HFmode == V16SImode
   14330              :                                                               || V32HFmode == V32HFmode)) && 
   14331              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14332              : (TARGET_AVX512FP16)))))
   14333              :             return -1;
   14334              :           return 2740; /* *addv32hf3_mask_round */
   14335              : 
   14336              :         case 1:
   14337              :           if (!(
   14338              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14339              : (TARGET_AVX512F) && (
   14340              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14341              : (TARGET_AVX512F) && (
   14342              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14343              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V16HFmode, operands)
   14344              :    && (32 == 64 || TARGET_AVX512VL) && (V16HFmode == V16SFmode
   14345              :                                                               || V16HFmode == V8DFmode
   14346              :                                                               || V16HFmode == V8DImode
   14347              :                                                               || V16HFmode == V16SImode
   14348              :                                                               || V16HFmode == V32HFmode)) && 
   14349              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14350              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14351              :             return -1;
   14352              :           return 2748; /* *addv16hf3_mask_round */
   14353              : 
   14354              :         case 2:
   14355              :           if (!(
   14356              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14357              : (TARGET_AVX512F) && (
   14358              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14359              : (TARGET_AVX512F) && (
   14360              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14361              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V8HFmode, operands)
   14362              :    && (16 == 64 || TARGET_AVX512VL) && (V8HFmode == V16SFmode
   14363              :                                                               || V8HFmode == V8DFmode
   14364              :                                                               || V8HFmode == V8DImode
   14365              :                                                               || V8HFmode == V16SImode
   14366              :                                                               || V8HFmode == V32HFmode)) && 
   14367              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14368              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14369              :             return -1;
   14370              :           return 2756; /* *addv8hf3_mask_round */
   14371              : 
   14372              :         case 3:
   14373              :           if (!(
   14374              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14375              : (TARGET_AVX512F) && (
   14376              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14377              : (TARGET_AVX512F) && (
   14378              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14379              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V16SFmode, operands)
   14380              :    && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   14381              :                                                               || V16SFmode == V8DFmode
   14382              :                                                               || V16SFmode == V8DImode
   14383              :                                                               || V16SFmode == V16SImode
   14384              :                                                               || V16SFmode == V32HFmode)) && 
   14385              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14386              : (TARGET_AVX512F)))))
   14387              :             return -1;
   14388              :           return 2764; /* *addv16sf3_mask_round */
   14389              : 
   14390              :         case 4:
   14391              :           if (!(
   14392              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14393              : (TARGET_AVX512F) && (
   14394              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14395              : (TARGET_AVX512F) && (
   14396              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14397              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V8SFmode, operands)
   14398              :    && (32 == 64 || TARGET_AVX512VL) && (V8SFmode == V16SFmode
   14399              :                                                               || V8SFmode == V8DFmode
   14400              :                                                               || V8SFmode == V8DImode
   14401              :                                                               || V8SFmode == V16SImode
   14402              :                                                               || V8SFmode == V32HFmode)) && 
   14403              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14404              : (TARGET_AVX)))))
   14405              :             return -1;
   14406              :           return 2772; /* *addv8sf3_mask_round */
   14407              : 
   14408              :         case 5:
   14409              :           if (!(
   14410              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14411              : (TARGET_AVX512F) && (
   14412              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14413              : (TARGET_AVX512F) && 
   14414              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14415              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V4SFmode, operands)
   14416              :    && (16 == 64 || TARGET_AVX512VL) && (V4SFmode == V16SFmode
   14417              :                                                               || V4SFmode == V8DFmode
   14418              :                                                               || V4SFmode == V8DImode
   14419              :                                                               || V4SFmode == V16SImode
   14420              :                                                               || V4SFmode == V32HFmode)))))
   14421              :             return -1;
   14422              :           return 2780; /* *addv4sf3_mask_round */
   14423              : 
   14424              :         case 6:
   14425              :           if (!(
   14426              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14427              : (TARGET_AVX512F) && (
   14428              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14429              : (TARGET_AVX512F) && (
   14430              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14431              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V8DFmode, operands)
   14432              :    && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   14433              :                                                               || V8DFmode == V8DFmode
   14434              :                                                               || V8DFmode == V8DImode
   14435              :                                                               || V8DFmode == V16SImode
   14436              :                                                               || V8DFmode == V32HFmode)) && 
   14437              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14438              : (TARGET_AVX512F)))))
   14439              :             return -1;
   14440              :           return 2788; /* *addv8df3_mask_round */
   14441              : 
   14442              :         case 7:
   14443              :           if (!(
   14444              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14445              : (TARGET_AVX512F) && (
   14446              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14447              : (TARGET_AVX512F) && (
   14448              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14449              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V4DFmode, operands)
   14450              :    && (32 == 64 || TARGET_AVX512VL) && (V4DFmode == V16SFmode
   14451              :                                                               || V4DFmode == V8DFmode
   14452              :                                                               || V4DFmode == V8DImode
   14453              :                                                               || V4DFmode == V16SImode
   14454              :                                                               || V4DFmode == V32HFmode)) && 
   14455              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14456              : (TARGET_AVX)))))
   14457              :             return -1;
   14458              :           return 2796; /* *addv4df3_mask_round */
   14459              : 
   14460              :         case 8:
   14461              :           if (!(
   14462              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14463              : (TARGET_AVX512F) && (
   14464              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14465              : (TARGET_AVX512F) && (
   14466              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14467              : (TARGET_SSE && ix86_binary_operator_ok (PLUS, V2DFmode, operands)
   14468              :    && (16 == 64 || TARGET_AVX512VL) && (V2DFmode == V16SFmode
   14469              :                                                               || V2DFmode == V8DFmode
   14470              :                                                               || V2DFmode == V8DImode
   14471              :                                                               || V2DFmode == V16SImode
   14472              :                                                               || V2DFmode == V32HFmode)) && 
   14473              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14474              : (TARGET_SSE2)))))
   14475              :             return -1;
   14476              :           return 2804; /* *addv2df3_mask_round */
   14477              : 
   14478              :         case 9:
   14479              :           if (!(
   14480              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14481              : (TARGET_AVX512F) && (
   14482              : #line 2744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14483              : (TARGET_SSE) && 
   14484              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14485              : (TARGET_AVX512FP16))))
   14486              :             return -1;
   14487              :           return 2816; /* avx512fp16_vmaddv8hf3_round */
   14488              : 
   14489              :         case 10:
   14490              :           if (!(
   14491              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14492              : (TARGET_AVX512F) && 
   14493              : #line 2744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14494              : (TARGET_SSE)))
   14495              :             return -1;
   14496              :           return 2824; /* sse_vmaddv4sf3_round */
   14497              : 
   14498              :         case 11:
   14499              :           if (!(
   14500              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14501              : (TARGET_AVX512F) && (
   14502              : #line 2744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14503              : (TARGET_SSE) && 
   14504              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14505              : (TARGET_SSE2))))
   14506              :             return -1;
   14507              :           return 2832; /* sse2_vmaddv2df3_round */
   14508              : 
   14509              :         default:
   14510              :           return -1;
   14511              :         }
   14512              : 
   14513              :     case MINUS:
   14514              :       switch (pattern662 (x2))
   14515              :         {
   14516              :         case 0:
   14517              :           if (!(
   14518              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14519              : (TARGET_AVX512F) && (
   14520              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14521              : (TARGET_AVX512F) && (
   14522              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14523              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V32HFmode, operands)
   14524              :    && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   14525              :                                                               || V32HFmode == V8DFmode
   14526              :                                                               || V32HFmode == V8DImode
   14527              :                                                               || V32HFmode == V16SImode
   14528              :                                                               || V32HFmode == V32HFmode)) && 
   14529              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14530              : (TARGET_AVX512FP16)))))
   14531              :             return -1;
   14532              :           return 2744; /* *subv32hf3_mask_round */
   14533              : 
   14534              :         case 1:
   14535              :           if (!(
   14536              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14537              : (TARGET_AVX512F) && (
   14538              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14539              : (TARGET_AVX512F) && (
   14540              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14541              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V16HFmode, operands)
   14542              :    && (32 == 64 || TARGET_AVX512VL) && (V16HFmode == V16SFmode
   14543              :                                                               || V16HFmode == V8DFmode
   14544              :                                                               || V16HFmode == V8DImode
   14545              :                                                               || V16HFmode == V16SImode
   14546              :                                                               || V16HFmode == V32HFmode)) && 
   14547              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14548              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14549              :             return -1;
   14550              :           return 2752; /* *subv16hf3_mask_round */
   14551              : 
   14552              :         case 2:
   14553              :           if (!(
   14554              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14555              : (TARGET_AVX512F) && (
   14556              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14557              : (TARGET_AVX512F) && (
   14558              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14559              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V8HFmode, operands)
   14560              :    && (16 == 64 || TARGET_AVX512VL) && (V8HFmode == V16SFmode
   14561              :                                                               || V8HFmode == V8DFmode
   14562              :                                                               || V8HFmode == V8DImode
   14563              :                                                               || V8HFmode == V16SImode
   14564              :                                                               || V8HFmode == V32HFmode)) && 
   14565              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14566              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14567              :             return -1;
   14568              :           return 2760; /* *subv8hf3_mask_round */
   14569              : 
   14570              :         case 3:
   14571              :           if (!(
   14572              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14573              : (TARGET_AVX512F) && (
   14574              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14575              : (TARGET_AVX512F) && (
   14576              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14577              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V16SFmode, operands)
   14578              :    && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   14579              :                                                               || V16SFmode == V8DFmode
   14580              :                                                               || V16SFmode == V8DImode
   14581              :                                                               || V16SFmode == V16SImode
   14582              :                                                               || V16SFmode == V32HFmode)) && 
   14583              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14584              : (TARGET_AVX512F)))))
   14585              :             return -1;
   14586              :           return 2768; /* *subv16sf3_mask_round */
   14587              : 
   14588              :         case 4:
   14589              :           if (!(
   14590              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14591              : (TARGET_AVX512F) && (
   14592              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14593              : (TARGET_AVX512F) && (
   14594              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14595              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V8SFmode, operands)
   14596              :    && (32 == 64 || TARGET_AVX512VL) && (V8SFmode == V16SFmode
   14597              :                                                               || V8SFmode == V8DFmode
   14598              :                                                               || V8SFmode == V8DImode
   14599              :                                                               || V8SFmode == V16SImode
   14600              :                                                               || V8SFmode == V32HFmode)) && 
   14601              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14602              : (TARGET_AVX)))))
   14603              :             return -1;
   14604              :           return 2776; /* *subv8sf3_mask_round */
   14605              : 
   14606              :         case 5:
   14607              :           if (!(
   14608              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14609              : (TARGET_AVX512F) && (
   14610              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14611              : (TARGET_AVX512F) && 
   14612              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14613              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V4SFmode, operands)
   14614              :    && (16 == 64 || TARGET_AVX512VL) && (V4SFmode == V16SFmode
   14615              :                                                               || V4SFmode == V8DFmode
   14616              :                                                               || V4SFmode == V8DImode
   14617              :                                                               || V4SFmode == V16SImode
   14618              :                                                               || V4SFmode == V32HFmode)))))
   14619              :             return -1;
   14620              :           return 2784; /* *subv4sf3_mask_round */
   14621              : 
   14622              :         case 6:
   14623              :           if (!(
   14624              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14625              : (TARGET_AVX512F) && (
   14626              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14627              : (TARGET_AVX512F) && (
   14628              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14629              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V8DFmode, operands)
   14630              :    && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   14631              :                                                               || V8DFmode == V8DFmode
   14632              :                                                               || V8DFmode == V8DImode
   14633              :                                                               || V8DFmode == V16SImode
   14634              :                                                               || V8DFmode == V32HFmode)) && 
   14635              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14636              : (TARGET_AVX512F)))))
   14637              :             return -1;
   14638              :           return 2792; /* *subv8df3_mask_round */
   14639              : 
   14640              :         case 7:
   14641              :           if (!(
   14642              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14643              : (TARGET_AVX512F) && (
   14644              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14645              : (TARGET_AVX512F) && (
   14646              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14647              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V4DFmode, operands)
   14648              :    && (32 == 64 || TARGET_AVX512VL) && (V4DFmode == V16SFmode
   14649              :                                                               || V4DFmode == V8DFmode
   14650              :                                                               || V4DFmode == V8DImode
   14651              :                                                               || V4DFmode == V16SImode
   14652              :                                                               || V4DFmode == V32HFmode)) && 
   14653              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14654              : (TARGET_AVX)))))
   14655              :             return -1;
   14656              :           return 2800; /* *subv4df3_mask_round */
   14657              : 
   14658              :         case 8:
   14659              :           if (!(
   14660              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14661              : (TARGET_AVX512F) && (
   14662              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14663              : (TARGET_AVX512F) && (
   14664              : #line 2695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14665              : (TARGET_SSE && ix86_binary_operator_ok (MINUS, V2DFmode, operands)
   14666              :    && (16 == 64 || TARGET_AVX512VL) && (V2DFmode == V16SFmode
   14667              :                                                               || V2DFmode == V8DFmode
   14668              :                                                               || V2DFmode == V8DImode
   14669              :                                                               || V2DFmode == V16SImode
   14670              :                                                               || V2DFmode == V32HFmode)) && 
   14671              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14672              : (TARGET_SSE2)))))
   14673              :             return -1;
   14674              :           return 2808; /* *subv2df3_mask_round */
   14675              : 
   14676              :         case 9:
   14677              :           if (!(
   14678              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14679              : (TARGET_AVX512F) && (
   14680              : #line 2744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14681              : (TARGET_SSE) && 
   14682              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14683              : (TARGET_AVX512FP16))))
   14684              :             return -1;
   14685              :           return 2820; /* avx512fp16_vmsubv8hf3_round */
   14686              : 
   14687              :         case 10:
   14688              :           if (!(
   14689              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14690              : (TARGET_AVX512F) && 
   14691              : #line 2744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14692              : (TARGET_SSE)))
   14693              :             return -1;
   14694              :           return 2828; /* sse_vmsubv4sf3_round */
   14695              : 
   14696              :         case 11:
   14697              :           if (!(
   14698              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14699              : (TARGET_AVX512F) && (
   14700              : #line 2744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14701              : (TARGET_SSE) && 
   14702              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14703              : (TARGET_SSE2))))
   14704              :             return -1;
   14705              :           return 2836; /* sse2_vmsubv2df3_round */
   14706              : 
   14707              :         default:
   14708              :           return -1;
   14709              :         }
   14710              : 
   14711              :     case VEC_MERGE:
   14712              :       return recog_226 (x1, insn, pnum_clobbers);
   14713              : 
   14714              :     case MULT:
   14715              :       switch (pattern662 (x2))
   14716              :         {
   14717              :         case 0:
   14718              :           if (!(
   14719              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14720              : (TARGET_AVX512F) && (
   14721              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14722              : (TARGET_AVX512F) && (
   14723              : #line 2784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14724              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V32HFmode, operands)
   14725              :    && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   14726              :                                                               || V32HFmode == V8DFmode
   14727              :                                                               || V32HFmode == V8DImode
   14728              :                                                               || V32HFmode == V16SImode
   14729              :                                                               || V32HFmode == V32HFmode)) && 
   14730              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14731              : (TARGET_AVX512FP16)))))
   14732              :             return -1;
   14733              :           return 2842; /* *mulv32hf3_mask_round */
   14734              : 
   14735              :         case 1:
   14736              :           if (!(
   14737              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14738              : (TARGET_AVX512F) && (
   14739              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14740              : (TARGET_AVX512F) && (
   14741              : #line 2784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14742              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V16HFmode, operands)
   14743              :    && (32 == 64 || TARGET_AVX512VL) && (V16HFmode == V16SFmode
   14744              :                                                               || V16HFmode == V8DFmode
   14745              :                                                               || V16HFmode == V8DImode
   14746              :                                                               || V16HFmode == V16SImode
   14747              :                                                               || V16HFmode == V32HFmode)) && 
   14748              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14749              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14750              :             return -1;
   14751              :           return 2846; /* *mulv16hf3_mask_round */
   14752              : 
   14753              :         case 2:
   14754              :           if (!(
   14755              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14756              : (TARGET_AVX512F) && (
   14757              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14758              : (TARGET_AVX512F) && (
   14759              : #line 2784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14760              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V8HFmode, operands)
   14761              :    && (16 == 64 || TARGET_AVX512VL) && (V8HFmode == V16SFmode
   14762              :                                                               || V8HFmode == V8DFmode
   14763              :                                                               || V8HFmode == V8DImode
   14764              :                                                               || V8HFmode == V16SImode
   14765              :                                                               || V8HFmode == V32HFmode)) && 
   14766              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14767              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14768              :             return -1;
   14769              :           return 2850; /* *mulv8hf3_mask_round */
   14770              : 
   14771              :         case 3:
   14772              :           if (!(
   14773              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14774              : (TARGET_AVX512F) && (
   14775              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14776              : (TARGET_AVX512F) && (
   14777              : #line 2784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14778              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V16SFmode, operands)
   14779              :    && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   14780              :                                                               || V16SFmode == V8DFmode
   14781              :                                                               || V16SFmode == V8DImode
   14782              :                                                               || V16SFmode == V16SImode
   14783              :                                                               || V16SFmode == V32HFmode)) && 
   14784              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14785              : (TARGET_AVX512F)))))
   14786              :             return -1;
   14787              :           return 2854; /* *mulv16sf3_mask_round */
   14788              : 
   14789              :         case 4:
   14790              :           if (!(
   14791              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14792              : (TARGET_AVX512F) && (
   14793              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14794              : (TARGET_AVX512F) && (
   14795              : #line 2784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14796              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V8SFmode, operands)
   14797              :    && (32 == 64 || TARGET_AVX512VL) && (V8SFmode == V16SFmode
   14798              :                                                               || V8SFmode == V8DFmode
   14799              :                                                               || V8SFmode == V8DImode
   14800              :                                                               || V8SFmode == V16SImode
   14801              :                                                               || V8SFmode == V32HFmode)) && 
   14802              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14803              : (TARGET_AVX)))))
   14804              :             return -1;
   14805              :           return 2858; /* *mulv8sf3_mask_round */
   14806              : 
   14807              :         case 5:
   14808              :           if (!(
   14809              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14810              : (TARGET_AVX512F) && (
   14811              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14812              : (TARGET_AVX512F) && 
   14813              : #line 2784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14814              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V4SFmode, operands)
   14815              :    && (16 == 64 || TARGET_AVX512VL) && (V4SFmode == V16SFmode
   14816              :                                                               || V4SFmode == V8DFmode
   14817              :                                                               || V4SFmode == V8DImode
   14818              :                                                               || V4SFmode == V16SImode
   14819              :                                                               || V4SFmode == V32HFmode)))))
   14820              :             return -1;
   14821              :           return 2862; /* *mulv4sf3_mask_round */
   14822              : 
   14823              :         case 6:
   14824              :           if (!(
   14825              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14826              : (TARGET_AVX512F) && (
   14827              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14828              : (TARGET_AVX512F) && (
   14829              : #line 2784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14830              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V8DFmode, operands)
   14831              :    && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   14832              :                                                               || V8DFmode == V8DFmode
   14833              :                                                               || V8DFmode == V8DImode
   14834              :                                                               || V8DFmode == V16SImode
   14835              :                                                               || V8DFmode == V32HFmode)) && 
   14836              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14837              : (TARGET_AVX512F)))))
   14838              :             return -1;
   14839              :           return 2866; /* *mulv8df3_mask_round */
   14840              : 
   14841              :         case 7:
   14842              :           if (!(
   14843              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14844              : (TARGET_AVX512F) && (
   14845              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14846              : (TARGET_AVX512F) && (
   14847              : #line 2784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14848              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V4DFmode, operands)
   14849              :    && (32 == 64 || TARGET_AVX512VL) && (V4DFmode == V16SFmode
   14850              :                                                               || V4DFmode == V8DFmode
   14851              :                                                               || V4DFmode == V8DImode
   14852              :                                                               || V4DFmode == V16SImode
   14853              :                                                               || V4DFmode == V32HFmode)) && 
   14854              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14855              : (TARGET_AVX)))))
   14856              :             return -1;
   14857              :           return 2870; /* *mulv4df3_mask_round */
   14858              : 
   14859              :         case 8:
   14860              :           if (!(
   14861              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14862              : (TARGET_AVX512F) && (
   14863              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14864              : (TARGET_AVX512F) && (
   14865              : #line 2784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14866              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V2DFmode, operands)
   14867              :    && (16 == 64 || TARGET_AVX512VL) && (V2DFmode == V16SFmode
   14868              :                                                               || V2DFmode == V8DFmode
   14869              :                                                               || V2DFmode == V8DImode
   14870              :                                                               || V2DFmode == V16SImode
   14871              :                                                               || V2DFmode == V32HFmode)) && 
   14872              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14873              : (TARGET_SSE2)))))
   14874              :             return -1;
   14875              :           return 2874; /* *mulv2df3_mask_round */
   14876              : 
   14877              :         case 9:
   14878              :           if (!(
   14879              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14880              : (TARGET_AVX512F) && (
   14881              : #line 2835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14882              : (TARGET_SSE) && 
   14883              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14884              : (TARGET_AVX512FP16))))
   14885              :             return -1;
   14886              :           return 2882; /* avx512fp16_vmmulv8hf3_round */
   14887              : 
   14888              :         case 10:
   14889              :           if (!(
   14890              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14891              : (TARGET_AVX512F) && 
   14892              : #line 2835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14893              : (TARGET_SSE)))
   14894              :             return -1;
   14895              :           return 2890; /* sse_vmmulv4sf3_round */
   14896              : 
   14897              :         case 11:
   14898              :           if (!(
   14899              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14900              : (TARGET_AVX512F) && (
   14901              : #line 2835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14902              : (TARGET_SSE) && 
   14903              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14904              : (TARGET_SSE2))))
   14905              :             return -1;
   14906              :           return 2898; /* sse2_vmmulv2df3_round */
   14907              : 
   14908              :         default:
   14909              :           return -1;
   14910              :         }
   14911              : 
   14912              :     case DIV:
   14913              :       x5 = XEXP (x4, 0);
   14914              :       operands[1] = x5;
   14915              :       x6 = XEXP (x4, 1);
   14916              :       operands[2] = x6;
   14917              :       x7 = XVECEXP (x2, 0, 1);
   14918              :       if (!const_4_or_8_to_11_operand (x7, E_SImode))
   14919              :         return -1;
   14920              :       x8 = XEXP (x3, 2);
   14921              :       switch (GET_CODE (x8))
   14922              :         {
   14923              :         case CONST_INT:
   14924              :           switch (pattern661 (x2))
   14925              :             {
   14926              :             case 0:
   14927              :               if (!(
   14928              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14929              : (TARGET_AVX512F) && (
   14930              : #line 2835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14931              : (TARGET_SSE) && 
   14932              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14933              : (TARGET_AVX512FP16))))
   14934              :                 return -1;
   14935              :               return 2886; /* avx512fp16_vmdivv8hf3_round */
   14936              : 
   14937              :             case 1:
   14938              :               if (!(
   14939              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14940              : (TARGET_AVX512F) && 
   14941              : #line 2835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14942              : (TARGET_SSE)))
   14943              :                 return -1;
   14944              :               return 2894; /* sse_vmdivv4sf3_round */
   14945              : 
   14946              :             case 2:
   14947              :               if (!(
   14948              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14949              : (TARGET_AVX512F) && (
   14950              : #line 2835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14951              : (TARGET_SSE) && 
   14952              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14953              : (TARGET_SSE2))))
   14954              :                 return -1;
   14955              :               return 2902; /* sse2_vmdivv2df3_round */
   14956              : 
   14957              :             default:
   14958              :               return -1;
   14959              :             }
   14960              : 
   14961              :         case REG:
   14962              :         case SUBREG:
   14963              :           switch (pattern663 (x2))
   14964              :             {
   14965              :             case 0:
   14966              :               if (!(
   14967              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14968              : (TARGET_AVX512F) && (
   14969              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14970              : (TARGET_AVX512F) && (
   14971              : #line 2933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14972              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   14973              :                                                               || V32HFmode == V8DFmode
   14974              :                                                               || V32HFmode == V8DImode
   14975              :                                                               || V32HFmode == V16SImode
   14976              :                                                               || V32HFmode == V32HFmode)) && 
   14977              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14978              : (TARGET_AVX512FP16)))))
   14979              :                 return -1;
   14980              :               return 2908; /* avx512fp16_divv32hf3_mask_round */
   14981              : 
   14982              :             case 1:
   14983              :               if (!(
   14984              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14985              : (TARGET_AVX512F) && (
   14986              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14987              : (TARGET_AVX512F) && (
   14988              : #line 2933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14989              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   14990              :                                                               || V16SFmode == V8DFmode
   14991              :                                                               || V16SFmode == V8DImode
   14992              :                                                               || V16SFmode == V16SImode
   14993              :                                                               || V16SFmode == V32HFmode)) && 
   14994              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14995              : (TARGET_AVX512F)))))
   14996              :                 return -1;
   14997              :               return 2916; /* avx512f_divv16sf3_mask_round */
   14998              : 
   14999              :             case 2:
   15000              :               if (!(
   15001              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15002              : (TARGET_AVX512F) && (
   15003              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15004              : (TARGET_AVX512F) && (
   15005              : #line 2933 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15006              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   15007              :                                                               || V8DFmode == V8DFmode
   15008              :                                                               || V8DFmode == V8DImode
   15009              :                                                               || V8DFmode == V16SImode
   15010              :                                                               || V8DFmode == V32HFmode)) && 
   15011              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15012              : (TARGET_AVX512F)))))
   15013              :                 return -1;
   15014              :               return 2924; /* avx512f_divv8df3_mask_round */
   15015              : 
   15016              :             default:
   15017              :               return -1;
   15018              :             }
   15019              : 
   15020              :         default:
   15021              :           return -1;
   15022              :         }
   15023              : 
   15024              :     case SQRT:
   15025              :       x5 = XEXP (x4, 0);
   15026              :       operands[1] = x5;
   15027              :       x9 = XEXP (x3, 1);
   15028              :       operands[2] = x9;
   15029              :       x7 = XVECEXP (x2, 0, 1);
   15030              :       if (!const_4_or_8_to_11_operand (x7, E_SImode))
   15031              :         return -1;
   15032              :       x8 = XEXP (x3, 2);
   15033              :       switch (GET_CODE (x8))
   15034              :         {
   15035              :         case REG:
   15036              :         case SUBREG:
   15037              :           operands[3] = x8;
   15038              :           operands[4] = x7;
   15039              :           switch (GET_MODE (operands[0]))
   15040              :             {
   15041              :             case E_V32HFmode:
   15042              :               if (pattern1412 (x2, 
   15043              : E_SImode, 
   15044              : E_V32HFmode) != 0
   15045              :                   || !(
   15046              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15047              : (TARGET_AVX512F) && (
   15048              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15049              : (TARGET_AVX512F) && (
   15050              : #line 3105 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15051              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   15052              :                                                               || V32HFmode == V8DFmode
   15053              :                                                               || V32HFmode == V8DImode
   15054              :                                                               || V32HFmode == V16SImode
   15055              :                                                               || V32HFmode == V32HFmode)) && 
   15056              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15057              : (TARGET_AVX512FP16)))))
   15058              :                 return -1;
   15059              :               return 2961; /* avx512fp16_sqrtv32hf2_mask_round */
   15060              : 
   15061              :             case E_V16SFmode:
   15062              :               if (pattern1412 (x2, 
   15063              : E_HImode, 
   15064              : E_V16SFmode) != 0
   15065              :                   || !(
   15066              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15067              : (TARGET_AVX512F) && (
   15068              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15069              : (TARGET_AVX512F) && (
   15070              : #line 3105 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15071              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   15072              :                                                               || V16SFmode == V8DFmode
   15073              :                                                               || V16SFmode == V8DImode
   15074              :                                                               || V16SFmode == V16SImode
   15075              :                                                               || V16SFmode == V32HFmode)) && 
   15076              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15077              : (TARGET_AVX512F)))))
   15078              :                 return -1;
   15079              :               return 2969; /* avx512f_sqrtv16sf2_mask_round */
   15080              : 
   15081              :             case E_V8DFmode:
   15082              :               if (pattern1412 (x2, 
   15083              : E_QImode, 
   15084              : E_V8DFmode) != 0
   15085              :                   || !(
   15086              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15087              : (TARGET_AVX512F) && (
   15088              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15089              : (TARGET_AVX512F) && (
   15090              : #line 3105 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15091              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   15092              :                                                               || V8DFmode == V8DFmode
   15093              :                                                               || V8DFmode == V8DImode
   15094              :                                                               || V8DFmode == V16SImode
   15095              :                                                               || V8DFmode == V32HFmode)) && 
   15096              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15097              : (TARGET_AVX512F)))))
   15098              :                 return -1;
   15099              :               return 2977; /* avx512f_sqrtv8df2_mask_round */
   15100              : 
   15101              :             default:
   15102              :               return -1;
   15103              :             }
   15104              : 
   15105              :         case CONST_INT:
   15106              :           if (XWINT (x8, 0) != 1L)
   15107              :             return -1;
   15108              :           operands[3] = x7;
   15109              :           switch (GET_MODE (operands[0]))
   15110              :             {
   15111              :             case E_V8HFmode:
   15112              :               if (pattern1413 (x2, 
   15113              : E_V8HFmode) != 0
   15114              :                   || !(
   15115              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15116              : (TARGET_AVX512F) && (
   15117              : #line 3124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15118              : (TARGET_SSE) && 
   15119              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15120              : (TARGET_AVX512FP16))))
   15121              :                 return -1;
   15122              :               return 2983; /* avx512fp16_vmsqrtv8hf2_round */
   15123              : 
   15124              :             case E_V4SFmode:
   15125              :               if (pattern1413 (x2, 
   15126              : E_V4SFmode) != 0
   15127              :                   || !(
   15128              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15129              : (TARGET_AVX512F) && 
   15130              : #line 3124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15131              : (TARGET_SSE)))
   15132              :                 return -1;
   15133              :               return 2987; /* sse_vmsqrtv4sf2_round */
   15134              : 
   15135              :             case E_V2DFmode:
   15136              :               if (pattern1413 (x2, 
   15137              : E_V2DFmode) != 0
   15138              :                   || !(
   15139              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15140              : (TARGET_AVX512F) && (
   15141              : #line 3124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15142              : (TARGET_SSE) && 
   15143              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15144              : (TARGET_SSE2))))
   15145              :                 return -1;
   15146              :               return 2991; /* sse2_vmsqrtv2df2_round */
   15147              : 
   15148              :             default:
   15149              :               return -1;
   15150              :             }
   15151              : 
   15152              :         default:
   15153              :           return -1;
   15154              :         }
   15155              : 
   15156              :     case VEC_DUPLICATE:
   15157              :       return recog_229 (x1, insn, pnum_clobbers);
   15158              : 
   15159              :     case SMAX:
   15160              :       switch (pattern664 (x2))
   15161              :         {
   15162              :         case 0:
   15163              :           if (!(
   15164              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15165              : (TARGET_AVX512F) && (
   15166              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15167              : (TARGET_AVX512F) && (
   15168              : #line 3352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15169              : (TARGET_SSE
   15170              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   15171              :    && (64 == 64 || TARGET_AVX512VL)
   15172              :    && (V32HFmode == V16SFmode
   15173              :                                                                               || V32HFmode == V8DFmode
   15174              :                                                                               || V32HFmode == V8DImode
   15175              :                                                                               || V32HFmode == V16SImode
   15176              :                                                                               || V32HFmode == V32HFmode)) && 
   15177              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15178              : (TARGET_AVX512FP16)))))
   15179              :             return -1;
   15180              :           return 3039; /* *smaxv32hf3_mask_round */
   15181              : 
   15182              :         case 1:
   15183              :           if (!(
   15184              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15185              : (TARGET_AVX512F) && (
   15186              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15187              : (TARGET_AVX512F) && (
   15188              : #line 3352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15189              : (TARGET_SSE
   15190              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   15191              :    && (64 == 64 || TARGET_AVX512VL)
   15192              :    && (V16SFmode == V16SFmode
   15193              :                                                                               || V16SFmode == V8DFmode
   15194              :                                                                               || V16SFmode == V8DImode
   15195              :                                                                               || V16SFmode == V16SImode
   15196              :                                                                               || V16SFmode == V32HFmode)) && 
   15197              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15198              : (TARGET_AVX512F)))))
   15199              :             return -1;
   15200              :           return 3055; /* *smaxv16sf3_mask_round */
   15201              : 
   15202              :         case 2:
   15203              :           if (!(
   15204              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15205              : (TARGET_AVX512F) && (
   15206              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15207              : (TARGET_AVX512F) && (
   15208              : #line 3352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15209              : (TARGET_SSE
   15210              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   15211              :    && (64 == 64 || TARGET_AVX512VL)
   15212              :    && (V8DFmode == V16SFmode
   15213              :                                                                               || V8DFmode == V8DFmode
   15214              :                                                                               || V8DFmode == V8DImode
   15215              :                                                                               || V8DFmode == V16SImode
   15216              :                                                                               || V8DFmode == V32HFmode)) && 
   15217              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15218              : (TARGET_AVX512F)))))
   15219              :             return -1;
   15220              :           return 3071; /* *smaxv8df3_mask_round */
   15221              : 
   15222              :         case 3:
   15223              :           if (!(
   15224              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15225              : (TARGET_AVX512F) && (
   15226              : #line 3562 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15227              : (TARGET_SSE) && 
   15228              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15229              : (TARGET_AVX512FP16))))
   15230              :             return -1;
   15231              :           return 3161; /* *avx512fp16_vmsmaxv8hf3_round */
   15232              : 
   15233              :         case 4:
   15234              :           if (!(
   15235              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15236              : (TARGET_AVX512F) && 
   15237              : #line 3562 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15238              : (TARGET_SSE)))
   15239              :             return -1;
   15240              :           return 3169; /* *sse_vmsmaxv4sf3_round */
   15241              : 
   15242              :         case 5:
   15243              :           if (!(
   15244              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15245              : (TARGET_AVX512F) && (
   15246              : #line 3562 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15247              : (TARGET_SSE) && 
   15248              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15249              : (TARGET_SSE2))))
   15250              :             return -1;
   15251              :           return 3177; /* *sse2_vmsmaxv2df3_round */
   15252              : 
   15253              :         default:
   15254              :           return -1;
   15255              :         }
   15256              : 
   15257              :     case SMIN:
   15258              :       switch (pattern664 (x2))
   15259              :         {
   15260              :         case 0:
   15261              :           if (!(
   15262              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15263              : (TARGET_AVX512F) && (
   15264              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15265              : (TARGET_AVX512F) && (
   15266              : #line 3352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15267              : (TARGET_SSE
   15268              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   15269              :    && (64 == 64 || TARGET_AVX512VL)
   15270              :    && (V32HFmode == V16SFmode
   15271              :                                                                               || V32HFmode == V8DFmode
   15272              :                                                                               || V32HFmode == V8DImode
   15273              :                                                                               || V32HFmode == V16SImode
   15274              :                                                                               || V32HFmode == V32HFmode)) && 
   15275              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15276              : (TARGET_AVX512FP16)))))
   15277              :             return -1;
   15278              :           return 3043; /* *sminv32hf3_mask_round */
   15279              : 
   15280              :         case 1:
   15281              :           if (!(
   15282              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15283              : (TARGET_AVX512F) && (
   15284              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15285              : (TARGET_AVX512F) && (
   15286              : #line 3352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15287              : (TARGET_SSE
   15288              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   15289              :    && (64 == 64 || TARGET_AVX512VL)
   15290              :    && (V16SFmode == V16SFmode
   15291              :                                                                               || V16SFmode == V8DFmode
   15292              :                                                                               || V16SFmode == V8DImode
   15293              :                                                                               || V16SFmode == V16SImode
   15294              :                                                                               || V16SFmode == V32HFmode)) && 
   15295              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15296              : (TARGET_AVX512F)))))
   15297              :             return -1;
   15298              :           return 3059; /* *sminv16sf3_mask_round */
   15299              : 
   15300              :         case 2:
   15301              :           if (!(
   15302              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15303              : (TARGET_AVX512F) && (
   15304              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15305              : (TARGET_AVX512F) && (
   15306              : #line 3352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15307              : (TARGET_SSE
   15308              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   15309              :    && (64 == 64 || TARGET_AVX512VL)
   15310              :    && (V8DFmode == V16SFmode
   15311              :                                                                               || V8DFmode == V8DFmode
   15312              :                                                                               || V8DFmode == V8DImode
   15313              :                                                                               || V8DFmode == V16SImode
   15314              :                                                                               || V8DFmode == V32HFmode)) && 
   15315              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15316              : (TARGET_AVX512F)))))
   15317              :             return -1;
   15318              :           return 3075; /* *sminv8df3_mask_round */
   15319              : 
   15320              :         case 3:
   15321              :           if (!(
   15322              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15323              : (TARGET_AVX512F) && (
   15324              : #line 3562 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15325              : (TARGET_SSE) && 
   15326              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15327              : (TARGET_AVX512FP16))))
   15328              :             return -1;
   15329              :           return 3165; /* *avx512fp16_vmsminv8hf3_round */
   15330              : 
   15331              :         case 4:
   15332              :           if (!(
   15333              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15334              : (TARGET_AVX512F) && 
   15335              : #line 3562 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15336              : (TARGET_SSE)))
   15337              :             return -1;
   15338              :           return 3173; /* *sse_vmsminv4sf3_round */
   15339              : 
   15340              :         case 5:
   15341              :           if (!(
   15342              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15343              : (TARGET_AVX512F) && (
   15344              : #line 3562 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15345              : (TARGET_SSE) && 
   15346              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15347              : (TARGET_SSE2))))
   15348              :             return -1;
   15349              :           return 3181; /* *sse2_vmsminv2df3_round */
   15350              : 
   15351              :         default:
   15352              :           return -1;
   15353              :         }
   15354              : 
   15355              :     case UNSPEC:
   15356              :       return recog_228 (x1, insn, pnum_clobbers);
   15357              : 
   15358              :     case FMA:
   15359              :       return recog_227 (x1, insn, pnum_clobbers);
   15360              : 
   15361              :     case FLOAT:
   15362              :       x5 = XEXP (x4, 0);
   15363              :       operands[1] = x5;
   15364              :       x9 = XEXP (x3, 1);
   15365              :       operands[2] = x9;
   15366              :       x8 = XEXP (x3, 2);
   15367              :       operands[3] = x8;
   15368              :       x7 = XVECEXP (x2, 0, 1);
   15369              :       operands[4] = x7;
   15370              :       if (!const_4_or_8_to_11_operand (operands[4], E_SImode))
   15371              :         return -1;
   15372              :       switch (GET_MODE (operands[0]))
   15373              :         {
   15374              :         case E_V8HFmode:
   15375              :           switch (pattern1316 (x2))
   15376              :             {
   15377              :             case 0:
   15378              :               if (!(
   15379              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15380              : (TARGET_AVX512F) && (
   15381              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15382              : (TARGET_AVX512F) && (
   15383              : #line 8027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15384              : (TARGET_AVX512FP16) && 
   15385              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15386              : (TARGET_AVX512VL)))))
   15387              :                 return -1;
   15388              :               return 4508; /* avx512fp16_vcvtw2ph_v8hi_mask_round */
   15389              : 
   15390              :             case 1:
   15391              :               if (!(
   15392              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15393              : (TARGET_AVX512F) && (
   15394              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15395              : (TARGET_AVX512F) && (
   15396              : #line 8027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15397              : (TARGET_AVX512FP16) && 
   15398              : #line 688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15399              : (TARGET_AVX512VL)))))
   15400              :                 return -1;
   15401              :               return 4532; /* avx512fp16_vcvtdq2ph_v8si_mask_round */
   15402              : 
   15403              :             case 2:
   15404              :               if (!(
   15405              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15406              : (TARGET_AVX512F) && (
   15407              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15408              : (TARGET_AVX512F) && 
   15409              : #line 8027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15410              : (TARGET_AVX512FP16))))
   15411              :                 return -1;
   15412              :               return 4548; /* avx512fp16_vcvtqq2ph_v8di_mask_round */
   15413              : 
   15414              :             default:
   15415              :               return -1;
   15416              :             }
   15417              : 
   15418              :         case E_V16HFmode:
   15419              :           switch (pattern1317 (x2))
   15420              :             {
   15421              :             case 0:
   15422              :               if (!(
   15423              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15424              : (TARGET_AVX512F) && (
   15425              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15426              : (TARGET_AVX512F) && (
   15427              : #line 8027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15428              : (TARGET_AVX512FP16) && 
   15429              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15430              : (TARGET_AVX512VL)))))
   15431              :                 return -1;
   15432              :               return 4516; /* avx512fp16_vcvtw2ph_v16hi_mask_round */
   15433              : 
   15434              :             case 1:
   15435              :               if (!(
   15436              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15437              : (TARGET_AVX512F) && (
   15438              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15439              : (TARGET_AVX512F) && 
   15440              : #line 8027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15441              : (TARGET_AVX512FP16))))
   15442              :                 return -1;
   15443              :               return 4540; /* avx512fp16_vcvtdq2ph_v16si_mask_round */
   15444              : 
   15445              :             default:
   15446              :               return -1;
   15447              :             }
   15448              : 
   15449              :         case E_V32HFmode:
   15450              :           if (pattern665 (x2, 
   15451              : E_SImode, 
   15452              : E_V32HFmode, 
   15453              : E_V32HImode) != 0
   15454              :               || !(
   15455              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15456              : (TARGET_AVX512F) && (
   15457              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15458              : (TARGET_AVX512F) && 
   15459              : #line 8027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15460              : (TARGET_AVX512FP16))))
   15461              :             return -1;
   15462              :           return 4524; /* avx512fp16_vcvtw2ph_v32hi_mask_round */
   15463              : 
   15464              :         case E_V16SFmode:
   15465              :           if (pattern665 (x2, 
   15466              : E_HImode, 
   15467              : E_V16SFmode, 
   15468              : E_V16SImode) != 0
   15469              :               || !(
   15470              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15471              : (TARGET_AVX512F) && (
   15472              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15473              : (TARGET_AVX512F) && (
   15474              : #line 9006 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15475              : (TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   15476              :                                                               || V16SFmode == V8DFmode
   15477              :                                                               || V16SFmode == V8DImode
   15478              :                                                               || V16SFmode == V16SImode
   15479              :                                                               || V16SFmode == V32HFmode)) && 
   15480              : #line 437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15481              : (TARGET_AVX512F)))))
   15482              :             return -1;
   15483              :           return 4844; /* floatv16siv16sf2_mask_round */
   15484              : 
   15485              :         case E_V8DFmode:
   15486              :           if (pattern1318 (x2, 
   15487              : E_V8DFmode, 
   15488              : E_V8DImode, 
   15489              : E_QImode) != 0
   15490              :               || !(
   15491              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15492              : (TARGET_AVX512F) && (
   15493              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15494              : (TARGET_AVX512F) && 
   15495              : #line 9540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15496              : (TARGET_AVX512DQ))))
   15497              :             return -1;
   15498              :           return 4976; /* floatv8div8df2_mask_round */
   15499              : 
   15500              :         case E_V4DFmode:
   15501              :           if (pattern1318 (x2, 
   15502              : E_V4DFmode, 
   15503              : E_V4DImode, 
   15504              : E_QImode) != 0
   15505              :               || !(
   15506              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15507              : (TARGET_AVX512F) && (
   15508              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15509              : (TARGET_AVX512F) && (
   15510              : #line 9540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15511              : (TARGET_AVX512DQ) && 
   15512              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15513              : (TARGET_AVX512VL)))))
   15514              :             return -1;
   15515              :           return 4984; /* floatv4div4df2_mask_round */
   15516              : 
   15517              :         case E_V2DFmode:
   15518              :           if (pattern1318 (x2, 
   15519              : E_V2DFmode, 
   15520              : E_V2DImode, 
   15521              : E_QImode) != 0
   15522              :               || !(
   15523              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15524              : (TARGET_AVX512F) && (
   15525              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15526              : (TARGET_AVX512F) && (
   15527              : #line 9540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15528              : (TARGET_AVX512DQ) && 
   15529              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15530              : (TARGET_AVX512VL)))))
   15531              :             return -1;
   15532              :           return 4992; /* floatv2div2df2_mask_round */
   15533              : 
   15534              :         case E_V8SFmode:
   15535              :           if (pattern1318 (x2, 
   15536              : E_V8SFmode, 
   15537              : E_V8DImode, 
   15538              : E_QImode) != 0
   15539              :               || !(
   15540              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15541              : (TARGET_AVX512F) && (
   15542              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15543              : (TARGET_AVX512F) && 
   15544              : #line 9554 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15545              : (TARGET_AVX512DQ && (V8DImode == V16SFmode
   15546              :                                                               || V8DImode == V8DFmode
   15547              :                                                               || V8DImode == V8DImode
   15548              :                                                               || V8DImode == V16SImode
   15549              :                                                               || V8DImode == V32HFmode)))))
   15550              :             return -1;
   15551              :           return 5000; /* floatv8div8sf2_mask_round */
   15552              : 
   15553              :         default:
   15554              :           return -1;
   15555              :         }
   15556              : 
   15557              :     case UNSIGNED_FLOAT:
   15558              :       x5 = XEXP (x4, 0);
   15559              :       operands[1] = x5;
   15560              :       x9 = XEXP (x3, 1);
   15561              :       operands[2] = x9;
   15562              :       x8 = XEXP (x3, 2);
   15563              :       operands[3] = x8;
   15564              :       x7 = XVECEXP (x2, 0, 1);
   15565              :       operands[4] = x7;
   15566              :       if (!const_4_or_8_to_11_operand (operands[4], E_SImode))
   15567              :         return -1;
   15568              :       switch (GET_MODE (operands[0]))
   15569              :         {
   15570              :         case E_V8HFmode:
   15571              :           switch (pattern1316 (x2))
   15572              :             {
   15573              :             case 0:
   15574              :               if (!(
   15575              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15576              : (TARGET_AVX512F) && (
   15577              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15578              : (TARGET_AVX512F) && (
   15579              : #line 8027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15580              : (TARGET_AVX512FP16) && 
   15581              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15582              : (TARGET_AVX512VL)))))
   15583              :                 return -1;
   15584              :               return 4512; /* avx512fp16_vcvtuw2ph_v8hi_mask_round */
   15585              : 
   15586              :             case 1:
   15587              :               if (!(
   15588              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15589              : (TARGET_AVX512F) && (
   15590              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15591              : (TARGET_AVX512F) && (
   15592              : #line 8027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15593              : (TARGET_AVX512FP16) && 
   15594              : #line 688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15595              : (TARGET_AVX512VL)))))
   15596              :                 return -1;
   15597              :               return 4536; /* avx512fp16_vcvtudq2ph_v8si_mask_round */
   15598              : 
   15599              :             case 2:
   15600              :               if (!(
   15601              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15602              : (TARGET_AVX512F) && (
   15603              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15604              : (TARGET_AVX512F) && 
   15605              : #line 8027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15606              : (TARGET_AVX512FP16))))
   15607              :                 return -1;
   15608              :               return 4552; /* avx512fp16_vcvtuqq2ph_v8di_mask_round */
   15609              : 
   15610              :             default:
   15611              :               return -1;
   15612              :             }
   15613              : 
   15614              :         case E_V16HFmode:
   15615              :           switch (pattern1317 (x2))
   15616              :             {
   15617              :             case 0:
   15618              :               if (!(
   15619              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15620              : (TARGET_AVX512F) && (
   15621              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15622              : (TARGET_AVX512F) && (
   15623              : #line 8027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15624              : (TARGET_AVX512FP16) && 
   15625              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15626              : (TARGET_AVX512VL)))))
   15627              :                 return -1;
   15628              :               return 4520; /* avx512fp16_vcvtuw2ph_v16hi_mask_round */
   15629              : 
   15630              :             case 1:
   15631              :               if (!(
   15632              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15633              : (TARGET_AVX512F) && (
   15634              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15635              : (TARGET_AVX512F) && 
   15636              : #line 8027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15637              : (TARGET_AVX512FP16))))
   15638              :                 return -1;
   15639              :               return 4544; /* avx512fp16_vcvtudq2ph_v16si_mask_round */
   15640              : 
   15641              :             default:
   15642              :               return -1;
   15643              :             }
   15644              : 
   15645              :         case E_V32HFmode:
   15646              :           if (pattern665 (x2, 
   15647              : E_SImode, 
   15648              : E_V32HFmode, 
   15649              : E_V32HImode) != 0
   15650              :               || !(
   15651              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15652              : (TARGET_AVX512F) && (
   15653              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15654              : (TARGET_AVX512F) && 
   15655              : #line 8027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15656              : (TARGET_AVX512FP16))))
   15657              :             return -1;
   15658              :           return 4528; /* avx512fp16_vcvtuw2ph_v32hi_mask_round */
   15659              : 
   15660              :         case E_V16SFmode:
   15661              :           if (pattern1318 (x2, 
   15662              : E_V16SFmode, 
   15663              : E_V16SImode, 
   15664              : E_HImode) != 0
   15665              :               || !
   15666              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15667              : (TARGET_AVX512F))
   15668              :             return -1;
   15669              :           return 4852; /* floatunsv16siv16sf2_mask_round */
   15670              : 
   15671              :         case E_V8SFmode:
   15672              :           if (pattern1319 (x2, 
   15673              : E_V8SFmode, 
   15674              : E_QImode) != 0)
   15675              :             return -1;
   15676              :           switch (GET_MODE (operands[1]))
   15677              :             {
   15678              :             case E_V8SImode:
   15679              :               if (!nonimmediate_operand (operands[1], E_V8SImode)
   15680              :                   || !(
   15681              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15682              : (TARGET_AVX512F) && (
   15683              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15684              : (TARGET_AVX512F) && (
   15685              : #line 9019 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15686              : (TARGET_AVX512F) && 
   15687              : #line 534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15688              : (TARGET_AVX512VL)))))
   15689              :                 return -1;
   15690              :               return 4856; /* floatunsv8siv8sf2_mask_round */
   15691              : 
   15692              :             case E_V8DImode:
   15693              :               if (!nonimmediate_operand (operands[1], E_V8DImode)
   15694              :                   || !(
   15695              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15696              : (TARGET_AVX512F) && (
   15697              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15698              : (TARGET_AVX512F) && 
   15699              : #line 9554 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15700              : (TARGET_AVX512DQ && (V8DImode == V16SFmode
   15701              :                                                               || V8DImode == V8DFmode
   15702              :                                                               || V8DImode == V8DImode
   15703              :                                                               || V8DImode == V16SImode
   15704              :                                                               || V8DImode == V32HFmode)))))
   15705              :                 return -1;
   15706              :               return 5004; /* floatunsv8div8sf2_mask_round */
   15707              : 
   15708              :             default:
   15709              :               return -1;
   15710              :             }
   15711              : 
   15712              :         case E_V4SFmode:
   15713              :           if (pattern1318 (x2, 
   15714              : E_V4SFmode, 
   15715              : E_V4SImode, 
   15716              : E_QImode) != 0
   15717              :               || !(
   15718              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15719              : (TARGET_AVX512F) && (
   15720              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15721              : (TARGET_AVX512F) && (
   15722              : #line 9019 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15723              : (TARGET_AVX512F) && 
   15724              : #line 534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15725              : (TARGET_AVX512VL)))))
   15726              :             return -1;
   15727              :           return 4860; /* floatunsv4siv4sf2_mask_round */
   15728              : 
   15729              :         case E_V8DFmode:
   15730              :           if (pattern1318 (x2, 
   15731              : E_V8DFmode, 
   15732              : E_V8DImode, 
   15733              : E_QImode) != 0
   15734              :               || !(
   15735              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15736              : (TARGET_AVX512F) && (
   15737              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15738              : (TARGET_AVX512F) && 
   15739              : #line 9540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15740              : (TARGET_AVX512DQ))))
   15741              :             return -1;
   15742              :           return 4980; /* floatunsv8div8df2_mask_round */
   15743              : 
   15744              :         case E_V4DFmode:
   15745              :           if (pattern1318 (x2, 
   15746              : E_V4DFmode, 
   15747              : E_V4DImode, 
   15748              : E_QImode) != 0
   15749              :               || !(
   15750              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15751              : (TARGET_AVX512F) && (
   15752              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15753              : (TARGET_AVX512F) && (
   15754              : #line 9540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15755              : (TARGET_AVX512DQ) && 
   15756              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15757              : (TARGET_AVX512VL)))))
   15758              :             return -1;
   15759              :           return 4988; /* floatunsv4div4df2_mask_round */
   15760              : 
   15761              :         case E_V2DFmode:
   15762              :           if (pattern1318 (x2, 
   15763              : E_V2DFmode, 
   15764              : E_V2DImode, 
   15765              : E_QImode) != 0
   15766              :               || !(
   15767              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15768              : (TARGET_AVX512F) && (
   15769              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15770              : (TARGET_AVX512F) && (
   15771              : #line 9540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15772              : (TARGET_AVX512DQ) && 
   15773              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15774              : (TARGET_AVX512VL)))))
   15775              :             return -1;
   15776              :           return 4996; /* floatunsv2div2df2_mask_round */
   15777              : 
   15778              :         default:
   15779              :           return -1;
   15780              :         }
   15781              : 
   15782              :     case FIX:
   15783              :       switch (pattern666 (x2))
   15784              :         {
   15785              :         case 0:
   15786              :           if (!(
   15787              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15788              : (TARGET_AVX512F) && (
   15789              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15790              : (TARGET_AVX512F) && (
   15791              : #line 8246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15792              : (TARGET_AVX512FP16) && 
   15793              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15794              : (TARGET_AVX512VL)))))
   15795              :             return -1;
   15796              :           return 4642; /* avx512fp16_fix_truncv8hi2_mask_round */
   15797              : 
   15798              :         case 1:
   15799              :           if (!(
   15800              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15801              : (TARGET_AVX512F) && (
   15802              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15803              : (TARGET_AVX512F) && (
   15804              : #line 8246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15805              : (TARGET_AVX512FP16) && 
   15806              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15807              : (TARGET_AVX512VL)))))
   15808              :             return -1;
   15809              :           return 4650; /* avx512fp16_fix_truncv16hi2_mask_round */
   15810              : 
   15811              :         case 2:
   15812              :           if (!(
   15813              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15814              : (TARGET_AVX512F) && (
   15815              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15816              : (TARGET_AVX512F) && 
   15817              : #line 8246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15818              : (TARGET_AVX512FP16))))
   15819              :             return -1;
   15820              :           return 4658; /* avx512fp16_fix_truncv32hi2_mask_round */
   15821              : 
   15822              :         case 3:
   15823              :           if (!(
   15824              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15825              : (TARGET_AVX512F) && (
   15826              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15827              : (TARGET_AVX512F) && (
   15828              : #line 8246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15829              : (TARGET_AVX512FP16) && 
   15830              : #line 688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15831              : (TARGET_AVX512VL)))))
   15832              :             return -1;
   15833              :           return 4666; /* avx512fp16_fix_truncv8si2_mask_round */
   15834              : 
   15835              :         case 4:
   15836              :           if (!
   15837              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15838              : (TARGET_AVX512F))
   15839              :             return -1;
   15840              :           return 5057; /* fix_truncv8dfv8si2_mask_round */
   15841              : 
   15842              :         case 5:
   15843              :           if (!(
   15844              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15845              : (TARGET_AVX512F) && (
   15846              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15847              : (TARGET_AVX512F) && 
   15848              : #line 8246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15849              : (TARGET_AVX512FP16))))
   15850              :             return -1;
   15851              :           return 4674; /* avx512fp16_fix_truncv16si2_mask_round */
   15852              : 
   15853              :         case 6:
   15854              :           if (!
   15855              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15856              : (TARGET_AVX512F))
   15857              :             return -1;
   15858              :           return 4908; /* fix_truncv16sfv16si2_mask_round */
   15859              : 
   15860              :         case 7:
   15861              :           if (!(
   15862              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15863              : (TARGET_AVX512F) && (
   15864              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15865              : (TARGET_AVX512F) && 
   15866              : #line 8246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15867              : (TARGET_AVX512FP16))))
   15868              :             return -1;
   15869              :           return 4682; /* avx512fp16_fix_truncv8di2_mask_round */
   15870              : 
   15871              :         case 8:
   15872              :           if (!(
   15873              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15874              : (TARGET_AVX512F) && (
   15875              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15876              : (TARGET_AVX512F) && 
   15877              : #line 10065 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15878              : (TARGET_AVX512DQ && (V8DFmode == V16SFmode
   15879              :                                                                               || V8DFmode == V8DFmode
   15880              :                                                                               || V8DFmode == V8DImode
   15881              :                                                                               || V8DFmode == V16SImode
   15882              :                                                                               || V8DFmode == V32HFmode)))))
   15883              :             return -1;
   15884              :           return 5094; /* fix_truncv8dfv8di2_mask_round */
   15885              : 
   15886              :         case 9:
   15887              :           if (!(
   15888              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15889              : (TARGET_AVX512F) && (
   15890              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15891              : (TARGET_AVX512F) && 
   15892              : #line 10108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15893              : (TARGET_AVX512DQ && (V8DImode == V16SFmode
   15894              :                                                                               || V8DImode == V8DFmode
   15895              :                                                                               || V8DImode == V8DImode
   15896              :                                                                               || V8DImode == V16SImode
   15897              :                                                                               || V8DImode == V32HFmode)))))
   15898              :             return -1;
   15899              :           return 5138; /* fix_truncv8sfv8di2_mask_round */
   15900              : 
   15901              :         default:
   15902              :           return -1;
   15903              :         }
   15904              : 
   15905              :     case UNSIGNED_FIX:
   15906              :       switch (pattern666 (x2))
   15907              :         {
   15908              :         case 0:
   15909              :           if (!(
   15910              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15911              : (TARGET_AVX512F) && (
   15912              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15913              : (TARGET_AVX512F) && (
   15914              : #line 8246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15915              : (TARGET_AVX512FP16) && 
   15916              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15917              : (TARGET_AVX512VL)))))
   15918              :             return -1;
   15919              :           return 4646; /* avx512fp16_fixuns_truncv8hi2_mask_round */
   15920              : 
   15921              :         case 1:
   15922              :           if (!(
   15923              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15924              : (TARGET_AVX512F) && (
   15925              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15926              : (TARGET_AVX512F) && (
   15927              : #line 8246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15928              : (TARGET_AVX512FP16) && 
   15929              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15930              : (TARGET_AVX512VL)))))
   15931              :             return -1;
   15932              :           return 4654; /* avx512fp16_fixuns_truncv16hi2_mask_round */
   15933              : 
   15934              :         case 2:
   15935              :           if (!(
   15936              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15937              : (TARGET_AVX512F) && (
   15938              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15939              : (TARGET_AVX512F) && 
   15940              : #line 8246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15941              : (TARGET_AVX512FP16))))
   15942              :             return -1;
   15943              :           return 4662; /* avx512fp16_fixuns_truncv32hi2_mask_round */
   15944              : 
   15945              :         case 3:
   15946              :           if (!(
   15947              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15948              : (TARGET_AVX512F) && (
   15949              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15950              : (TARGET_AVX512F) && (
   15951              : #line 8246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15952              : (TARGET_AVX512FP16) && 
   15953              : #line 688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15954              : (TARGET_AVX512VL)))))
   15955              :             return -1;
   15956              :           return 4670; /* avx512fp16_fixuns_truncv8si2_mask_round */
   15957              : 
   15958              :         case 4:
   15959              :           if (!
   15960              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15961              : (TARGET_AVX512F))
   15962              :             return -1;
   15963              :           return 5061; /* fixuns_truncv8dfv8si2_mask_round */
   15964              : 
   15965              :         case 5:
   15966              :           if (!(
   15967              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15968              : (TARGET_AVX512F) && (
   15969              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15970              : (TARGET_AVX512F) && 
   15971              : #line 8246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15972              : (TARGET_AVX512FP16))))
   15973              :             return -1;
   15974              :           return 4678; /* avx512fp16_fixuns_truncv16si2_mask_round */
   15975              : 
   15976              :         case 6:
   15977              :           if (!
   15978              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15979              : (TARGET_AVX512F))
   15980              :             return -1;
   15981              :           return 4912; /* fixuns_truncv16sfv16si2_mask_round */
   15982              : 
   15983              :         case 7:
   15984              :           if (!(
   15985              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15986              : (TARGET_AVX512F) && (
   15987              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15988              : (TARGET_AVX512F) && 
   15989              : #line 8246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15990              : (TARGET_AVX512FP16))))
   15991              :             return -1;
   15992              :           return 4686; /* avx512fp16_fixuns_truncv8di2_mask_round */
   15993              : 
   15994              :         case 8:
   15995              :           if (!(
   15996              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15997              : (TARGET_AVX512F) && (
   15998              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15999              : (TARGET_AVX512F) && 
   16000              : #line 10065 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16001              : (TARGET_AVX512DQ && (V8DFmode == V16SFmode
   16002              :                                                                               || V8DFmode == V8DFmode
   16003              :                                                                               || V8DFmode == V8DImode
   16004              :                                                                               || V8DFmode == V16SImode
   16005              :                                                                               || V8DFmode == V32HFmode)))))
   16006              :             return -1;
   16007              :           return 5098; /* fixuns_truncv8dfv8di2_mask_round */
   16008              : 
   16009              :         case 9:
   16010              :           if (!(
   16011              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16012              : (TARGET_AVX512F) && (
   16013              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16014              : (TARGET_AVX512F) && 
   16015              : #line 10108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16016              : (TARGET_AVX512DQ && (V8DImode == V16SFmode
   16017              :                                                                               || V8DImode == V8DFmode
   16018              :                                                                               || V8DImode == V8DImode
   16019              :                                                                               || V8DImode == V16SImode
   16020              :                                                                               || V8DImode == V32HFmode)))))
   16021              :             return -1;
   16022              :           return 5142; /* fixuns_truncv8sfv8di2_mask_round */
   16023              : 
   16024              :         default:
   16025              :           return -1;
   16026              :         }
   16027              : 
   16028              :     case FLOAT_EXTEND:
   16029              :       x7 = XVECEXP (x2, 0, 1);
   16030              :       if (!const48_operand (x7, E_SImode))
   16031              :         return -1;
   16032              :       x5 = XEXP (x4, 0);
   16033              :       switch (GET_CODE (x5))
   16034              :         {
   16035              :         case REG:
   16036              :         case SUBREG:
   16037              :           operands[1] = x5;
   16038              :           x9 = XEXP (x3, 1);
   16039              :           operands[2] = x9;
   16040              :           x8 = XEXP (x3, 2);
   16041              :           operands[3] = x8;
   16042              :           operands[4] = x7;
   16043              :           switch (GET_MODE (operands[0]))
   16044              :             {
   16045              :             case E_V8DFmode:
   16046              :               if (pattern1319 (x2, 
   16047              : E_V8DFmode, 
   16048              : E_QImode) != 0)
   16049              :                 return -1;
   16050              :               switch (GET_MODE (operands[1]))
   16051              :                 {
   16052              :                 case E_V8HFmode:
   16053              :                   if (!register_operand (operands[1], E_V8HFmode)
   16054              :                       || !(
   16055              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16056              : (TARGET_AVX512F) && (
   16057              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16058              : (TARGET_AVX512F) && 
   16059              : #line 8399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16060              : (TARGET_AVX512FP16))))
   16061              :                     return -1;
   16062              :                   return 4746; /* avx512fp16_float_extend_phv8df2_mask_round */
   16063              : 
   16064              :                 case E_V8SFmode:
   16065              :                   if (!register_operand (operands[1], E_V8SFmode)
   16066              :                       || !(
   16067              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16068              : (TARGET_AVX512F) && (
   16069              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16070              : (TARGET_AVX512F) && (
   16071              : #line 10586 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16072              : (TARGET_AVX && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   16073              :                                                                               || V8DFmode == V8DFmode
   16074              :                                                                               || V8DFmode == V8DImode
   16075              :                                                                               || V8DFmode == V16SImode
   16076              :                                                                               || V8DFmode == V32HFmode)) && 
   16077              : #line 466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16078              : (TARGET_AVX512F)))))
   16079              :                     return -1;
   16080              :                   return 5191; /* avx512f_cvtps2pd512_mask_round */
   16081              : 
   16082              :                 default:
   16083              :                   return -1;
   16084              :                 }
   16085              : 
   16086              :             case E_V16SFmode:
   16087              :               if (pattern665 (x2, 
   16088              : E_HImode, 
   16089              : E_V16SFmode, 
   16090              : E_V16HFmode) != 0
   16091              :                   || !(
   16092              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16093              : (TARGET_AVX512F) && (
   16094              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16095              : (TARGET_AVX512F) && 
   16096              : #line 8399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16097              : (TARGET_AVX512FP16))))
   16098              :                 return -1;
   16099              :               return 4750; /* avx512fp16_float_extend_phv16sf2_mask_round */
   16100              : 
   16101              :             case E_V8SFmode:
   16102              :               if (pattern665 (x2, 
   16103              : E_QImode, 
   16104              : E_V8SFmode, 
   16105              : E_V8HFmode) != 0
   16106              :                   || !(
   16107              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16108              : (TARGET_AVX512F) && (
   16109              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16110              : (TARGET_AVX512F) && (
   16111              : #line 8399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16112              : (TARGET_AVX512FP16) && 
   16113              : #line 986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16114              : (TARGET_AVX512VL)))))
   16115              :                 return -1;
   16116              :               return 4754; /* avx512fp16_float_extend_phv8sf2_mask_round */
   16117              : 
   16118              :             default:
   16119              :               return -1;
   16120              :             }
   16121              : 
   16122              :         case VEC_SELECT:
   16123              :           if (GET_MODE (x5) != E_V2SFmode)
   16124              :             return -1;
   16125              :           x10 = XEXP (x5, 1);
   16126              :           if (GET_CODE (x10) != PARALLEL
   16127              :               || XVECLEN (x10, 0) != 2)
   16128              :             return -1;
   16129              :           x11 = XVECEXP (x10, 0, 0);
   16130              :           if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   16131              :             return -1;
   16132              :           x12 = XVECEXP (x10, 0, 1);
   16133              :           if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   16134              :             return -1;
   16135              :           x8 = XEXP (x3, 2);
   16136              :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   16137              :               || pattern1485 (x2, 
   16138              : E_V2DFmode) != 0)
   16139              :             return -1;
   16140              :           x13 = XEXP (x5, 0);
   16141              :           operands[2] = x13;
   16142              :           if (!register_operand (operands[2], E_V4SFmode))
   16143              :             return -1;
   16144              :           x9 = XEXP (x3, 1);
   16145              :           operands[1] = x9;
   16146              :           if (!register_operand (operands[1], E_V2DFmode))
   16147              :             return -1;
   16148              :           operands[3] = x7;
   16149              :           if (!(
   16150              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16151              : (TARGET_AVX512F) && 
   16152              : #line 10413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16153              : (TARGET_SSE2)))
   16154              :             return -1;
   16155              :           return 5174; /* sse2_cvtss2sd_round */
   16156              : 
   16157              :         default:
   16158              :           return -1;
   16159              :         }
   16160              : 
   16161              :     case FLOAT_TRUNCATE:
   16162              :       x5 = XEXP (x4, 0);
   16163              :       operands[1] = x5;
   16164              :       x9 = XEXP (x3, 1);
   16165              :       operands[2] = x9;
   16166              :       x8 = XEXP (x3, 2);
   16167              :       operands[3] = x8;
   16168              :       x7 = XVECEXP (x2, 0, 1);
   16169              :       operands[4] = x7;
   16170              :       if (!const_4_or_8_to_11_operand (operands[4], E_SImode))
   16171              :         return -1;
   16172              :       switch (GET_MODE (operands[0]))
   16173              :         {
   16174              :         case E_V8HFmode:
   16175              :           if (pattern1319 (x2, 
   16176              : E_V8HFmode, 
   16177              : E_QImode) != 0)
   16178              :             return -1;
   16179              :           switch (GET_MODE (operands[1]))
   16180              :             {
   16181              :             case E_V8DFmode:
   16182              :               if (!register_operand (operands[1], E_V8DFmode)
   16183              :                   || !(
   16184              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16185              : (TARGET_AVX512F) && (
   16186              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16187              : (TARGET_AVX512F) && 
   16188              : #line 8493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16189              : (TARGET_AVX512FP16))))
   16190              :                 return -1;
   16191              :               return 4770; /* avx512fp16_vcvtpd2ph_v8df_mask_round */
   16192              : 
   16193              :             case E_V8SFmode:
   16194              :               if (!register_operand (operands[1], E_V8SFmode)
   16195              :                   || !(
   16196              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16197              : (TARGET_AVX512F) && (
   16198              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16199              : (TARGET_AVX512F) && (
   16200              : #line 8493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16201              : (TARGET_AVX512FP16) && 
   16202              : #line 986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16203              : (TARGET_AVX512VL)))))
   16204              :                 return -1;
   16205              :               return 4778; /* avx512fp16_vcvtps2ph_v8sf_mask_round */
   16206              : 
   16207              :             default:
   16208              :               return -1;
   16209              :             }
   16210              : 
   16211              :         case E_V16HFmode:
   16212              :           if (pattern665 (x2, 
   16213              : E_HImode, 
   16214              : E_V16HFmode, 
   16215              : E_V16SFmode) != 0
   16216              :               || !(
   16217              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16218              : (TARGET_AVX512F) && (
   16219              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16220              : (TARGET_AVX512F) && 
   16221              : #line 8493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16222              : (TARGET_AVX512FP16))))
   16223              :             return -1;
   16224              :           return 4774; /* avx512fp16_vcvtps2ph_v16sf_mask_round */
   16225              : 
   16226              :         case E_V8SFmode:
   16227              :           if (pattern665 (x2, 
   16228              : E_QImode, 
   16229              : E_V8SFmode, 
   16230              : E_V8DFmode) != 0
   16231              :               || !
   16232              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16233              : (TARGET_AVX512F))
   16234              :             return -1;
   16235              :           return 5181; /* avx512f_cvtpd2ps512_mask_round */
   16236              : 
   16237              :         default:
   16238              :           return -1;
   16239              :         }
   16240              : 
   16241              :     case VEC_CONCAT:
   16242              :       if (GET_MODE (x4) != E_V32HFmode)
   16243              :         return -1;
   16244              :       x5 = XEXP (x4, 0);
   16245              :       if (GET_CODE (x5) != FLOAT_TRUNCATE
   16246              :           || GET_MODE (x5) != E_V16HFmode)
   16247              :         return -1;
   16248              :       x6 = XEXP (x4, 1);
   16249              :       if (GET_CODE (x6) != FLOAT_TRUNCATE
   16250              :           || GET_MODE (x6) != E_V16HFmode
   16251              :           || !register_operand (operands[0], E_V32HFmode)
   16252              :           || GET_MODE (x2) != E_V32HFmode
   16253              :           || GET_MODE (x3) != E_V32HFmode)
   16254              :         return -1;
   16255              :       x13 = XEXP (x5, 0);
   16256              :       operands[2] = x13;
   16257              :       if (!register_operand (operands[2], E_V16SFmode))
   16258              :         return -1;
   16259              :       x14 = XEXP (x6, 0);
   16260              :       operands[1] = x14;
   16261              :       if (!register_operand (operands[1], E_V16SFmode))
   16262              :         return -1;
   16263              :       x9 = XEXP (x3, 1);
   16264              :       operands[3] = x9;
   16265              :       if (!nonimm_or_0_operand (operands[3], E_V32HFmode))
   16266              :         return -1;
   16267              :       x8 = XEXP (x3, 2);
   16268              :       operands[4] = x8;
   16269              :       if (!register_operand (operands[4], E_SImode))
   16270              :         return -1;
   16271              :       x7 = XVECEXP (x2, 0, 1);
   16272              :       operands[5] = x7;
   16273              :       if (!const_4_or_8_to_11_operand (operands[5], E_SImode)
   16274              :           || !(
   16275              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16276              : (TARGET_AVX512F) && (
   16277              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   16278              : (TARGET_AVX512F) && 
   16279              : #line 32692 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16280              : (TARGET_AVX10_2 && (V32HFmode == V16SFmode
   16281              :                                                               || V32HFmode == V8DFmode
   16282              :                                                               || V32HFmode == V8DImode
   16283              :                                                               || V32HFmode == V16SImode
   16284              :                                                               || V32HFmode == V32HFmode)))))
   16285              :         return -1;
   16286              :       return 10525; /* avx10_2_cvt2ps2phx_v32hf_mask_round */
   16287              : 
   16288              :     default:
   16289              :       return -1;
   16290              :     }
   16291              : }
   16292              : 
   16293              :  int
   16294              : recog_284 (rtx x1 ATTRIBUTE_UNUSED,
   16295              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16296              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16297              : {
   16298              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16299              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   16300              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   16301              :   rtx x18, x19, x20, x21;
   16302              :   int res ATTRIBUTE_UNUSED;
   16303              :   x2 = XEXP (x1, 1);
   16304              :   x3 = XEXP (x2, 1);
   16305              :   x4 = XVECEXP (x3, 0, 0);
   16306              :   if (GET_CODE (x4) != CONST_INT)
   16307              :     return -1;
   16308              :   x5 = XVECEXP (x3, 0, 1);
   16309              :   if (GET_CODE (x5) == CONST_INT)
   16310              :     {
   16311              :       res = recog_283 (x1, insn, pnum_clobbers);
   16312              :       if (res >= 0)
   16313              :         return res;
   16314              :     }
   16315              :   operands[3] = x4;
   16316              :   x6 = XEXP (x2, 0);
   16317              :   x7 = XEXP (x6, 1);
   16318              :   operands[2] = x7;
   16319              :   operands[4] = x5;
   16320              :   x8 = XVECEXP (x3, 0, 2);
   16321              :   operands[5] = x8;
   16322              :   x9 = XVECEXP (x3, 0, 3);
   16323              :   operands[6] = x9;
   16324              :   x10 = XVECEXP (x3, 0, 4);
   16325              :   operands[7] = x10;
   16326              :   x11 = XVECEXP (x3, 0, 5);
   16327              :   operands[8] = x11;
   16328              :   x12 = XVECEXP (x3, 0, 6);
   16329              :   operands[9] = x12;
   16330              :   x13 = XVECEXP (x3, 0, 7);
   16331              :   operands[10] = x13;
   16332              :   x14 = XVECEXP (x3, 0, 8);
   16333              :   operands[11] = x14;
   16334              :   x15 = XVECEXP (x3, 0, 9);
   16335              :   operands[12] = x15;
   16336              :   x16 = XVECEXP (x3, 0, 10);
   16337              :   operands[13] = x16;
   16338              :   x17 = XVECEXP (x3, 0, 11);
   16339              :   operands[14] = x17;
   16340              :   x18 = XVECEXP (x3, 0, 12);
   16341              :   operands[15] = x18;
   16342              :   x19 = XVECEXP (x3, 0, 13);
   16343              :   operands[16] = x19;
   16344              :   x20 = XVECEXP (x3, 0, 14);
   16345              :   operands[17] = x20;
   16346              :   x21 = XVECEXP (x3, 0, 15);
   16347              :   operands[18] = x21;
   16348              :   switch (GET_MODE (operands[0]))
   16349              :     {
   16350              :     case E_V16SFmode:
   16351              :       if (pattern1425 (x2, 
   16352              : E_V16SFmode, 
   16353              : E_V32SFmode) != 0)
   16354              :         return -1;
   16355              :       if (const_0_to_3_operand (operands[3], E_VOIDmode)
   16356              :           && const_0_to_3_operand (operands[4], E_VOIDmode)
   16357              :           && const_16_to_19_operand (operands[5], E_VOIDmode)
   16358              :           && const_16_to_19_operand (operands[6], E_VOIDmode)
   16359              :           && const_4_to_7_operand (operands[7], E_VOIDmode)
   16360              :           && const_4_to_7_operand (operands[8], E_VOIDmode)
   16361              :           && const_20_to_23_operand (operands[9], E_VOIDmode)
   16362              :           && const_20_to_23_operand (operands[10], E_VOIDmode)
   16363              :           && const_8_to_11_operand (operands[11], E_VOIDmode)
   16364              :           && const_8_to_11_operand (operands[12], E_VOIDmode)
   16365              :           && const_24_to_27_operand (operands[13], E_VOIDmode)
   16366              :           && const_24_to_27_operand (operands[14], E_VOIDmode)
   16367              :           && const_12_to_15_operand (operands[15], E_VOIDmode)
   16368              :           && const_12_to_15_operand (operands[16], E_VOIDmode)
   16369              :           && const_28_to_31_operand (operands[17], E_VOIDmode)
   16370              :           && const_28_to_31_operand (operands[18], E_VOIDmode)
   16371              :           && 
   16372              : #line 14659 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16373              : (TARGET_AVX512F
   16374              :    && (INTVAL (operands[3]) == (INTVAL (operands[7]) - 4)
   16375              :        && INTVAL (operands[4]) == (INTVAL (operands[8]) - 4)
   16376              :        && INTVAL (operands[5]) == (INTVAL (operands[9]) - 4)
   16377              :        && INTVAL (operands[6]) == (INTVAL (operands[10]) - 4)
   16378              :        && INTVAL (operands[3]) == (INTVAL (operands[11]) - 8)
   16379              :        && INTVAL (operands[4]) == (INTVAL (operands[12]) - 8)
   16380              :        && INTVAL (operands[5]) == (INTVAL (operands[13]) - 8)
   16381              :        && INTVAL (operands[6]) == (INTVAL (operands[14]) - 8)
   16382              :        && INTVAL (operands[3]) == (INTVAL (operands[15]) - 12)
   16383              :        && INTVAL (operands[4]) == (INTVAL (operands[16]) - 12)
   16384              :        && INTVAL (operands[5]) == (INTVAL (operands[17]) - 12)
   16385              :        && INTVAL (operands[6]) == (INTVAL (operands[18]) - 12))))
   16386              :         return 7213; /* avx512f_shufps512_1 */
   16387              :       if (!const_0_to_15_operand (operands[3], E_VOIDmode)
   16388              :           || pattern1881 () != 0
   16389              :           || !
   16390              : #line 20870 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16391              : (TARGET_AVX512F
   16392              :    && (INTVAL (operands[3]) & 3) == 0
   16393              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   16394              :    && INTVAL (operands[3]) == INTVAL (operands[5]) - 2
   16395              :    && INTVAL (operands[3]) == INTVAL (operands[6]) - 3
   16396              :    && (INTVAL (operands[7]) & 3) == 0
   16397              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   16398              :    && INTVAL (operands[7]) == INTVAL (operands[9]) - 2
   16399              :    && INTVAL (operands[7]) == INTVAL (operands[10]) - 3
   16400              :    && (INTVAL (operands[11]) & 3) == 0
   16401              :    && INTVAL (operands[11]) == INTVAL (operands[12]) - 1
   16402              :    && INTVAL (operands[11]) == INTVAL (operands[13]) - 2
   16403              :    && INTVAL (operands[11]) == INTVAL (operands[14]) - 3
   16404              :    && (INTVAL (operands[15]) & 3) == 0
   16405              :    && INTVAL (operands[15]) == INTVAL (operands[16]) - 1
   16406              :    && INTVAL (operands[15]) == INTVAL (operands[17]) - 2
   16407              :    && INTVAL (operands[15]) == INTVAL (operands[18]) - 3))
   16408              :         return -1;
   16409              :       return 8485; /* avx512f_shuf_f32x4_1 */
   16410              : 
   16411              :     case E_V16SImode:
   16412              :       if (pattern1425 (x2, 
   16413              : E_V16SImode, 
   16414              : E_V32SImode) != 0
   16415              :           || !const_0_to_15_operand (operands[3], E_VOIDmode)
   16416              :           || pattern1881 () != 0
   16417              :           || !
   16418              : #line 20870 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16419              : (TARGET_AVX512F
   16420              :    && (INTVAL (operands[3]) & 3) == 0
   16421              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   16422              :    && INTVAL (operands[3]) == INTVAL (operands[5]) - 2
   16423              :    && INTVAL (operands[3]) == INTVAL (operands[6]) - 3
   16424              :    && (INTVAL (operands[7]) & 3) == 0
   16425              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   16426              :    && INTVAL (operands[7]) == INTVAL (operands[9]) - 2
   16427              :    && INTVAL (operands[7]) == INTVAL (operands[10]) - 3
   16428              :    && (INTVAL (operands[11]) & 3) == 0
   16429              :    && INTVAL (operands[11]) == INTVAL (operands[12]) - 1
   16430              :    && INTVAL (operands[11]) == INTVAL (operands[13]) - 2
   16431              :    && INTVAL (operands[11]) == INTVAL (operands[14]) - 3
   16432              :    && (INTVAL (operands[15]) & 3) == 0
   16433              :    && INTVAL (operands[15]) == INTVAL (operands[16]) - 1
   16434              :    && INTVAL (operands[15]) == INTVAL (operands[17]) - 2
   16435              :    && INTVAL (operands[15]) == INTVAL (operands[18]) - 3))
   16436              :         return -1;
   16437              :       return 8487; /* avx512f_shuf_i32x4_1 */
   16438              : 
   16439              :     default:
   16440              :       return -1;
   16441              :     }
   16442              : }
   16443              : 
   16444              :  int
   16445              : recog_288 (rtx x1 ATTRIBUTE_UNUSED,
   16446              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16447              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16448              : {
   16449              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16450              :   rtx x2, x3, x4, x5, x6;
   16451              :   int res ATTRIBUTE_UNUSED;
   16452              :   x2 = XEXP (x1, 1);
   16453              :   x3 = XEXP (x2, 0);
   16454              :   x4 = XEXP (x3, 1);
   16455              :   switch (GET_CODE (x4))
   16456              :     {
   16457              :     case REG:
   16458              :     case SUBREG:
   16459              :     case MEM:
   16460              :       x5 = XEXP (x2, 1);
   16461              :       switch (XVECLEN (x5, 0))
   16462              :         {
   16463              :         case 4:
   16464              :           res = recog_280 (x1, insn, pnum_clobbers);
   16465              :           if (res >= 0)
   16466              :             return res;
   16467              :           break;
   16468              : 
   16469              :         case 8:
   16470              :           res = recog_282 (x1, insn, pnum_clobbers);
   16471              :           if (res >= 0)
   16472              :             return res;
   16473              :           break;
   16474              : 
   16475              :         case 16:
   16476              :           res = recog_284 (x1, insn, pnum_clobbers);
   16477              :           if (res >= 0)
   16478              :             return res;
   16479              :           break;
   16480              : 
   16481              :         case 2:
   16482              :           res = recog_285 (x1, insn, pnum_clobbers);
   16483              :           if (res >= 0)
   16484              :             return res;
   16485              :           break;
   16486              : 
   16487              :         case 64:
   16488              :           res = recog_286 (x1, insn, pnum_clobbers);
   16489              :           if (res >= 0)
   16490              :             return res;
   16491              :           break;
   16492              : 
   16493              :         case 32:
   16494              :           res = recog_287 (x1, insn, pnum_clobbers);
   16495              :           if (res >= 0)
   16496              :             return res;
   16497              :           break;
   16498              : 
   16499              :         default:
   16500              :           break;
   16501              :         }
   16502              :       operands[2] = x4;
   16503              :       if (XVECLEN (x5, 0) >= 1)
   16504              :         {
   16505              :           operands[3] = x5;
   16506              :           x6 = XVECEXP (x5, 0, 0);
   16507              :           operands[4] = x6;
   16508              :           if (const_int_operand (operands[4], E_VOIDmode))
   16509              :             {
   16510              :               switch (GET_MODE (operands[0]))
   16511              :                 {
   16512              :                 case E_V8SImode:
   16513              :                   if (pattern1425 (x2, 
   16514              : E_V8SImode, 
   16515              : E_V16SImode) == 0
   16516              :                       && 
   16517              : #line 29265 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16518              : (TARGET_AVX
   16519              :    && avx_vperm2f128_parallel (operands[3], V8SImode)))
   16520              :                     return 9536; /* *avx_vperm2f128v8si_nozero */
   16521              :                   break;
   16522              : 
   16523              :                 case E_V8SFmode:
   16524              :                   if (pattern1425 (x2, 
   16525              : E_V8SFmode, 
   16526              : E_V16SFmode) == 0
   16527              :                       && 
   16528              : #line 29265 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16529              : (TARGET_AVX
   16530              :    && avx_vperm2f128_parallel (operands[3], V8SFmode)))
   16531              :                     return 9537; /* *avx_vperm2f128v8sf_nozero */
   16532              :                   break;
   16533              : 
   16534              :                 case E_V4DFmode:
   16535              :                   if (pattern1425 (x2, 
   16536              : E_V4DFmode, 
   16537              : E_V8DFmode) == 0
   16538              :                       && 
   16539              : #line 29265 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16540              : (TARGET_AVX
   16541              :    && avx_vperm2f128_parallel (operands[3], V4DFmode)))
   16542              :                     return 9538; /* *avx_vperm2f128v4df_nozero */
   16543              :                   break;
   16544              : 
   16545              :                 default:
   16546              :                   break;
   16547              :                 }
   16548              :             }
   16549              :         }
   16550              :       break;
   16551              : 
   16552              :     case CONST_INT:
   16553              :     case CONST_DOUBLE:
   16554              :     case CONST_VECTOR:
   16555              :       switch (pattern812 (x2))
   16556              :         {
   16557              :         case 0:
   16558              :           if (
   16559              : #line 24654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16560              : (TARGET_AVX2))
   16561              :             return 8813; /* *avx2_zero_extendv16qiv16hi2_1 */
   16562              :           break;
   16563              : 
   16564              :         case 1:
   16565              :           if (
   16566              : #line 24708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16567              : (TARGET_AVX512BW))
   16568              :             return 8821; /* *avx512bw_zero_extendv32qiv32hi2_1 */
   16569              :           break;
   16570              : 
   16571              :         case 2:
   16572              :           if (
   16573              : #line 24832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16574              : (TARGET_SSE4_1))
   16575              :             return 8837; /* *sse4_1_zero_extendv8qiv8hi2_3 */
   16576              :           break;
   16577              : 
   16578              :         case 3:
   16579              :           if (
   16580              : #line 25142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16581              : (TARGET_AVX512F))
   16582              :             return 8875; /* avx512f_zero_extendv16hiv16si2_1 */
   16583              :           break;
   16584              : 
   16585              :         case 4:
   16586              :           if (
   16587              : #line 25197 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16588              : (TARGET_AVX2))
   16589              :             return 8883; /* avx2_zero_extendv8hiv8si2_1 */
   16590              :           break;
   16591              : 
   16592              :         case 5:
   16593              :           if (
   16594              : #line 25329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16595              : (TARGET_SSE4_1))
   16596              :             return 8899; /* *sse4_1_zero_extendv4hiv4si2_3 */
   16597              :           break;
   16598              : 
   16599              :         case 6:
   16600              :           if (pmovzx_parallel (operands[3], E_VOIDmode)
   16601              :               && 
   16602              : #line 25846 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16603              : (TARGET_AVX512F))
   16604              :             return 8970; /* *avx512f_zero_extendv8siv8di2_1 */
   16605              :           if (movq_parallel (operands[3], E_VOIDmode)
   16606              :               && (
   16607              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16608              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16609              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16610              : (TARGET_AVX512F)))
   16611              :             return 9714; /* *vec_concatv16si_0_1 */
   16612              :           break;
   16613              : 
   16614              :         case 7:
   16615              :           if (pmovzx_parallel (operands[3], E_VOIDmode)
   16616              :               && 
   16617              : #line 25899 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16618              : (TARGET_AVX2))
   16619              :             return 8976; /* *avx2_zero_extendv4siv4di2_1 */
   16620              :           if (movq_parallel (operands[3], E_VOIDmode)
   16621              :               && (
   16622              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16623              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16624              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16625              : (TARGET_AVX)))
   16626              :             return 9715; /* *vec_concatv8si_0_1 */
   16627              :           break;
   16628              : 
   16629              :         case 8:
   16630              :           if (vector_operand (operands[1], E_V4SImode)
   16631              :               && pmovzx_parallel (operands[3], E_VOIDmode)
   16632              :               && 
   16633              : #line 26009 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16634              : (TARGET_SSE4_1))
   16635              :             return 8990; /* *sse4_1_zero_extendv2siv2di2_3 */
   16636              :           if (nonimmediate_operand (operands[1], E_V4SImode)
   16637              :               && movq_parallel (operands[3], E_VOIDmode)
   16638              :               && 
   16639              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16640              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   16641              :             return 9716; /* *vec_concatv4si_0_1 */
   16642              :           break;
   16643              : 
   16644              :         case 9:
   16645              :           if ((
   16646              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16647              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16648              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16649              : (TARGET_AVX512F)))
   16650              :             return 9717; /* *vec_concatv8di_0_1 */
   16651              :           break;
   16652              : 
   16653              :         case 10:
   16654              :           if ((
   16655              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16656              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16657              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16658              : (TARGET_AVX)))
   16659              :             return 9718; /* *vec_concatv4di_0_1 */
   16660              :           break;
   16661              : 
   16662              :         case 11:
   16663              :           if (
   16664              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16665              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   16666              :             return 9719; /* *vec_concatv2di_0_1 */
   16667              :           break;
   16668              : 
   16669              :         case 12:
   16670              :           if ((
   16671              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16672              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16673              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16674              : (TARGET_AVX512F)))
   16675              :             return 9720; /* *vec_concatv32hf_0_1 */
   16676              :           break;
   16677              : 
   16678              :         case 13:
   16679              :           if ((
   16680              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16681              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16682              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16683              : (TARGET_AVX)))
   16684              :             return 9721; /* *vec_concatv16hf_0_1 */
   16685              :           break;
   16686              : 
   16687              :         case 14:
   16688              :           if (
   16689              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16690              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   16691              :             return 9722; /* *vec_concatv8hf_0_1 */
   16692              :           break;
   16693              : 
   16694              :         case 15:
   16695              :           if ((
   16696              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16697              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16698              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16699              : (TARGET_AVX512F)))
   16700              :             return 9723; /* *vec_concatv32bf_0_1 */
   16701              :           break;
   16702              : 
   16703              :         case 16:
   16704              :           if ((
   16705              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16706              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16707              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16708              : (TARGET_AVX)))
   16709              :             return 9724; /* *vec_concatv16bf_0_1 */
   16710              :           break;
   16711              : 
   16712              :         case 17:
   16713              :           if (
   16714              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16715              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   16716              :             return 9725; /* *vec_concatv8bf_0_1 */
   16717              :           break;
   16718              : 
   16719              :         case 18:
   16720              :           if ((
   16721              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16722              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16723              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16724              : (TARGET_AVX512F)))
   16725              :             return 9726; /* *vec_concatv16sf_0_1 */
   16726              :           break;
   16727              : 
   16728              :         case 19:
   16729              :           if ((
   16730              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16731              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16732              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16733              : (TARGET_AVX)))
   16734              :             return 9727; /* *vec_concatv8sf_0_1 */
   16735              :           break;
   16736              : 
   16737              :         case 20:
   16738              :           if (
   16739              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16740              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   16741              :             return 9728; /* *vec_concatv4sf_0_1 */
   16742              :           break;
   16743              : 
   16744              :         case 21:
   16745              :           if ((
   16746              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16747              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16748              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16749              : (TARGET_AVX512F)))
   16750              :             return 9729; /* *vec_concatv8df_0_1 */
   16751              :           break;
   16752              : 
   16753              :         case 22:
   16754              :           if ((
   16755              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16756              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16757              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16758              : (TARGET_AVX)))
   16759              :             return 9730; /* *vec_concatv4df_0_1 */
   16760              :           break;
   16761              : 
   16762              :         case 23:
   16763              :           if ((
   16764              : #line 30012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16765              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   16766              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16767              : (TARGET_SSE2)))
   16768              :             return 9731; /* *vec_concatv2df_0_1 */
   16769              :           break;
   16770              : 
   16771              :         default:
   16772              :           break;
   16773              :         }
   16774              :       break;
   16775              : 
   16776              :     default:
   16777              :       break;
   16778              :     }
   16779              :   x5 = XEXP (x2, 1);
   16780              :   if (XVECLEN (x5, 0) < 1)
   16781              :     return -1;
   16782              :   switch (pattern814 (x2))
   16783              :     {
   16784              :     case 0:
   16785              :       if (!
   16786              : #line 28951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16787              : (TARGET_AVX && ix86_pre_reload_split ()))
   16788              :         return -1;
   16789              :       return 9397; /* *avx_vbroadcastf128_v32qi_perm */
   16790              : 
   16791              :     case 1:
   16792              :       if (!
   16793              : #line 28951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16794              : (TARGET_AVX && ix86_pre_reload_split ()))
   16795              :         return -1;
   16796              :       return 9398; /* *avx_vbroadcastf128_v16hi_perm */
   16797              : 
   16798              :     case 2:
   16799              :       if (!
   16800              : #line 28951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16801              : (TARGET_AVX && ix86_pre_reload_split ()))
   16802              :         return -1;
   16803              :       return 9399; /* *avx_vbroadcastf128_v8si_perm */
   16804              : 
   16805              :     case 3:
   16806              :       if (!
   16807              : #line 28951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16808              : (TARGET_AVX && ix86_pre_reload_split ()))
   16809              :         return -1;
   16810              :       return 9400; /* *avx_vbroadcastf128_v4di_perm */
   16811              : 
   16812              :     case 4:
   16813              :       if (!
   16814              : #line 28951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16815              : (TARGET_AVX && ix86_pre_reload_split ()))
   16816              :         return -1;
   16817              :       return 9401; /* *avx_vbroadcastf128_v8sf_perm */
   16818              : 
   16819              :     case 5:
   16820              :       if (!
   16821              : #line 28951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16822              : (TARGET_AVX && ix86_pre_reload_split ()))
   16823              :         return -1;
   16824              :       return 9402; /* *avx_vbroadcastf128_v4df_perm */
   16825              : 
   16826              :     case 6:
   16827              :       if (!
   16828              : #line 28951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16829              : (TARGET_AVX && ix86_pre_reload_split ()))
   16830              :         return -1;
   16831              :       return 9403; /* *avx_vbroadcastf128_v16hf_perm */
   16832              : 
   16833              :     case 7:
   16834              :       if (!
   16835              : #line 28951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16836              : (TARGET_AVX && ix86_pre_reload_split ()))
   16837              :         return -1;
   16838              :       return 9404; /* *avx_vbroadcastf128_v16bf_perm */
   16839              : 
   16840              :     default:
   16841              :       return -1;
   16842              :     }
   16843              : }
   16844              : 
   16845              :  int
   16846              : recog_306 (rtx x1 ATTRIBUTE_UNUSED,
   16847              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16848              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16849              : {
   16850              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16851              :   rtx x2, x3, x4;
   16852              :   int res ATTRIBUTE_UNUSED;
   16853              :   x2 = XEXP (x1, 1);
   16854              :   x3 = XEXP (x2, 0);
   16855              :   x4 = XEXP (x3, 0);
   16856              :   switch (GET_CODE (x4))
   16857              :     {
   16858              :     case REG:
   16859              :     case SUBREG:
   16860              :     case MEM:
   16861              :     case NOT:
   16862              :       switch (pattern537 (x2))
   16863              :         {
   16864              :         case 0:
   16865              :           if (!(
   16866              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16867              : ((64 == 64 || TARGET_AVX512VL
   16868              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16869              :    && ix86_pre_reload_split ()
   16870              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16871              :                     STRIP_UNARY (operands[4]))
   16872              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16873              :                        STRIP_UNARY (operands[4]))
   16874              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16875              :                        STRIP_UNARY (operands[3]))
   16876              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16877              :                        STRIP_UNARY (operands[3])))) && 
   16878              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16879              : (TARGET_AVX512F)))
   16880              :             return -1;
   16881              :           return 5534; /* *avx512bw_vpternlogv64qi_1 */
   16882              : 
   16883              :         case 1:
   16884              :           if (!(
   16885              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16886              : ((32 == 64 || TARGET_AVX512VL
   16887              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16888              :    && ix86_pre_reload_split ()
   16889              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16890              :                     STRIP_UNARY (operands[4]))
   16891              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16892              :                        STRIP_UNARY (operands[4]))
   16893              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16894              :                        STRIP_UNARY (operands[3]))
   16895              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16896              :                        STRIP_UNARY (operands[3])))) && 
   16897              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16898              : (TARGET_AVX)))
   16899              :             return -1;
   16900              :           return 5561; /* *avx512vl_vpternlogv32qi_1 */
   16901              : 
   16902              :         case 2:
   16903              :           if (!
   16904              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16905              : ((16 == 64 || TARGET_AVX512VL
   16906              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16907              :    && ix86_pre_reload_split ()
   16908              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16909              :                     STRIP_UNARY (operands[4]))
   16910              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16911              :                        STRIP_UNARY (operands[4]))
   16912              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16913              :                        STRIP_UNARY (operands[3]))
   16914              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16915              :                        STRIP_UNARY (operands[3])))))
   16916              :             return -1;
   16917              :           return 5588; /* *avx512vl_vpternlogv16qi_1 */
   16918              : 
   16919              :         case 3:
   16920              :           if (!(
   16921              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16922              : ((64 == 64 || TARGET_AVX512VL
   16923              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16924              :    && ix86_pre_reload_split ()
   16925              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16926              :                     STRIP_UNARY (operands[4]))
   16927              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16928              :                        STRIP_UNARY (operands[4]))
   16929              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16930              :                        STRIP_UNARY (operands[3]))
   16931              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16932              :                        STRIP_UNARY (operands[3])))) && 
   16933              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16934              : (TARGET_AVX512F)))
   16935              :             return -1;
   16936              :           return 5615; /* *avx512bw_vpternlogv32hi_1 */
   16937              : 
   16938              :         case 4:
   16939              :           if (!(
   16940              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16941              : ((32 == 64 || TARGET_AVX512VL
   16942              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16943              :    && ix86_pre_reload_split ()
   16944              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16945              :                     STRIP_UNARY (operands[4]))
   16946              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16947              :                        STRIP_UNARY (operands[4]))
   16948              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16949              :                        STRIP_UNARY (operands[3]))
   16950              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16951              :                        STRIP_UNARY (operands[3])))) && 
   16952              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16953              : (TARGET_AVX)))
   16954              :             return -1;
   16955              :           return 5642; /* *avx512vl_vpternlogv16hi_1 */
   16956              : 
   16957              :         case 5:
   16958              :           if (!
   16959              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16960              : ((16 == 64 || TARGET_AVX512VL
   16961              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16962              :    && ix86_pre_reload_split ()
   16963              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16964              :                     STRIP_UNARY (operands[4]))
   16965              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16966              :                        STRIP_UNARY (operands[4]))
   16967              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16968              :                        STRIP_UNARY (operands[3]))
   16969              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16970              :                        STRIP_UNARY (operands[3])))))
   16971              :             return -1;
   16972              :           return 5669; /* *avx512vl_vpternlogv8hi_1 */
   16973              : 
   16974              :         case 6:
   16975              :           if (!(
   16976              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16977              : ((64 == 64 || TARGET_AVX512VL
   16978              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16979              :    && ix86_pre_reload_split ()
   16980              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16981              :                     STRIP_UNARY (operands[4]))
   16982              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16983              :                        STRIP_UNARY (operands[4]))
   16984              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16985              :                        STRIP_UNARY (operands[3]))
   16986              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16987              :                        STRIP_UNARY (operands[3])))) && 
   16988              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16989              : (TARGET_AVX512F)))
   16990              :             return -1;
   16991              :           return 5696; /* *avx512f_vpternlogv16si_1 */
   16992              : 
   16993              :         case 7:
   16994              :           if (!(
   16995              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16996              : ((32 == 64 || TARGET_AVX512VL
   16997              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16998              :    && ix86_pre_reload_split ()
   16999              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17000              :                     STRIP_UNARY (operands[4]))
   17001              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17002              :                        STRIP_UNARY (operands[4]))
   17003              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17004              :                        STRIP_UNARY (operands[3]))
   17005              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17006              :                        STRIP_UNARY (operands[3])))) && 
   17007              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17008              : (TARGET_AVX)))
   17009              :             return -1;
   17010              :           return 5723; /* *avx512vl_vpternlogv8si_1 */
   17011              : 
   17012              :         case 8:
   17013              :           if (!
   17014              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17015              : ((16 == 64 || TARGET_AVX512VL
   17016              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17017              :    && ix86_pre_reload_split ()
   17018              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17019              :                     STRIP_UNARY (operands[4]))
   17020              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17021              :                        STRIP_UNARY (operands[4]))
   17022              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17023              :                        STRIP_UNARY (operands[3]))
   17024              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17025              :                        STRIP_UNARY (operands[3])))))
   17026              :             return -1;
   17027              :           return 5750; /* *avx512vl_vpternlogv4si_1 */
   17028              : 
   17029              :         case 9:
   17030              :           if (!(
   17031              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17032              : ((64 == 64 || TARGET_AVX512VL
   17033              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17034              :    && ix86_pre_reload_split ()
   17035              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17036              :                     STRIP_UNARY (operands[4]))
   17037              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17038              :                        STRIP_UNARY (operands[4]))
   17039              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17040              :                        STRIP_UNARY (operands[3]))
   17041              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17042              :                        STRIP_UNARY (operands[3])))) && 
   17043              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17044              : (TARGET_AVX512F)))
   17045              :             return -1;
   17046              :           return 5777; /* *avx512f_vpternlogv8di_1 */
   17047              : 
   17048              :         case 10:
   17049              :           if (!(
   17050              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17051              : ((32 == 64 || TARGET_AVX512VL
   17052              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17053              :    && ix86_pre_reload_split ()
   17054              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17055              :                     STRIP_UNARY (operands[4]))
   17056              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17057              :                        STRIP_UNARY (operands[4]))
   17058              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17059              :                        STRIP_UNARY (operands[3]))
   17060              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17061              :                        STRIP_UNARY (operands[3])))) && 
   17062              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17063              : (TARGET_AVX)))
   17064              :             return -1;
   17065              :           return 5804; /* *avx512vl_vpternlogv4di_1 */
   17066              : 
   17067              :         case 11:
   17068              :           if (!
   17069              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17070              : ((16 == 64 || TARGET_AVX512VL
   17071              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17072              :    && ix86_pre_reload_split ()
   17073              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17074              :                     STRIP_UNARY (operands[4]))
   17075              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17076              :                        STRIP_UNARY (operands[4]))
   17077              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17078              :                        STRIP_UNARY (operands[3]))
   17079              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17080              :                        STRIP_UNARY (operands[3])))))
   17081              :             return -1;
   17082              :           return 5831; /* *avx512vl_vpternlogv2di_1 */
   17083              : 
   17084              :         case 12:
   17085              :           if (!(
   17086              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17087              : ((64 == 64 || TARGET_AVX512VL
   17088              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17089              :    && ix86_pre_reload_split ()
   17090              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17091              :                     STRIP_UNARY (operands[4]))
   17092              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17093              :                        STRIP_UNARY (operands[4]))
   17094              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17095              :                        STRIP_UNARY (operands[3]))
   17096              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17097              :                        STRIP_UNARY (operands[3])))) && 
   17098              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17099              : (TARGET_AVX512F)))
   17100              :             return -1;
   17101              :           return 5537; /* *avx512bw_vpternlogv64qi_1 */
   17102              : 
   17103              :         case 13:
   17104              :           if (!(
   17105              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17106              : ((32 == 64 || TARGET_AVX512VL
   17107              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17108              :    && ix86_pre_reload_split ()
   17109              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17110              :                     STRIP_UNARY (operands[4]))
   17111              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17112              :                        STRIP_UNARY (operands[4]))
   17113              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17114              :                        STRIP_UNARY (operands[3]))
   17115              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17116              :                        STRIP_UNARY (operands[3])))) && 
   17117              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17118              : (TARGET_AVX)))
   17119              :             return -1;
   17120              :           return 5564; /* *avx512vl_vpternlogv32qi_1 */
   17121              : 
   17122              :         case 14:
   17123              :           if (!
   17124              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17125              : ((16 == 64 || TARGET_AVX512VL
   17126              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17127              :    && ix86_pre_reload_split ()
   17128              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17129              :                     STRIP_UNARY (operands[4]))
   17130              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17131              :                        STRIP_UNARY (operands[4]))
   17132              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17133              :                        STRIP_UNARY (operands[3]))
   17134              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17135              :                        STRIP_UNARY (operands[3])))))
   17136              :             return -1;
   17137              :           return 5591; /* *avx512vl_vpternlogv16qi_1 */
   17138              : 
   17139              :         case 15:
   17140              :           if (!(
   17141              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17142              : ((64 == 64 || TARGET_AVX512VL
   17143              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17144              :    && ix86_pre_reload_split ()
   17145              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17146              :                     STRIP_UNARY (operands[4]))
   17147              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17148              :                        STRIP_UNARY (operands[4]))
   17149              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17150              :                        STRIP_UNARY (operands[3]))
   17151              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17152              :                        STRIP_UNARY (operands[3])))) && 
   17153              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17154              : (TARGET_AVX512F)))
   17155              :             return -1;
   17156              :           return 5618; /* *avx512bw_vpternlogv32hi_1 */
   17157              : 
   17158              :         case 16:
   17159              :           if (!(
   17160              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17161              : ((32 == 64 || TARGET_AVX512VL
   17162              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17163              :    && ix86_pre_reload_split ()
   17164              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17165              :                     STRIP_UNARY (operands[4]))
   17166              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17167              :                        STRIP_UNARY (operands[4]))
   17168              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17169              :                        STRIP_UNARY (operands[3]))
   17170              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17171              :                        STRIP_UNARY (operands[3])))) && 
   17172              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17173              : (TARGET_AVX)))
   17174              :             return -1;
   17175              :           return 5645; /* *avx512vl_vpternlogv16hi_1 */
   17176              : 
   17177              :         case 17:
   17178              :           if (!
   17179              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17180              : ((16 == 64 || TARGET_AVX512VL
   17181              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17182              :    && ix86_pre_reload_split ()
   17183              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17184              :                     STRIP_UNARY (operands[4]))
   17185              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17186              :                        STRIP_UNARY (operands[4]))
   17187              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17188              :                        STRIP_UNARY (operands[3]))
   17189              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17190              :                        STRIP_UNARY (operands[3])))))
   17191              :             return -1;
   17192              :           return 5672; /* *avx512vl_vpternlogv8hi_1 */
   17193              : 
   17194              :         case 18:
   17195              :           if (!(
   17196              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17197              : ((64 == 64 || TARGET_AVX512VL
   17198              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17199              :    && ix86_pre_reload_split ()
   17200              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17201              :                     STRIP_UNARY (operands[4]))
   17202              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17203              :                        STRIP_UNARY (operands[4]))
   17204              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17205              :                        STRIP_UNARY (operands[3]))
   17206              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17207              :                        STRIP_UNARY (operands[3])))) && 
   17208              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17209              : (TARGET_AVX512F)))
   17210              :             return -1;
   17211              :           return 5699; /* *avx512f_vpternlogv16si_1 */
   17212              : 
   17213              :         case 19:
   17214              :           if (!(
   17215              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17216              : ((32 == 64 || TARGET_AVX512VL
   17217              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17218              :    && ix86_pre_reload_split ()
   17219              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17220              :                     STRIP_UNARY (operands[4]))
   17221              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17222              :                        STRIP_UNARY (operands[4]))
   17223              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17224              :                        STRIP_UNARY (operands[3]))
   17225              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17226              :                        STRIP_UNARY (operands[3])))) && 
   17227              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17228              : (TARGET_AVX)))
   17229              :             return -1;
   17230              :           return 5726; /* *avx512vl_vpternlogv8si_1 */
   17231              : 
   17232              :         case 20:
   17233              :           if (!
   17234              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17235              : ((16 == 64 || TARGET_AVX512VL
   17236              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17237              :    && ix86_pre_reload_split ()
   17238              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17239              :                     STRIP_UNARY (operands[4]))
   17240              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17241              :                        STRIP_UNARY (operands[4]))
   17242              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17243              :                        STRIP_UNARY (operands[3]))
   17244              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17245              :                        STRIP_UNARY (operands[3])))))
   17246              :             return -1;
   17247              :           return 5753; /* *avx512vl_vpternlogv4si_1 */
   17248              : 
   17249              :         case 21:
   17250              :           if (!(
   17251              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17252              : ((64 == 64 || TARGET_AVX512VL
   17253              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17254              :    && ix86_pre_reload_split ()
   17255              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17256              :                     STRIP_UNARY (operands[4]))
   17257              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17258              :                        STRIP_UNARY (operands[4]))
   17259              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17260              :                        STRIP_UNARY (operands[3]))
   17261              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17262              :                        STRIP_UNARY (operands[3])))) && 
   17263              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17264              : (TARGET_AVX512F)))
   17265              :             return -1;
   17266              :           return 5780; /* *avx512f_vpternlogv8di_1 */
   17267              : 
   17268              :         case 22:
   17269              :           if (!(
   17270              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17271              : ((32 == 64 || TARGET_AVX512VL
   17272              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17273              :    && ix86_pre_reload_split ()
   17274              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17275              :                     STRIP_UNARY (operands[4]))
   17276              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17277              :                        STRIP_UNARY (operands[4]))
   17278              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17279              :                        STRIP_UNARY (operands[3]))
   17280              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17281              :                        STRIP_UNARY (operands[3])))) && 
   17282              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17283              : (TARGET_AVX)))
   17284              :             return -1;
   17285              :           return 5807; /* *avx512vl_vpternlogv4di_1 */
   17286              : 
   17287              :         case 23:
   17288              :           if (!
   17289              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17290              : ((16 == 64 || TARGET_AVX512VL
   17291              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17292              :    && ix86_pre_reload_split ()
   17293              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17294              :                     STRIP_UNARY (operands[4]))
   17295              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17296              :                        STRIP_UNARY (operands[4]))
   17297              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17298              :                        STRIP_UNARY (operands[3]))
   17299              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17300              :                        STRIP_UNARY (operands[3])))))
   17301              :             return -1;
   17302              :           return 5834; /* *avx512vl_vpternlogv2di_1 */
   17303              : 
   17304              :         case 24:
   17305              :           if (!(
   17306              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17307              : ((64 == 64 || TARGET_AVX512VL
   17308              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17309              :    && ix86_pre_reload_split ()
   17310              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17311              :                     STRIP_UNARY (operands[4]))
   17312              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17313              :                        STRIP_UNARY (operands[4]))
   17314              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17315              :                        STRIP_UNARY (operands[3]))
   17316              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17317              :                        STRIP_UNARY (operands[3])))) && 
   17318              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17319              : (TARGET_AVX512F)))
   17320              :             return -1;
   17321              :           return 5540; /* *avx512bw_vpternlogv64qi_1 */
   17322              : 
   17323              :         case 25:
   17324              :           if (!(
   17325              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17326              : ((32 == 64 || TARGET_AVX512VL
   17327              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17328              :    && ix86_pre_reload_split ()
   17329              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17330              :                     STRIP_UNARY (operands[4]))
   17331              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17332              :                        STRIP_UNARY (operands[4]))
   17333              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17334              :                        STRIP_UNARY (operands[3]))
   17335              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17336              :                        STRIP_UNARY (operands[3])))) && 
   17337              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17338              : (TARGET_AVX)))
   17339              :             return -1;
   17340              :           return 5567; /* *avx512vl_vpternlogv32qi_1 */
   17341              : 
   17342              :         case 26:
   17343              :           if (!
   17344              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17345              : ((16 == 64 || TARGET_AVX512VL
   17346              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17347              :    && ix86_pre_reload_split ()
   17348              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17349              :                     STRIP_UNARY (operands[4]))
   17350              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17351              :                        STRIP_UNARY (operands[4]))
   17352              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17353              :                        STRIP_UNARY (operands[3]))
   17354              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17355              :                        STRIP_UNARY (operands[3])))))
   17356              :             return -1;
   17357              :           return 5594; /* *avx512vl_vpternlogv16qi_1 */
   17358              : 
   17359              :         case 27:
   17360              :           if (!(
   17361              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17362              : ((64 == 64 || TARGET_AVX512VL
   17363              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17364              :    && ix86_pre_reload_split ()
   17365              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17366              :                     STRIP_UNARY (operands[4]))
   17367              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17368              :                        STRIP_UNARY (operands[4]))
   17369              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17370              :                        STRIP_UNARY (operands[3]))
   17371              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17372              :                        STRIP_UNARY (operands[3])))) && 
   17373              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17374              : (TARGET_AVX512F)))
   17375              :             return -1;
   17376              :           return 5621; /* *avx512bw_vpternlogv32hi_1 */
   17377              : 
   17378              :         case 28:
   17379              :           if (!(
   17380              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17381              : ((32 == 64 || TARGET_AVX512VL
   17382              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17383              :    && ix86_pre_reload_split ()
   17384              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17385              :                     STRIP_UNARY (operands[4]))
   17386              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17387              :                        STRIP_UNARY (operands[4]))
   17388              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17389              :                        STRIP_UNARY (operands[3]))
   17390              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17391              :                        STRIP_UNARY (operands[3])))) && 
   17392              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17393              : (TARGET_AVX)))
   17394              :             return -1;
   17395              :           return 5648; /* *avx512vl_vpternlogv16hi_1 */
   17396              : 
   17397              :         case 29:
   17398              :           if (!
   17399              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17400              : ((16 == 64 || TARGET_AVX512VL
   17401              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17402              :    && ix86_pre_reload_split ()
   17403              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17404              :                     STRIP_UNARY (operands[4]))
   17405              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17406              :                        STRIP_UNARY (operands[4]))
   17407              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17408              :                        STRIP_UNARY (operands[3]))
   17409              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17410              :                        STRIP_UNARY (operands[3])))))
   17411              :             return -1;
   17412              :           return 5675; /* *avx512vl_vpternlogv8hi_1 */
   17413              : 
   17414              :         case 30:
   17415              :           if (!(
   17416              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17417              : ((64 == 64 || TARGET_AVX512VL
   17418              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17419              :    && ix86_pre_reload_split ()
   17420              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17421              :                     STRIP_UNARY (operands[4]))
   17422              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17423              :                        STRIP_UNARY (operands[4]))
   17424              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17425              :                        STRIP_UNARY (operands[3]))
   17426              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17427              :                        STRIP_UNARY (operands[3])))) && 
   17428              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17429              : (TARGET_AVX512F)))
   17430              :             return -1;
   17431              :           return 5702; /* *avx512f_vpternlogv16si_1 */
   17432              : 
   17433              :         case 31:
   17434              :           if (!(
   17435              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17436              : ((32 == 64 || TARGET_AVX512VL
   17437              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17438              :    && ix86_pre_reload_split ()
   17439              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17440              :                     STRIP_UNARY (operands[4]))
   17441              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17442              :                        STRIP_UNARY (operands[4]))
   17443              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17444              :                        STRIP_UNARY (operands[3]))
   17445              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17446              :                        STRIP_UNARY (operands[3])))) && 
   17447              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17448              : (TARGET_AVX)))
   17449              :             return -1;
   17450              :           return 5729; /* *avx512vl_vpternlogv8si_1 */
   17451              : 
   17452              :         case 32:
   17453              :           if (!
   17454              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17455              : ((16 == 64 || TARGET_AVX512VL
   17456              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17457              :    && ix86_pre_reload_split ()
   17458              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17459              :                     STRIP_UNARY (operands[4]))
   17460              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17461              :                        STRIP_UNARY (operands[4]))
   17462              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17463              :                        STRIP_UNARY (operands[3]))
   17464              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17465              :                        STRIP_UNARY (operands[3])))))
   17466              :             return -1;
   17467              :           return 5756; /* *avx512vl_vpternlogv4si_1 */
   17468              : 
   17469              :         case 33:
   17470              :           if (!(
   17471              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17472              : ((64 == 64 || TARGET_AVX512VL
   17473              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17474              :    && ix86_pre_reload_split ()
   17475              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17476              :                     STRIP_UNARY (operands[4]))
   17477              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17478              :                        STRIP_UNARY (operands[4]))
   17479              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17480              :                        STRIP_UNARY (operands[3]))
   17481              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17482              :                        STRIP_UNARY (operands[3])))) && 
   17483              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17484              : (TARGET_AVX512F)))
   17485              :             return -1;
   17486              :           return 5783; /* *avx512f_vpternlogv8di_1 */
   17487              : 
   17488              :         case 34:
   17489              :           if (!(
   17490              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17491              : ((32 == 64 || TARGET_AVX512VL
   17492              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17493              :    && ix86_pre_reload_split ()
   17494              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17495              :                     STRIP_UNARY (operands[4]))
   17496              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17497              :                        STRIP_UNARY (operands[4]))
   17498              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17499              :                        STRIP_UNARY (operands[3]))
   17500              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17501              :                        STRIP_UNARY (operands[3])))) && 
   17502              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17503              : (TARGET_AVX)))
   17504              :             return -1;
   17505              :           return 5810; /* *avx512vl_vpternlogv4di_1 */
   17506              : 
   17507              :         case 35:
   17508              :           if (!
   17509              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17510              : ((16 == 64 || TARGET_AVX512VL
   17511              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17512              :    && ix86_pre_reload_split ()
   17513              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17514              :                     STRIP_UNARY (operands[4]))
   17515              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17516              :                        STRIP_UNARY (operands[4]))
   17517              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17518              :                        STRIP_UNARY (operands[3]))
   17519              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17520              :                        STRIP_UNARY (operands[3])))))
   17521              :             return -1;
   17522              :           return 5837; /* *avx512vl_vpternlogv2di_1 */
   17523              : 
   17524              :         case 36:
   17525              :           if (!(
   17526              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17527              : ((64 == 64 || TARGET_AVX512VL
   17528              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17529              :    && ix86_pre_reload_split ()) && 
   17530              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17531              : (TARGET_AVX512F)))
   17532              :             return -1;
   17533              :           return 6824; /* *avx512bw_vpternlogv64qi_3 */
   17534              : 
   17535              :         case 37:
   17536              :           if (!(
   17537              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17538              : ((32 == 64 || TARGET_AVX512VL
   17539              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17540              :    && ix86_pre_reload_split ()) && 
   17541              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17542              : (TARGET_AVX)))
   17543              :             return -1;
   17544              :           return 6833; /* *avx512vl_vpternlogv32qi_3 */
   17545              : 
   17546              :         case 38:
   17547              :           if (!
   17548              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17549              : ((16 == 64 || TARGET_AVX512VL
   17550              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17551              :    && ix86_pre_reload_split ()))
   17552              :             return -1;
   17553              :           return 6842; /* *avx512vl_vpternlogv16qi_3 */
   17554              : 
   17555              :         case 39:
   17556              :           if (!(
   17557              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17558              : ((64 == 64 || TARGET_AVX512VL
   17559              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17560              :    && ix86_pre_reload_split ()) && 
   17561              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17562              : (TARGET_AVX512F)))
   17563              :             return -1;
   17564              :           return 6851; /* *avx512bw_vpternlogv32hi_3 */
   17565              : 
   17566              :         case 40:
   17567              :           if (!(
   17568              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17569              : ((32 == 64 || TARGET_AVX512VL
   17570              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17571              :    && ix86_pre_reload_split ()) && 
   17572              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17573              : (TARGET_AVX)))
   17574              :             return -1;
   17575              :           return 6860; /* *avx512vl_vpternlogv16hi_3 */
   17576              : 
   17577              :         case 41:
   17578              :           if (!
   17579              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17580              : ((16 == 64 || TARGET_AVX512VL
   17581              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17582              :    && ix86_pre_reload_split ()))
   17583              :             return -1;
   17584              :           return 6869; /* *avx512vl_vpternlogv8hi_3 */
   17585              : 
   17586              :         case 42:
   17587              :           if (!(
   17588              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17589              : ((64 == 64 || TARGET_AVX512VL
   17590              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17591              :    && ix86_pre_reload_split ()) && 
   17592              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17593              : (TARGET_AVX512F)))
   17594              :             return -1;
   17595              :           return 6878; /* *avx512f_vpternlogv16si_3 */
   17596              : 
   17597              :         case 43:
   17598              :           if (!(
   17599              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17600              : ((32 == 64 || TARGET_AVX512VL
   17601              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17602              :    && ix86_pre_reload_split ()) && 
   17603              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17604              : (TARGET_AVX)))
   17605              :             return -1;
   17606              :           return 6887; /* *avx512vl_vpternlogv8si_3 */
   17607              : 
   17608              :         case 44:
   17609              :           if (!
   17610              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17611              : ((16 == 64 || TARGET_AVX512VL
   17612              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17613              :    && ix86_pre_reload_split ()))
   17614              :             return -1;
   17615              :           return 6896; /* *avx512vl_vpternlogv4si_3 */
   17616              : 
   17617              :         case 45:
   17618              :           if (!(
   17619              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17620              : ((64 == 64 || TARGET_AVX512VL
   17621              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17622              :    && ix86_pre_reload_split ()) && 
   17623              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17624              : (TARGET_AVX512F)))
   17625              :             return -1;
   17626              :           return 6905; /* *avx512f_vpternlogv8di_3 */
   17627              : 
   17628              :         case 46:
   17629              :           if (!(
   17630              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17631              : ((32 == 64 || TARGET_AVX512VL
   17632              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17633              :    && ix86_pre_reload_split ()) && 
   17634              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17635              : (TARGET_AVX)))
   17636              :             return -1;
   17637              :           return 6914; /* *avx512vl_vpternlogv4di_3 */
   17638              : 
   17639              :         case 47:
   17640              :           if (!
   17641              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17642              : ((16 == 64 || TARGET_AVX512VL
   17643              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17644              :    && ix86_pre_reload_split ()))
   17645              :             return -1;
   17646              :           return 6923; /* *avx512vl_vpternlogv2di_3 */
   17647              : 
   17648              :         default:
   17649              :           return -1;
   17650              :         }
   17651              : 
   17652              :     case AND:
   17653              :       switch (pattern539 (x2))
   17654              :         {
   17655              :         case 0:
   17656              :           if (!(
   17657              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17658              : ((64 == 64 || TARGET_AVX512VL
   17659              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17660              :    && ix86_pre_reload_split ()
   17661              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17662              :                     STRIP_UNARY (operands[4]))
   17663              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17664              :                        STRIP_UNARY (operands[4]))
   17665              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17666              :                        STRIP_UNARY (operands[3]))
   17667              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17668              :                        STRIP_UNARY (operands[3])))) && 
   17669              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17670              : (TARGET_AVX512F)))
   17671              :             return -1;
   17672              :           return 6182; /* *avx512bw_vpternlogv64qi_2 */
   17673              : 
   17674              :         case 1:
   17675              :           if (!(
   17676              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17677              : ((32 == 64 || TARGET_AVX512VL
   17678              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17679              :    && ix86_pre_reload_split ()
   17680              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17681              :                     STRIP_UNARY (operands[4]))
   17682              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17683              :                        STRIP_UNARY (operands[4]))
   17684              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17685              :                        STRIP_UNARY (operands[3]))
   17686              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17687              :                        STRIP_UNARY (operands[3])))) && 
   17688              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17689              : (TARGET_AVX)))
   17690              :             return -1;
   17691              :           return 6209; /* *avx512vl_vpternlogv32qi_2 */
   17692              : 
   17693              :         case 2:
   17694              :           if (!
   17695              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17696              : ((16 == 64 || TARGET_AVX512VL
   17697              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17698              :    && ix86_pre_reload_split ()
   17699              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17700              :                     STRIP_UNARY (operands[4]))
   17701              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17702              :                        STRIP_UNARY (operands[4]))
   17703              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17704              :                        STRIP_UNARY (operands[3]))
   17705              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17706              :                        STRIP_UNARY (operands[3])))))
   17707              :             return -1;
   17708              :           return 6236; /* *avx512vl_vpternlogv16qi_2 */
   17709              : 
   17710              :         case 3:
   17711              :           if (!(
   17712              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17713              : ((64 == 64 || TARGET_AVX512VL
   17714              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17715              :    && ix86_pre_reload_split ()
   17716              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17717              :                     STRIP_UNARY (operands[4]))
   17718              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17719              :                        STRIP_UNARY (operands[4]))
   17720              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17721              :                        STRIP_UNARY (operands[3]))
   17722              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17723              :                        STRIP_UNARY (operands[3])))) && 
   17724              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17725              : (TARGET_AVX512F)))
   17726              :             return -1;
   17727              :           return 6263; /* *avx512bw_vpternlogv32hi_2 */
   17728              : 
   17729              :         case 4:
   17730              :           if (!(
   17731              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17732              : ((32 == 64 || TARGET_AVX512VL
   17733              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17734              :    && ix86_pre_reload_split ()
   17735              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17736              :                     STRIP_UNARY (operands[4]))
   17737              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17738              :                        STRIP_UNARY (operands[4]))
   17739              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17740              :                        STRIP_UNARY (operands[3]))
   17741              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17742              :                        STRIP_UNARY (operands[3])))) && 
   17743              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17744              : (TARGET_AVX)))
   17745              :             return -1;
   17746              :           return 6290; /* *avx512vl_vpternlogv16hi_2 */
   17747              : 
   17748              :         case 5:
   17749              :           if (!
   17750              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17751              : ((16 == 64 || TARGET_AVX512VL
   17752              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17753              :    && ix86_pre_reload_split ()
   17754              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17755              :                     STRIP_UNARY (operands[4]))
   17756              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17757              :                        STRIP_UNARY (operands[4]))
   17758              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17759              :                        STRIP_UNARY (operands[3]))
   17760              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17761              :                        STRIP_UNARY (operands[3])))))
   17762              :             return -1;
   17763              :           return 6317; /* *avx512vl_vpternlogv8hi_2 */
   17764              : 
   17765              :         case 6:
   17766              :           if (!(
   17767              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17768              : ((64 == 64 || TARGET_AVX512VL
   17769              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17770              :    && ix86_pre_reload_split ()
   17771              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17772              :                     STRIP_UNARY (operands[4]))
   17773              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17774              :                        STRIP_UNARY (operands[4]))
   17775              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17776              :                        STRIP_UNARY (operands[3]))
   17777              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17778              :                        STRIP_UNARY (operands[3])))) && 
   17779              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17780              : (TARGET_AVX512F)))
   17781              :             return -1;
   17782              :           return 6344; /* *avx512f_vpternlogv16si_2 */
   17783              : 
   17784              :         case 7:
   17785              :           if (!(
   17786              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17787              : ((32 == 64 || TARGET_AVX512VL
   17788              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17789              :    && ix86_pre_reload_split ()
   17790              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17791              :                     STRIP_UNARY (operands[4]))
   17792              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17793              :                        STRIP_UNARY (operands[4]))
   17794              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17795              :                        STRIP_UNARY (operands[3]))
   17796              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17797              :                        STRIP_UNARY (operands[3])))) && 
   17798              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17799              : (TARGET_AVX)))
   17800              :             return -1;
   17801              :           return 6371; /* *avx512vl_vpternlogv8si_2 */
   17802              : 
   17803              :         case 8:
   17804              :           if (!
   17805              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17806              : ((16 == 64 || TARGET_AVX512VL
   17807              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17808              :    && ix86_pre_reload_split ()
   17809              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17810              :                     STRIP_UNARY (operands[4]))
   17811              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17812              :                        STRIP_UNARY (operands[4]))
   17813              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17814              :                        STRIP_UNARY (operands[3]))
   17815              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17816              :                        STRIP_UNARY (operands[3])))))
   17817              :             return -1;
   17818              :           return 6398; /* *avx512vl_vpternlogv4si_2 */
   17819              : 
   17820              :         case 9:
   17821              :           if (!(
   17822              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17823              : ((64 == 64 || TARGET_AVX512VL
   17824              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17825              :    && ix86_pre_reload_split ()
   17826              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17827              :                     STRIP_UNARY (operands[4]))
   17828              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17829              :                        STRIP_UNARY (operands[4]))
   17830              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17831              :                        STRIP_UNARY (operands[3]))
   17832              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17833              :                        STRIP_UNARY (operands[3])))) && 
   17834              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17835              : (TARGET_AVX512F)))
   17836              :             return -1;
   17837              :           return 6425; /* *avx512f_vpternlogv8di_2 */
   17838              : 
   17839              :         case 10:
   17840              :           if (!(
   17841              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17842              : ((32 == 64 || TARGET_AVX512VL
   17843              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17844              :    && ix86_pre_reload_split ()
   17845              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17846              :                     STRIP_UNARY (operands[4]))
   17847              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17848              :                        STRIP_UNARY (operands[4]))
   17849              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17850              :                        STRIP_UNARY (operands[3]))
   17851              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17852              :                        STRIP_UNARY (operands[3])))) && 
   17853              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17854              : (TARGET_AVX)))
   17855              :             return -1;
   17856              :           return 6452; /* *avx512vl_vpternlogv4di_2 */
   17857              : 
   17858              :         case 11:
   17859              :           if (!
   17860              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17861              : ((16 == 64 || TARGET_AVX512VL
   17862              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17863              :    && ix86_pre_reload_split ()
   17864              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17865              :                     STRIP_UNARY (operands[4]))
   17866              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17867              :                        STRIP_UNARY (operands[4]))
   17868              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17869              :                        STRIP_UNARY (operands[3]))
   17870              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17871              :                        STRIP_UNARY (operands[3])))))
   17872              :             return -1;
   17873              :           return 6479; /* *avx512vl_vpternlogv2di_2 */
   17874              : 
   17875              :         default:
   17876              :           return -1;
   17877              :         }
   17878              : 
   17879              :     case IOR:
   17880              :       switch (pattern539 (x2))
   17881              :         {
   17882              :         case 0:
   17883              :           if (!(
   17884              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17885              : ((64 == 64 || TARGET_AVX512VL
   17886              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17887              :    && ix86_pre_reload_split ()
   17888              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17889              :                     STRIP_UNARY (operands[4]))
   17890              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17891              :                        STRIP_UNARY (operands[4]))
   17892              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17893              :                        STRIP_UNARY (operands[3]))
   17894              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17895              :                        STRIP_UNARY (operands[3])))) && 
   17896              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17897              : (TARGET_AVX512F)))
   17898              :             return -1;
   17899              :           return 6185; /* *avx512bw_vpternlogv64qi_2 */
   17900              : 
   17901              :         case 1:
   17902              :           if (!(
   17903              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17904              : ((32 == 64 || TARGET_AVX512VL
   17905              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17906              :    && ix86_pre_reload_split ()
   17907              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17908              :                     STRIP_UNARY (operands[4]))
   17909              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17910              :                        STRIP_UNARY (operands[4]))
   17911              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17912              :                        STRIP_UNARY (operands[3]))
   17913              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17914              :                        STRIP_UNARY (operands[3])))) && 
   17915              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17916              : (TARGET_AVX)))
   17917              :             return -1;
   17918              :           return 6212; /* *avx512vl_vpternlogv32qi_2 */
   17919              : 
   17920              :         case 2:
   17921              :           if (!
   17922              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17923              : ((16 == 64 || TARGET_AVX512VL
   17924              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17925              :    && ix86_pre_reload_split ()
   17926              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17927              :                     STRIP_UNARY (operands[4]))
   17928              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17929              :                        STRIP_UNARY (operands[4]))
   17930              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17931              :                        STRIP_UNARY (operands[3]))
   17932              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17933              :                        STRIP_UNARY (operands[3])))))
   17934              :             return -1;
   17935              :           return 6239; /* *avx512vl_vpternlogv16qi_2 */
   17936              : 
   17937              :         case 3:
   17938              :           if (!(
   17939              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17940              : ((64 == 64 || TARGET_AVX512VL
   17941              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17942              :    && ix86_pre_reload_split ()
   17943              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17944              :                     STRIP_UNARY (operands[4]))
   17945              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17946              :                        STRIP_UNARY (operands[4]))
   17947              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17948              :                        STRIP_UNARY (operands[3]))
   17949              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17950              :                        STRIP_UNARY (operands[3])))) && 
   17951              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17952              : (TARGET_AVX512F)))
   17953              :             return -1;
   17954              :           return 6266; /* *avx512bw_vpternlogv32hi_2 */
   17955              : 
   17956              :         case 4:
   17957              :           if (!(
   17958              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17959              : ((32 == 64 || TARGET_AVX512VL
   17960              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17961              :    && ix86_pre_reload_split ()
   17962              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17963              :                     STRIP_UNARY (operands[4]))
   17964              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17965              :                        STRIP_UNARY (operands[4]))
   17966              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17967              :                        STRIP_UNARY (operands[3]))
   17968              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17969              :                        STRIP_UNARY (operands[3])))) && 
   17970              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17971              : (TARGET_AVX)))
   17972              :             return -1;
   17973              :           return 6293; /* *avx512vl_vpternlogv16hi_2 */
   17974              : 
   17975              :         case 5:
   17976              :           if (!
   17977              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17978              : ((16 == 64 || TARGET_AVX512VL
   17979              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17980              :    && ix86_pre_reload_split ()
   17981              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17982              :                     STRIP_UNARY (operands[4]))
   17983              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17984              :                        STRIP_UNARY (operands[4]))
   17985              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17986              :                        STRIP_UNARY (operands[3]))
   17987              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17988              :                        STRIP_UNARY (operands[3])))))
   17989              :             return -1;
   17990              :           return 6320; /* *avx512vl_vpternlogv8hi_2 */
   17991              : 
   17992              :         case 6:
   17993              :           if (!(
   17994              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17995              : ((64 == 64 || TARGET_AVX512VL
   17996              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17997              :    && ix86_pre_reload_split ()
   17998              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17999              :                     STRIP_UNARY (operands[4]))
   18000              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18001              :                        STRIP_UNARY (operands[4]))
   18002              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18003              :                        STRIP_UNARY (operands[3]))
   18004              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18005              :                        STRIP_UNARY (operands[3])))) && 
   18006              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18007              : (TARGET_AVX512F)))
   18008              :             return -1;
   18009              :           return 6347; /* *avx512f_vpternlogv16si_2 */
   18010              : 
   18011              :         case 7:
   18012              :           if (!(
   18013              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18014              : ((32 == 64 || TARGET_AVX512VL
   18015              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18016              :    && ix86_pre_reload_split ()
   18017              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18018              :                     STRIP_UNARY (operands[4]))
   18019              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18020              :                        STRIP_UNARY (operands[4]))
   18021              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18022              :                        STRIP_UNARY (operands[3]))
   18023              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18024              :                        STRIP_UNARY (operands[3])))) && 
   18025              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18026              : (TARGET_AVX)))
   18027              :             return -1;
   18028              :           return 6374; /* *avx512vl_vpternlogv8si_2 */
   18029              : 
   18030              :         case 8:
   18031              :           if (!
   18032              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18033              : ((16 == 64 || TARGET_AVX512VL
   18034              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18035              :    && ix86_pre_reload_split ()
   18036              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18037              :                     STRIP_UNARY (operands[4]))
   18038              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18039              :                        STRIP_UNARY (operands[4]))
   18040              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18041              :                        STRIP_UNARY (operands[3]))
   18042              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18043              :                        STRIP_UNARY (operands[3])))))
   18044              :             return -1;
   18045              :           return 6401; /* *avx512vl_vpternlogv4si_2 */
   18046              : 
   18047              :         case 9:
   18048              :           if (!(
   18049              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18050              : ((64 == 64 || TARGET_AVX512VL
   18051              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18052              :    && ix86_pre_reload_split ()
   18053              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18054              :                     STRIP_UNARY (operands[4]))
   18055              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18056              :                        STRIP_UNARY (operands[4]))
   18057              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18058              :                        STRIP_UNARY (operands[3]))
   18059              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18060              :                        STRIP_UNARY (operands[3])))) && 
   18061              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18062              : (TARGET_AVX512F)))
   18063              :             return -1;
   18064              :           return 6428; /* *avx512f_vpternlogv8di_2 */
   18065              : 
   18066              :         case 10:
   18067              :           if (!(
   18068              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18069              : ((32 == 64 || TARGET_AVX512VL
   18070              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18071              :    && ix86_pre_reload_split ()
   18072              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18073              :                     STRIP_UNARY (operands[4]))
   18074              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18075              :                        STRIP_UNARY (operands[4]))
   18076              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18077              :                        STRIP_UNARY (operands[3]))
   18078              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18079              :                        STRIP_UNARY (operands[3])))) && 
   18080              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18081              : (TARGET_AVX)))
   18082              :             return -1;
   18083              :           return 6455; /* *avx512vl_vpternlogv4di_2 */
   18084              : 
   18085              :         case 11:
   18086              :           if (!
   18087              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18088              : ((16 == 64 || TARGET_AVX512VL
   18089              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18090              :    && ix86_pre_reload_split ()
   18091              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18092              :                     STRIP_UNARY (operands[4]))
   18093              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18094              :                        STRIP_UNARY (operands[4]))
   18095              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18096              :                        STRIP_UNARY (operands[3]))
   18097              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18098              :                        STRIP_UNARY (operands[3])))))
   18099              :             return -1;
   18100              :           return 6482; /* *avx512vl_vpternlogv2di_2 */
   18101              : 
   18102              :         default:
   18103              :           return -1;
   18104              :         }
   18105              : 
   18106              :     case XOR:
   18107              :       switch (pattern539 (x2))
   18108              :         {
   18109              :         case 0:
   18110              :           if (!(
   18111              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18112              : ((64 == 64 || TARGET_AVX512VL
   18113              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18114              :    && ix86_pre_reload_split ()
   18115              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18116              :                     STRIP_UNARY (operands[4]))
   18117              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18118              :                        STRIP_UNARY (operands[4]))
   18119              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18120              :                        STRIP_UNARY (operands[3]))
   18121              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18122              :                        STRIP_UNARY (operands[3])))) && 
   18123              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18124              : (TARGET_AVX512F)))
   18125              :             return -1;
   18126              :           return 6188; /* *avx512bw_vpternlogv64qi_2 */
   18127              : 
   18128              :         case 1:
   18129              :           if (!(
   18130              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18131              : ((32 == 64 || TARGET_AVX512VL
   18132              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18133              :    && ix86_pre_reload_split ()
   18134              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18135              :                     STRIP_UNARY (operands[4]))
   18136              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18137              :                        STRIP_UNARY (operands[4]))
   18138              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18139              :                        STRIP_UNARY (operands[3]))
   18140              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18141              :                        STRIP_UNARY (operands[3])))) && 
   18142              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18143              : (TARGET_AVX)))
   18144              :             return -1;
   18145              :           return 6215; /* *avx512vl_vpternlogv32qi_2 */
   18146              : 
   18147              :         case 2:
   18148              :           if (!
   18149              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18150              : ((16 == 64 || TARGET_AVX512VL
   18151              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18152              :    && ix86_pre_reload_split ()
   18153              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18154              :                     STRIP_UNARY (operands[4]))
   18155              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18156              :                        STRIP_UNARY (operands[4]))
   18157              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18158              :                        STRIP_UNARY (operands[3]))
   18159              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18160              :                        STRIP_UNARY (operands[3])))))
   18161              :             return -1;
   18162              :           return 6242; /* *avx512vl_vpternlogv16qi_2 */
   18163              : 
   18164              :         case 3:
   18165              :           if (!(
   18166              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18167              : ((64 == 64 || TARGET_AVX512VL
   18168              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18169              :    && ix86_pre_reload_split ()
   18170              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18171              :                     STRIP_UNARY (operands[4]))
   18172              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18173              :                        STRIP_UNARY (operands[4]))
   18174              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18175              :                        STRIP_UNARY (operands[3]))
   18176              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18177              :                        STRIP_UNARY (operands[3])))) && 
   18178              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18179              : (TARGET_AVX512F)))
   18180              :             return -1;
   18181              :           return 6269; /* *avx512bw_vpternlogv32hi_2 */
   18182              : 
   18183              :         case 4:
   18184              :           if (!(
   18185              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18186              : ((32 == 64 || TARGET_AVX512VL
   18187              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18188              :    && ix86_pre_reload_split ()
   18189              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18190              :                     STRIP_UNARY (operands[4]))
   18191              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18192              :                        STRIP_UNARY (operands[4]))
   18193              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18194              :                        STRIP_UNARY (operands[3]))
   18195              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18196              :                        STRIP_UNARY (operands[3])))) && 
   18197              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18198              : (TARGET_AVX)))
   18199              :             return -1;
   18200              :           return 6296; /* *avx512vl_vpternlogv16hi_2 */
   18201              : 
   18202              :         case 5:
   18203              :           if (!
   18204              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18205              : ((16 == 64 || TARGET_AVX512VL
   18206              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18207              :    && ix86_pre_reload_split ()
   18208              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18209              :                     STRIP_UNARY (operands[4]))
   18210              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18211              :                        STRIP_UNARY (operands[4]))
   18212              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18213              :                        STRIP_UNARY (operands[3]))
   18214              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18215              :                        STRIP_UNARY (operands[3])))))
   18216              :             return -1;
   18217              :           return 6323; /* *avx512vl_vpternlogv8hi_2 */
   18218              : 
   18219              :         case 6:
   18220              :           if (!(
   18221              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18222              : ((64 == 64 || TARGET_AVX512VL
   18223              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18224              :    && ix86_pre_reload_split ()
   18225              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18226              :                     STRIP_UNARY (operands[4]))
   18227              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18228              :                        STRIP_UNARY (operands[4]))
   18229              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18230              :                        STRIP_UNARY (operands[3]))
   18231              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18232              :                        STRIP_UNARY (operands[3])))) && 
   18233              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18234              : (TARGET_AVX512F)))
   18235              :             return -1;
   18236              :           return 6350; /* *avx512f_vpternlogv16si_2 */
   18237              : 
   18238              :         case 7:
   18239              :           if (!(
   18240              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18241              : ((32 == 64 || TARGET_AVX512VL
   18242              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18243              :    && ix86_pre_reload_split ()
   18244              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18245              :                     STRIP_UNARY (operands[4]))
   18246              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18247              :                        STRIP_UNARY (operands[4]))
   18248              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18249              :                        STRIP_UNARY (operands[3]))
   18250              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18251              :                        STRIP_UNARY (operands[3])))) && 
   18252              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18253              : (TARGET_AVX)))
   18254              :             return -1;
   18255              :           return 6377; /* *avx512vl_vpternlogv8si_2 */
   18256              : 
   18257              :         case 8:
   18258              :           if (!
   18259              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18260              : ((16 == 64 || TARGET_AVX512VL
   18261              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18262              :    && ix86_pre_reload_split ()
   18263              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18264              :                     STRIP_UNARY (operands[4]))
   18265              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18266              :                        STRIP_UNARY (operands[4]))
   18267              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18268              :                        STRIP_UNARY (operands[3]))
   18269              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18270              :                        STRIP_UNARY (operands[3])))))
   18271              :             return -1;
   18272              :           return 6404; /* *avx512vl_vpternlogv4si_2 */
   18273              : 
   18274              :         case 9:
   18275              :           if (!(
   18276              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18277              : ((64 == 64 || TARGET_AVX512VL
   18278              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18279              :    && ix86_pre_reload_split ()
   18280              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18281              :                     STRIP_UNARY (operands[4]))
   18282              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18283              :                        STRIP_UNARY (operands[4]))
   18284              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18285              :                        STRIP_UNARY (operands[3]))
   18286              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18287              :                        STRIP_UNARY (operands[3])))) && 
   18288              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18289              : (TARGET_AVX512F)))
   18290              :             return -1;
   18291              :           return 6431; /* *avx512f_vpternlogv8di_2 */
   18292              : 
   18293              :         case 10:
   18294              :           if (!(
   18295              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18296              : ((32 == 64 || TARGET_AVX512VL
   18297              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18298              :    && ix86_pre_reload_split ()
   18299              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18300              :                     STRIP_UNARY (operands[4]))
   18301              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18302              :                        STRIP_UNARY (operands[4]))
   18303              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18304              :                        STRIP_UNARY (operands[3]))
   18305              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18306              :                        STRIP_UNARY (operands[3])))) && 
   18307              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18308              : (TARGET_AVX)))
   18309              :             return -1;
   18310              :           return 6458; /* *avx512vl_vpternlogv4di_2 */
   18311              : 
   18312              :         case 11:
   18313              :           if (!
   18314              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18315              : ((16 == 64 || TARGET_AVX512VL
   18316              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18317              :    && ix86_pre_reload_split ()
   18318              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18319              :                     STRIP_UNARY (operands[4]))
   18320              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18321              :                        STRIP_UNARY (operands[4]))
   18322              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18323              :                        STRIP_UNARY (operands[3]))
   18324              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18325              :                        STRIP_UNARY (operands[3])))))
   18326              :             return -1;
   18327              :           return 6485; /* *avx512vl_vpternlogv2di_2 */
   18328              : 
   18329              :         default:
   18330              :           return -1;
   18331              :         }
   18332              : 
   18333              :     default:
   18334              :       return -1;
   18335              :     }
   18336              : }
   18337              : 
   18338              :  int
   18339              : recog_316 (rtx x1 ATTRIBUTE_UNUSED,
   18340              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   18341              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   18342              : {
   18343              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   18344              :   rtx x2, x3, x4;
   18345              :   int res ATTRIBUTE_UNUSED;
   18346              :   x2 = XEXP (x1, 1);
   18347              :   x3 = XEXP (x2, 0);
   18348              :   switch (GET_CODE (x3))
   18349              :     {
   18350              :     case AND:
   18351              :       x4 = XEXP (x3, 0);
   18352              :       switch (GET_CODE (x4))
   18353              :         {
   18354              :         case REG:
   18355              :         case SUBREG:
   18356              :         case MEM:
   18357              :         case NOT:
   18358              :           switch (pattern543 (x2))
   18359              :             {
   18360              :             case 0:
   18361              :               if (!(
   18362              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18363              : ((64 == 64 || TARGET_AVX512VL
   18364              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18365              :    && ix86_pre_reload_split ()
   18366              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18367              :                     STRIP_UNARY (operands[4]))
   18368              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18369              :                        STRIP_UNARY (operands[4]))
   18370              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18371              :                        STRIP_UNARY (operands[3]))
   18372              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18373              :                        STRIP_UNARY (operands[3])))) && 
   18374              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18375              : (TARGET_AVX512F)))
   18376              :                 return -1;
   18377              :               return 5851; /* *avx512bw_vpternlogv32hf_1 */
   18378              : 
   18379              :             case 1:
   18380              :               if (!(
   18381              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18382              : ((32 == 64 || TARGET_AVX512VL
   18383              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18384              :    && ix86_pre_reload_split ()
   18385              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18386              :                     STRIP_UNARY (operands[4]))
   18387              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18388              :                        STRIP_UNARY (operands[4]))
   18389              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18390              :                        STRIP_UNARY (operands[3]))
   18391              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18392              :                        STRIP_UNARY (operands[3])))) && 
   18393              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18394              : (TARGET_AVX)))
   18395              :                 return -1;
   18396              :               return 5878; /* *avx512vl_vpternlogv16hf_1 */
   18397              : 
   18398              :             case 2:
   18399              :               if (!
   18400              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18401              : ((16 == 64 || TARGET_AVX512VL
   18402              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18403              :    && ix86_pre_reload_split ()
   18404              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18405              :                     STRIP_UNARY (operands[4]))
   18406              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18407              :                        STRIP_UNARY (operands[4]))
   18408              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18409              :                        STRIP_UNARY (operands[3]))
   18410              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18411              :                        STRIP_UNARY (operands[3])))))
   18412              :                 return -1;
   18413              :               return 5905; /* *avx512fp16_vpternlogv8hf_1 */
   18414              : 
   18415              :             case 3:
   18416              :               if (!(
   18417              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18418              : ((64 == 64 || TARGET_AVX512VL
   18419              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18420              :    && ix86_pre_reload_split ()
   18421              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18422              :                     STRIP_UNARY (operands[4]))
   18423              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18424              :                        STRIP_UNARY (operands[4]))
   18425              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18426              :                        STRIP_UNARY (operands[3]))
   18427              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18428              :                        STRIP_UNARY (operands[3])))) && 
   18429              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18430              : (TARGET_AVX512F)))
   18431              :                 return -1;
   18432              :               return 5932; /* *avx512bw_vpternlogv32bf_1 */
   18433              : 
   18434              :             case 4:
   18435              :               if (!(
   18436              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18437              : ((32 == 64 || TARGET_AVX512VL
   18438              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18439              :    && ix86_pre_reload_split ()
   18440              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18441              :                     STRIP_UNARY (operands[4]))
   18442              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18443              :                        STRIP_UNARY (operands[4]))
   18444              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18445              :                        STRIP_UNARY (operands[3]))
   18446              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18447              :                        STRIP_UNARY (operands[3])))) && 
   18448              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18449              : (TARGET_AVX)))
   18450              :                 return -1;
   18451              :               return 5959; /* *avx512vl_vpternlogv16bf_1 */
   18452              : 
   18453              :             case 5:
   18454              :               if (!
   18455              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18456              : ((16 == 64 || TARGET_AVX512VL
   18457              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18458              :    && ix86_pre_reload_split ()
   18459              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18460              :                     STRIP_UNARY (operands[4]))
   18461              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18462              :                        STRIP_UNARY (operands[4]))
   18463              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18464              :                        STRIP_UNARY (operands[3]))
   18465              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18466              :                        STRIP_UNARY (operands[3])))))
   18467              :                 return -1;
   18468              :               return 5986; /* *avx512vl_vpternlogv8bf_1 */
   18469              : 
   18470              :             case 6:
   18471              :               if (!(
   18472              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18473              : ((64 == 64 || TARGET_AVX512VL
   18474              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18475              :    && ix86_pre_reload_split ()
   18476              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18477              :                     STRIP_UNARY (operands[4]))
   18478              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18479              :                        STRIP_UNARY (operands[4]))
   18480              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18481              :                        STRIP_UNARY (operands[3]))
   18482              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18483              :                        STRIP_UNARY (operands[3])))) && 
   18484              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18485              : (TARGET_AVX512F)))
   18486              :                 return -1;
   18487              :               return 6013; /* *avx512f_vpternlogv16sf_1 */
   18488              : 
   18489              :             case 7:
   18490              :               if (!(
   18491              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18492              : ((32 == 64 || TARGET_AVX512VL
   18493              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18494              :    && ix86_pre_reload_split ()
   18495              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18496              :                     STRIP_UNARY (operands[4]))
   18497              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18498              :                        STRIP_UNARY (operands[4]))
   18499              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18500              :                        STRIP_UNARY (operands[3]))
   18501              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18502              :                        STRIP_UNARY (operands[3])))) && 
   18503              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18504              : (TARGET_AVX)))
   18505              :                 return -1;
   18506              :               return 6040; /* *avx512vl_vpternlogv8sf_1 */
   18507              : 
   18508              :             case 8:
   18509              :               if (!
   18510              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18511              : ((16 == 64 || TARGET_AVX512VL
   18512              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18513              :    && ix86_pre_reload_split ()
   18514              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18515              :                     STRIP_UNARY (operands[4]))
   18516              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18517              :                        STRIP_UNARY (operands[4]))
   18518              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18519              :                        STRIP_UNARY (operands[3]))
   18520              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18521              :                        STRIP_UNARY (operands[3])))))
   18522              :                 return -1;
   18523              :               return 6067; /* *avx512vl_vpternlogv4sf_1 */
   18524              : 
   18525              :             case 9:
   18526              :               if (!(
   18527              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18528              : ((64 == 64 || TARGET_AVX512VL
   18529              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18530              :    && ix86_pre_reload_split ()
   18531              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18532              :                     STRIP_UNARY (operands[4]))
   18533              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18534              :                        STRIP_UNARY (operands[4]))
   18535              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18536              :                        STRIP_UNARY (operands[3]))
   18537              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18538              :                        STRIP_UNARY (operands[3])))) && 
   18539              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18540              : (TARGET_AVX512F)))
   18541              :                 return -1;
   18542              :               return 6094; /* *avx512f_vpternlogv8df_1 */
   18543              : 
   18544              :             case 10:
   18545              :               if (!(
   18546              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18547              : ((32 == 64 || TARGET_AVX512VL
   18548              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18549              :    && ix86_pre_reload_split ()
   18550              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18551              :                     STRIP_UNARY (operands[4]))
   18552              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18553              :                        STRIP_UNARY (operands[4]))
   18554              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18555              :                        STRIP_UNARY (operands[3]))
   18556              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18557              :                        STRIP_UNARY (operands[3])))) && 
   18558              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18559              : (TARGET_AVX)))
   18560              :                 return -1;
   18561              :               return 6121; /* *avx512vl_vpternlogv4df_1 */
   18562              : 
   18563              :             case 11:
   18564              :               if (!(
   18565              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18566              : ((16 == 64 || TARGET_AVX512VL
   18567              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18568              :    && ix86_pre_reload_split ()
   18569              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18570              :                     STRIP_UNARY (operands[4]))
   18571              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18572              :                        STRIP_UNARY (operands[4]))
   18573              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18574              :                        STRIP_UNARY (operands[3]))
   18575              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18576              :                        STRIP_UNARY (operands[3])))) && 
   18577              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18578              : (TARGET_SSE2)))
   18579              :                 return -1;
   18580              :               return 6148; /* *avx512vl_vpternlogv2df_1 */
   18581              : 
   18582              :             case 12:
   18583              :               if (!(
   18584              : #line 14151 "/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              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18589              :                     STRIP_UNARY (operands[4]))
   18590              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18591              :                        STRIP_UNARY (operands[4]))
   18592              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18593              :                        STRIP_UNARY (operands[3]))
   18594              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18595              :                        STRIP_UNARY (operands[3])))) && 
   18596              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18597              : (TARGET_AVX512F)))
   18598              :                 return -1;
   18599              :               return 5854; /* *avx512bw_vpternlogv32hf_1 */
   18600              : 
   18601              :             case 13:
   18602              :               if (!(
   18603              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18604              : ((32 == 64 || TARGET_AVX512VL
   18605              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18606              :    && ix86_pre_reload_split ()
   18607              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18608              :                     STRIP_UNARY (operands[4]))
   18609              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18610              :                        STRIP_UNARY (operands[4]))
   18611              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18612              :                        STRIP_UNARY (operands[3]))
   18613              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18614              :                        STRIP_UNARY (operands[3])))) && 
   18615              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18616              : (TARGET_AVX)))
   18617              :                 return -1;
   18618              :               return 5881; /* *avx512vl_vpternlogv16hf_1 */
   18619              : 
   18620              :             case 14:
   18621              :               if (!
   18622              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18623              : ((16 == 64 || TARGET_AVX512VL
   18624              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18625              :    && ix86_pre_reload_split ()
   18626              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18627              :                     STRIP_UNARY (operands[4]))
   18628              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18629              :                        STRIP_UNARY (operands[4]))
   18630              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18631              :                        STRIP_UNARY (operands[3]))
   18632              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18633              :                        STRIP_UNARY (operands[3])))))
   18634              :                 return -1;
   18635              :               return 5908; /* *avx512fp16_vpternlogv8hf_1 */
   18636              : 
   18637              :             case 15:
   18638              :               if (!(
   18639              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18640              : ((64 == 64 || TARGET_AVX512VL
   18641              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18642              :    && ix86_pre_reload_split ()
   18643              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18644              :                     STRIP_UNARY (operands[4]))
   18645              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18646              :                        STRIP_UNARY (operands[4]))
   18647              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18648              :                        STRIP_UNARY (operands[3]))
   18649              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18650              :                        STRIP_UNARY (operands[3])))) && 
   18651              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18652              : (TARGET_AVX512F)))
   18653              :                 return -1;
   18654              :               return 5935; /* *avx512bw_vpternlogv32bf_1 */
   18655              : 
   18656              :             case 16:
   18657              :               if (!(
   18658              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18659              : ((32 == 64 || TARGET_AVX512VL
   18660              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18661              :    && ix86_pre_reload_split ()
   18662              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18663              :                     STRIP_UNARY (operands[4]))
   18664              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18665              :                        STRIP_UNARY (operands[4]))
   18666              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18667              :                        STRIP_UNARY (operands[3]))
   18668              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18669              :                        STRIP_UNARY (operands[3])))) && 
   18670              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18671              : (TARGET_AVX)))
   18672              :                 return -1;
   18673              :               return 5962; /* *avx512vl_vpternlogv16bf_1 */
   18674              : 
   18675              :             case 17:
   18676              :               if (!
   18677              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18678              : ((16 == 64 || TARGET_AVX512VL
   18679              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18680              :    && ix86_pre_reload_split ()
   18681              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18682              :                     STRIP_UNARY (operands[4]))
   18683              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18684              :                        STRIP_UNARY (operands[4]))
   18685              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18686              :                        STRIP_UNARY (operands[3]))
   18687              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18688              :                        STRIP_UNARY (operands[3])))))
   18689              :                 return -1;
   18690              :               return 5989; /* *avx512vl_vpternlogv8bf_1 */
   18691              : 
   18692              :             case 18:
   18693              :               if (!(
   18694              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18695              : ((64 == 64 || TARGET_AVX512VL
   18696              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18697              :    && ix86_pre_reload_split ()
   18698              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18699              :                     STRIP_UNARY (operands[4]))
   18700              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18701              :                        STRIP_UNARY (operands[4]))
   18702              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18703              :                        STRIP_UNARY (operands[3]))
   18704              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18705              :                        STRIP_UNARY (operands[3])))) && 
   18706              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18707              : (TARGET_AVX512F)))
   18708              :                 return -1;
   18709              :               return 6016; /* *avx512f_vpternlogv16sf_1 */
   18710              : 
   18711              :             case 19:
   18712              :               if (!(
   18713              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18714              : ((32 == 64 || TARGET_AVX512VL
   18715              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18716              :    && ix86_pre_reload_split ()
   18717              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18718              :                     STRIP_UNARY (operands[4]))
   18719              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18720              :                        STRIP_UNARY (operands[4]))
   18721              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18722              :                        STRIP_UNARY (operands[3]))
   18723              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18724              :                        STRIP_UNARY (operands[3])))) && 
   18725              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18726              : (TARGET_AVX)))
   18727              :                 return -1;
   18728              :               return 6043; /* *avx512vl_vpternlogv8sf_1 */
   18729              : 
   18730              :             case 20:
   18731              :               if (!
   18732              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18733              : ((16 == 64 || TARGET_AVX512VL
   18734              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18735              :    && ix86_pre_reload_split ()
   18736              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18737              :                     STRIP_UNARY (operands[4]))
   18738              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18739              :                        STRIP_UNARY (operands[4]))
   18740              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18741              :                        STRIP_UNARY (operands[3]))
   18742              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18743              :                        STRIP_UNARY (operands[3])))))
   18744              :                 return -1;
   18745              :               return 6070; /* *avx512vl_vpternlogv4sf_1 */
   18746              : 
   18747              :             case 21:
   18748              :               if (!(
   18749              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18750              : ((64 == 64 || TARGET_AVX512VL
   18751              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18752              :    && ix86_pre_reload_split ()
   18753              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18754              :                     STRIP_UNARY (operands[4]))
   18755              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18756              :                        STRIP_UNARY (operands[4]))
   18757              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18758              :                        STRIP_UNARY (operands[3]))
   18759              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18760              :                        STRIP_UNARY (operands[3])))) && 
   18761              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18762              : (TARGET_AVX512F)))
   18763              :                 return -1;
   18764              :               return 6097; /* *avx512f_vpternlogv8df_1 */
   18765              : 
   18766              :             case 22:
   18767              :               if (!(
   18768              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18769              : ((32 == 64 || TARGET_AVX512VL
   18770              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18771              :    && ix86_pre_reload_split ()
   18772              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18773              :                     STRIP_UNARY (operands[4]))
   18774              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18775              :                        STRIP_UNARY (operands[4]))
   18776              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18777              :                        STRIP_UNARY (operands[3]))
   18778              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18779              :                        STRIP_UNARY (operands[3])))) && 
   18780              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18781              : (TARGET_AVX)))
   18782              :                 return -1;
   18783              :               return 6124; /* *avx512vl_vpternlogv4df_1 */
   18784              : 
   18785              :             case 23:
   18786              :               if (!(
   18787              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18788              : ((16 == 64 || TARGET_AVX512VL
   18789              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18790              :    && ix86_pre_reload_split ()
   18791              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18792              :                     STRIP_UNARY (operands[4]))
   18793              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18794              :                        STRIP_UNARY (operands[4]))
   18795              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18796              :                        STRIP_UNARY (operands[3]))
   18797              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18798              :                        STRIP_UNARY (operands[3])))) && 
   18799              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18800              : (TARGET_SSE2)))
   18801              :                 return -1;
   18802              :               return 6151; /* *avx512vl_vpternlogv2df_1 */
   18803              : 
   18804              :             case 24:
   18805              :               if (!(
   18806              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18807              : ((64 == 64 || TARGET_AVX512VL
   18808              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18809              :    && ix86_pre_reload_split ()
   18810              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18811              :                     STRIP_UNARY (operands[4]))
   18812              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18813              :                        STRIP_UNARY (operands[4]))
   18814              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18815              :                        STRIP_UNARY (operands[3]))
   18816              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18817              :                        STRIP_UNARY (operands[3])))) && 
   18818              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18819              : (TARGET_AVX512F)))
   18820              :                 return -1;
   18821              :               return 5857; /* *avx512bw_vpternlogv32hf_1 */
   18822              : 
   18823              :             case 25:
   18824              :               if (!(
   18825              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18826              : ((32 == 64 || TARGET_AVX512VL
   18827              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18828              :    && ix86_pre_reload_split ()
   18829              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18830              :                     STRIP_UNARY (operands[4]))
   18831              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18832              :                        STRIP_UNARY (operands[4]))
   18833              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18834              :                        STRIP_UNARY (operands[3]))
   18835              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18836              :                        STRIP_UNARY (operands[3])))) && 
   18837              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18838              : (TARGET_AVX)))
   18839              :                 return -1;
   18840              :               return 5884; /* *avx512vl_vpternlogv16hf_1 */
   18841              : 
   18842              :             case 26:
   18843              :               if (!
   18844              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18845              : ((16 == 64 || TARGET_AVX512VL
   18846              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18847              :    && ix86_pre_reload_split ()
   18848              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18849              :                     STRIP_UNARY (operands[4]))
   18850              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18851              :                        STRIP_UNARY (operands[4]))
   18852              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18853              :                        STRIP_UNARY (operands[3]))
   18854              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18855              :                        STRIP_UNARY (operands[3])))))
   18856              :                 return -1;
   18857              :               return 5911; /* *avx512fp16_vpternlogv8hf_1 */
   18858              : 
   18859              :             case 27:
   18860              :               if (!(
   18861              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18862              : ((64 == 64 || TARGET_AVX512VL
   18863              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18864              :    && ix86_pre_reload_split ()
   18865              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18866              :                     STRIP_UNARY (operands[4]))
   18867              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18868              :                        STRIP_UNARY (operands[4]))
   18869              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18870              :                        STRIP_UNARY (operands[3]))
   18871              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18872              :                        STRIP_UNARY (operands[3])))) && 
   18873              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18874              : (TARGET_AVX512F)))
   18875              :                 return -1;
   18876              :               return 5938; /* *avx512bw_vpternlogv32bf_1 */
   18877              : 
   18878              :             case 28:
   18879              :               if (!(
   18880              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18881              : ((32 == 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 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18893              : (TARGET_AVX)))
   18894              :                 return -1;
   18895              :               return 5965; /* *avx512vl_vpternlogv16bf_1 */
   18896              : 
   18897              :             case 29:
   18898              :               if (!
   18899              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18900              : ((16 == 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              :                 return -1;
   18912              :               return 5992; /* *avx512vl_vpternlogv8bf_1 */
   18913              : 
   18914              :             case 30:
   18915              :               if (!(
   18916              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18917              : ((64 == 64 || TARGET_AVX512VL
   18918              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18919              :    && ix86_pre_reload_split ()
   18920              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18921              :                     STRIP_UNARY (operands[4]))
   18922              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18923              :                        STRIP_UNARY (operands[4]))
   18924              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18925              :                        STRIP_UNARY (operands[3]))
   18926              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18927              :                        STRIP_UNARY (operands[3])))) && 
   18928              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18929              : (TARGET_AVX512F)))
   18930              :                 return -1;
   18931              :               return 6019; /* *avx512f_vpternlogv16sf_1 */
   18932              : 
   18933              :             case 31:
   18934              :               if (!(
   18935              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18936              : ((32 == 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 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18948              : (TARGET_AVX)))
   18949              :                 return -1;
   18950              :               return 6046; /* *avx512vl_vpternlogv8sf_1 */
   18951              : 
   18952              :             case 32:
   18953              :               if (!
   18954              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18955              : ((16 == 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              :                 return -1;
   18967              :               return 6073; /* *avx512vl_vpternlogv4sf_1 */
   18968              : 
   18969              :             case 33:
   18970              :               if (!(
   18971              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18972              : ((64 == 64 || TARGET_AVX512VL
   18973              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18974              :    && ix86_pre_reload_split ()
   18975              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18976              :                     STRIP_UNARY (operands[4]))
   18977              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18978              :                        STRIP_UNARY (operands[4]))
   18979              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18980              :                        STRIP_UNARY (operands[3]))
   18981              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18982              :                        STRIP_UNARY (operands[3])))) && 
   18983              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18984              : (TARGET_AVX512F)))
   18985              :                 return -1;
   18986              :               return 6100; /* *avx512f_vpternlogv8df_1 */
   18987              : 
   18988              :             case 34:
   18989              :               if (!(
   18990              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18991              : ((32 == 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 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19003              : (TARGET_AVX)))
   19004              :                 return -1;
   19005              :               return 6127; /* *avx512vl_vpternlogv4df_1 */
   19006              : 
   19007              :             case 35:
   19008              :               if (!(
   19009              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19010              : ((16 == 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 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19022              : (TARGET_SSE2)))
   19023              :                 return -1;
   19024              :               return 6154; /* *avx512vl_vpternlogv2df_1 */
   19025              : 
   19026              :             case 36:
   19027              :               if (!(
   19028              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19029              : ((64 == 64 || TARGET_AVX512VL
   19030              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19031              :    && ix86_pre_reload_split ()) && 
   19032              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19033              : (TARGET_AVX512F)))
   19034              :                 return -1;
   19035              :               return 6931; /* *avx512bw_vpternlogv32hf_3 */
   19036              : 
   19037              :             case 37:
   19038              :               if (!(
   19039              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19040              : ((32 == 64 || TARGET_AVX512VL
   19041              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19042              :    && ix86_pre_reload_split ()) && 
   19043              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19044              : (TARGET_AVX)))
   19045              :                 return -1;
   19046              :               return 6940; /* *avx512vl_vpternlogv16hf_3 */
   19047              : 
   19048              :             case 38:
   19049              :               if (!
   19050              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19051              : ((16 == 64 || TARGET_AVX512VL
   19052              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19053              :    && ix86_pre_reload_split ()))
   19054              :                 return -1;
   19055              :               return 6949; /* *avx512fp16_vpternlogv8hf_3 */
   19056              : 
   19057              :             case 39:
   19058              :               if (!(
   19059              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19060              : ((64 == 64 || TARGET_AVX512VL
   19061              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19062              :    && ix86_pre_reload_split ()) && 
   19063              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19064              : (TARGET_AVX512F)))
   19065              :                 return -1;
   19066              :               return 6958; /* *avx512bw_vpternlogv32bf_3 */
   19067              : 
   19068              :             case 40:
   19069              :               if (!(
   19070              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19071              : ((32 == 64 || TARGET_AVX512VL
   19072              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19073              :    && ix86_pre_reload_split ()) && 
   19074              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19075              : (TARGET_AVX)))
   19076              :                 return -1;
   19077              :               return 6967; /* *avx512vl_vpternlogv16bf_3 */
   19078              : 
   19079              :             case 41:
   19080              :               if (!
   19081              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19082              : ((16 == 64 || TARGET_AVX512VL
   19083              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19084              :    && ix86_pre_reload_split ()))
   19085              :                 return -1;
   19086              :               return 6976; /* *avx512vl_vpternlogv8bf_3 */
   19087              : 
   19088              :             case 42:
   19089              :               if (!(
   19090              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19091              : ((64 == 64 || TARGET_AVX512VL
   19092              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19093              :    && ix86_pre_reload_split ()) && 
   19094              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19095              : (TARGET_AVX512F)))
   19096              :                 return -1;
   19097              :               return 6985; /* *avx512f_vpternlogv16sf_3 */
   19098              : 
   19099              :             case 43:
   19100              :               if (!(
   19101              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19102              : ((32 == 64 || TARGET_AVX512VL
   19103              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19104              :    && ix86_pre_reload_split ()) && 
   19105              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19106              : (TARGET_AVX)))
   19107              :                 return -1;
   19108              :               return 6994; /* *avx512vl_vpternlogv8sf_3 */
   19109              : 
   19110              :             case 44:
   19111              :               if (!
   19112              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19113              : ((16 == 64 || TARGET_AVX512VL
   19114              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19115              :    && ix86_pre_reload_split ()))
   19116              :                 return -1;
   19117              :               return 7003; /* *avx512vl_vpternlogv4sf_3 */
   19118              : 
   19119              :             case 45:
   19120              :               if (!(
   19121              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19122              : ((64 == 64 || TARGET_AVX512VL
   19123              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19124              :    && ix86_pre_reload_split ()) && 
   19125              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19126              : (TARGET_AVX512F)))
   19127              :                 return -1;
   19128              :               return 7012; /* *avx512f_vpternlogv8df_3 */
   19129              : 
   19130              :             case 46:
   19131              :               if (!(
   19132              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19133              : ((32 == 64 || TARGET_AVX512VL
   19134              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19135              :    && ix86_pre_reload_split ()) && 
   19136              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19137              : (TARGET_AVX)))
   19138              :                 return -1;
   19139              :               return 7021; /* *avx512vl_vpternlogv4df_3 */
   19140              : 
   19141              :             case 47:
   19142              :               if (!(
   19143              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19144              : ((16 == 64 || TARGET_AVX512VL
   19145              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19146              :    && ix86_pre_reload_split ()) && 
   19147              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19148              : (TARGET_SSE2)))
   19149              :                 return -1;
   19150              :               return 7030; /* *avx512vl_vpternlogv2df_3 */
   19151              : 
   19152              :             default:
   19153              :               return -1;
   19154              :             }
   19155              : 
   19156              :         case AND:
   19157              :           switch (pattern544 (x2))
   19158              :             {
   19159              :             case 0:
   19160              :               if (!(
   19161              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19162              : ((64 == 64 || TARGET_AVX512VL
   19163              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19164              :    && ix86_pre_reload_split ()
   19165              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19166              :                     STRIP_UNARY (operands[4]))
   19167              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19168              :                        STRIP_UNARY (operands[4]))
   19169              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19170              :                        STRIP_UNARY (operands[3]))
   19171              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19172              :                        STRIP_UNARY (operands[3])))) && 
   19173              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19174              : (TARGET_AVX512F)))
   19175              :                 return -1;
   19176              :               return 6499; /* *avx512bw_vpternlogv32hf_2 */
   19177              : 
   19178              :             case 1:
   19179              :               if (!(
   19180              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19181              : ((32 == 64 || TARGET_AVX512VL
   19182              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19183              :    && ix86_pre_reload_split ()
   19184              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19185              :                     STRIP_UNARY (operands[4]))
   19186              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19187              :                        STRIP_UNARY (operands[4]))
   19188              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19189              :                        STRIP_UNARY (operands[3]))
   19190              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19191              :                        STRIP_UNARY (operands[3])))) && 
   19192              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19193              : (TARGET_AVX)))
   19194              :                 return -1;
   19195              :               return 6526; /* *avx512vl_vpternlogv16hf_2 */
   19196              : 
   19197              :             case 2:
   19198              :               if (!
   19199              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19200              : ((16 == 64 || TARGET_AVX512VL
   19201              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19202              :    && ix86_pre_reload_split ()
   19203              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19204              :                     STRIP_UNARY (operands[4]))
   19205              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19206              :                        STRIP_UNARY (operands[4]))
   19207              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19208              :                        STRIP_UNARY (operands[3]))
   19209              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19210              :                        STRIP_UNARY (operands[3])))))
   19211              :                 return -1;
   19212              :               return 6553; /* *avx512fp16_vpternlogv8hf_2 */
   19213              : 
   19214              :             case 3:
   19215              :               if (!(
   19216              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19217              : ((64 == 64 || TARGET_AVX512VL
   19218              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19219              :    && ix86_pre_reload_split ()
   19220              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19221              :                     STRIP_UNARY (operands[4]))
   19222              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19223              :                        STRIP_UNARY (operands[4]))
   19224              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19225              :                        STRIP_UNARY (operands[3]))
   19226              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19227              :                        STRIP_UNARY (operands[3])))) && 
   19228              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19229              : (TARGET_AVX512F)))
   19230              :                 return -1;
   19231              :               return 6580; /* *avx512bw_vpternlogv32bf_2 */
   19232              : 
   19233              :             case 4:
   19234              :               if (!(
   19235              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19236              : ((32 == 64 || TARGET_AVX512VL
   19237              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19238              :    && ix86_pre_reload_split ()
   19239              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19240              :                     STRIP_UNARY (operands[4]))
   19241              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19242              :                        STRIP_UNARY (operands[4]))
   19243              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19244              :                        STRIP_UNARY (operands[3]))
   19245              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19246              :                        STRIP_UNARY (operands[3])))) && 
   19247              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19248              : (TARGET_AVX)))
   19249              :                 return -1;
   19250              :               return 6607; /* *avx512vl_vpternlogv16bf_2 */
   19251              : 
   19252              :             case 5:
   19253              :               if (!
   19254              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19255              : ((16 == 64 || TARGET_AVX512VL
   19256              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19257              :    && ix86_pre_reload_split ()
   19258              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19259              :                     STRIP_UNARY (operands[4]))
   19260              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19261              :                        STRIP_UNARY (operands[4]))
   19262              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19263              :                        STRIP_UNARY (operands[3]))
   19264              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19265              :                        STRIP_UNARY (operands[3])))))
   19266              :                 return -1;
   19267              :               return 6634; /* *avx512vl_vpternlogv8bf_2 */
   19268              : 
   19269              :             case 6:
   19270              :               if (!(
   19271              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19272              : ((64 == 64 || TARGET_AVX512VL
   19273              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19274              :    && ix86_pre_reload_split ()
   19275              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19276              :                     STRIP_UNARY (operands[4]))
   19277              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19278              :                        STRIP_UNARY (operands[4]))
   19279              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19280              :                        STRIP_UNARY (operands[3]))
   19281              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19282              :                        STRIP_UNARY (operands[3])))) && 
   19283              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19284              : (TARGET_AVX512F)))
   19285              :                 return -1;
   19286              :               return 6661; /* *avx512f_vpternlogv16sf_2 */
   19287              : 
   19288              :             case 7:
   19289              :               if (!(
   19290              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19291              : ((32 == 64 || TARGET_AVX512VL
   19292              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19293              :    && ix86_pre_reload_split ()
   19294              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19295              :                     STRIP_UNARY (operands[4]))
   19296              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19297              :                        STRIP_UNARY (operands[4]))
   19298              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19299              :                        STRIP_UNARY (operands[3]))
   19300              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19301              :                        STRIP_UNARY (operands[3])))) && 
   19302              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19303              : (TARGET_AVX)))
   19304              :                 return -1;
   19305              :               return 6688; /* *avx512vl_vpternlogv8sf_2 */
   19306              : 
   19307              :             case 8:
   19308              :               if (!
   19309              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19310              : ((16 == 64 || TARGET_AVX512VL
   19311              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19312              :    && ix86_pre_reload_split ()
   19313              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19314              :                     STRIP_UNARY (operands[4]))
   19315              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19316              :                        STRIP_UNARY (operands[4]))
   19317              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19318              :                        STRIP_UNARY (operands[3]))
   19319              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19320              :                        STRIP_UNARY (operands[3])))))
   19321              :                 return -1;
   19322              :               return 6715; /* *avx512vl_vpternlogv4sf_2 */
   19323              : 
   19324              :             case 9:
   19325              :               if (!(
   19326              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19327              : ((64 == 64 || TARGET_AVX512VL
   19328              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19329              :    && ix86_pre_reload_split ()
   19330              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19331              :                     STRIP_UNARY (operands[4]))
   19332              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19333              :                        STRIP_UNARY (operands[4]))
   19334              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19335              :                        STRIP_UNARY (operands[3]))
   19336              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19337              :                        STRIP_UNARY (operands[3])))) && 
   19338              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19339              : (TARGET_AVX512F)))
   19340              :                 return -1;
   19341              :               return 6742; /* *avx512f_vpternlogv8df_2 */
   19342              : 
   19343              :             case 10:
   19344              :               if (!(
   19345              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19346              : ((32 == 64 || TARGET_AVX512VL
   19347              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19348              :    && ix86_pre_reload_split ()
   19349              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19350              :                     STRIP_UNARY (operands[4]))
   19351              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19352              :                        STRIP_UNARY (operands[4]))
   19353              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19354              :                        STRIP_UNARY (operands[3]))
   19355              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19356              :                        STRIP_UNARY (operands[3])))) && 
   19357              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19358              : (TARGET_AVX)))
   19359              :                 return -1;
   19360              :               return 6769; /* *avx512vl_vpternlogv4df_2 */
   19361              : 
   19362              :             case 11:
   19363              :               if (!(
   19364              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19365              : ((16 == 64 || TARGET_AVX512VL
   19366              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19367              :    && ix86_pre_reload_split ()
   19368              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19369              :                     STRIP_UNARY (operands[4]))
   19370              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19371              :                        STRIP_UNARY (operands[4]))
   19372              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19373              :                        STRIP_UNARY (operands[3]))
   19374              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19375              :                        STRIP_UNARY (operands[3])))) && 
   19376              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19377              : (TARGET_SSE2)))
   19378              :                 return -1;
   19379              :               return 6796; /* *avx512vl_vpternlogv2df_2 */
   19380              : 
   19381              :             default:
   19382              :               return -1;
   19383              :             }
   19384              : 
   19385              :         case IOR:
   19386              :           switch (pattern544 (x2))
   19387              :             {
   19388              :             case 0:
   19389              :               if (!(
   19390              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19391              : ((64 == 64 || TARGET_AVX512VL
   19392              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19393              :    && ix86_pre_reload_split ()
   19394              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19395              :                     STRIP_UNARY (operands[4]))
   19396              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19397              :                        STRIP_UNARY (operands[4]))
   19398              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19399              :                        STRIP_UNARY (operands[3]))
   19400              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19401              :                        STRIP_UNARY (operands[3])))) && 
   19402              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19403              : (TARGET_AVX512F)))
   19404              :                 return -1;
   19405              :               return 6502; /* *avx512bw_vpternlogv32hf_2 */
   19406              : 
   19407              :             case 1:
   19408              :               if (!(
   19409              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19410              : ((32 == 64 || TARGET_AVX512VL
   19411              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19412              :    && ix86_pre_reload_split ()
   19413              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19414              :                     STRIP_UNARY (operands[4]))
   19415              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19416              :                        STRIP_UNARY (operands[4]))
   19417              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19418              :                        STRIP_UNARY (operands[3]))
   19419              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19420              :                        STRIP_UNARY (operands[3])))) && 
   19421              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19422              : (TARGET_AVX)))
   19423              :                 return -1;
   19424              :               return 6529; /* *avx512vl_vpternlogv16hf_2 */
   19425              : 
   19426              :             case 2:
   19427              :               if (!
   19428              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19429              : ((16 == 64 || TARGET_AVX512VL
   19430              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19431              :    && ix86_pre_reload_split ()
   19432              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19433              :                     STRIP_UNARY (operands[4]))
   19434              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19435              :                        STRIP_UNARY (operands[4]))
   19436              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19437              :                        STRIP_UNARY (operands[3]))
   19438              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19439              :                        STRIP_UNARY (operands[3])))))
   19440              :                 return -1;
   19441              :               return 6556; /* *avx512fp16_vpternlogv8hf_2 */
   19442              : 
   19443              :             case 3:
   19444              :               if (!(
   19445              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19446              : ((64 == 64 || TARGET_AVX512VL
   19447              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19448              :    && ix86_pre_reload_split ()
   19449              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19450              :                     STRIP_UNARY (operands[4]))
   19451              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19452              :                        STRIP_UNARY (operands[4]))
   19453              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19454              :                        STRIP_UNARY (operands[3]))
   19455              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19456              :                        STRIP_UNARY (operands[3])))) && 
   19457              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19458              : (TARGET_AVX512F)))
   19459              :                 return -1;
   19460              :               return 6583; /* *avx512bw_vpternlogv32bf_2 */
   19461              : 
   19462              :             case 4:
   19463              :               if (!(
   19464              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19465              : ((32 == 64 || TARGET_AVX512VL
   19466              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19467              :    && ix86_pre_reload_split ()
   19468              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19469              :                     STRIP_UNARY (operands[4]))
   19470              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19471              :                        STRIP_UNARY (operands[4]))
   19472              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19473              :                        STRIP_UNARY (operands[3]))
   19474              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19475              :                        STRIP_UNARY (operands[3])))) && 
   19476              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19477              : (TARGET_AVX)))
   19478              :                 return -1;
   19479              :               return 6610; /* *avx512vl_vpternlogv16bf_2 */
   19480              : 
   19481              :             case 5:
   19482              :               if (!
   19483              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19484              : ((16 == 64 || TARGET_AVX512VL
   19485              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19486              :    && ix86_pre_reload_split ()
   19487              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19488              :                     STRIP_UNARY (operands[4]))
   19489              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19490              :                        STRIP_UNARY (operands[4]))
   19491              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19492              :                        STRIP_UNARY (operands[3]))
   19493              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19494              :                        STRIP_UNARY (operands[3])))))
   19495              :                 return -1;
   19496              :               return 6637; /* *avx512vl_vpternlogv8bf_2 */
   19497              : 
   19498              :             case 6:
   19499              :               if (!(
   19500              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19501              : ((64 == 64 || TARGET_AVX512VL
   19502              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19503              :    && ix86_pre_reload_split ()
   19504              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19505              :                     STRIP_UNARY (operands[4]))
   19506              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19507              :                        STRIP_UNARY (operands[4]))
   19508              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19509              :                        STRIP_UNARY (operands[3]))
   19510              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19511              :                        STRIP_UNARY (operands[3])))) && 
   19512              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19513              : (TARGET_AVX512F)))
   19514              :                 return -1;
   19515              :               return 6664; /* *avx512f_vpternlogv16sf_2 */
   19516              : 
   19517              :             case 7:
   19518              :               if (!(
   19519              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19520              : ((32 == 64 || TARGET_AVX512VL
   19521              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19522              :    && ix86_pre_reload_split ()
   19523              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19524              :                     STRIP_UNARY (operands[4]))
   19525              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19526              :                        STRIP_UNARY (operands[4]))
   19527              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19528              :                        STRIP_UNARY (operands[3]))
   19529              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19530              :                        STRIP_UNARY (operands[3])))) && 
   19531              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19532              : (TARGET_AVX)))
   19533              :                 return -1;
   19534              :               return 6691; /* *avx512vl_vpternlogv8sf_2 */
   19535              : 
   19536              :             case 8:
   19537              :               if (!
   19538              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19539              : ((16 == 64 || TARGET_AVX512VL
   19540              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19541              :    && ix86_pre_reload_split ()
   19542              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19543              :                     STRIP_UNARY (operands[4]))
   19544              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19545              :                        STRIP_UNARY (operands[4]))
   19546              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19547              :                        STRIP_UNARY (operands[3]))
   19548              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19549              :                        STRIP_UNARY (operands[3])))))
   19550              :                 return -1;
   19551              :               return 6718; /* *avx512vl_vpternlogv4sf_2 */
   19552              : 
   19553              :             case 9:
   19554              :               if (!(
   19555              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19556              : ((64 == 64 || TARGET_AVX512VL
   19557              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19558              :    && ix86_pre_reload_split ()
   19559              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19560              :                     STRIP_UNARY (operands[4]))
   19561              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19562              :                        STRIP_UNARY (operands[4]))
   19563              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19564              :                        STRIP_UNARY (operands[3]))
   19565              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19566              :                        STRIP_UNARY (operands[3])))) && 
   19567              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19568              : (TARGET_AVX512F)))
   19569              :                 return -1;
   19570              :               return 6745; /* *avx512f_vpternlogv8df_2 */
   19571              : 
   19572              :             case 10:
   19573              :               if (!(
   19574              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19575              : ((32 == 64 || TARGET_AVX512VL
   19576              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19577              :    && ix86_pre_reload_split ()
   19578              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19579              :                     STRIP_UNARY (operands[4]))
   19580              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19581              :                        STRIP_UNARY (operands[4]))
   19582              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19583              :                        STRIP_UNARY (operands[3]))
   19584              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19585              :                        STRIP_UNARY (operands[3])))) && 
   19586              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19587              : (TARGET_AVX)))
   19588              :                 return -1;
   19589              :               return 6772; /* *avx512vl_vpternlogv4df_2 */
   19590              : 
   19591              :             case 11:
   19592              :               if (!(
   19593              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19594              : ((16 == 64 || TARGET_AVX512VL
   19595              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19596              :    && ix86_pre_reload_split ()
   19597              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19598              :                     STRIP_UNARY (operands[4]))
   19599              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19600              :                        STRIP_UNARY (operands[4]))
   19601              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19602              :                        STRIP_UNARY (operands[3]))
   19603              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19604              :                        STRIP_UNARY (operands[3])))) && 
   19605              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19606              : (TARGET_SSE2)))
   19607              :                 return -1;
   19608              :               return 6799; /* *avx512vl_vpternlogv2df_2 */
   19609              : 
   19610              :             default:
   19611              :               return -1;
   19612              :             }
   19613              : 
   19614              :         case XOR:
   19615              :           switch (pattern544 (x2))
   19616              :             {
   19617              :             case 0:
   19618              :               if (!(
   19619              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19620              : ((64 == 64 || TARGET_AVX512VL
   19621              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19622              :    && ix86_pre_reload_split ()
   19623              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19624              :                     STRIP_UNARY (operands[4]))
   19625              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19626              :                        STRIP_UNARY (operands[4]))
   19627              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19628              :                        STRIP_UNARY (operands[3]))
   19629              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19630              :                        STRIP_UNARY (operands[3])))) && 
   19631              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19632              : (TARGET_AVX512F)))
   19633              :                 return -1;
   19634              :               return 6505; /* *avx512bw_vpternlogv32hf_2 */
   19635              : 
   19636              :             case 1:
   19637              :               if (!(
   19638              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19639              : ((32 == 64 || TARGET_AVX512VL
   19640              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19641              :    && ix86_pre_reload_split ()
   19642              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19643              :                     STRIP_UNARY (operands[4]))
   19644              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19645              :                        STRIP_UNARY (operands[4]))
   19646              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19647              :                        STRIP_UNARY (operands[3]))
   19648              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19649              :                        STRIP_UNARY (operands[3])))) && 
   19650              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19651              : (TARGET_AVX)))
   19652              :                 return -1;
   19653              :               return 6532; /* *avx512vl_vpternlogv16hf_2 */
   19654              : 
   19655              :             case 2:
   19656              :               if (!
   19657              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19658              : ((16 == 64 || TARGET_AVX512VL
   19659              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19660              :    && ix86_pre_reload_split ()
   19661              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19662              :                     STRIP_UNARY (operands[4]))
   19663              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19664              :                        STRIP_UNARY (operands[4]))
   19665              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19666              :                        STRIP_UNARY (operands[3]))
   19667              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19668              :                        STRIP_UNARY (operands[3])))))
   19669              :                 return -1;
   19670              :               return 6559; /* *avx512fp16_vpternlogv8hf_2 */
   19671              : 
   19672              :             case 3:
   19673              :               if (!(
   19674              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19675              : ((64 == 64 || TARGET_AVX512VL
   19676              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19677              :    && ix86_pre_reload_split ()
   19678              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19679              :                     STRIP_UNARY (operands[4]))
   19680              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19681              :                        STRIP_UNARY (operands[4]))
   19682              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19683              :                        STRIP_UNARY (operands[3]))
   19684              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19685              :                        STRIP_UNARY (operands[3])))) && 
   19686              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19687              : (TARGET_AVX512F)))
   19688              :                 return -1;
   19689              :               return 6586; /* *avx512bw_vpternlogv32bf_2 */
   19690              : 
   19691              :             case 4:
   19692              :               if (!(
   19693              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19694              : ((32 == 64 || TARGET_AVX512VL
   19695              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19696              :    && ix86_pre_reload_split ()
   19697              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19698              :                     STRIP_UNARY (operands[4]))
   19699              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19700              :                        STRIP_UNARY (operands[4]))
   19701              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19702              :                        STRIP_UNARY (operands[3]))
   19703              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19704              :                        STRIP_UNARY (operands[3])))) && 
   19705              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19706              : (TARGET_AVX)))
   19707              :                 return -1;
   19708              :               return 6613; /* *avx512vl_vpternlogv16bf_2 */
   19709              : 
   19710              :             case 5:
   19711              :               if (!
   19712              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19713              : ((16 == 64 || TARGET_AVX512VL
   19714              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19715              :    && ix86_pre_reload_split ()
   19716              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19717              :                     STRIP_UNARY (operands[4]))
   19718              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19719              :                        STRIP_UNARY (operands[4]))
   19720              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19721              :                        STRIP_UNARY (operands[3]))
   19722              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19723              :                        STRIP_UNARY (operands[3])))))
   19724              :                 return -1;
   19725              :               return 6640; /* *avx512vl_vpternlogv8bf_2 */
   19726              : 
   19727              :             case 6:
   19728              :               if (!(
   19729              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19730              : ((64 == 64 || TARGET_AVX512VL
   19731              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19732              :    && ix86_pre_reload_split ()
   19733              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19734              :                     STRIP_UNARY (operands[4]))
   19735              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19736              :                        STRIP_UNARY (operands[4]))
   19737              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19738              :                        STRIP_UNARY (operands[3]))
   19739              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19740              :                        STRIP_UNARY (operands[3])))) && 
   19741              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19742              : (TARGET_AVX512F)))
   19743              :                 return -1;
   19744              :               return 6667; /* *avx512f_vpternlogv16sf_2 */
   19745              : 
   19746              :             case 7:
   19747              :               if (!(
   19748              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19749              : ((32 == 64 || TARGET_AVX512VL
   19750              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19751              :    && ix86_pre_reload_split ()
   19752              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19753              :                     STRIP_UNARY (operands[4]))
   19754              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19755              :                        STRIP_UNARY (operands[4]))
   19756              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19757              :                        STRIP_UNARY (operands[3]))
   19758              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19759              :                        STRIP_UNARY (operands[3])))) && 
   19760              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19761              : (TARGET_AVX)))
   19762              :                 return -1;
   19763              :               return 6694; /* *avx512vl_vpternlogv8sf_2 */
   19764              : 
   19765              :             case 8:
   19766              :               if (!
   19767              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19768              : ((16 == 64 || TARGET_AVX512VL
   19769              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19770              :    && ix86_pre_reload_split ()
   19771              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19772              :                     STRIP_UNARY (operands[4]))
   19773              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19774              :                        STRIP_UNARY (operands[4]))
   19775              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19776              :                        STRIP_UNARY (operands[3]))
   19777              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19778              :                        STRIP_UNARY (operands[3])))))
   19779              :                 return -1;
   19780              :               return 6721; /* *avx512vl_vpternlogv4sf_2 */
   19781              : 
   19782              :             case 9:
   19783              :               if (!(
   19784              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19785              : ((64 == 64 || TARGET_AVX512VL
   19786              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19787              :    && ix86_pre_reload_split ()
   19788              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19789              :                     STRIP_UNARY (operands[4]))
   19790              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19791              :                        STRIP_UNARY (operands[4]))
   19792              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19793              :                        STRIP_UNARY (operands[3]))
   19794              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19795              :                        STRIP_UNARY (operands[3])))) && 
   19796              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19797              : (TARGET_AVX512F)))
   19798              :                 return -1;
   19799              :               return 6748; /* *avx512f_vpternlogv8df_2 */
   19800              : 
   19801              :             case 10:
   19802              :               if (!(
   19803              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19804              : ((32 == 64 || TARGET_AVX512VL
   19805              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19806              :    && ix86_pre_reload_split ()
   19807              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19808              :                     STRIP_UNARY (operands[4]))
   19809              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19810              :                        STRIP_UNARY (operands[4]))
   19811              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19812              :                        STRIP_UNARY (operands[3]))
   19813              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19814              :                        STRIP_UNARY (operands[3])))) && 
   19815              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19816              : (TARGET_AVX)))
   19817              :                 return -1;
   19818              :               return 6775; /* *avx512vl_vpternlogv4df_2 */
   19819              : 
   19820              :             case 11:
   19821              :               if (!(
   19822              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19823              : ((16 == 64 || TARGET_AVX512VL
   19824              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19825              :    && ix86_pre_reload_split ()
   19826              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19827              :                     STRIP_UNARY (operands[4]))
   19828              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19829              :                        STRIP_UNARY (operands[4]))
   19830              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19831              :                        STRIP_UNARY (operands[3]))
   19832              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19833              :                        STRIP_UNARY (operands[3])))) && 
   19834              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19835              : (TARGET_SSE2)))
   19836              :                 return -1;
   19837              :               return 6802; /* *avx512vl_vpternlogv2df_2 */
   19838              : 
   19839              :             default:
   19840              :               return -1;
   19841              :             }
   19842              : 
   19843              :         default:
   19844              :           return -1;
   19845              :         }
   19846              : 
   19847              :     case IOR:
   19848              :       x4 = XEXP (x3, 0);
   19849              :       switch (GET_CODE (x4))
   19850              :         {
   19851              :         case REG:
   19852              :         case SUBREG:
   19853              :         case MEM:
   19854              :         case NOT:
   19855              :           switch (pattern543 (x2))
   19856              :             {
   19857              :             case 0:
   19858              :               if (!(
   19859              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19860              : ((64 == 64 || TARGET_AVX512VL
   19861              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19862              :    && ix86_pre_reload_split ()
   19863              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19864              :                     STRIP_UNARY (operands[4]))
   19865              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19866              :                        STRIP_UNARY (operands[4]))
   19867              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19868              :                        STRIP_UNARY (operands[3]))
   19869              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19870              :                        STRIP_UNARY (operands[3])))) && 
   19871              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19872              : (TARGET_AVX512F)))
   19873              :                 return -1;
   19874              :               return 5860; /* *avx512bw_vpternlogv32hf_1 */
   19875              : 
   19876              :             case 1:
   19877              :               if (!(
   19878              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19879              : ((32 == 64 || TARGET_AVX512VL
   19880              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19881              :    && ix86_pre_reload_split ()
   19882              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19883              :                     STRIP_UNARY (operands[4]))
   19884              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19885              :                        STRIP_UNARY (operands[4]))
   19886              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19887              :                        STRIP_UNARY (operands[3]))
   19888              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19889              :                        STRIP_UNARY (operands[3])))) && 
   19890              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19891              : (TARGET_AVX)))
   19892              :                 return -1;
   19893              :               return 5887; /* *avx512vl_vpternlogv16hf_1 */
   19894              : 
   19895              :             case 2:
   19896              :               if (!
   19897              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19898              : ((16 == 64 || TARGET_AVX512VL
   19899              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19900              :    && ix86_pre_reload_split ()
   19901              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19902              :                     STRIP_UNARY (operands[4]))
   19903              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19904              :                        STRIP_UNARY (operands[4]))
   19905              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19906              :                        STRIP_UNARY (operands[3]))
   19907              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19908              :                        STRIP_UNARY (operands[3])))))
   19909              :                 return -1;
   19910              :               return 5914; /* *avx512fp16_vpternlogv8hf_1 */
   19911              : 
   19912              :             case 3:
   19913              :               if (!(
   19914              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19915              : ((64 == 64 || TARGET_AVX512VL
   19916              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19917              :    && ix86_pre_reload_split ()
   19918              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19919              :                     STRIP_UNARY (operands[4]))
   19920              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19921              :                        STRIP_UNARY (operands[4]))
   19922              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19923              :                        STRIP_UNARY (operands[3]))
   19924              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19925              :                        STRIP_UNARY (operands[3])))) && 
   19926              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19927              : (TARGET_AVX512F)))
   19928              :                 return -1;
   19929              :               return 5941; /* *avx512bw_vpternlogv32bf_1 */
   19930              : 
   19931              :             case 4:
   19932              :               if (!(
   19933              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19934              : ((32 == 64 || TARGET_AVX512VL
   19935              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19936              :    && ix86_pre_reload_split ()
   19937              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19938              :                     STRIP_UNARY (operands[4]))
   19939              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19940              :                        STRIP_UNARY (operands[4]))
   19941              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19942              :                        STRIP_UNARY (operands[3]))
   19943              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19944              :                        STRIP_UNARY (operands[3])))) && 
   19945              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19946              : (TARGET_AVX)))
   19947              :                 return -1;
   19948              :               return 5968; /* *avx512vl_vpternlogv16bf_1 */
   19949              : 
   19950              :             case 5:
   19951              :               if (!
   19952              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19953              : ((16 == 64 || TARGET_AVX512VL
   19954              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19955              :    && ix86_pre_reload_split ()
   19956              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19957              :                     STRIP_UNARY (operands[4]))
   19958              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19959              :                        STRIP_UNARY (operands[4]))
   19960              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19961              :                        STRIP_UNARY (operands[3]))
   19962              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19963              :                        STRIP_UNARY (operands[3])))))
   19964              :                 return -1;
   19965              :               return 5995; /* *avx512vl_vpternlogv8bf_1 */
   19966              : 
   19967              :             case 6:
   19968              :               if (!(
   19969              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19970              : ((64 == 64 || TARGET_AVX512VL
   19971              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19972              :    && ix86_pre_reload_split ()
   19973              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19974              :                     STRIP_UNARY (operands[4]))
   19975              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19976              :                        STRIP_UNARY (operands[4]))
   19977              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19978              :                        STRIP_UNARY (operands[3]))
   19979              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19980              :                        STRIP_UNARY (operands[3])))) && 
   19981              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19982              : (TARGET_AVX512F)))
   19983              :                 return -1;
   19984              :               return 6022; /* *avx512f_vpternlogv16sf_1 */
   19985              : 
   19986              :             case 7:
   19987              :               if (!(
   19988              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19989              : ((32 == 64 || TARGET_AVX512VL
   19990              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19991              :    && ix86_pre_reload_split ()
   19992              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19993              :                     STRIP_UNARY (operands[4]))
   19994              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19995              :                        STRIP_UNARY (operands[4]))
   19996              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19997              :                        STRIP_UNARY (operands[3]))
   19998              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19999              :                        STRIP_UNARY (operands[3])))) && 
   20000              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20001              : (TARGET_AVX)))
   20002              :                 return -1;
   20003              :               return 6049; /* *avx512vl_vpternlogv8sf_1 */
   20004              : 
   20005              :             case 8:
   20006              :               if (!
   20007              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20008              : ((16 == 64 || TARGET_AVX512VL
   20009              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20010              :    && ix86_pre_reload_split ()
   20011              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20012              :                     STRIP_UNARY (operands[4]))
   20013              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20014              :                        STRIP_UNARY (operands[4]))
   20015              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20016              :                        STRIP_UNARY (operands[3]))
   20017              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20018              :                        STRIP_UNARY (operands[3])))))
   20019              :                 return -1;
   20020              :               return 6076; /* *avx512vl_vpternlogv4sf_1 */
   20021              : 
   20022              :             case 9:
   20023              :               if (!(
   20024              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20025              : ((64 == 64 || TARGET_AVX512VL
   20026              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20027              :    && ix86_pre_reload_split ()
   20028              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20029              :                     STRIP_UNARY (operands[4]))
   20030              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20031              :                        STRIP_UNARY (operands[4]))
   20032              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20033              :                        STRIP_UNARY (operands[3]))
   20034              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20035              :                        STRIP_UNARY (operands[3])))) && 
   20036              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20037              : (TARGET_AVX512F)))
   20038              :                 return -1;
   20039              :               return 6103; /* *avx512f_vpternlogv8df_1 */
   20040              : 
   20041              :             case 10:
   20042              :               if (!(
   20043              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20044              : ((32 == 64 || TARGET_AVX512VL
   20045              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20046              :    && ix86_pre_reload_split ()
   20047              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20048              :                     STRIP_UNARY (operands[4]))
   20049              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20050              :                        STRIP_UNARY (operands[4]))
   20051              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20052              :                        STRIP_UNARY (operands[3]))
   20053              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20054              :                        STRIP_UNARY (operands[3])))) && 
   20055              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20056              : (TARGET_AVX)))
   20057              :                 return -1;
   20058              :               return 6130; /* *avx512vl_vpternlogv4df_1 */
   20059              : 
   20060              :             case 11:
   20061              :               if (!(
   20062              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20063              : ((16 == 64 || TARGET_AVX512VL
   20064              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20065              :    && ix86_pre_reload_split ()
   20066              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20067              :                     STRIP_UNARY (operands[4]))
   20068              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20069              :                        STRIP_UNARY (operands[4]))
   20070              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20071              :                        STRIP_UNARY (operands[3]))
   20072              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20073              :                        STRIP_UNARY (operands[3])))) && 
   20074              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20075              : (TARGET_SSE2)))
   20076              :                 return -1;
   20077              :               return 6157; /* *avx512vl_vpternlogv2df_1 */
   20078              : 
   20079              :             case 12:
   20080              :               if (!(
   20081              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20082              : ((64 == 64 || TARGET_AVX512VL
   20083              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20084              :    && ix86_pre_reload_split ()
   20085              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20086              :                     STRIP_UNARY (operands[4]))
   20087              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20088              :                        STRIP_UNARY (operands[4]))
   20089              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20090              :                        STRIP_UNARY (operands[3]))
   20091              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20092              :                        STRIP_UNARY (operands[3])))) && 
   20093              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20094              : (TARGET_AVX512F)))
   20095              :                 return -1;
   20096              :               return 5863; /* *avx512bw_vpternlogv32hf_1 */
   20097              : 
   20098              :             case 13:
   20099              :               if (!(
   20100              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20101              : ((32 == 64 || TARGET_AVX512VL
   20102              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20103              :    && ix86_pre_reload_split ()
   20104              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20105              :                     STRIP_UNARY (operands[4]))
   20106              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20107              :                        STRIP_UNARY (operands[4]))
   20108              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20109              :                        STRIP_UNARY (operands[3]))
   20110              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20111              :                        STRIP_UNARY (operands[3])))) && 
   20112              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20113              : (TARGET_AVX)))
   20114              :                 return -1;
   20115              :               return 5890; /* *avx512vl_vpternlogv16hf_1 */
   20116              : 
   20117              :             case 14:
   20118              :               if (!
   20119              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20120              : ((16 == 64 || TARGET_AVX512VL
   20121              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20122              :    && ix86_pre_reload_split ()
   20123              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20124              :                     STRIP_UNARY (operands[4]))
   20125              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20126              :                        STRIP_UNARY (operands[4]))
   20127              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20128              :                        STRIP_UNARY (operands[3]))
   20129              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20130              :                        STRIP_UNARY (operands[3])))))
   20131              :                 return -1;
   20132              :               return 5917; /* *avx512fp16_vpternlogv8hf_1 */
   20133              : 
   20134              :             case 15:
   20135              :               if (!(
   20136              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20137              : ((64 == 64 || TARGET_AVX512VL
   20138              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20139              :    && ix86_pre_reload_split ()
   20140              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20141              :                     STRIP_UNARY (operands[4]))
   20142              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20143              :                        STRIP_UNARY (operands[4]))
   20144              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20145              :                        STRIP_UNARY (operands[3]))
   20146              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20147              :                        STRIP_UNARY (operands[3])))) && 
   20148              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20149              : (TARGET_AVX512F)))
   20150              :                 return -1;
   20151              :               return 5944; /* *avx512bw_vpternlogv32bf_1 */
   20152              : 
   20153              :             case 16:
   20154              :               if (!(
   20155              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20156              : ((32 == 64 || TARGET_AVX512VL
   20157              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20158              :    && ix86_pre_reload_split ()
   20159              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20160              :                     STRIP_UNARY (operands[4]))
   20161              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20162              :                        STRIP_UNARY (operands[4]))
   20163              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20164              :                        STRIP_UNARY (operands[3]))
   20165              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20166              :                        STRIP_UNARY (operands[3])))) && 
   20167              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20168              : (TARGET_AVX)))
   20169              :                 return -1;
   20170              :               return 5971; /* *avx512vl_vpternlogv16bf_1 */
   20171              : 
   20172              :             case 17:
   20173              :               if (!
   20174              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20175              : ((16 == 64 || TARGET_AVX512VL
   20176              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20177              :    && ix86_pre_reload_split ()
   20178              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20179              :                     STRIP_UNARY (operands[4]))
   20180              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20181              :                        STRIP_UNARY (operands[4]))
   20182              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20183              :                        STRIP_UNARY (operands[3]))
   20184              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20185              :                        STRIP_UNARY (operands[3])))))
   20186              :                 return -1;
   20187              :               return 5998; /* *avx512vl_vpternlogv8bf_1 */
   20188              : 
   20189              :             case 18:
   20190              :               if (!(
   20191              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20192              : ((64 == 64 || TARGET_AVX512VL
   20193              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20194              :    && ix86_pre_reload_split ()
   20195              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20196              :                     STRIP_UNARY (operands[4]))
   20197              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20198              :                        STRIP_UNARY (operands[4]))
   20199              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20200              :                        STRIP_UNARY (operands[3]))
   20201              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20202              :                        STRIP_UNARY (operands[3])))) && 
   20203              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20204              : (TARGET_AVX512F)))
   20205              :                 return -1;
   20206              :               return 6025; /* *avx512f_vpternlogv16sf_1 */
   20207              : 
   20208              :             case 19:
   20209              :               if (!(
   20210              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20211              : ((32 == 64 || TARGET_AVX512VL
   20212              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20213              :    && ix86_pre_reload_split ()
   20214              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20215              :                     STRIP_UNARY (operands[4]))
   20216              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20217              :                        STRIP_UNARY (operands[4]))
   20218              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20219              :                        STRIP_UNARY (operands[3]))
   20220              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20221              :                        STRIP_UNARY (operands[3])))) && 
   20222              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20223              : (TARGET_AVX)))
   20224              :                 return -1;
   20225              :               return 6052; /* *avx512vl_vpternlogv8sf_1 */
   20226              : 
   20227              :             case 20:
   20228              :               if (!
   20229              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20230              : ((16 == 64 || TARGET_AVX512VL
   20231              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20232              :    && ix86_pre_reload_split ()
   20233              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20234              :                     STRIP_UNARY (operands[4]))
   20235              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20236              :                        STRIP_UNARY (operands[4]))
   20237              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20238              :                        STRIP_UNARY (operands[3]))
   20239              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20240              :                        STRIP_UNARY (operands[3])))))
   20241              :                 return -1;
   20242              :               return 6079; /* *avx512vl_vpternlogv4sf_1 */
   20243              : 
   20244              :             case 21:
   20245              :               if (!(
   20246              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20247              : ((64 == 64 || TARGET_AVX512VL
   20248              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20249              :    && ix86_pre_reload_split ()
   20250              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20251              :                     STRIP_UNARY (operands[4]))
   20252              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20253              :                        STRIP_UNARY (operands[4]))
   20254              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20255              :                        STRIP_UNARY (operands[3]))
   20256              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20257              :                        STRIP_UNARY (operands[3])))) && 
   20258              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20259              : (TARGET_AVX512F)))
   20260              :                 return -1;
   20261              :               return 6106; /* *avx512f_vpternlogv8df_1 */
   20262              : 
   20263              :             case 22:
   20264              :               if (!(
   20265              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20266              : ((32 == 64 || TARGET_AVX512VL
   20267              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20268              :    && ix86_pre_reload_split ()
   20269              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20270              :                     STRIP_UNARY (operands[4]))
   20271              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20272              :                        STRIP_UNARY (operands[4]))
   20273              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20274              :                        STRIP_UNARY (operands[3]))
   20275              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20276              :                        STRIP_UNARY (operands[3])))) && 
   20277              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20278              : (TARGET_AVX)))
   20279              :                 return -1;
   20280              :               return 6133; /* *avx512vl_vpternlogv4df_1 */
   20281              : 
   20282              :             case 23:
   20283              :               if (!(
   20284              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20285              : ((16 == 64 || TARGET_AVX512VL
   20286              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20287              :    && ix86_pre_reload_split ()
   20288              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20289              :                     STRIP_UNARY (operands[4]))
   20290              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20291              :                        STRIP_UNARY (operands[4]))
   20292              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20293              :                        STRIP_UNARY (operands[3]))
   20294              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20295              :                        STRIP_UNARY (operands[3])))) && 
   20296              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20297              : (TARGET_SSE2)))
   20298              :                 return -1;
   20299              :               return 6160; /* *avx512vl_vpternlogv2df_1 */
   20300              : 
   20301              :             case 24:
   20302              :               if (!(
   20303              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20304              : ((64 == 64 || TARGET_AVX512VL
   20305              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20306              :    && ix86_pre_reload_split ()
   20307              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20308              :                     STRIP_UNARY (operands[4]))
   20309              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20310              :                        STRIP_UNARY (operands[4]))
   20311              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20312              :                        STRIP_UNARY (operands[3]))
   20313              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20314              :                        STRIP_UNARY (operands[3])))) && 
   20315              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20316              : (TARGET_AVX512F)))
   20317              :                 return -1;
   20318              :               return 5866; /* *avx512bw_vpternlogv32hf_1 */
   20319              : 
   20320              :             case 25:
   20321              :               if (!(
   20322              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20323              : ((32 == 64 || TARGET_AVX512VL
   20324              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20325              :    && ix86_pre_reload_split ()
   20326              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20327              :                     STRIP_UNARY (operands[4]))
   20328              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20329              :                        STRIP_UNARY (operands[4]))
   20330              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20331              :                        STRIP_UNARY (operands[3]))
   20332              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20333              :                        STRIP_UNARY (operands[3])))) && 
   20334              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20335              : (TARGET_AVX)))
   20336              :                 return -1;
   20337              :               return 5893; /* *avx512vl_vpternlogv16hf_1 */
   20338              : 
   20339              :             case 26:
   20340              :               if (!
   20341              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20342              : ((16 == 64 || TARGET_AVX512VL
   20343              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20344              :    && ix86_pre_reload_split ()
   20345              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20346              :                     STRIP_UNARY (operands[4]))
   20347              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20348              :                        STRIP_UNARY (operands[4]))
   20349              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20350              :                        STRIP_UNARY (operands[3]))
   20351              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20352              :                        STRIP_UNARY (operands[3])))))
   20353              :                 return -1;
   20354              :               return 5920; /* *avx512fp16_vpternlogv8hf_1 */
   20355              : 
   20356              :             case 27:
   20357              :               if (!(
   20358              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20359              : ((64 == 64 || TARGET_AVX512VL
   20360              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20361              :    && ix86_pre_reload_split ()
   20362              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20363              :                     STRIP_UNARY (operands[4]))
   20364              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20365              :                        STRIP_UNARY (operands[4]))
   20366              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20367              :                        STRIP_UNARY (operands[3]))
   20368              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20369              :                        STRIP_UNARY (operands[3])))) && 
   20370              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20371              : (TARGET_AVX512F)))
   20372              :                 return -1;
   20373              :               return 5947; /* *avx512bw_vpternlogv32bf_1 */
   20374              : 
   20375              :             case 28:
   20376              :               if (!(
   20377              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20378              : ((32 == 64 || TARGET_AVX512VL
   20379              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20380              :    && ix86_pre_reload_split ()
   20381              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20382              :                     STRIP_UNARY (operands[4]))
   20383              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20384              :                        STRIP_UNARY (operands[4]))
   20385              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20386              :                        STRIP_UNARY (operands[3]))
   20387              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20388              :                        STRIP_UNARY (operands[3])))) && 
   20389              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20390              : (TARGET_AVX)))
   20391              :                 return -1;
   20392              :               return 5974; /* *avx512vl_vpternlogv16bf_1 */
   20393              : 
   20394              :             case 29:
   20395              :               if (!
   20396              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20397              : ((16 == 64 || TARGET_AVX512VL
   20398              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20399              :    && ix86_pre_reload_split ()
   20400              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20401              :                     STRIP_UNARY (operands[4]))
   20402              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20403              :                        STRIP_UNARY (operands[4]))
   20404              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20405              :                        STRIP_UNARY (operands[3]))
   20406              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20407              :                        STRIP_UNARY (operands[3])))))
   20408              :                 return -1;
   20409              :               return 6001; /* *avx512vl_vpternlogv8bf_1 */
   20410              : 
   20411              :             case 30:
   20412              :               if (!(
   20413              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20414              : ((64 == 64 || TARGET_AVX512VL
   20415              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20416              :    && ix86_pre_reload_split ()
   20417              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20418              :                     STRIP_UNARY (operands[4]))
   20419              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20420              :                        STRIP_UNARY (operands[4]))
   20421              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20422              :                        STRIP_UNARY (operands[3]))
   20423              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20424              :                        STRIP_UNARY (operands[3])))) && 
   20425              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20426              : (TARGET_AVX512F)))
   20427              :                 return -1;
   20428              :               return 6028; /* *avx512f_vpternlogv16sf_1 */
   20429              : 
   20430              :             case 31:
   20431              :               if (!(
   20432              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20433              : ((32 == 64 || TARGET_AVX512VL
   20434              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20435              :    && ix86_pre_reload_split ()
   20436              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20437              :                     STRIP_UNARY (operands[4]))
   20438              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20439              :                        STRIP_UNARY (operands[4]))
   20440              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20441              :                        STRIP_UNARY (operands[3]))
   20442              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20443              :                        STRIP_UNARY (operands[3])))) && 
   20444              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20445              : (TARGET_AVX)))
   20446              :                 return -1;
   20447              :               return 6055; /* *avx512vl_vpternlogv8sf_1 */
   20448              : 
   20449              :             case 32:
   20450              :               if (!
   20451              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20452              : ((16 == 64 || TARGET_AVX512VL
   20453              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20454              :    && ix86_pre_reload_split ()
   20455              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20456              :                     STRIP_UNARY (operands[4]))
   20457              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20458              :                        STRIP_UNARY (operands[4]))
   20459              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20460              :                        STRIP_UNARY (operands[3]))
   20461              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20462              :                        STRIP_UNARY (operands[3])))))
   20463              :                 return -1;
   20464              :               return 6082; /* *avx512vl_vpternlogv4sf_1 */
   20465              : 
   20466              :             case 33:
   20467              :               if (!(
   20468              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20469              : ((64 == 64 || TARGET_AVX512VL
   20470              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20471              :    && ix86_pre_reload_split ()
   20472              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20473              :                     STRIP_UNARY (operands[4]))
   20474              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20475              :                        STRIP_UNARY (operands[4]))
   20476              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20477              :                        STRIP_UNARY (operands[3]))
   20478              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20479              :                        STRIP_UNARY (operands[3])))) && 
   20480              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20481              : (TARGET_AVX512F)))
   20482              :                 return -1;
   20483              :               return 6109; /* *avx512f_vpternlogv8df_1 */
   20484              : 
   20485              :             case 34:
   20486              :               if (!(
   20487              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20488              : ((32 == 64 || TARGET_AVX512VL
   20489              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20490              :    && ix86_pre_reload_split ()
   20491              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20492              :                     STRIP_UNARY (operands[4]))
   20493              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20494              :                        STRIP_UNARY (operands[4]))
   20495              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20496              :                        STRIP_UNARY (operands[3]))
   20497              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20498              :                        STRIP_UNARY (operands[3])))) && 
   20499              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20500              : (TARGET_AVX)))
   20501              :                 return -1;
   20502              :               return 6136; /* *avx512vl_vpternlogv4df_1 */
   20503              : 
   20504              :             case 35:
   20505              :               if (!(
   20506              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20507              : ((16 == 64 || TARGET_AVX512VL
   20508              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20509              :    && ix86_pre_reload_split ()
   20510              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20511              :                     STRIP_UNARY (operands[4]))
   20512              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20513              :                        STRIP_UNARY (operands[4]))
   20514              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20515              :                        STRIP_UNARY (operands[3]))
   20516              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20517              :                        STRIP_UNARY (operands[3])))) && 
   20518              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20519              : (TARGET_SSE2)))
   20520              :                 return -1;
   20521              :               return 6163; /* *avx512vl_vpternlogv2df_1 */
   20522              : 
   20523              :             case 36:
   20524              :               if (!(
   20525              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20526              : ((64 == 64 || TARGET_AVX512VL
   20527              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20528              :    && ix86_pre_reload_split ()) && 
   20529              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20530              : (TARGET_AVX512F)))
   20531              :                 return -1;
   20532              :               return 6934; /* *avx512bw_vpternlogv32hf_3 */
   20533              : 
   20534              :             case 37:
   20535              :               if (!(
   20536              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20537              : ((32 == 64 || TARGET_AVX512VL
   20538              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20539              :    && ix86_pre_reload_split ()) && 
   20540              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20541              : (TARGET_AVX)))
   20542              :                 return -1;
   20543              :               return 6943; /* *avx512vl_vpternlogv16hf_3 */
   20544              : 
   20545              :             case 38:
   20546              :               if (!
   20547              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20548              : ((16 == 64 || TARGET_AVX512VL
   20549              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20550              :    && ix86_pre_reload_split ()))
   20551              :                 return -1;
   20552              :               return 6952; /* *avx512fp16_vpternlogv8hf_3 */
   20553              : 
   20554              :             case 39:
   20555              :               if (!(
   20556              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20557              : ((64 == 64 || TARGET_AVX512VL
   20558              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20559              :    && ix86_pre_reload_split ()) && 
   20560              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20561              : (TARGET_AVX512F)))
   20562              :                 return -1;
   20563              :               return 6961; /* *avx512bw_vpternlogv32bf_3 */
   20564              : 
   20565              :             case 40:
   20566              :               if (!(
   20567              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20568              : ((32 == 64 || TARGET_AVX512VL
   20569              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20570              :    && ix86_pre_reload_split ()) && 
   20571              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20572              : (TARGET_AVX)))
   20573              :                 return -1;
   20574              :               return 6970; /* *avx512vl_vpternlogv16bf_3 */
   20575              : 
   20576              :             case 41:
   20577              :               if (!
   20578              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20579              : ((16 == 64 || TARGET_AVX512VL
   20580              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20581              :    && ix86_pre_reload_split ()))
   20582              :                 return -1;
   20583              :               return 6979; /* *avx512vl_vpternlogv8bf_3 */
   20584              : 
   20585              :             case 42:
   20586              :               if (!(
   20587              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20588              : ((64 == 64 || TARGET_AVX512VL
   20589              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20590              :    && ix86_pre_reload_split ()) && 
   20591              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20592              : (TARGET_AVX512F)))
   20593              :                 return -1;
   20594              :               return 6988; /* *avx512f_vpternlogv16sf_3 */
   20595              : 
   20596              :             case 43:
   20597              :               if (!(
   20598              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20599              : ((32 == 64 || TARGET_AVX512VL
   20600              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20601              :    && ix86_pre_reload_split ()) && 
   20602              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20603              : (TARGET_AVX)))
   20604              :                 return -1;
   20605              :               return 6997; /* *avx512vl_vpternlogv8sf_3 */
   20606              : 
   20607              :             case 44:
   20608              :               if (!
   20609              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20610              : ((16 == 64 || TARGET_AVX512VL
   20611              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20612              :    && ix86_pre_reload_split ()))
   20613              :                 return -1;
   20614              :               return 7006; /* *avx512vl_vpternlogv4sf_3 */
   20615              : 
   20616              :             case 45:
   20617              :               if (!(
   20618              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20619              : ((64 == 64 || TARGET_AVX512VL
   20620              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20621              :    && ix86_pre_reload_split ()) && 
   20622              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20623              : (TARGET_AVX512F)))
   20624              :                 return -1;
   20625              :               return 7015; /* *avx512f_vpternlogv8df_3 */
   20626              : 
   20627              :             case 46:
   20628              :               if (!(
   20629              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20630              : ((32 == 64 || TARGET_AVX512VL
   20631              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20632              :    && ix86_pre_reload_split ()) && 
   20633              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20634              : (TARGET_AVX)))
   20635              :                 return -1;
   20636              :               return 7024; /* *avx512vl_vpternlogv4df_3 */
   20637              : 
   20638              :             case 47:
   20639              :               if (!(
   20640              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20641              : ((16 == 64 || TARGET_AVX512VL
   20642              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20643              :    && ix86_pre_reload_split ()) && 
   20644              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20645              : (TARGET_SSE2)))
   20646              :                 return -1;
   20647              :               return 7033; /* *avx512vl_vpternlogv2df_3 */
   20648              : 
   20649              :             default:
   20650              :               return -1;
   20651              :             }
   20652              : 
   20653              :         case AND:
   20654              :           switch (pattern544 (x2))
   20655              :             {
   20656              :             case 0:
   20657              :               if (!(
   20658              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20659              : ((64 == 64 || TARGET_AVX512VL
   20660              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20661              :    && ix86_pre_reload_split ()
   20662              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20663              :                     STRIP_UNARY (operands[4]))
   20664              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20665              :                        STRIP_UNARY (operands[4]))
   20666              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20667              :                        STRIP_UNARY (operands[3]))
   20668              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20669              :                        STRIP_UNARY (operands[3])))) && 
   20670              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20671              : (TARGET_AVX512F)))
   20672              :                 return -1;
   20673              :               return 6508; /* *avx512bw_vpternlogv32hf_2 */
   20674              : 
   20675              :             case 1:
   20676              :               if (!(
   20677              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20678              : ((32 == 64 || TARGET_AVX512VL
   20679              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20680              :    && ix86_pre_reload_split ()
   20681              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20682              :                     STRIP_UNARY (operands[4]))
   20683              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20684              :                        STRIP_UNARY (operands[4]))
   20685              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20686              :                        STRIP_UNARY (operands[3]))
   20687              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20688              :                        STRIP_UNARY (operands[3])))) && 
   20689              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20690              : (TARGET_AVX)))
   20691              :                 return -1;
   20692              :               return 6535; /* *avx512vl_vpternlogv16hf_2 */
   20693              : 
   20694              :             case 2:
   20695              :               if (!
   20696              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20697              : ((16 == 64 || TARGET_AVX512VL
   20698              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20699              :    && ix86_pre_reload_split ()
   20700              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20701              :                     STRIP_UNARY (operands[4]))
   20702              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20703              :                        STRIP_UNARY (operands[4]))
   20704              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20705              :                        STRIP_UNARY (operands[3]))
   20706              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20707              :                        STRIP_UNARY (operands[3])))))
   20708              :                 return -1;
   20709              :               return 6562; /* *avx512fp16_vpternlogv8hf_2 */
   20710              : 
   20711              :             case 3:
   20712              :               if (!(
   20713              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20714              : ((64 == 64 || TARGET_AVX512VL
   20715              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20716              :    && ix86_pre_reload_split ()
   20717              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20718              :                     STRIP_UNARY (operands[4]))
   20719              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20720              :                        STRIP_UNARY (operands[4]))
   20721              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20722              :                        STRIP_UNARY (operands[3]))
   20723              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20724              :                        STRIP_UNARY (operands[3])))) && 
   20725              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20726              : (TARGET_AVX512F)))
   20727              :                 return -1;
   20728              :               return 6589; /* *avx512bw_vpternlogv32bf_2 */
   20729              : 
   20730              :             case 4:
   20731              :               if (!(
   20732              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20733              : ((32 == 64 || TARGET_AVX512VL
   20734              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20735              :    && ix86_pre_reload_split ()
   20736              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20737              :                     STRIP_UNARY (operands[4]))
   20738              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20739              :                        STRIP_UNARY (operands[4]))
   20740              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20741              :                        STRIP_UNARY (operands[3]))
   20742              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20743              :                        STRIP_UNARY (operands[3])))) && 
   20744              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20745              : (TARGET_AVX)))
   20746              :                 return -1;
   20747              :               return 6616; /* *avx512vl_vpternlogv16bf_2 */
   20748              : 
   20749              :             case 5:
   20750              :               if (!
   20751              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20752              : ((16 == 64 || TARGET_AVX512VL
   20753              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20754              :    && ix86_pre_reload_split ()
   20755              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20756              :                     STRIP_UNARY (operands[4]))
   20757              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20758              :                        STRIP_UNARY (operands[4]))
   20759              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20760              :                        STRIP_UNARY (operands[3]))
   20761              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20762              :                        STRIP_UNARY (operands[3])))))
   20763              :                 return -1;
   20764              :               return 6643; /* *avx512vl_vpternlogv8bf_2 */
   20765              : 
   20766              :             case 6:
   20767              :               if (!(
   20768              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20769              : ((64 == 64 || TARGET_AVX512VL
   20770              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20771              :    && ix86_pre_reload_split ()
   20772              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20773              :                     STRIP_UNARY (operands[4]))
   20774              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20775              :                        STRIP_UNARY (operands[4]))
   20776              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20777              :                        STRIP_UNARY (operands[3]))
   20778              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20779              :                        STRIP_UNARY (operands[3])))) && 
   20780              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20781              : (TARGET_AVX512F)))
   20782              :                 return -1;
   20783              :               return 6670; /* *avx512f_vpternlogv16sf_2 */
   20784              : 
   20785              :             case 7:
   20786              :               if (!(
   20787              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20788              : ((32 == 64 || TARGET_AVX512VL
   20789              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20790              :    && ix86_pre_reload_split ()
   20791              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20792              :                     STRIP_UNARY (operands[4]))
   20793              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20794              :                        STRIP_UNARY (operands[4]))
   20795              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20796              :                        STRIP_UNARY (operands[3]))
   20797              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20798              :                        STRIP_UNARY (operands[3])))) && 
   20799              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20800              : (TARGET_AVX)))
   20801              :                 return -1;
   20802              :               return 6697; /* *avx512vl_vpternlogv8sf_2 */
   20803              : 
   20804              :             case 8:
   20805              :               if (!
   20806              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20807              : ((16 == 64 || TARGET_AVX512VL
   20808              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20809              :    && ix86_pre_reload_split ()
   20810              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20811              :                     STRIP_UNARY (operands[4]))
   20812              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20813              :                        STRIP_UNARY (operands[4]))
   20814              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20815              :                        STRIP_UNARY (operands[3]))
   20816              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20817              :                        STRIP_UNARY (operands[3])))))
   20818              :                 return -1;
   20819              :               return 6724; /* *avx512vl_vpternlogv4sf_2 */
   20820              : 
   20821              :             case 9:
   20822              :               if (!(
   20823              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20824              : ((64 == 64 || TARGET_AVX512VL
   20825              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20826              :    && ix86_pre_reload_split ()
   20827              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20828              :                     STRIP_UNARY (operands[4]))
   20829              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20830              :                        STRIP_UNARY (operands[4]))
   20831              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20832              :                        STRIP_UNARY (operands[3]))
   20833              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20834              :                        STRIP_UNARY (operands[3])))) && 
   20835              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20836              : (TARGET_AVX512F)))
   20837              :                 return -1;
   20838              :               return 6751; /* *avx512f_vpternlogv8df_2 */
   20839              : 
   20840              :             case 10:
   20841              :               if (!(
   20842              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20843              : ((32 == 64 || TARGET_AVX512VL
   20844              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20845              :    && ix86_pre_reload_split ()
   20846              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20847              :                     STRIP_UNARY (operands[4]))
   20848              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20849              :                        STRIP_UNARY (operands[4]))
   20850              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20851              :                        STRIP_UNARY (operands[3]))
   20852              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20853              :                        STRIP_UNARY (operands[3])))) && 
   20854              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20855              : (TARGET_AVX)))
   20856              :                 return -1;
   20857              :               return 6778; /* *avx512vl_vpternlogv4df_2 */
   20858              : 
   20859              :             case 11:
   20860              :               if (!(
   20861              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20862              : ((16 == 64 || TARGET_AVX512VL
   20863              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20864              :    && ix86_pre_reload_split ()
   20865              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20866              :                     STRIP_UNARY (operands[4]))
   20867              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20868              :                        STRIP_UNARY (operands[4]))
   20869              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20870              :                        STRIP_UNARY (operands[3]))
   20871              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20872              :                        STRIP_UNARY (operands[3])))) && 
   20873              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20874              : (TARGET_SSE2)))
   20875              :                 return -1;
   20876              :               return 6805; /* *avx512vl_vpternlogv2df_2 */
   20877              : 
   20878              :             default:
   20879              :               return -1;
   20880              :             }
   20881              : 
   20882              :         case IOR:
   20883              :           switch (pattern544 (x2))
   20884              :             {
   20885              :             case 0:
   20886              :               if (!(
   20887              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20888              : ((64 == 64 || TARGET_AVX512VL
   20889              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20890              :    && ix86_pre_reload_split ()
   20891              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20892              :                     STRIP_UNARY (operands[4]))
   20893              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20894              :                        STRIP_UNARY (operands[4]))
   20895              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20896              :                        STRIP_UNARY (operands[3]))
   20897              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20898              :                        STRIP_UNARY (operands[3])))) && 
   20899              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20900              : (TARGET_AVX512F)))
   20901              :                 return -1;
   20902              :               return 6511; /* *avx512bw_vpternlogv32hf_2 */
   20903              : 
   20904              :             case 1:
   20905              :               if (!(
   20906              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20907              : ((32 == 64 || TARGET_AVX512VL
   20908              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20909              :    && ix86_pre_reload_split ()
   20910              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20911              :                     STRIP_UNARY (operands[4]))
   20912              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20913              :                        STRIP_UNARY (operands[4]))
   20914              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20915              :                        STRIP_UNARY (operands[3]))
   20916              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20917              :                        STRIP_UNARY (operands[3])))) && 
   20918              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20919              : (TARGET_AVX)))
   20920              :                 return -1;
   20921              :               return 6538; /* *avx512vl_vpternlogv16hf_2 */
   20922              : 
   20923              :             case 2:
   20924              :               if (!
   20925              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20926              : ((16 == 64 || TARGET_AVX512VL
   20927              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20928              :    && ix86_pre_reload_split ()
   20929              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20930              :                     STRIP_UNARY (operands[4]))
   20931              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20932              :                        STRIP_UNARY (operands[4]))
   20933              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20934              :                        STRIP_UNARY (operands[3]))
   20935              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20936              :                        STRIP_UNARY (operands[3])))))
   20937              :                 return -1;
   20938              :               return 6565; /* *avx512fp16_vpternlogv8hf_2 */
   20939              : 
   20940              :             case 3:
   20941              :               if (!(
   20942              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20943              : ((64 == 64 || TARGET_AVX512VL
   20944              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20945              :    && ix86_pre_reload_split ()
   20946              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20947              :                     STRIP_UNARY (operands[4]))
   20948              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20949              :                        STRIP_UNARY (operands[4]))
   20950              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20951              :                        STRIP_UNARY (operands[3]))
   20952              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20953              :                        STRIP_UNARY (operands[3])))) && 
   20954              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20955              : (TARGET_AVX512F)))
   20956              :                 return -1;
   20957              :               return 6592; /* *avx512bw_vpternlogv32bf_2 */
   20958              : 
   20959              :             case 4:
   20960              :               if (!(
   20961              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20962              : ((32 == 64 || TARGET_AVX512VL
   20963              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20964              :    && ix86_pre_reload_split ()
   20965              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20966              :                     STRIP_UNARY (operands[4]))
   20967              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20968              :                        STRIP_UNARY (operands[4]))
   20969              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20970              :                        STRIP_UNARY (operands[3]))
   20971              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20972              :                        STRIP_UNARY (operands[3])))) && 
   20973              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20974              : (TARGET_AVX)))
   20975              :                 return -1;
   20976              :               return 6619; /* *avx512vl_vpternlogv16bf_2 */
   20977              : 
   20978              :             case 5:
   20979              :               if (!
   20980              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20981              : ((16 == 64 || TARGET_AVX512VL
   20982              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20983              :    && ix86_pre_reload_split ()
   20984              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20985              :                     STRIP_UNARY (operands[4]))
   20986              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20987              :                        STRIP_UNARY (operands[4]))
   20988              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20989              :                        STRIP_UNARY (operands[3]))
   20990              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20991              :                        STRIP_UNARY (operands[3])))))
   20992              :                 return -1;
   20993              :               return 6646; /* *avx512vl_vpternlogv8bf_2 */
   20994              : 
   20995              :             case 6:
   20996              :               if (!(
   20997              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20998              : ((64 == 64 || TARGET_AVX512VL
   20999              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21000              :    && ix86_pre_reload_split ()
   21001              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21002              :                     STRIP_UNARY (operands[4]))
   21003              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21004              :                        STRIP_UNARY (operands[4]))
   21005              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21006              :                        STRIP_UNARY (operands[3]))
   21007              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21008              :                        STRIP_UNARY (operands[3])))) && 
   21009              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21010              : (TARGET_AVX512F)))
   21011              :                 return -1;
   21012              :               return 6673; /* *avx512f_vpternlogv16sf_2 */
   21013              : 
   21014              :             case 7:
   21015              :               if (!(
   21016              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21017              : ((32 == 64 || TARGET_AVX512VL
   21018              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21019              :    && ix86_pre_reload_split ()
   21020              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21021              :                     STRIP_UNARY (operands[4]))
   21022              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21023              :                        STRIP_UNARY (operands[4]))
   21024              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21025              :                        STRIP_UNARY (operands[3]))
   21026              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21027              :                        STRIP_UNARY (operands[3])))) && 
   21028              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21029              : (TARGET_AVX)))
   21030              :                 return -1;
   21031              :               return 6700; /* *avx512vl_vpternlogv8sf_2 */
   21032              : 
   21033              :             case 8:
   21034              :               if (!
   21035              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21036              : ((16 == 64 || TARGET_AVX512VL
   21037              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21038              :    && ix86_pre_reload_split ()
   21039              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21040              :                     STRIP_UNARY (operands[4]))
   21041              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21042              :                        STRIP_UNARY (operands[4]))
   21043              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21044              :                        STRIP_UNARY (operands[3]))
   21045              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21046              :                        STRIP_UNARY (operands[3])))))
   21047              :                 return -1;
   21048              :               return 6727; /* *avx512vl_vpternlogv4sf_2 */
   21049              : 
   21050              :             case 9:
   21051              :               if (!(
   21052              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21053              : ((64 == 64 || TARGET_AVX512VL
   21054              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21055              :    && ix86_pre_reload_split ()
   21056              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21057              :                     STRIP_UNARY (operands[4]))
   21058              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21059              :                        STRIP_UNARY (operands[4]))
   21060              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21061              :                        STRIP_UNARY (operands[3]))
   21062              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21063              :                        STRIP_UNARY (operands[3])))) && 
   21064              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21065              : (TARGET_AVX512F)))
   21066              :                 return -1;
   21067              :               return 6754; /* *avx512f_vpternlogv8df_2 */
   21068              : 
   21069              :             case 10:
   21070              :               if (!(
   21071              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21072              : ((32 == 64 || TARGET_AVX512VL
   21073              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21074              :    && ix86_pre_reload_split ()
   21075              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21076              :                     STRIP_UNARY (operands[4]))
   21077              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21078              :                        STRIP_UNARY (operands[4]))
   21079              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21080              :                        STRIP_UNARY (operands[3]))
   21081              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21082              :                        STRIP_UNARY (operands[3])))) && 
   21083              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21084              : (TARGET_AVX)))
   21085              :                 return -1;
   21086              :               return 6781; /* *avx512vl_vpternlogv4df_2 */
   21087              : 
   21088              :             case 11:
   21089              :               if (!(
   21090              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21091              : ((16 == 64 || TARGET_AVX512VL
   21092              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21093              :    && ix86_pre_reload_split ()
   21094              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21095              :                     STRIP_UNARY (operands[4]))
   21096              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21097              :                        STRIP_UNARY (operands[4]))
   21098              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21099              :                        STRIP_UNARY (operands[3]))
   21100              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21101              :                        STRIP_UNARY (operands[3])))) && 
   21102              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21103              : (TARGET_SSE2)))
   21104              :                 return -1;
   21105              :               return 6808; /* *avx512vl_vpternlogv2df_2 */
   21106              : 
   21107              :             default:
   21108              :               return -1;
   21109              :             }
   21110              : 
   21111              :         case XOR:
   21112              :           switch (pattern544 (x2))
   21113              :             {
   21114              :             case 0:
   21115              :               if (!(
   21116              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21117              : ((64 == 64 || TARGET_AVX512VL
   21118              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21119              :    && ix86_pre_reload_split ()
   21120              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21121              :                     STRIP_UNARY (operands[4]))
   21122              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21123              :                        STRIP_UNARY (operands[4]))
   21124              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21125              :                        STRIP_UNARY (operands[3]))
   21126              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21127              :                        STRIP_UNARY (operands[3])))) && 
   21128              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21129              : (TARGET_AVX512F)))
   21130              :                 return -1;
   21131              :               return 6514; /* *avx512bw_vpternlogv32hf_2 */
   21132              : 
   21133              :             case 1:
   21134              :               if (!(
   21135              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21136              : ((32 == 64 || TARGET_AVX512VL
   21137              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21138              :    && ix86_pre_reload_split ()
   21139              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21140              :                     STRIP_UNARY (operands[4]))
   21141              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21142              :                        STRIP_UNARY (operands[4]))
   21143              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21144              :                        STRIP_UNARY (operands[3]))
   21145              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21146              :                        STRIP_UNARY (operands[3])))) && 
   21147              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21148              : (TARGET_AVX)))
   21149              :                 return -1;
   21150              :               return 6541; /* *avx512vl_vpternlogv16hf_2 */
   21151              : 
   21152              :             case 2:
   21153              :               if (!
   21154              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21155              : ((16 == 64 || TARGET_AVX512VL
   21156              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21157              :    && ix86_pre_reload_split ()
   21158              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21159              :                     STRIP_UNARY (operands[4]))
   21160              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21161              :                        STRIP_UNARY (operands[4]))
   21162              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21163              :                        STRIP_UNARY (operands[3]))
   21164              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21165              :                        STRIP_UNARY (operands[3])))))
   21166              :                 return -1;
   21167              :               return 6568; /* *avx512fp16_vpternlogv8hf_2 */
   21168              : 
   21169              :             case 3:
   21170              :               if (!(
   21171              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21172              : ((64 == 64 || TARGET_AVX512VL
   21173              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21174              :    && ix86_pre_reload_split ()
   21175              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21176              :                     STRIP_UNARY (operands[4]))
   21177              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21178              :                        STRIP_UNARY (operands[4]))
   21179              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21180              :                        STRIP_UNARY (operands[3]))
   21181              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21182              :                        STRIP_UNARY (operands[3])))) && 
   21183              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21184              : (TARGET_AVX512F)))
   21185              :                 return -1;
   21186              :               return 6595; /* *avx512bw_vpternlogv32bf_2 */
   21187              : 
   21188              :             case 4:
   21189              :               if (!(
   21190              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21191              : ((32 == 64 || TARGET_AVX512VL
   21192              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21193              :    && ix86_pre_reload_split ()
   21194              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21195              :                     STRIP_UNARY (operands[4]))
   21196              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21197              :                        STRIP_UNARY (operands[4]))
   21198              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21199              :                        STRIP_UNARY (operands[3]))
   21200              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21201              :                        STRIP_UNARY (operands[3])))) && 
   21202              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21203              : (TARGET_AVX)))
   21204              :                 return -1;
   21205              :               return 6622; /* *avx512vl_vpternlogv16bf_2 */
   21206              : 
   21207              :             case 5:
   21208              :               if (!
   21209              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21210              : ((16 == 64 || TARGET_AVX512VL
   21211              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21212              :    && ix86_pre_reload_split ()
   21213              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21214              :                     STRIP_UNARY (operands[4]))
   21215              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21216              :                        STRIP_UNARY (operands[4]))
   21217              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21218              :                        STRIP_UNARY (operands[3]))
   21219              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21220              :                        STRIP_UNARY (operands[3])))))
   21221              :                 return -1;
   21222              :               return 6649; /* *avx512vl_vpternlogv8bf_2 */
   21223              : 
   21224              :             case 6:
   21225              :               if (!(
   21226              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21227              : ((64 == 64 || TARGET_AVX512VL
   21228              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21229              :    && ix86_pre_reload_split ()
   21230              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21231              :                     STRIP_UNARY (operands[4]))
   21232              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21233              :                        STRIP_UNARY (operands[4]))
   21234              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21235              :                        STRIP_UNARY (operands[3]))
   21236              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21237              :                        STRIP_UNARY (operands[3])))) && 
   21238              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21239              : (TARGET_AVX512F)))
   21240              :                 return -1;
   21241              :               return 6676; /* *avx512f_vpternlogv16sf_2 */
   21242              : 
   21243              :             case 7:
   21244              :               if (!(
   21245              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21246              : ((32 == 64 || TARGET_AVX512VL
   21247              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21248              :    && ix86_pre_reload_split ()
   21249              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21250              :                     STRIP_UNARY (operands[4]))
   21251              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21252              :                        STRIP_UNARY (operands[4]))
   21253              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21254              :                        STRIP_UNARY (operands[3]))
   21255              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21256              :                        STRIP_UNARY (operands[3])))) && 
   21257              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21258              : (TARGET_AVX)))
   21259              :                 return -1;
   21260              :               return 6703; /* *avx512vl_vpternlogv8sf_2 */
   21261              : 
   21262              :             case 8:
   21263              :               if (!
   21264              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21265              : ((16 == 64 || TARGET_AVX512VL
   21266              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21267              :    && ix86_pre_reload_split ()
   21268              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21269              :                     STRIP_UNARY (operands[4]))
   21270              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21271              :                        STRIP_UNARY (operands[4]))
   21272              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21273              :                        STRIP_UNARY (operands[3]))
   21274              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21275              :                        STRIP_UNARY (operands[3])))))
   21276              :                 return -1;
   21277              :               return 6730; /* *avx512vl_vpternlogv4sf_2 */
   21278              : 
   21279              :             case 9:
   21280              :               if (!(
   21281              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21282              : ((64 == 64 || TARGET_AVX512VL
   21283              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21284              :    && ix86_pre_reload_split ()
   21285              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21286              :                     STRIP_UNARY (operands[4]))
   21287              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21288              :                        STRIP_UNARY (operands[4]))
   21289              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21290              :                        STRIP_UNARY (operands[3]))
   21291              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21292              :                        STRIP_UNARY (operands[3])))) && 
   21293              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21294              : (TARGET_AVX512F)))
   21295              :                 return -1;
   21296              :               return 6757; /* *avx512f_vpternlogv8df_2 */
   21297              : 
   21298              :             case 10:
   21299              :               if (!(
   21300              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21301              : ((32 == 64 || TARGET_AVX512VL
   21302              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21303              :    && ix86_pre_reload_split ()
   21304              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21305              :                     STRIP_UNARY (operands[4]))
   21306              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21307              :                        STRIP_UNARY (operands[4]))
   21308              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21309              :                        STRIP_UNARY (operands[3]))
   21310              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21311              :                        STRIP_UNARY (operands[3])))) && 
   21312              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21313              : (TARGET_AVX)))
   21314              :                 return -1;
   21315              :               return 6784; /* *avx512vl_vpternlogv4df_2 */
   21316              : 
   21317              :             case 11:
   21318              :               if (!(
   21319              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21320              : ((16 == 64 || TARGET_AVX512VL
   21321              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21322              :    && ix86_pre_reload_split ()
   21323              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21324              :                     STRIP_UNARY (operands[4]))
   21325              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21326              :                        STRIP_UNARY (operands[4]))
   21327              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21328              :                        STRIP_UNARY (operands[3]))
   21329              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21330              :                        STRIP_UNARY (operands[3])))) && 
   21331              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21332              : (TARGET_SSE2)))
   21333              :                 return -1;
   21334              :               return 6811; /* *avx512vl_vpternlogv2df_2 */
   21335              : 
   21336              :             default:
   21337              :               return -1;
   21338              :             }
   21339              : 
   21340              :         default:
   21341              :           return -1;
   21342              :         }
   21343              : 
   21344              :     case XOR:
   21345              :       return recog_315 (x1, insn, pnum_clobbers);
   21346              : 
   21347              :     default:
   21348              :       return -1;
   21349              :     }
   21350              : }
   21351              : 
   21352              :  int
   21353              : recog_378 (rtx x1 ATTRIBUTE_UNUSED,
   21354              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21355              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21356              : {
   21357              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21358              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   21359              :   rtx x10;
   21360              :   int res ATTRIBUTE_UNUSED;
   21361              :   if (pattern346 (x1) != 0)
   21362              :     return -1;
   21363              :   x2 = XVECEXP (x1, 0, 0);
   21364              :   x3 = XEXP (x2, 1);
   21365              :   x4 = XEXP (x3, 0);
   21366              :   x5 = XEXP (x4, 0);
   21367              :   switch (GET_CODE (x5))
   21368              :     {
   21369              :     case REG:
   21370              :     case SUBREG:
   21371              :     case MEM:
   21372              :       operands[1] = x5;
   21373              :       x6 = XEXP (x4, 1);
   21374              :       operands[2] = x6;
   21375              :       switch (GET_MODE (operands[0]))
   21376              :         {
   21377              :         case E_HImode:
   21378              :           if (!register_operand (operands[0], E_HImode)
   21379              :               || GET_MODE (x3) != E_HImode
   21380              :               || GET_MODE (x4) != E_QImode
   21381              :               || !nonimmediate_operand (operands[1], E_QImode)
   21382              :               || !general_operand (operands[2], E_QImode)
   21383              :               || !
   21384              : #line 6810 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21385              : (TARGET_APX_NDD && true
   21386              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21387              :             return -1;
   21388              :           return 291; /* *addqi_1_zexthi */
   21389              : 
   21390              :         case E_SImode:
   21391              :           if (!register_operand (operands[0], E_SImode)
   21392              :               || GET_MODE (x3) != E_SImode)
   21393              :             return -1;
   21394              :           switch (GET_MODE (x4))
   21395              :             {
   21396              :             case E_QImode:
   21397              :               if (!nonimmediate_operand (operands[1], E_QImode)
   21398              :                   || !general_operand (operands[2], E_QImode)
   21399              :                   || !
   21400              : #line 6810 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21401              : (TARGET_APX_NDD && true
   21402              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21403              :                 return -1;
   21404              :               return 293; /* *addqi_1_zextsi */
   21405              : 
   21406              :             case E_HImode:
   21407              :               if (!nonimmediate_operand (operands[1], E_HImode)
   21408              :                   || !general_operand (operands[2], E_HImode)
   21409              :                   || !
   21410              : #line 6848 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21411              : (TARGET_APX_NDD && true
   21412              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21413              :                 return -1;
   21414              :               return 297; /* *addhi_1_zextsi */
   21415              : 
   21416              :             default:
   21417              :               return -1;
   21418              :             }
   21419              : 
   21420              :         case E_DImode:
   21421              :           if (!register_operand (operands[0], E_DImode)
   21422              :               || GET_MODE (x3) != E_DImode)
   21423              :             return -1;
   21424              :           switch (GET_MODE (x4))
   21425              :             {
   21426              :             case E_QImode:
   21427              :               if (!nonimmediate_operand (operands[1], E_QImode)
   21428              :                   || !general_operand (operands[2], E_QImode)
   21429              :                   || !
   21430              : #line 6810 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21431              : (TARGET_APX_NDD && true
   21432              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21433              :                 return -1;
   21434              :               return 295; /* *addqi_1_zextdi */
   21435              : 
   21436              :             case E_HImode:
   21437              :               if (!nonimmediate_operand (operands[1], E_HImode)
   21438              :                   || !general_operand (operands[2], E_HImode)
   21439              :                   || !
   21440              : #line 6848 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21441              : (TARGET_APX_NDD && true
   21442              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21443              :                 return -1;
   21444              :               return 299; /* *addhi_1_zextdi */
   21445              : 
   21446              :             case E_SImode:
   21447              :               if (!nonimmediate_operand (operands[1], E_SImode)
   21448              :                   || !x86_64_general_operand (operands[2], E_SImode)
   21449              :                   || !
   21450              : #line 6893 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21451              : (TARGET_64BIT
   21452              :    && ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
   21453              :                 return -1;
   21454              :               return 300; /* addsi_1_zext */
   21455              : 
   21456              :             default:
   21457              :               return -1;
   21458              :             }
   21459              : 
   21460              :         default:
   21461              :           return -1;
   21462              :         }
   21463              : 
   21464              :     case PLUS:
   21465              :       x7 = XEXP (x5, 0);
   21466              :       switch (GET_CODE (x7))
   21467              :         {
   21468              :         case LTU:
   21469              :         case UNLT:
   21470              :           operands[3] = x7;
   21471              :           x8 = XEXP (x7, 0);
   21472              :           if (GET_CODE (x8) != REG
   21473              :               || REGNO (x8) != 17)
   21474              :             return -1;
   21475              :           x9 = XEXP (x7, 1);
   21476              :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   21477              :             return -1;
   21478              :           x10 = XEXP (x5, 1);
   21479              :           operands[1] = x10;
   21480              :           x6 = XEXP (x4, 1);
   21481              :           operands[2] = x6;
   21482              :           switch (pattern1164 (x3))
   21483              :             {
   21484              :             case 0:
   21485              :               if (pattern1770 (x5, 
   21486              : E_QImode) != 0
   21487              :                   || !
   21488              : #line 9093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21489              : (TARGET_APX_NDD
   21490              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21491              :                 return -1;
   21492              :               return 481; /* *addqi3_carry_zexthi */
   21493              : 
   21494              :             case 1:
   21495              :               if (pattern1770 (x5, 
   21496              : E_QImode) != 0
   21497              :                   || !
   21498              : #line 9093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21499              : (TARGET_APX_NDD
   21500              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21501              :                 return -1;
   21502              :               return 482; /* *addqi3_carry_zextsi */
   21503              : 
   21504              :             case 2:
   21505              :               if (pattern1770 (x5, 
   21506              : E_HImode) != 0
   21507              :                   || !
   21508              : #line 9112 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21509              : (TARGET_APX_NDD
   21510              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21511              :                 return -1;
   21512              :               return 484; /* *addhi3_carry_zextsi */
   21513              : 
   21514              :             case 3:
   21515              :               if (pattern1770 (x5, 
   21516              : E_QImode) != 0
   21517              :                   || !
   21518              : #line 9093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21519              : (TARGET_APX_NDD
   21520              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21521              :                 return -1;
   21522              :               return 483; /* *addqi3_carry_zextdi */
   21523              : 
   21524              :             case 4:
   21525              :               if (pattern1770 (x5, 
   21526              : E_HImode) != 0
   21527              :                   || !
   21528              : #line 9112 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21529              : (TARGET_APX_NDD
   21530              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21531              :                 return -1;
   21532              :               return 485; /* *addhi3_carry_zextdi */
   21533              : 
   21534              :             case 5:
   21535              :               if (pattern1770 (x5, 
   21536              : E_SImode) != 0
   21537              :                   || !
   21538              : #line 9131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21539              : (TARGET_64BIT
   21540              :    && ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
   21541              :                 return -1;
   21542              :               return 486; /* *addsi3_carry_zext */
   21543              : 
   21544              :             default:
   21545              :               return -1;
   21546              :             }
   21547              : 
   21548              :         default:
   21549              :           return -1;
   21550              :         }
   21551              : 
   21552              :     case LTU:
   21553              :     case UNLT:
   21554              :       switch (pattern1165 (x3))
   21555              :         {
   21556              :         case 0:
   21557              :           if (!ix86_carry_flag_operator (operands[2], E_QImode)
   21558              :               || !nonimmediate_operand (operands[1], E_QImode)
   21559              :               || !
   21560              : #line 9150 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21561              : (TARGET_APX_NDD))
   21562              :             return -1;
   21563              :           return 487; /* *addqi3_carry_zexthi_0 */
   21564              : 
   21565              :         case 1:
   21566              :           if (!ix86_carry_flag_operator (operands[2], E_QImode)
   21567              :               || !nonimmediate_operand (operands[1], E_QImode)
   21568              :               || !
   21569              : #line 9150 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21570              : (TARGET_APX_NDD))
   21571              :             return -1;
   21572              :           return 488; /* *addqi3_carry_zextsi_0 */
   21573              : 
   21574              :         case 2:
   21575              :           if (!ix86_carry_flag_operator (operands[2], E_HImode)
   21576              :               || !nonimmediate_operand (operands[1], E_HImode)
   21577              :               || !
   21578              : #line 9164 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21579              : (TARGET_APX_NDD))
   21580              :             return -1;
   21581              :           return 490; /* *addhi3_carry_zextsi_0 */
   21582              : 
   21583              :         case 3:
   21584              :           if (!ix86_carry_flag_operator (operands[2], E_QImode)
   21585              :               || !nonimmediate_operand (operands[1], E_QImode)
   21586              :               || !
   21587              : #line 9150 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21588              : (TARGET_APX_NDD))
   21589              :             return -1;
   21590              :           return 489; /* *addqi3_carry_zextdi_0 */
   21591              : 
   21592              :         case 4:
   21593              :           if (!ix86_carry_flag_operator (operands[2], E_HImode)
   21594              :               || !nonimmediate_operand (operands[1], E_HImode)
   21595              :               || !
   21596              : #line 9164 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21597              : (TARGET_APX_NDD))
   21598              :             return -1;
   21599              :           return 491; /* *addhi3_carry_zextdi_0 */
   21600              : 
   21601              :         case 5:
   21602              :           if (!ix86_carry_flag_operator (operands[2], E_SImode)
   21603              :               || !nonimmediate_operand (operands[1], E_SImode)
   21604              :               || !
   21605              : #line 9178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21606              : (TARGET_64BIT))
   21607              :             return -1;
   21608              :           return 492; /* *addsi3_carry_zext_0 */
   21609              : 
   21610              :         default:
   21611              :           return -1;
   21612              :         }
   21613              : 
   21614              :     case GE:
   21615              :     case GEU:
   21616              :       switch (pattern1165 (x3))
   21617              :         {
   21618              :         case 0:
   21619              :           if (!ix86_carry_flag_unset_operator (operands[2], E_QImode)
   21620              :               || !nonimmediate_operand (operands[1], E_QImode)
   21621              :               || !
   21622              : #line 9195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21623              : (TARGET_APX_NDD))
   21624              :             return -1;
   21625              :           return 493; /* *addqi3_carry_zexthi_0r */
   21626              : 
   21627              :         case 1:
   21628              :           if (!ix86_carry_flag_unset_operator (operands[2], E_QImode)
   21629              :               || !nonimmediate_operand (operands[1], E_QImode)
   21630              :               || !
   21631              : #line 9195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21632              : (TARGET_APX_NDD))
   21633              :             return -1;
   21634              :           return 494; /* *addqi3_carry_zextsi_0r */
   21635              : 
   21636              :         case 2:
   21637              :           if (!ix86_carry_flag_unset_operator (operands[2], E_HImode)
   21638              :               || !nonimmediate_operand (operands[1], E_HImode)
   21639              :               || !
   21640              : #line 9209 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21641              : (TARGET_APX_NDD))
   21642              :             return -1;
   21643              :           return 496; /* *addhi3_carry_zextsi_0r */
   21644              : 
   21645              :         case 3:
   21646              :           if (!ix86_carry_flag_unset_operator (operands[2], E_QImode)
   21647              :               || !nonimmediate_operand (operands[1], E_QImode)
   21648              :               || !
   21649              : #line 9195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21650              : (TARGET_APX_NDD))
   21651              :             return -1;
   21652              :           return 495; /* *addqi3_carry_zextdi_0r */
   21653              : 
   21654              :         case 4:
   21655              :           if (!ix86_carry_flag_unset_operator (operands[2], E_HImode)
   21656              :               || !nonimmediate_operand (operands[1], E_HImode)
   21657              :               || !
   21658              : #line 9209 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21659              : (TARGET_APX_NDD))
   21660              :             return -1;
   21661              :           return 497; /* *addhi3_carry_zextdi_0r */
   21662              : 
   21663              :         case 5:
   21664              :           if (!ix86_carry_flag_unset_operator (operands[2], E_SImode)
   21665              :               || !nonimmediate_operand (operands[1], E_SImode)
   21666              :               || !
   21667              : #line 9223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21668              : (TARGET_64BIT))
   21669              :             return -1;
   21670              :           return 498; /* *addsi3_carry_zext_0r */
   21671              : 
   21672              :         default:
   21673              :           return -1;
   21674              :         }
   21675              : 
   21676              :     case UNSPEC:
   21677              :       if (pattern1166 (x5) != 0
   21678              :           || !register_operand (operands[0], E_DImode)
   21679              :           || GET_MODE (x3) != E_DImode
   21680              :           || GET_MODE (x4) != E_SImode)
   21681              :         return -1;
   21682              :       x6 = XEXP (x4, 1);
   21683              :       operands[1] = x6;
   21684              :       if (!register_operand (operands[1], E_SImode)
   21685              :           || !
   21686              : #line 23538 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21687              : (TARGET_X32))
   21688              :         return -1;
   21689              :       return 1689; /* *add_tp_x32_zext */
   21690              : 
   21691              :     default:
   21692              :       return -1;
   21693              :     }
   21694              : }
   21695              : 
   21696              :  int
   21697              : recog_387 (rtx x1 ATTRIBUTE_UNUSED,
   21698              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21699              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21700              : {
   21701              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21702              :   rtx x2, x3, x4, x5, x6, x7, x8;
   21703              :   int res ATTRIBUTE_UNUSED;
   21704              :   x2 = XVECEXP (x1, 0, 0);
   21705              :   x3 = XEXP (x2, 1);
   21706              :   x4 = XEXP (x3, 1);
   21707              :   if (XWINT (x4, 0) != 0L)
   21708              :     return -1;
   21709              :   x5 = XVECEXP (x1, 0, 1);
   21710              :   switch (GET_CODE (x5))
   21711              :     {
   21712              :     case SET:
   21713              :       x6 = XEXP (x5, 0);
   21714              :       operands[0] = x6;
   21715              :       x7 = XEXP (x5, 1);
   21716              :       switch (GET_CODE (x7))
   21717              :         {
   21718              :         case PLUS:
   21719              :           switch (pattern1496 (x1))
   21720              :             {
   21721              :             case 0:
   21722              :               if (!
   21723              : #line 7255 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21724              : (ix86_match_ccmode (insn, CCGOCmode)
   21725              :    && ix86_binary_operator_ok (PLUS, QImode, operands, TARGET_APX_NDD)))
   21726              :                 return -1;
   21727              :               return 313; /* *addqi_2 */
   21728              : 
   21729              :             case 1:
   21730              :               if (!
   21731              : #line 7255 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21732              : (ix86_match_ccmode (insn, CCGOCmode)
   21733              :    && ix86_binary_operator_ok (PLUS, HImode, operands, TARGET_APX_NDD)))
   21734              :                 return -1;
   21735              :               return 314; /* *addhi_2 */
   21736              : 
   21737              :             case 2:
   21738              :               if (!
   21739              : #line 7255 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21740              : (ix86_match_ccmode (insn, CCGOCmode)
   21741              :    && ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
   21742              :                 return -1;
   21743              :               return 315; /* *addsi_2 */
   21744              : 
   21745              :             case 3:
   21746              :               if (!(
   21747              : #line 7255 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21748              : (ix86_match_ccmode (insn, CCGOCmode)
   21749              :    && ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)) && 
   21750              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21751              : (TARGET_64BIT)))
   21752              :                 return -1;
   21753              :               return 316; /* *adddi_2 */
   21754              : 
   21755              :             default:
   21756              :               return -1;
   21757              :             }
   21758              : 
   21759              :         case ZERO_EXTEND:
   21760              :           if (pattern1436 (x1, 
   21761              : PLUS) != 0
   21762              :               || !
   21763              : #line 7305 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21764              : (TARGET_64BIT && ix86_match_ccmode (insn, CCGOCmode)
   21765              :    && ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
   21766              :             return -1;
   21767              :           return 317; /* *addsi_2_zext */
   21768              : 
   21769              :         default:
   21770              :           return -1;
   21771              :         }
   21772              : 
   21773              :     case CLOBBER:
   21774              :       x6 = XEXP (x5, 0);
   21775              :       operands[0] = x6;
   21776              :       x8 = XEXP (x3, 0);
   21777              :       switch (pattern1329 (x8))
   21778              :         {
   21779              :         case 0:
   21780              :           if (!
   21781              : #line 7537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21782              : (ix86_match_ccmode (insn, CCGOCmode)
   21783              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21784              :             return -1;
   21785              :           return 327; /* *addqi_5 */
   21786              : 
   21787              :         case 1:
   21788              :           if (!
   21789              : #line 7537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21790              : (ix86_match_ccmode (insn, CCGOCmode)
   21791              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21792              :             return -1;
   21793              :           return 328; /* *addhi_5 */
   21794              : 
   21795              :         case 2:
   21796              :           if (!
   21797              : #line 7537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21798              : (ix86_match_ccmode (insn, CCGOCmode)
   21799              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21800              :             return -1;
   21801              :           return 329; /* *addsi_5 */
   21802              : 
   21803              :         case 3:
   21804              :           if (!(
   21805              : #line 7537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21806              : (ix86_match_ccmode (insn, CCGOCmode)
   21807              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21808              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21809              : (TARGET_64BIT)))
   21810              :             return -1;
   21811              :           return 330; /* *adddi_5 */
   21812              : 
   21813              :         default:
   21814              :           return -1;
   21815              :         }
   21816              : 
   21817              :     default:
   21818              :       return -1;
   21819              :     }
   21820              : }
   21821              : 
   21822              :  int
   21823              : recog_391 (rtx x1 ATTRIBUTE_UNUSED,
   21824              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21825              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21826              : {
   21827              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21828              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   21829              :   rtx x10, x11;
   21830              :   int res ATTRIBUTE_UNUSED;
   21831              :   x2 = XVECEXP (x1, 0, 0);
   21832              :   x3 = XEXP (x2, 0);
   21833              :   if (GET_CODE (x3) != REG
   21834              :       || REGNO (x3) != 17)
   21835              :     return -1;
   21836              :   x4 = XVECEXP (x1, 0, 1);
   21837              :   if (GET_CODE (x4) != SET)
   21838              :     return -1;
   21839              :   x5 = XEXP (x2, 1);
   21840              :   x6 = XEXP (x5, 0);
   21841              :   x7 = XEXP (x6, 1);
   21842              :   operands[2] = x7;
   21843              :   x8 = XEXP (x4, 0);
   21844              :   operands[0] = x8;
   21845              :   x9 = XEXP (x4, 1);
   21846              :   switch (GET_CODE (x9))
   21847              :     {
   21848              :     case AND:
   21849              :       x10 = XEXP (x9, 0);
   21850              :       if (!rtx_equal_p (x10, operands[1]))
   21851              :         return -1;
   21852              :       x11 = XEXP (x9, 1);
   21853              :       if (!rtx_equal_p (x11, operands[2]))
   21854              :         return -1;
   21855              :       switch (GET_MODE (x6))
   21856              :         {
   21857              :         case E_DImode:
   21858              :           if (!nonimmediate_operand (operands[1], E_DImode)
   21859              :               || !x86_64_szext_general_operand (operands[2], E_DImode)
   21860              :               || !nonimmediate_operand (operands[0], E_DImode)
   21861              :               || GET_MODE (x9) != E_DImode
   21862              :               || !
   21863              : #line 13328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21864              : (TARGET_64BIT
   21865              :    && ix86_match_ccmode
   21866              :         (insn,
   21867              :          /* If we are going to emit andl instead of andq, and the operands[2]
   21868              :             constant might have the SImode sign bit set, make sure the sign
   21869              :             flag isn't tested, because the instruction will set the sign flag
   21870              :             based on bit 31 rather than bit 63.  If it isn't CONST_INT,
   21871              :             conservatively assume it might have bit 31 set.  */
   21872              :          (satisfies_constraint_Z (operands[2])
   21873              :           && (!CONST_INT_P (operands[2])
   21874              :               || val_signbit_known_set_p (SImode, INTVAL (operands[2]))))
   21875              :          ? CCZmode : CCNOmode)
   21876              :    && ix86_binary_operator_ok (AND, DImode, operands, TARGET_APX_NDD)))
   21877              :             return -1;
   21878              :           return 777; /* *anddi_2 */
   21879              : 
   21880              :         case E_QImode:
   21881              :           if (pattern1438 (x9, 
   21882              : E_QImode) != 0)
   21883              :             return -1;
   21884              :           if (
   21885              : #line 13379 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21886              : (ix86_binary_operator_ok (AND, QImode, operands, TARGET_APX_NDD)
   21887              :    && ix86_match_ccmode (insn,
   21888              :                          CONST_INT_P (operands[2])
   21889              :                          && INTVAL (operands[2]) >= 0 ? CCNOmode : CCZmode)))
   21890              :             return 779; /* *andqi_2_maybe_si */
   21891              :           if (!
   21892              : #line 13421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21893              : (ix86_match_ccmode (insn, CCNOmode)
   21894              :    && ix86_binary_operator_ok (AND, QImode, operands, TARGET_APX_NDD)))
   21895              :             return -1;
   21896              :           return 780; /* *andqi_2 */
   21897              : 
   21898              :         case E_HImode:
   21899              :           if (pattern1438 (x9, 
   21900              : E_HImode) != 0
   21901              :               || !
   21902              : #line 13421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21903              : (ix86_match_ccmode (insn, CCNOmode)
   21904              :    && ix86_binary_operator_ok (AND, HImode, operands, TARGET_APX_NDD)))
   21905              :             return -1;
   21906              :           return 781; /* *andhi_2 */
   21907              : 
   21908              :         case E_SImode:
   21909              :           if (pattern1439 (x9, 
   21910              : E_SImode) != 0
   21911              :               || !
   21912              : #line 13421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21913              : (ix86_match_ccmode (insn, CCNOmode)
   21914              :    && ix86_binary_operator_ok (AND, SImode, operands, TARGET_APX_NDD)))
   21915              :             return -1;
   21916              :           return 782; /* *andsi_2 */
   21917              : 
   21918              :         default:
   21919              :           return -1;
   21920              :         }
   21921              : 
   21922              :     case ZERO_EXTEND:
   21923              :       if (pattern1436 (x1, 
   21924              : AND) != 0
   21925              :           || !
   21926              : #line 13361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21927              : (TARGET_64BIT && ix86_match_ccmode (insn, CCNOmode)
   21928              :    && ix86_binary_operator_ok (AND, SImode, operands, TARGET_APX_NDD)))
   21929              :         return -1;
   21930              :       return 778; /* *andsi_2_zext */
   21931              : 
   21932              :     default:
   21933              :       return -1;
   21934              :     }
   21935              : }
   21936              : 
   21937              :  int
   21938              : recog_394 (rtx x1 ATTRIBUTE_UNUSED,
   21939              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21940              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21941              : {
   21942              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21943              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   21944              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   21945              :   rtx x18;
   21946              :   int res ATTRIBUTE_UNUSED;
   21947              :   if (pattern232 (x1) != 0)
   21948              :     return -1;
   21949              :   x2 = XVECEXP (x1, 0, 0);
   21950              :   x3 = XEXP (x2, 1);
   21951              :   x4 = XEXP (x3, 0);
   21952              :   x5 = XEXP (x4, 0);
   21953              :   switch (GET_CODE (x5))
   21954              :     {
   21955              :     case REG:
   21956              :     case SUBREG:
   21957              :     case MEM:
   21958              :       operands[1] = x5;
   21959              :       x6 = XEXP (x4, 1);
   21960              :       operands[2] = x6;
   21961              :       x7 = XVECEXP (x1, 0, 1);
   21962              :       x8 = XEXP (x7, 0);
   21963              :       operands[0] = x8;
   21964              :       switch (GET_CODE (operands[2]))
   21965              :         {
   21966              :         case CONST_INT:
   21967              :         case CONST_WIDE_INT:
   21968              :         case CONST_POLY_INT:
   21969              :         case CONST_FIXED:
   21970              :         case CONST_DOUBLE:
   21971              :         case CONST_VECTOR:
   21972              :         case CONST:
   21973              :         case REG:
   21974              :         case SUBREG:
   21975              :         case MEM:
   21976              :         case LABEL_REF:
   21977              :         case SYMBOL_REF:
   21978              :         case HIGH:
   21979              :           x9 = XEXP (x7, 1);
   21980              :           switch (GET_CODE (x9))
   21981              :             {
   21982              :             case MINUS:
   21983              :               switch (pattern1496 (x1))
   21984              :                 {
   21985              :                 case 0:
   21986              :                   if (!
   21987              : #line 8385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21988              : (ix86_match_ccmode (insn, CCGOCmode)
   21989              :    && ix86_binary_operator_ok (MINUS, QImode, operands, TARGET_APX_NDD)))
   21990              :                     return -1;
   21991              :                   return 415; /* *subqi_2 */
   21992              : 
   21993              :                 case 1:
   21994              :                   if (!
   21995              : #line 8385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21996              : (ix86_match_ccmode (insn, CCGOCmode)
   21997              :    && ix86_binary_operator_ok (MINUS, HImode, operands, TARGET_APX_NDD)))
   21998              :                     return -1;
   21999              :                   return 416; /* *subhi_2 */
   22000              : 
   22001              :                 case 2:
   22002              :                   if (!
   22003              : #line 8385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22004              : (ix86_match_ccmode (insn, CCGOCmode)
   22005              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
   22006              :                     return -1;
   22007              :                   return 417; /* *subsi_2 */
   22008              : 
   22009              :                 case 3:
   22010              :                   if (!(
   22011              : #line 8385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22012              : (ix86_match_ccmode (insn, CCGOCmode)
   22013              :    && ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)) && 
   22014              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22015              : (TARGET_64BIT)))
   22016              :                     return -1;
   22017              :                   return 418; /* *subdi_2 */
   22018              : 
   22019              :                 default:
   22020              :                   return -1;
   22021              :                 }
   22022              : 
   22023              :             case ZERO_EXTEND:
   22024              :               if (pattern1436 (x1, 
   22025              : MINUS) != 0
   22026              :                   || !
   22027              : #line 8406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22028              : (TARGET_64BIT && ix86_match_ccmode (insn, CCGOCmode)
   22029              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
   22030              :                 return -1;
   22031              :               return 419; /* *subsi_2_zext */
   22032              : 
   22033              :             default:
   22034              :               return -1;
   22035              :             }
   22036              : 
   22037              :         case LTU:
   22038              :         case UNLT:
   22039              :           x10 = XEXP (x6, 1);
   22040              :           if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   22041              :             return -1;
   22042              :           x9 = XEXP (x7, 1);
   22043              :           if (GET_CODE (x9) != MINUS)
   22044              :             return -1;
   22045              :           x11 = XEXP (x9, 1);
   22046              :           switch (GET_CODE (x11))
   22047              :             {
   22048              :             case LTU:
   22049              :             case UNLT:
   22050              :               switch (pattern1569 (x1))
   22051              :                 {
   22052              :                 case 0:
   22053              :                   if (pattern1772 (x9, 
   22054              : E_QImode) != 0
   22055              :                       || !
   22056              : #line 9707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22057              : (ix86_match_ccmode (insn, CCGOCmode)
   22058              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1]))))
   22059              :                     return -1;
   22060              :                   return 515; /* *subqi3_carry_0_cc */
   22061              : 
   22062              :                 case 1:
   22063              :                   if (pattern1772 (x9, 
   22064              : E_HImode) != 0
   22065              :                       || !
   22066              : #line 9707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22067              : (ix86_match_ccmode (insn, CCGOCmode)
   22068              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1]))))
   22069              :                     return -1;
   22070              :                   return 516; /* *subhi3_carry_0_cc */
   22071              : 
   22072              :                 case 2:
   22073              :                   if (pattern1772 (x9, 
   22074              : E_SImode) != 0
   22075              :                       || !
   22076              : #line 9707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22077              : (ix86_match_ccmode (insn, CCGOCmode)
   22078              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1]))))
   22079              :                     return -1;
   22080              :                   return 517; /* *subsi3_carry_0_cc */
   22081              : 
   22082              :                 case 3:
   22083              :                   if (pattern1772 (x9, 
   22084              : E_DImode) != 0
   22085              :                       || !(
   22086              : #line 9707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22087              : (ix86_match_ccmode (insn, CCGOCmode)
   22088              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1]))) && 
   22089              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22090              : (TARGET_64BIT)))
   22091              :                     return -1;
   22092              :                   return 518; /* *subdi3_carry_0_cc */
   22093              : 
   22094              :                 default:
   22095              :                   return -1;
   22096              :                 }
   22097              : 
   22098              :             default:
   22099              :               return -1;
   22100              :             }
   22101              : 
   22102              :         case GE:
   22103              :         case GEU:
   22104              :           x10 = XEXP (x6, 1);
   22105              :           if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   22106              :             return -1;
   22107              :           x9 = XEXP (x7, 1);
   22108              :           if (GET_CODE (x9) != MINUS)
   22109              :             return -1;
   22110              :           x11 = XEXP (x9, 1);
   22111              :           switch (GET_CODE (x11))
   22112              :             {
   22113              :             case GE:
   22114              :             case GEU:
   22115              :               switch (pattern1569 (x1))
   22116              :                 {
   22117              :                 case 0:
   22118              :                   if (pattern1773 (x9, 
   22119              : E_QImode) != 0
   22120              :                       || !
   22121              : #line 9741 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22122              : (ix86_match_ccmode (insn, CCGOCmode)
   22123              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1]))))
   22124              :                     return -1;
   22125              :                   return 523; /* *subqi3_carry_0r_cc */
   22126              : 
   22127              :                 case 1:
   22128              :                   if (pattern1773 (x9, 
   22129              : E_HImode) != 0
   22130              :                       || !
   22131              : #line 9741 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22132              : (ix86_match_ccmode (insn, CCGOCmode)
   22133              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1]))))
   22134              :                     return -1;
   22135              :                   return 524; /* *subhi3_carry_0r_cc */
   22136              : 
   22137              :                 case 2:
   22138              :                   if (pattern1773 (x9, 
   22139              : E_SImode) != 0
   22140              :                       || !
   22141              : #line 9741 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22142              : (ix86_match_ccmode (insn, CCGOCmode)
   22143              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1]))))
   22144              :                     return -1;
   22145              :                   return 525; /* *subsi3_carry_0r_cc */
   22146              : 
   22147              :                 case 3:
   22148              :                   if (pattern1773 (x9, 
   22149              : E_DImode) != 0
   22150              :                       || !(
   22151              : #line 9741 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22152              : (ix86_match_ccmode (insn, CCGOCmode)
   22153              :    && (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1]))) && 
   22154              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22155              : (TARGET_64BIT)))
   22156              :                     return -1;
   22157              :                   return 526; /* *subdi3_carry_0r_cc */
   22158              : 
   22159              :                 default:
   22160              :                   return -1;
   22161              :                 }
   22162              : 
   22163              :             default:
   22164              :               return -1;
   22165              :             }
   22166              : 
   22167              :         default:
   22168              :           return -1;
   22169              :         }
   22170              : 
   22171              :     case MINUS:
   22172              :       x12 = XEXP (x5, 1);
   22173              :       switch (GET_CODE (x12))
   22174              :         {
   22175              :         case LTU:
   22176              :         case UNLT:
   22177              :           operands[4] = x12;
   22178              :           x13 = XEXP (x12, 1);
   22179              :           if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   22180              :             return -1;
   22181              :           x7 = XVECEXP (x1, 0, 1);
   22182              :           x9 = XEXP (x7, 1);
   22183              :           if (GET_CODE (x9) != MINUS)
   22184              :             return -1;
   22185              :           x14 = XEXP (x9, 0);
   22186              :           if (GET_CODE (x14) != MINUS)
   22187              :             return -1;
   22188              :           x15 = XEXP (x14, 1);
   22189              :           switch (GET_CODE (x15))
   22190              :             {
   22191              :             case LTU:
   22192              :             case UNLT:
   22193              :               if (!rtx_equal_p (x15, operands[4]))
   22194              :                 return -1;
   22195              :               x16 = XEXP (x5, 0);
   22196              :               operands[1] = x16;
   22197              :               x17 = XEXP (x12, 0);
   22198              :               operands[3] = x17;
   22199              :               if (!flags_reg_operand (operands[3], E_VOIDmode))
   22200              :                 return -1;
   22201              :               x6 = XEXP (x4, 1);
   22202              :               operands[2] = x6;
   22203              :               x8 = XEXP (x7, 0);
   22204              :               operands[0] = x8;
   22205              :               x18 = XEXP (x14, 0);
   22206              :               if (!rtx_equal_p (x18, operands[1]))
   22207              :                 return -1;
   22208              :               x11 = XEXP (x9, 1);
   22209              :               if (!rtx_equal_p (x11, operands[2]))
   22210              :                 return -1;
   22211              :               switch (GET_MODE (x4))
   22212              :                 {
   22213              :                 case E_QImode:
   22214              :                   if (pattern1821 (x1, 
   22215              : E_QImode) != 0
   22216              :                       || !
   22217              : #line 9668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22218              : (ix86_match_ccmode (insn, CCGOCmode)
   22219              :    && ix86_binary_operator_ok (MINUS, QImode, operands, TARGET_APX_NDD)))
   22220              :                     return -1;
   22221              :                   return 507; /* *subqi3_carry_2 */
   22222              : 
   22223              :                 case E_HImode:
   22224              :                   if (pattern1821 (x1, 
   22225              : E_HImode) != 0
   22226              :                       || !
   22227              : #line 9668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22228              : (ix86_match_ccmode (insn, CCGOCmode)
   22229              :    && ix86_binary_operator_ok (MINUS, HImode, operands, TARGET_APX_NDD)))
   22230              :                     return -1;
   22231              :                   return 508; /* *subhi3_carry_2 */
   22232              : 
   22233              :                 case E_SImode:
   22234              :                   if (pattern1822 (x1, 
   22235              : E_SImode) != 0
   22236              :                       || !
   22237              : #line 9668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22238              : (ix86_match_ccmode (insn, CCGOCmode)
   22239              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
   22240              :                     return -1;
   22241              :                   return 509; /* *subsi3_carry_2 */
   22242              : 
   22243              :                 case E_DImode:
   22244              :                   if (pattern1822 (x1, 
   22245              : E_DImode) != 0
   22246              :                       || !(
   22247              : #line 9668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22248              : (ix86_match_ccmode (insn, CCGOCmode)
   22249              :    && ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)) && 
   22250              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22251              : (TARGET_64BIT)))
   22252              :                     return -1;
   22253              :                   return 510; /* *subdi3_carry_2 */
   22254              : 
   22255              :                 default:
   22256              :                   return -1;
   22257              :                 }
   22258              : 
   22259              :             default:
   22260              :               return -1;
   22261              :             }
   22262              : 
   22263              :         default:
   22264              :           return -1;
   22265              :         }
   22266              : 
   22267              :     case UNSPEC_VOLATILE:
   22268              :       if (XVECLEN (x5, 0) != 2
   22269              :           || XINT (x5, 1) != 110)
   22270              :         return -1;
   22271              :       switch (pattern1247 (x1, 
   22272              : MINUS))
   22273              :         {
   22274              :         case 0:
   22275              :           return 11144; /* atomic_sub_fetch_cmp_0qi_1 */
   22276              : 
   22277              :         case 1:
   22278              :           return 11145; /* atomic_sub_fetch_cmp_0hi_1 */
   22279              : 
   22280              :         case 2:
   22281              :           return 11146; /* atomic_sub_fetch_cmp_0si_1 */
   22282              : 
   22283              :         case 3:
   22284              :           if (!
   22285              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22286              : (TARGET_64BIT))
   22287              :             return -1;
   22288              :           return 11147; /* atomic_sub_fetch_cmp_0di_1 */
   22289              : 
   22290              :         default:
   22291              :           return -1;
   22292              :         }
   22293              : 
   22294              :     default:
   22295              :       return -1;
   22296              :     }
   22297              : }
   22298              : 
   22299              :  int
   22300              : recog_398 (rtx x1 ATTRIBUTE_UNUSED,
   22301              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22302              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22303              : {
   22304              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22305              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   22306              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   22307              :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
   22308              :   rtx x26, x27, x28, x29, x30;
   22309              :   int res ATTRIBUTE_UNUSED;
   22310              :   x2 = XVECEXP (x1, 0, 0);
   22311              :   x3 = XEXP (x2, 1);
   22312              :   x4 = XEXP (x3, 0);
   22313              :   switch (GET_CODE (x4))
   22314              :     {
   22315              :     case PLUS:
   22316              :       return recog_393 (x1, insn, pnum_clobbers);
   22317              : 
   22318              :     case NEG:
   22319              :       x5 = XEXP (x2, 0);
   22320              :       if (GET_CODE (x5) != REG
   22321              :           || REGNO (x5) != 17)
   22322              :         return -1;
   22323              :       x6 = XEXP (x3, 1);
   22324              :       switch (GET_CODE (x6))
   22325              :         {
   22326              :         case REG:
   22327              :         case SUBREG:
   22328              :         case MEM:
   22329              :           operands[1] = x6;
   22330              :           x7 = XEXP (x4, 0);
   22331              :           operands[2] = x7;
   22332              :           x8 = XVECEXP (x1, 0, 1);
   22333              :           switch (GET_CODE (x8))
   22334              :             {
   22335              :             case CLOBBER:
   22336              :               x9 = XEXP (x8, 0);
   22337              :               operands[0] = x9;
   22338              :               switch (GET_MODE (x4))
   22339              :                 {
   22340              :                 case E_QImode:
   22341              :                   if (!general_operand (operands[2], E_QImode)
   22342              :                       || !nonimmediate_operand (operands[1], E_QImode)
   22343              :                       || !scratch_operand (operands[0], E_QImode)
   22344              :                       || !
   22345              : #line 7352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22346              : (ix86_match_ccmode (insn, CCZmode)
   22347              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22348              :                     return -1;
   22349              :                   return 318; /* *addqi_3 */
   22350              : 
   22351              :                 case E_HImode:
   22352              :                   if (!general_operand (operands[2], E_HImode)
   22353              :                       || !nonimmediate_operand (operands[1], E_HImode)
   22354              :                       || !scratch_operand (operands[0], E_HImode)
   22355              :                       || !
   22356              : #line 7352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22357              : (ix86_match_ccmode (insn, CCZmode)
   22358              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22359              :                     return -1;
   22360              :                   return 319; /* *addhi_3 */
   22361              : 
   22362              :                 case E_SImode:
   22363              :                   if (!x86_64_general_operand (operands[2], E_SImode)
   22364              :                       || !nonimmediate_operand (operands[1], E_SImode)
   22365              :                       || !scratch_operand (operands[0], E_SImode)
   22366              :                       || !
   22367              : #line 7352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22368              : (ix86_match_ccmode (insn, CCZmode)
   22369              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22370              :                     return -1;
   22371              :                   return 320; /* *addsi_3 */
   22372              : 
   22373              :                 case E_DImode:
   22374              :                   if (!x86_64_general_operand (operands[2], E_DImode)
   22375              :                       || !nonimmediate_operand (operands[1], E_DImode)
   22376              :                       || !scratch_operand (operands[0], E_DImode)
   22377              :                       || !(
   22378              : #line 7352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22379              : (ix86_match_ccmode (insn, CCZmode)
   22380              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   22381              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22382              : (TARGET_64BIT)))
   22383              :                     return -1;
   22384              :                   return 321; /* *adddi_3 */
   22385              : 
   22386              :                 default:
   22387              :                   return -1;
   22388              :                 }
   22389              : 
   22390              :             case SET:
   22391              :               x10 = XEXP (x8, 1);
   22392              :               if (GET_CODE (x10) != ZERO_EXTEND
   22393              :                   || pattern1248 (x1, 
   22394              : PLUS) != 0
   22395              :                   || !x86_64_general_operand (operands[2], E_SImode)
   22396              :                   || !nonimmediate_operand (operands[1], E_SImode))
   22397              :                 return -1;
   22398              :               x9 = XEXP (x8, 0);
   22399              :               operands[0] = x9;
   22400              :               if (!register_operand (operands[0], E_DImode))
   22401              :                 return -1;
   22402              :               x11 = XEXP (x10, 0);
   22403              :               x12 = XEXP (x11, 0);
   22404              :               if (!rtx_equal_p (x12, operands[1]))
   22405              :                 return -1;
   22406              :               x13 = XEXP (x11, 1);
   22407              :               if (!rtx_equal_p (x13, operands[2])
   22408              :                   || !
   22409              : #line 7401 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22410              : (TARGET_64BIT && ix86_match_ccmode (insn, CCZmode)
   22411              :    && ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
   22412              :                 return -1;
   22413              :               return 322; /* *addsi_3_zext */
   22414              : 
   22415              :             default:
   22416              :               return -1;
   22417              :             }
   22418              : 
   22419              :         case CONST_INT:
   22420              :           if (XWINT (x6, 0) != 0L)
   22421              :             return -1;
   22422              :           x8 = XVECEXP (x1, 0, 1);
   22423              :           if (GET_CODE (x8) != SET)
   22424              :             return -1;
   22425              :           x7 = XEXP (x4, 0);
   22426              :           operands[1] = x7;
   22427              :           x9 = XEXP (x8, 0);
   22428              :           operands[0] = x9;
   22429              :           x10 = XEXP (x8, 1);
   22430              :           switch (GET_CODE (x10))
   22431              :             {
   22432              :             case NEG:
   22433              :               switch (pattern1250 (x1))
   22434              :                 {
   22435              :                 case 0:
   22436              :                   if (!
   22437              : #line 14839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22438              : (ix86_match_ccmode (insn, CCGOCmode)
   22439              :    && ix86_unary_operator_ok (NEG, QImode, operands, TARGET_APX_NDD)))
   22440              :                     return -1;
   22441              :                   return 1007; /* *negqi_2 */
   22442              : 
   22443              :                 case 1:
   22444              :                   if (!
   22445              : #line 14839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22446              : (ix86_match_ccmode (insn, CCGOCmode)
   22447              :    && ix86_unary_operator_ok (NEG, HImode, operands, TARGET_APX_NDD)))
   22448              :                     return -1;
   22449              :                   return 1008; /* *neghi_2 */
   22450              : 
   22451              :                 case 2:
   22452              :                   if (!
   22453              : #line 14839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22454              : (ix86_match_ccmode (insn, CCGOCmode)
   22455              :    && ix86_unary_operator_ok (NEG, SImode, operands, TARGET_APX_NDD)))
   22456              :                     return -1;
   22457              :                   return 1009; /* *negsi_2 */
   22458              : 
   22459              :                 case 3:
   22460              :                   if (!(
   22461              : #line 14839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22462              : (ix86_match_ccmode (insn, CCGOCmode)
   22463              :    && ix86_unary_operator_ok (NEG, DImode, operands, TARGET_APX_NDD)) && 
   22464              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22465              : (TARGET_64BIT)))
   22466              :                     return -1;
   22467              :                   return 1010; /* *negdi_2 */
   22468              : 
   22469              :                 default:
   22470              :                   return -1;
   22471              :                 }
   22472              : 
   22473              :             case ZERO_EXTEND:
   22474              :               if (pattern1251 (x1, 
   22475              : NEG) != 0
   22476              :                   || !
   22477              : #line 14856 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22478              : (TARGET_64BIT && ix86_match_ccmode (insn, CCGOCmode)
   22479              :    && ix86_unary_operator_ok (NEG, SImode, operands, TARGET_APX_NDD)))
   22480              :                 return -1;
   22481              :               return 1011; /* *negsi_2_zext */
   22482              : 
   22483              :             default:
   22484              :               return -1;
   22485              :             }
   22486              : 
   22487              :         default:
   22488              :           return -1;
   22489              :         }
   22490              : 
   22491              :     case REG:
   22492              :     case SUBREG:
   22493              :     case MEM:
   22494              :       operands[1] = x4;
   22495              :       x5 = XEXP (x2, 0);
   22496              :       if (GET_CODE (x5) != REG
   22497              :           || REGNO (x5) != 17)
   22498              :         return -1;
   22499              :       x6 = XEXP (x3, 1);
   22500              :       operands[2] = x6;
   22501              :       res = recog_389 (x1, insn, pnum_clobbers);
   22502              :       if (res >= 0)
   22503              :         return res;
   22504              :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   22505              :         return -1;
   22506              :       x8 = XVECEXP (x1, 0, 1);
   22507              :       if (GET_CODE (x8) != SET)
   22508              :         return -1;
   22509              :       x9 = XEXP (x8, 0);
   22510              :       operands[0] = x9;
   22511              :       x10 = XEXP (x8, 1);
   22512              :       switch (GET_CODE (x10))
   22513              :         {
   22514              :         case CTZ:
   22515              :           x11 = XEXP (x10, 0);
   22516              :           if (!rtx_equal_p (x11, operands[1]))
   22517              :             return -1;
   22518              :           switch (GET_MODE (x5))
   22519              :             {
   22520              :             case E_CCCmode:
   22521              :               if (GET_MODE (x3) != E_CCCmode)
   22522              :                 return -1;
   22523              :               switch (pattern1499 (x10))
   22524              :                 {
   22525              :                 case 0:
   22526              :                   if (!
   22527              : #line 21263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22528              : (TARGET_BMI))
   22529              :                     return -1;
   22530              :                   return 1532; /* *tzcntsi_1 */
   22531              : 
   22532              :                 case 1:
   22533              :                   if (!(
   22534              : #line 21263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22535              : (TARGET_BMI) && 
   22536              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22537              : (TARGET_64BIT)))
   22538              :                     return -1;
   22539              :                   return 1533; /* *tzcntdi_1 */
   22540              : 
   22541              :                 default:
   22542              :                   return -1;
   22543              :                 }
   22544              : 
   22545              :             case E_CCZmode:
   22546              :               if (GET_MODE (x3) != E_CCZmode)
   22547              :                 return -1;
   22548              :               switch (pattern1499 (x10))
   22549              :                 {
   22550              :                 case 0:
   22551              :                   return 1536; /* *bsfsi_1 */
   22552              : 
   22553              :                 case 1:
   22554              :                   if (!
   22555              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22556              : (TARGET_64BIT))
   22557              :                     return -1;
   22558              :                   return 1537; /* *bsfdi_1 */
   22559              : 
   22560              :                 default:
   22561              :                   return -1;
   22562              :                 }
   22563              : 
   22564              :             default:
   22565              :               return -1;
   22566              :             }
   22567              : 
   22568              :         case MINUS:
   22569              :           x11 = XEXP (x10, 0);
   22570              :           if (GET_CODE (x11) != CONST_INT)
   22571              :             return -1;
   22572              :           x14 = XEXP (x10, 1);
   22573              :           if (GET_CODE (x14) != CLZ
   22574              :               || GET_MODE (x5) != E_CCZmode
   22575              :               || GET_MODE (x3) != E_CCZmode)
   22576              :             return -1;
   22577              :           x15 = XEXP (x14, 0);
   22578              :           if (!rtx_equal_p (x15, operands[1]))
   22579              :             return -1;
   22580              :           switch (XWINT (x11, 0))
   22581              :             {
   22582              :             case 63L:
   22583              :               if (pattern1638 (x10, 
   22584              : E_DImode) != 0
   22585              :                   || !
   22586              : #line 21498 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22587              : (TARGET_64BIT))
   22588              :                 return -1;
   22589              :               return 1548; /* bsr_rex64 */
   22590              : 
   22591              :             case 31L:
   22592              :               if (pattern1638 (x10, 
   22593              : E_SImode) != 0)
   22594              :                 return -1;
   22595              :               return 1551; /* bsr */
   22596              : 
   22597              :             default:
   22598              :               return -1;
   22599              :             }
   22600              : 
   22601              :         default:
   22602              :           return -1;
   22603              :         }
   22604              : 
   22605              :     case MINUS:
   22606              :       return recog_394 (x1, insn, pnum_clobbers);
   22607              : 
   22608              :     case ZERO_EXTEND:
   22609              :       return recog_395 (x1, insn, pnum_clobbers);
   22610              : 
   22611              :     case AND:
   22612              :       return recog_397 (x1, insn, pnum_clobbers);
   22613              : 
   22614              :     case IOR:
   22615              :       return recog_396 (x1, insn, pnum_clobbers);
   22616              : 
   22617              :     case XOR:
   22618              :       switch (pattern370 (x1, 
   22619              : XOR))
   22620              :         {
   22621              :         case 0:
   22622              :           if (general_operand (operands[2], E_QImode))
   22623              :             {
   22624              :               switch (pattern953 (x1, 
   22625              : XOR))
   22626              :                 {
   22627              :                 case 0:
   22628              :                   if (
   22629              : #line 13547 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22630              : (ix86_match_ccmode (insn, CCNOmode)))
   22631              :                     return 812; /* *xorqi_exthi_1_cc */
   22632              :                   break;
   22633              : 
   22634              :                 case 1:
   22635              :                   if (
   22636              : #line 13547 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22637              : (ix86_match_ccmode (insn, CCNOmode)))
   22638              :                     return 815; /* *xorqi_extsi_1_cc */
   22639              :                   break;
   22640              : 
   22641              :                 case 2:
   22642              :                   if ((
   22643              : #line 13547 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22644              : (ix86_match_ccmode (insn, CCNOmode)) && 
   22645              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22646              : (TARGET_64BIT)))
   22647              :                     return 818; /* *xorqi_extdi_1_cc */
   22648              :                   break;
   22649              : 
   22650              :                 default:
   22651              :                   break;
   22652              :                 }
   22653              :             }
   22654              :           x5 = XEXP (x2, 0);
   22655              :           if (GET_CODE (x5) != REG
   22656              :               || REGNO (x5) != 17)
   22657              :             return -1;
   22658              :           x7 = XEXP (x4, 0);
   22659              :           operands[1] = x7;
   22660              :           x8 = XVECEXP (x1, 0, 1);
   22661              :           switch (GET_CODE (x8))
   22662              :             {
   22663              :             case SET:
   22664              :               x9 = XEXP (x8, 0);
   22665              :               operands[0] = x9;
   22666              :               x10 = XEXP (x8, 1);
   22667              :               switch (GET_CODE (x10))
   22668              :                 {
   22669              :                 case XOR:
   22670              :                   switch (pattern1440 (x1))
   22671              :                     {
   22672              :                     case 0:
   22673              :                       if (!
   22674              : #line 14287 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22675              : (ix86_match_ccmode (insn, CCNOmode)
   22676              :    && ix86_binary_operator_ok (XOR, QImode, operands, TARGET_APX_NDD)))
   22677              :                         return -1;
   22678              :                       return 901; /* *xorqi_2 */
   22679              : 
   22680              :                     case 1:
   22681              :                       if (!
   22682              : #line 14287 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22683              : (ix86_match_ccmode (insn, CCNOmode)
   22684              :    && ix86_binary_operator_ok (XOR, HImode, operands, TARGET_APX_NDD)))
   22685              :                         return -1;
   22686              :                       return 903; /* *xorhi_2 */
   22687              : 
   22688              :                     case 2:
   22689              :                       if (!
   22690              : #line 14287 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22691              : (ix86_match_ccmode (insn, CCNOmode)
   22692              :    && ix86_binary_operator_ok (XOR, SImode, operands, TARGET_APX_NDD)))
   22693              :                         return -1;
   22694              :                       return 905; /* *xorsi_2 */
   22695              : 
   22696              :                     case 3:
   22697              :                       if (!(
   22698              : #line 14287 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22699              : (ix86_match_ccmode (insn, CCNOmode)
   22700              :    && ix86_binary_operator_ok (XOR, DImode, operands, TARGET_APX_NDD)) && 
   22701              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22702              : (TARGET_64BIT)))
   22703              :                         return -1;
   22704              :                       return 907; /* *xordi_2 */
   22705              : 
   22706              :                     case 4:
   22707              :                       if (!
   22708              : #line 14325 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22709              : (TARGET_64BIT && ix86_match_ccmode (insn, CCNOmode)
   22710              :    && ix86_binary_operator_ok (XOR, SImode, operands, TARGET_APX_NDD)))
   22711              :                         return -1;
   22712              :                       return 911; /* *xorsi_2_zext_imm */
   22713              : 
   22714              :                     default:
   22715              :                       return -1;
   22716              :                     }
   22717              : 
   22718              :                 case ZERO_EXTEND:
   22719              :                   if (pattern1436 (x1, 
   22720              : XOR) != 0
   22721              :                       || !
   22722              : #line 14307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22723              : (TARGET_64BIT && ix86_match_ccmode (insn, CCNOmode)
   22724              :    && ix86_binary_operator_ok (XOR, SImode, operands, TARGET_APX_NDD)))
   22725              :                     return -1;
   22726              :                   return 909; /* *xorsi_2_zext */
   22727              : 
   22728              :                 default:
   22729              :                   return -1;
   22730              :                 }
   22731              : 
   22732              :             case CLOBBER:
   22733              :               x9 = XEXP (x8, 0);
   22734              :               operands[0] = x9;
   22735              :               switch (pattern1329 (x4))
   22736              :                 {
   22737              :                 case 0:
   22738              :                   if (!
   22739              : #line 14357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22740              : (ix86_match_ccmode (insn, CCNOmode)
   22741              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22742              :                     return -1;
   22743              :                   return 917; /* *xorqi_3 */
   22744              : 
   22745              :                 case 1:
   22746              :                   if (!
   22747              : #line 14357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22748              : (ix86_match_ccmode (insn, CCNOmode)
   22749              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22750              :                     return -1;
   22751              :                   return 919; /* *xorhi_3 */
   22752              : 
   22753              :                 case 2:
   22754              :                   if (!
   22755              : #line 14357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22756              : (ix86_match_ccmode (insn, CCNOmode)
   22757              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22758              :                     return -1;
   22759              :                   return 921; /* *xorsi_3 */
   22760              : 
   22761              :                 case 3:
   22762              :                   if (!(
   22763              : #line 14357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22764              : (ix86_match_ccmode (insn, CCNOmode)
   22765              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   22766              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22767              : (TARGET_64BIT)))
   22768              :                     return -1;
   22769              :                   return 923; /* *xordi_3 */
   22770              : 
   22771              :                 default:
   22772              :                   return -1;
   22773              :                 }
   22774              : 
   22775              :             default:
   22776              :               return -1;
   22777              :             }
   22778              : 
   22779              :         case 1:
   22780              :           return 11150; /* atomic_xor_fetch_cmp_0qi_1 */
   22781              : 
   22782              :         case 2:
   22783              :           return 11153; /* atomic_xor_fetch_cmp_0hi_1 */
   22784              : 
   22785              :         case 3:
   22786              :           return 11156; /* atomic_xor_fetch_cmp_0si_1 */
   22787              : 
   22788              :         case 4:
   22789              :           if (!
   22790              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22791              : (TARGET_64BIT))
   22792              :             return -1;
   22793              :           return 11159; /* atomic_xor_fetch_cmp_0di_1 */
   22794              : 
   22795              :         default:
   22796              :           return -1;
   22797              :         }
   22798              : 
   22799              :     case NOT:
   22800              :       x6 = XEXP (x3, 1);
   22801              :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   22802              :         return -1;
   22803              :       x5 = XEXP (x2, 0);
   22804              :       if (GET_CODE (x5) != REG
   22805              :           || REGNO (x5) != 17)
   22806              :         return -1;
   22807              :       x8 = XVECEXP (x1, 0, 1);
   22808              :       if (GET_CODE (x8) != SET)
   22809              :         return -1;
   22810              :       x7 = XEXP (x4, 0);
   22811              :       operands[1] = x7;
   22812              :       x9 = XEXP (x8, 0);
   22813              :       operands[0] = x9;
   22814              :       x10 = XEXP (x8, 1);
   22815              :       switch (GET_CODE (x10))
   22816              :         {
   22817              :         case NOT:
   22818              :           switch (pattern1250 (x1))
   22819              :             {
   22820              :             case 0:
   22821              :               if (!
   22822              : #line 15509 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22823              : (ix86_match_ccmode (insn, CCNOmode)
   22824              :    && ix86_unary_operator_ok (NOT, QImode, operands, TARGET_APX_NDD)))
   22825              :                 return -1;
   22826              :               return 1076; /* *one_cmplqi2_2 */
   22827              : 
   22828              :             case 1:
   22829              :               if (!
   22830              : #line 15509 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22831              : (ix86_match_ccmode (insn, CCNOmode)
   22832              :    && ix86_unary_operator_ok (NOT, HImode, operands, TARGET_APX_NDD)))
   22833              :                 return -1;
   22834              :               return 1077; /* *one_cmplhi2_2 */
   22835              : 
   22836              :             case 2:
   22837              :               if (!
   22838              : #line 15509 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22839              : (ix86_match_ccmode (insn, CCNOmode)
   22840              :    && ix86_unary_operator_ok (NOT, SImode, operands, TARGET_APX_NDD)))
   22841              :                 return -1;
   22842              :               return 1078; /* *one_cmplsi2_2 */
   22843              : 
   22844              :             case 3:
   22845              :               if (!(
   22846              : #line 15509 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22847              : (ix86_match_ccmode (insn, CCNOmode)
   22848              :    && ix86_unary_operator_ok (NOT, DImode, operands, TARGET_APX_NDD)) && 
   22849              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22850              : (TARGET_64BIT)))
   22851              :                 return -1;
   22852              :               return 1079; /* *one_cmpldi2_2 */
   22853              : 
   22854              :             default:
   22855              :               return -1;
   22856              :             }
   22857              : 
   22858              :         case ZERO_EXTEND:
   22859              :           if (pattern1251 (x1, 
   22860              : NOT) != 0
   22861              :               || !
   22862              : #line 15536 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22863              : (TARGET_64BIT && ix86_match_ccmode (insn, CCNOmode)
   22864              :    && ix86_unary_operator_ok (NOT, SImode, operands, TARGET_APX_NDD)))
   22865              :             return -1;
   22866              :           return 1080; /* *one_cmplsi2_2_zext */
   22867              : 
   22868              :         default:
   22869              :           return -1;
   22870              :         }
   22871              : 
   22872              :     case ASHIFT:
   22873              :       switch (pattern371 (x1))
   22874              :         {
   22875              :         case 0:
   22876              :           x8 = XVECEXP (x1, 0, 1);
   22877              :           x10 = XEXP (x8, 1);
   22878              :           switch (GET_CODE (x10))
   22879              :             {
   22880              :             case ASHIFT:
   22881              :               switch (pattern1331 (x1))
   22882              :                 {
   22883              :                 case 0:
   22884              :                   if (!
   22885              : #line 16721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22886              : ((optimize_function_for_size_p (cfun)
   22887              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   22888              :     || operands[2] == const1_rtx)
   22889              :    && ix86_match_ccmode (insn, CCGOCmode)
   22890              :    && ix86_binary_operator_ok (ASHIFT, QImode, operands, TARGET_APX_NDD)))
   22891              :                     return -1;
   22892              :                   return 1142; /* *ashlqi3_cmp */
   22893              : 
   22894              :                 case 1:
   22895              :                   if (!
   22896              : #line 16721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22897              : ((optimize_function_for_size_p (cfun)
   22898              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   22899              :     || operands[2] == const1_rtx)
   22900              :    && ix86_match_ccmode (insn, CCGOCmode)
   22901              :    && ix86_binary_operator_ok (ASHIFT, HImode, operands, TARGET_APX_NDD)))
   22902              :                     return -1;
   22903              :                   return 1143; /* *ashlhi3_cmp */
   22904              : 
   22905              :                 case 2:
   22906              :                   if (!
   22907              : #line 16721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22908              : ((optimize_function_for_size_p (cfun)
   22909              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   22910              :     || operands[2] == const1_rtx)
   22911              :    && ix86_match_ccmode (insn, CCGOCmode)
   22912              :    && ix86_binary_operator_ok (ASHIFT, SImode, operands, TARGET_APX_NDD)))
   22913              :                     return -1;
   22914              :                   return 1144; /* *ashlsi3_cmp */
   22915              : 
   22916              :                 case 3:
   22917              :                   if (!(
   22918              : #line 16721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22919              : ((optimize_function_for_size_p (cfun)
   22920              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   22921              :     || operands[2] == const1_rtx)
   22922              :    && ix86_match_ccmode (insn, CCGOCmode)
   22923              :    && ix86_binary_operator_ok (ASHIFT, DImode, operands, TARGET_APX_NDD)) && 
   22924              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22925              : (TARGET_64BIT)))
   22926              :                     return -1;
   22927              :                   return 1145; /* *ashldi3_cmp */
   22928              : 
   22929              :                 default:
   22930              :                   return -1;
   22931              :                 }
   22932              : 
   22933              :             case ZERO_EXTEND:
   22934              :               if (pattern1332 (x1, 
   22935              : ASHIFT) != 0
   22936              :                   || !
   22937              : #line 16766 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22938              : (TARGET_64BIT
   22939              :    && (optimize_function_for_size_p (cfun)
   22940              :        || !TARGET_PARTIAL_FLAG_REG_STALL
   22941              :        || operands[2] == const1_rtx)
   22942              :    && ix86_match_ccmode (insn, CCGOCmode)
   22943              :    && ix86_binary_operator_ok (ASHIFT, SImode, operands, TARGET_APX_NDD)))
   22944              :                 return -1;
   22945              :               return 1146; /* *ashlsi3_cmp_zext */
   22946              : 
   22947              :             default:
   22948              :               return -1;
   22949              :             }
   22950              : 
   22951              :         case 1:
   22952              :           if (!
   22953              : #line 16810 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22954              : ((optimize_function_for_size_p (cfun)
   22955              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   22956              :     || operands[2] == const1_rtx)
   22957              :    && ix86_match_ccmode (insn, CCGOCmode)))
   22958              :             return -1;
   22959              :           return 1147; /* *ashlqi3_cconly */
   22960              : 
   22961              :         case 2:
   22962              :           if (!
   22963              : #line 16810 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22964              : ((optimize_function_for_size_p (cfun)
   22965              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   22966              :     || operands[2] == const1_rtx)
   22967              :    && ix86_match_ccmode (insn, CCGOCmode)))
   22968              :             return -1;
   22969              :           return 1148; /* *ashlhi3_cconly */
   22970              : 
   22971              :         case 3:
   22972              :           if (!
   22973              : #line 16810 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22974              : ((optimize_function_for_size_p (cfun)
   22975              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   22976              :     || operands[2] == const1_rtx)
   22977              :    && ix86_match_ccmode (insn, CCGOCmode)))
   22978              :             return -1;
   22979              :           return 1149; /* *ashlsi3_cconly */
   22980              : 
   22981              :         case 4:
   22982              :           if (!(
   22983              : #line 16810 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22984              : ((optimize_function_for_size_p (cfun)
   22985              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   22986              :     || operands[2] == const1_rtx)
   22987              :    && ix86_match_ccmode (insn, CCGOCmode)) && 
   22988              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22989              : (TARGET_64BIT)))
   22990              :             return -1;
   22991              :           return 1150; /* *ashldi3_cconly */
   22992              : 
   22993              :         default:
   22994              :           return -1;
   22995              :         }
   22996              : 
   22997              :     case LSHIFTRT:
   22998              :       switch (pattern371 (x1))
   22999              :         {
   23000              :         case 0:
   23001              :           x8 = XVECEXP (x1, 0, 1);
   23002              :           x10 = XEXP (x8, 1);
   23003              :           switch (GET_CODE (x10))
   23004              :             {
   23005              :             case LSHIFTRT:
   23006              :               switch (pattern1331 (x1))
   23007              :                 {
   23008              :                 case 0:
   23009              :                   if (!
   23010              : #line 17975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23011              : ((optimize_function_for_size_p (cfun)
   23012              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   23013              :     || operands[2] == const1_rtx)
   23014              :    && ix86_match_ccmode (insn, CCGOCmode)
   23015              :    && ix86_binary_operator_ok (LSHIFTRT, QImode, operands, TARGET_APX_NDD)))
   23016              :                     return -1;
   23017              :                   return 1252; /* *lshrqi3_cmp */
   23018              : 
   23019              :                 case 1:
   23020              :                   if (!
   23021              : #line 17975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23022              : ((optimize_function_for_size_p (cfun)
   23023              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   23024              :     || operands[2] == const1_rtx)
   23025              :    && ix86_match_ccmode (insn, CCGOCmode)
   23026              :    && ix86_binary_operator_ok (LSHIFTRT, HImode, operands, TARGET_APX_NDD)))
   23027              :                     return -1;
   23028              :                   return 1254; /* *lshrhi3_cmp */
   23029              : 
   23030              :                 case 2:
   23031              :                   if (!
   23032              : #line 17975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23033              : ((optimize_function_for_size_p (cfun)
   23034              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   23035              :     || operands[2] == const1_rtx)
   23036              :    && ix86_match_ccmode (insn, CCGOCmode)
   23037              :    && ix86_binary_operator_ok (LSHIFTRT, SImode, operands, TARGET_APX_NDD)))
   23038              :                     return -1;
   23039              :                   return 1256; /* *lshrsi3_cmp */
   23040              : 
   23041              :                 case 3:
   23042              :                   if (!(
   23043              : #line 17975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23044              : ((optimize_function_for_size_p (cfun)
   23045              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   23046              :     || operands[2] == const1_rtx)
   23047              :    && ix86_match_ccmode (insn, CCGOCmode)
   23048              :    && ix86_binary_operator_ok (LSHIFTRT, DImode, operands, TARGET_APX_NDD)) && 
   23049              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23050              : (TARGET_64BIT)))
   23051              :                     return -1;
   23052              :                   return 1258; /* *lshrdi3_cmp */
   23053              : 
   23054              :                 default:
   23055              :                   return -1;
   23056              :                 }
   23057              : 
   23058              :             case ZERO_EXTEND:
   23059              :               if (pattern1332 (x1, 
   23060              : LSHIFTRT) != 0
   23061              :                   || !
   23062              : #line 18002 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23063              : (TARGET_64BIT
   23064              :    && (optimize_function_for_size_p (cfun)
   23065              :        || !TARGET_PARTIAL_FLAG_REG_STALL
   23066              :        || operands[2] == const1_rtx)
   23067              :    && ix86_match_ccmode (insn, CCGOCmode)
   23068              :    && ix86_binary_operator_ok (LSHIFTRT, SImode, operands, TARGET_APX_NDD)))
   23069              :                 return -1;
   23070              :               return 1260; /* *lshrsi3_cmp_zext */
   23071              : 
   23072              :             default:
   23073              :               return -1;
   23074              :             }
   23075              : 
   23076              :         case 1:
   23077              :           if (!
   23078              : #line 18030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23079              : ((optimize_function_for_size_p (cfun)
   23080              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   23081              :     || operands[2] == const1_rtx)
   23082              :    && ix86_match_ccmode (insn, CCGOCmode)))
   23083              :             return -1;
   23084              :           return 1262; /* *lshrqi3_cconly */
   23085              : 
   23086              :         case 2:
   23087              :           if (!
   23088              : #line 18030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23089              : ((optimize_function_for_size_p (cfun)
   23090              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   23091              :     || operands[2] == const1_rtx)
   23092              :    && ix86_match_ccmode (insn, CCGOCmode)))
   23093              :             return -1;
   23094              :           return 1264; /* *lshrhi3_cconly */
   23095              : 
   23096              :         case 3:
   23097              :           if (!
   23098              : #line 18030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23099              : ((optimize_function_for_size_p (cfun)
   23100              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   23101              :     || operands[2] == const1_rtx)
   23102              :    && ix86_match_ccmode (insn, CCGOCmode)))
   23103              :             return -1;
   23104              :           return 1266; /* *lshrsi3_cconly */
   23105              : 
   23106              :         case 4:
   23107              :           if (!(
   23108              : #line 18030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23109              : ((optimize_function_for_size_p (cfun)
   23110              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   23111              :     || operands[2] == const1_rtx)
   23112              :    && ix86_match_ccmode (insn, CCGOCmode)) && 
   23113              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23114              : (TARGET_64BIT)))
   23115              :             return -1;
   23116              :           return 1268; /* *lshrdi3_cconly */
   23117              : 
   23118              :         default:
   23119              :           return -1;
   23120              :         }
   23121              : 
   23122              :     case ASHIFTRT:
   23123              :       switch (pattern371 (x1))
   23124              :         {
   23125              :         case 0:
   23126              :           x8 = XVECEXP (x1, 0, 1);
   23127              :           x10 = XEXP (x8, 1);
   23128              :           switch (GET_CODE (x10))
   23129              :             {
   23130              :             case ASHIFTRT:
   23131              :               switch (pattern1331 (x1))
   23132              :                 {
   23133              :                 case 0:
   23134              :                   if (!
   23135              : #line 17975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23136              : ((optimize_function_for_size_p (cfun)
   23137              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   23138              :     || operands[2] == const1_rtx)
   23139              :    && ix86_match_ccmode (insn, CCGOCmode)
   23140              :    && ix86_binary_operator_ok (ASHIFTRT, QImode, operands, TARGET_APX_NDD)))
   23141              :                     return -1;
   23142              :                   return 1253; /* *ashrqi3_cmp */
   23143              : 
   23144              :                 case 1:
   23145              :                   if (!
   23146              : #line 17975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23147              : ((optimize_function_for_size_p (cfun)
   23148              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   23149              :     || operands[2] == const1_rtx)
   23150              :    && ix86_match_ccmode (insn, CCGOCmode)
   23151              :    && ix86_binary_operator_ok (ASHIFTRT, HImode, operands, TARGET_APX_NDD)))
   23152              :                     return -1;
   23153              :                   return 1255; /* *ashrhi3_cmp */
   23154              : 
   23155              :                 case 2:
   23156              :                   if (!
   23157              : #line 17975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23158              : ((optimize_function_for_size_p (cfun)
   23159              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   23160              :     || operands[2] == const1_rtx)
   23161              :    && ix86_match_ccmode (insn, CCGOCmode)
   23162              :    && ix86_binary_operator_ok (ASHIFTRT, SImode, operands, TARGET_APX_NDD)))
   23163              :                     return -1;
   23164              :                   return 1257; /* *ashrsi3_cmp */
   23165              : 
   23166              :                 case 3:
   23167              :                   if (!(
   23168              : #line 17975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23169              : ((optimize_function_for_size_p (cfun)
   23170              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   23171              :     || operands[2] == const1_rtx)
   23172              :    && ix86_match_ccmode (insn, CCGOCmode)
   23173              :    && ix86_binary_operator_ok (ASHIFTRT, DImode, operands, TARGET_APX_NDD)) && 
   23174              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23175              : (TARGET_64BIT)))
   23176              :                     return -1;
   23177              :                   return 1259; /* *ashrdi3_cmp */
   23178              : 
   23179              :                 default:
   23180              :                   return -1;
   23181              :                 }
   23182              : 
   23183              :             case ZERO_EXTEND:
   23184              :               if (pattern1332 (x1, 
   23185              : ASHIFTRT) != 0
   23186              :                   || !
   23187              : #line 18002 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23188              : (TARGET_64BIT
   23189              :    && (optimize_function_for_size_p (cfun)
   23190              :        || !TARGET_PARTIAL_FLAG_REG_STALL
   23191              :        || operands[2] == const1_rtx)
   23192              :    && ix86_match_ccmode (insn, CCGOCmode)
   23193              :    && ix86_binary_operator_ok (ASHIFTRT, SImode, operands, TARGET_APX_NDD)))
   23194              :                 return -1;
   23195              :               return 1261; /* *ashrsi3_cmp_zext */
   23196              : 
   23197              :             default:
   23198              :               return -1;
   23199              :             }
   23200              : 
   23201              :         case 1:
   23202              :           if (!
   23203              : #line 18030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23204              : ((optimize_function_for_size_p (cfun)
   23205              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   23206              :     || operands[2] == const1_rtx)
   23207              :    && ix86_match_ccmode (insn, CCGOCmode)))
   23208              :             return -1;
   23209              :           return 1263; /* *ashrqi3_cconly */
   23210              : 
   23211              :         case 2:
   23212              :           if (!
   23213              : #line 18030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23214              : ((optimize_function_for_size_p (cfun)
   23215              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   23216              :     || operands[2] == const1_rtx)
   23217              :    && ix86_match_ccmode (insn, CCGOCmode)))
   23218              :             return -1;
   23219              :           return 1265; /* *ashrhi3_cconly */
   23220              : 
   23221              :         case 3:
   23222              :           if (!
   23223              : #line 18030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23224              : ((optimize_function_for_size_p (cfun)
   23225              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   23226              :     || operands[2] == const1_rtx)
   23227              :    && ix86_match_ccmode (insn, CCGOCmode)))
   23228              :             return -1;
   23229              :           return 1267; /* *ashrsi3_cconly */
   23230              : 
   23231              :         case 4:
   23232              :           if (!(
   23233              : #line 18030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23234              : ((optimize_function_for_size_p (cfun)
   23235              :     || !TARGET_PARTIAL_FLAG_REG_STALL
   23236              :     || operands[2] == const1_rtx)
   23237              :    && ix86_match_ccmode (insn, CCGOCmode)) && 
   23238              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23239              : (TARGET_64BIT)))
   23240              :             return -1;
   23241              :           return 1269; /* *ashrdi3_cconly */
   23242              : 
   23243              :         default:
   23244              :           return -1;
   23245              :         }
   23246              : 
   23247              :     case UNSPEC:
   23248              :       if (XVECLEN (x4, 0) != 2
   23249              :           || XINT (x4, 1) != 99
   23250              :           || pattern696 (x1) != 0)
   23251              :         return -1;
   23252              :       x16 = XVECEXP (x4, 0, 0);
   23253              :       operands[1] = x16;
   23254              :       x17 = XVECEXP (x4, 0, 1);
   23255              :       operands[2] = x17;
   23256              :       x8 = XVECEXP (x1, 0, 1);
   23257              :       x9 = XEXP (x8, 0);
   23258              :       operands[0] = x9;
   23259              :       switch (GET_MODE (x4))
   23260              :         {
   23261              :         case E_SImode:
   23262              :           if (!nonimmediate_operand (operands[1], E_SImode)
   23263              :               || !register_operand (operands[2], E_SImode)
   23264              :               || !scratch_operand (operands[0], E_SImode)
   23265              :               || !
   23266              : #line 22032 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23267              : (TARGET_BMI))
   23268              :             return -1;
   23269              :           return 1594; /* *bmi_bextr_si_ccz */
   23270              : 
   23271              :         case E_DImode:
   23272              :           if (!nonimmediate_operand (operands[1], E_DImode)
   23273              :               || !register_operand (operands[2], E_DImode)
   23274              :               || !scratch_operand (operands[0], E_DImode)
   23275              :               || !(
   23276              : #line 22032 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23277              : (TARGET_BMI) && 
   23278              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23279              : (TARGET_64BIT)))
   23280              :             return -1;
   23281              :           return 1595; /* *bmi_bextr_di_ccz */
   23282              : 
   23283              :         default:
   23284              :           return -1;
   23285              :         }
   23286              : 
   23287              :     case IF_THEN_ELSE:
   23288              :       x7 = XEXP (x4, 0);
   23289              :       if (GET_CODE (x7) != NE
   23290              :           || GET_MODE (x7) != E_QImode)
   23291              :         return -1;
   23292              :       x18 = XEXP (x7, 1);
   23293              :       if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   23294              :         return -1;
   23295              :       x19 = XEXP (x4, 1);
   23296              :       if (GET_CODE (x19) != ZERO_EXTRACT)
   23297              :         return -1;
   23298              :       x20 = XEXP (x19, 1);
   23299              :       if (GET_CODE (x20) != UMIN
   23300              :           || GET_MODE (x20) != E_QImode)
   23301              :         return -1;
   23302              :       x21 = XEXP (x19, 2);
   23303              :       if (x21 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   23304              :         return -1;
   23305              :       x22 = XEXP (x4, 2);
   23306              :       if (x22 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   23307              :           || pattern696 (x1) != 0)
   23308              :         return -1;
   23309              :       x23 = XEXP (x7, 0);
   23310              :       operands[2] = x23;
   23311              :       if (!register_operand (operands[2], E_QImode))
   23312              :         return -1;
   23313              :       x24 = XEXP (x19, 0);
   23314              :       operands[1] = x24;
   23315              :       x25 = XEXP (x20, 1);
   23316              :       operands[3] = x25;
   23317              :       if (!const_int_operand (operands[3], E_QImode))
   23318              :         return -1;
   23319              :       x8 = XVECEXP (x1, 0, 1);
   23320              :       x9 = XEXP (x8, 0);
   23321              :       operands[0] = x9;
   23322              :       x26 = XEXP (x20, 0);
   23323              :       if (!rtx_equal_p (x26, operands[2]))
   23324              :         return -1;
   23325              :       switch (GET_MODE (x4))
   23326              :         {
   23327              :         case E_SImode:
   23328              :           if (GET_MODE (x19) != E_SImode
   23329              :               || !nonimmediate_operand (operands[1], E_SImode)
   23330              :               || !scratch_operand (operands[0], E_SImode)
   23331              :               || !
   23332              : #line 22339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23333              : (TARGET_BMI2 && INTVAL (operands[3]) == 4 * BITS_PER_UNIT))
   23334              :             return -1;
   23335              :           return 1618; /* *bmi2_bzhi_si3_1_ccz */
   23336              : 
   23337              :         case E_DImode:
   23338              :           if (GET_MODE (x19) != E_DImode
   23339              :               || !nonimmediate_operand (operands[1], E_DImode)
   23340              :               || !scratch_operand (operands[0], E_DImode)
   23341              :               || !(
   23342              : #line 22339 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23343              : (TARGET_BMI2 && INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   23344              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23345              : (TARGET_64BIT)))
   23346              :             return -1;
   23347              :           return 1619; /* *bmi2_bzhi_di3_1_ccz */
   23348              : 
   23349              :         default:
   23350              :           return -1;
   23351              :         }
   23352              : 
   23353              :     case UNSPEC_VOLATILE:
   23354              :       if (XVECLEN (x4, 0) != 2
   23355              :           || XINT (x4, 1) != 110)
   23356              :         return -1;
   23357              :       x6 = XEXP (x3, 1);
   23358              :       if (GET_CODE (x6) != CONST_INT)
   23359              :         return -1;
   23360              :       operands[2] = x6;
   23361              :       res = recog_392 (x1, insn, pnum_clobbers);
   23362              :       if (res >= 0)
   23363              :         return res;
   23364              :       if (XWINT (x6, 0) != 0L)
   23365              :         return -1;
   23366              :       x5 = XEXP (x2, 0);
   23367              :       if (GET_CODE (x5) != REG
   23368              :           || REGNO (x5) != 17
   23369              :           || GET_MODE (x5) != E_CCCmode)
   23370              :         return -1;
   23371              :       x8 = XVECEXP (x1, 0, 1);
   23372              :       if (GET_CODE (x8) != SET)
   23373              :         return -1;
   23374              :       x9 = XEXP (x8, 0);
   23375              :       if (GET_CODE (x9) != ZERO_EXTRACT)
   23376              :         return -1;
   23377              :       x27 = XEXP (x9, 1);
   23378              :       if (x27 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   23379              :           || GET_MODE (x3) != E_CCCmode)
   23380              :         return -1;
   23381              :       x16 = XVECEXP (x4, 0, 0);
   23382              :       operands[0] = x16;
   23383              :       x17 = XVECEXP (x4, 0, 1);
   23384              :       operands[2] = x17;
   23385              :       if (!const_int_operand (operands[2], E_SImode))
   23386              :         return -1;
   23387              :       x28 = XEXP (x9, 2);
   23388              :       operands[1] = x28;
   23389              :       x29 = XEXP (x9, 0);
   23390              :       if (!rtx_equal_p (x29, operands[0]))
   23391              :         return -1;
   23392              :       x10 = XEXP (x8, 1);
   23393              :       switch (GET_CODE (x10))
   23394              :         {
   23395              :         case CONST_INT:
   23396              :           switch (XWINT (x10, 0))
   23397              :             {
   23398              :             case 1L:
   23399              :               switch (pattern1781 (x1))
   23400              :                 {
   23401              :                 case 0:
   23402              :                   return 11131; /* atomic_bit_test_and_sethi_1 */
   23403              : 
   23404              :                 case 1:
   23405              :                   return 11132; /* atomic_bit_test_and_setsi_1 */
   23406              : 
   23407              :                 case 2:
   23408              :                   if (!
   23409              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23410              : (TARGET_64BIT))
   23411              :                     return -1;
   23412              :                   return 11133; /* atomic_bit_test_and_setdi_1 */
   23413              : 
   23414              :                 default:
   23415              :                   return -1;
   23416              :                 }
   23417              : 
   23418              :             case 0L:
   23419              :               switch (pattern1781 (x1))
   23420              :                 {
   23421              :                 case 0:
   23422              :                   return 11137; /* atomic_bit_test_and_resethi_1 */
   23423              : 
   23424              :                 case 1:
   23425              :                   return 11138; /* atomic_bit_test_and_resetsi_1 */
   23426              : 
   23427              :                 case 2:
   23428              :                   if (!
   23429              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23430              : (TARGET_64BIT))
   23431              :                     return -1;
   23432              :                   return 11139; /* atomic_bit_test_and_resetdi_1 */
   23433              : 
   23434              :                 default:
   23435              :                   return -1;
   23436              :                 }
   23437              : 
   23438              :             default:
   23439              :               return -1;
   23440              :             }
   23441              : 
   23442              :         case NOT:
   23443              :           x11 = XEXP (x10, 0);
   23444              :           if (GET_CODE (x11) != ZERO_EXTRACT)
   23445              :             return -1;
   23446              :           x13 = XEXP (x11, 1);
   23447              :           if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   23448              :             return -1;
   23449              :           x12 = XEXP (x11, 0);
   23450              :           if (!rtx_equal_p (x12, operands[0]))
   23451              :             return -1;
   23452              :           x30 = XEXP (x11, 2);
   23453              :           if (!rtx_equal_p (x30, operands[1]))
   23454              :             return -1;
   23455              :           switch (GET_MODE (x4))
   23456              :             {
   23457              :             case E_HImode:
   23458              :               if (pattern1851 (x8, 
   23459              : E_HImode) != 0)
   23460              :                 return -1;
   23461              :               return 11134; /* atomic_bit_test_and_complementhi_1 */
   23462              : 
   23463              :             case E_SImode:
   23464              :               if (pattern1851 (x8, 
   23465              : E_SImode) != 0)
   23466              :                 return -1;
   23467              :               return 11135; /* atomic_bit_test_and_complementsi_1 */
   23468              : 
   23469              :             case E_DImode:
   23470              :               if (pattern1851 (x8, 
   23471              : E_DImode) != 0
   23472              :                   || !
   23473              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23474              : (TARGET_64BIT))
   23475              :                 return -1;
   23476              :               return 11136; /* atomic_bit_test_and_complementdi_1 */
   23477              : 
   23478              :             default:
   23479              :               return -1;
   23480              :             }
   23481              : 
   23482              :         default:
   23483              :           return -1;
   23484              :         }
   23485              : 
   23486              :     default:
   23487              :       return -1;
   23488              :     }
   23489              : }
   23490              : 
   23491              :  int
   23492              : recog_434 (rtx x1 ATTRIBUTE_UNUSED,
   23493              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23494              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23495              : {
   23496              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23497              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   23498              :   rtx x10, x11, x12, x13, x14, x15, x16;
   23499              :   int res ATTRIBUTE_UNUSED;
   23500              :   if (pattern236 (x1) != 0)
   23501              :     return -1;
   23502              :   x2 = XVECEXP (x1, 0, 2);
   23503              :   if (GET_CODE (x2) != SET)
   23504              :     return -1;
   23505              :   x3 = XEXP (x2, 1);
   23506              :   if (GET_CODE (x3) != PLUS)
   23507              :     return -1;
   23508              :   x4 = XEXP (x3, 1);
   23509              :   if (GET_CODE (x4) != CONST_INT)
   23510              :     return -1;
   23511              :   x5 = XVECEXP (x1, 0, 0);
   23512              :   x6 = XEXP (x5, 0);
   23513              :   x7 = XEXP (x6, 0);
   23514              :   operands[2] = x7;
   23515              :   x8 = XEXP (x5, 1);
   23516              :   x9 = XEXP (x8, 0);
   23517              :   operands[3] = x9;
   23518              :   x10 = XVECEXP (x1, 0, 1);
   23519              :   x11 = XEXP (x10, 0);
   23520              :   operands[0] = x11;
   23521              :   x12 = XEXP (x2, 0);
   23522              :   operands[1] = x12;
   23523              :   x13 = XEXP (x10, 1);
   23524              :   x14 = XEXP (x13, 0);
   23525              :   if (!rtx_equal_p (x14, operands[2]))
   23526              :     return -1;
   23527              :   x15 = XEXP (x3, 0);
   23528              :   if (!rtx_equal_p (x15, operands[3]))
   23529              :     return -1;
   23530              :   x16 = XEXP (x13, 1);
   23531              :   switch (XWINT (x16, 0))
   23532              :     {
   23533              :     case 8L:
   23534              :       if (XWINT (x4, 0) != 8L)
   23535              :         return -1;
   23536              :       switch (pattern1680 (x1, 
   23537              : E_DImode))
   23538              :         {
   23539              :         case 0:
   23540              :           if (!(
   23541              : #line 25957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23542              : (TARGET_64BIT
   23543              :    && !(fixed_regs[SI_REG] || fixed_regs[DI_REG])
   23544              :    && ix86_check_movs (insn, 0)) && 
   23545              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23546              : (Pmode == SImode)))
   23547              :             return -1;
   23548              :           return 1787; /* *strmovdi_rex_1 */
   23549              : 
   23550              :         case 1:
   23551              :           if (!(
   23552              : #line 25957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23553              : (TARGET_64BIT
   23554              :    && !(fixed_regs[SI_REG] || fixed_regs[DI_REG])
   23555              :    && ix86_check_movs (insn, 0)) && 
   23556              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23557              : (Pmode == DImode)))
   23558              :             return -1;
   23559              :           return 1788; /* *strmovdi_rex_1 */
   23560              : 
   23561              :         default:
   23562              :           return -1;
   23563              :         }
   23564              : 
   23565              :     case 4L:
   23566              :       if (XWINT (x4, 0) != 4L)
   23567              :         return -1;
   23568              :       switch (pattern1680 (x1, 
   23569              : E_SImode))
   23570              :         {
   23571              :         case 0:
   23572              :           if (!(
   23573              : #line 25981 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23574              : (!(fixed_regs[SI_REG] || fixed_regs[DI_REG])
   23575              :    && ix86_check_movs (insn, 0)) && 
   23576              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23577              : (Pmode == SImode)))
   23578              :             return -1;
   23579              :           return 1789; /* *strmovsi_1 */
   23580              : 
   23581              :         case 1:
   23582              :           if (!(
   23583              : #line 25981 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23584              : (!(fixed_regs[SI_REG] || fixed_regs[DI_REG])
   23585              :    && ix86_check_movs (insn, 0)) && 
   23586              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23587              : (Pmode == DImode)))
   23588              :             return -1;
   23589              :           return 1790; /* *strmovsi_1 */
   23590              : 
   23591              :         default:
   23592              :           return -1;
   23593              :         }
   23594              : 
   23595              :     case 2L:
   23596              :       if (XWINT (x4, 0) != 2L)
   23597              :         return -1;
   23598              :       switch (pattern1680 (x1, 
   23599              : E_HImode))
   23600              :         {
   23601              :         case 0:
   23602              :           if (!(
   23603              : #line 26004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23604              : (!(fixed_regs[SI_REG] || fixed_regs[DI_REG])
   23605              :    && ix86_check_movs (insn, 0)) && 
   23606              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23607              : (Pmode == SImode)))
   23608              :             return -1;
   23609              :           return 1791; /* *strmovhi_1 */
   23610              : 
   23611              :         case 1:
   23612              :           if (!(
   23613              : #line 26004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23614              : (!(fixed_regs[SI_REG] || fixed_regs[DI_REG])
   23615              :    && ix86_check_movs (insn, 0)) && 
   23616              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23617              : (Pmode == DImode)))
   23618              :             return -1;
   23619              :           return 1792; /* *strmovhi_1 */
   23620              : 
   23621              :         default:
   23622              :           return -1;
   23623              :         }
   23624              : 
   23625              :     case 1L:
   23626              :       if (XWINT (x4, 0) != 1L)
   23627              :         return -1;
   23628              :       switch (pattern1680 (x1, 
   23629              : E_QImode))
   23630              :         {
   23631              :         case 0:
   23632              :           if (!(
   23633              : #line 26027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23634              : (!(fixed_regs[SI_REG] || fixed_regs[DI_REG])
   23635              :    && ix86_check_movs (insn, 0)) && 
   23636              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23637              : (Pmode == SImode)))
   23638              :             return -1;
   23639              :           return 1793; /* *strmovqi_1 */
   23640              : 
   23641              :         case 1:
   23642              :           if (!(
   23643              : #line 26027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23644              : (!(fixed_regs[SI_REG] || fixed_regs[DI_REG])
   23645              :    && ix86_check_movs (insn, 0)) && 
   23646              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23647              : (Pmode == DImode)))
   23648              :             return -1;
   23649              :           return 1794; /* *strmovqi_1 */
   23650              : 
   23651              :         default:
   23652              :           return -1;
   23653              :         }
   23654              : 
   23655              :     default:
   23656              :       return -1;
   23657              :     }
   23658              : }
   23659              : 
   23660              :  int
   23661              : recog_440 (rtx x1 ATTRIBUTE_UNUSED,
   23662              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23663              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23664              : {
   23665              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23666              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   23667              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   23668              :   rtx x18, x19;
   23669              :   int res ATTRIBUTE_UNUSED;
   23670              :   x2 = XVECEXP (x1, 0, 0);
   23671              :   if (GET_CODE (x2) != UNSPEC_VOLATILE
   23672              :       || XVECLEN (x2, 0) != 1)
   23673              :     return -1;
   23674              :   x3 = XVECEXP (x2, 0, 0);
   23675              :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   23676              :       || pattern37 (x1) != 0)
   23677              :     return -1;
   23678              :   x4 = XVECEXP (x1, 0, 9);
   23679              :   if (GET_CODE (x4) != CLOBBER)
   23680              :     return -1;
   23681              :   x5 = XEXP (x4, 0);
   23682              :   if (GET_CODE (x5) != REG
   23683              :       || REGNO (x5) != 28
   23684              :       || GET_MODE (x5) != E_DImode)
   23685              :     return -1;
   23686              :   x6 = XVECEXP (x1, 0, 10);
   23687              :   if (GET_CODE (x6) != CLOBBER)
   23688              :     return -1;
   23689              :   x7 = XEXP (x6, 0);
   23690              :   if (GET_CODE (x7) != REG
   23691              :       || REGNO (x7) != 29
   23692              :       || GET_MODE (x7) != E_DImode)
   23693              :     return -1;
   23694              :   x8 = XVECEXP (x1, 0, 11);
   23695              :   if (GET_CODE (x8) != CLOBBER)
   23696              :     return -1;
   23697              :   x9 = XEXP (x8, 0);
   23698              :   if (GET_CODE (x9) != REG
   23699              :       || REGNO (x9) != 30
   23700              :       || GET_MODE (x9) != E_DImode)
   23701              :     return -1;
   23702              :   x10 = XVECEXP (x1, 0, 12);
   23703              :   if (GET_CODE (x10) != CLOBBER)
   23704              :     return -1;
   23705              :   x11 = XEXP (x10, 0);
   23706              :   if (GET_CODE (x11) != REG
   23707              :       || REGNO (x11) != 31
   23708              :       || GET_MODE (x11) != E_DImode)
   23709              :     return -1;
   23710              :   x12 = XVECEXP (x1, 0, 13);
   23711              :   if (GET_CODE (x12) != CLOBBER)
   23712              :     return -1;
   23713              :   x13 = XEXP (x12, 0);
   23714              :   if (GET_CODE (x13) != REG
   23715              :       || REGNO (x13) != 32
   23716              :       || GET_MODE (x13) != E_DImode)
   23717              :     return -1;
   23718              :   x14 = XVECEXP (x1, 0, 14);
   23719              :   if (GET_CODE (x14) != CLOBBER)
   23720              :     return -1;
   23721              :   x15 = XEXP (x14, 0);
   23722              :   if (GET_CODE (x15) != REG
   23723              :       || REGNO (x15) != 33
   23724              :       || GET_MODE (x15) != E_DImode)
   23725              :     return -1;
   23726              :   x16 = XVECEXP (x1, 0, 15);
   23727              :   if (GET_CODE (x16) != CLOBBER)
   23728              :     return -1;
   23729              :   x17 = XEXP (x16, 0);
   23730              :   if (GET_CODE (x17) != REG
   23731              :       || REGNO (x17) != 34
   23732              :       || GET_MODE (x17) != E_DImode)
   23733              :     return -1;
   23734              :   x18 = XVECEXP (x1, 0, 16);
   23735              :   if (GET_CODE (x18) != CLOBBER)
   23736              :     return -1;
   23737              :   x19 = XEXP (x18, 0);
   23738              :   if (GET_CODE (x19) != REG
   23739              :       || REGNO (x19) != 35
   23740              :       || GET_MODE (x19) != E_DImode)
   23741              :     return -1;
   23742              :   switch (XINT (x2, 1))
   23743              :     {
   23744              :     case 90:
   23745              :       if (!
   23746              : #line 6927 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23747              : (TARGET_MMX))
   23748              :         return -1;
   23749              :       return 2435; /* *mmx_emms */
   23750              : 
   23751              :     case 91:
   23752              :       if (!
   23753              : #line 6928 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23754              : (TARGET_3DNOW))
   23755              :         return -1;
   23756              :       return 2436; /* *mmx_femms */
   23757              : 
   23758              :     default:
   23759              :       return -1;
   23760              :     }
   23761              : }
   23762              : 
   23763              :  int
   23764              : recog (rtx x1 ATTRIBUTE_UNUSED,
   23765              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23766              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23767              : {
   23768              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23769              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   23770              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   23771              :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
   23772              :   rtx x26, x27;
   23773              :   int res ATTRIBUTE_UNUSED;
   23774              :   recog_data.insn = NULL;
   23775              :   switch (GET_CODE (x1))
   23776              :     {
   23777              :     case SET:
   23778              :       return recog_443 (x1, insn, pnum_clobbers);
   23779              : 
   23780              :     case PARALLEL:
   23781              :       switch (XVECLEN (x1, 0))
   23782              :         {
   23783              :         case 2:
   23784              :           res = recog_428 (x1, insn, pnum_clobbers);
   23785              :           if (res >= 0)
   23786              :             return res;
   23787              :           break;
   23788              : 
   23789              :         case 3:
   23790              :           res = recog_436 (x1, insn, pnum_clobbers);
   23791              :           if (res >= 0)
   23792              :             return res;
   23793              :           break;
   23794              : 
   23795              :         case 4:
   23796              :           res = recog_437 (x1, insn, pnum_clobbers);
   23797              :           if (res >= 0)
   23798              :             return res;
   23799              :           break;
   23800              : 
   23801              :         case 5:
   23802              :           res = recog_438 (x1, insn, pnum_clobbers);
   23803              :           if (res >= 0)
   23804              :             return res;
   23805              :           break;
   23806              : 
   23807              :         case 6:
   23808              :           res = recog_439 (x1, insn, pnum_clobbers);
   23809              :           if (res >= 0)
   23810              :             return res;
   23811              :           break;
   23812              : 
   23813              :         case 9:
   23814              :           if (pattern37 (x1) == 0)
   23815              :             {
   23816              :               x2 = XVECEXP (x1, 0, 0);
   23817              :               switch (GET_CODE (x2))
   23818              :                 {
   23819              :                 case SET:
   23820              :                   x3 = XEXP (x2, 1);
   23821              :                   if (GET_CODE (x3) == UNSPEC_VOLATILE
   23822              :                       && XVECLEN (x3, 0) == 1
   23823              :                       && XINT (x3, 1) == 40
   23824              :                       && GET_MODE (x3) == E_BLKmode)
   23825              :                     {
   23826              :                       x4 = XVECEXP (x3, 0, 0);
   23827              :                       if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + 0])
   23828              :                         {
   23829              :                           x5 = XEXP (x2, 0);
   23830              :                           operands[0] = x5;
   23831              :                           if (memory_operand (operands[0], E_BLKmode)
   23832              :                               && 
   23833              : #line 29999 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23834              : (TARGET_80387))
   23835              :                             return 1972; /* fnstenv */
   23836              :                         }
   23837              :                     }
   23838              :                   break;
   23839              : 
   23840              :                 case UNSPEC_VOLATILE:
   23841              :                   if (XVECLEN (x2, 0) == 1
   23842              :                       && XINT (x2, 1) == 41)
   23843              :                     {
   23844              :                       x6 = XVECEXP (x2, 0, 0);
   23845              :                       operands[0] = x6;
   23846              :                       if (memory_operand (operands[0], E_BLKmode)
   23847              :                           && 
   23848              : #line 30017 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23849              : (TARGET_80387))
   23850              :                         return 1973; /* fldenv */
   23851              :                     }
   23852              :                   break;
   23853              : 
   23854              :                 default:
   23855              :                   break;
   23856              :                 }
   23857              :             }
   23858              :           break;
   23859              : 
   23860              :         case 17:
   23861              :           res = recog_440 (x1, insn, pnum_clobbers);
   23862              :           if (res >= 0)
   23863              :             return res;
   23864              :           break;
   23865              : 
   23866              :         default:
   23867              :           break;
   23868              :         }
   23869              :       if (XVECLEN (x1, 0) >= 1)
   23870              :         {
   23871              :           res = recog_441 (x1, insn, pnum_clobbers);
   23872              :           if (res >= 0)
   23873              :             return res;
   23874              :         }
   23875              :       operands[0] = x1;
   23876              :       if (XVECLEN (operands[0], 0) >= 3
   23877              :           && restore_multiple (operands[0], E_VOIDmode))
   23878              :         {
   23879              :           res = recog_442 (x1, insn, pnum_clobbers);
   23880              :           if (res >= 0)
   23881              :             return res;
   23882              :         }
   23883              :       if (XVECLEN (operands[0], 0) < 5
   23884              :           || !restore_multiple (operands[0], E_VOIDmode))
   23885              :         return -1;
   23886              :       x2 = XVECEXP (x1, 0, 0);
   23887              :       if (GET_CODE (x2) != RETURN)
   23888              :         return -1;
   23889              :       x7 = XVECEXP (x1, 0, 1);
   23890              :       if (GET_CODE (x7) != USE)
   23891              :         return -1;
   23892              :       x8 = XVECEXP (x1, 0, 2);
   23893              :       if (GET_CODE (x8) != SET)
   23894              :         return -1;
   23895              :       x9 = XEXP (x8, 1);
   23896              :       if (GET_CODE (x9) != PLUS
   23897              :           || GET_MODE (x9) != E_DImode)
   23898              :         return -1;
   23899              :       x10 = XEXP (x9, 0);
   23900              :       if (GET_CODE (x10) != REG
   23901              :           || REGNO (x10) != 6
   23902              :           || GET_MODE (x10) != E_DImode)
   23903              :         return -1;
   23904              :       x11 = XEXP (x9, 1);
   23905              :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
   23906              :         return -1;
   23907              :       x12 = XEXP (x8, 0);
   23908              :       if (GET_CODE (x12) != REG
   23909              :           || REGNO (x12) != 7
   23910              :           || GET_MODE (x12) != E_DImode)
   23911              :         return -1;
   23912              :       x13 = XVECEXP (x1, 0, 3);
   23913              :       if (GET_CODE (x13) != SET)
   23914              :         return -1;
   23915              :       x14 = XEXP (x13, 1);
   23916              :       if (GET_CODE (x14) != MEM
   23917              :           || GET_MODE (x14) != E_DImode)
   23918              :         return -1;
   23919              :       x15 = XEXP (x14, 0);
   23920              :       if (GET_CODE (x15) != REG
   23921              :           || REGNO (x15) != 6
   23922              :           || GET_MODE (x15) != E_DImode)
   23923              :         return -1;
   23924              :       x16 = XEXP (x13, 0);
   23925              :       if (GET_CODE (x16) != REG
   23926              :           || REGNO (x16) != 6
   23927              :           || GET_MODE (x16) != E_DImode)
   23928              :         return -1;
   23929              :       x17 = XVECEXP (x1, 0, 4);
   23930              :       if (GET_CODE (x17) != CLOBBER)
   23931              :         return -1;
   23932              :       x18 = XEXP (x17, 0);
   23933              :       if (GET_CODE (x18) != MEM
   23934              :           || GET_MODE (x18) != E_BLKmode)
   23935              :         return -1;
   23936              :       x19 = XEXP (x18, 0);
   23937              :       if (GET_CODE (x19) != SCRATCH)
   23938              :         return -1;
   23939              :       x20 = XEXP (x7, 0);
   23940              :       operands[1] = x20;
   23941              :       switch (GET_MODE (operands[1]))
   23942              :         {
   23943              :         case E_SImode:
   23944              :           if (!symbol_operand (operands[1], E_SImode)
   23945              :               || !(
   23946              : #line 31288 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23947              : (TARGET_SSE && TARGET_64BIT) && 
   23948              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23949              : (Pmode == SImode)))
   23950              :             return -1;
   23951              :           return 10236; /* *restore_multiple_leave_returnsi */
   23952              : 
   23953              :         case E_DImode:
   23954              :           if (!symbol_operand (operands[1], E_DImode)
   23955              :               || !(
   23956              : #line 31288 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23957              : (TARGET_SSE && TARGET_64BIT) && 
   23958              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23959              : (Pmode == DImode)))
   23960              :             return -1;
   23961              :           return 10237; /* *restore_multiple_leave_returndi */
   23962              : 
   23963              :         default:
   23964              :           return -1;
   23965              :         }
   23966              : 
   23967              :     case CALL:
   23968              :       x21 = XEXP (x1, 0);
   23969              :       if (GET_CODE (x21) != MEM
   23970              :           || GET_MODE (x21) != E_QImode)
   23971              :         return -1;
   23972              :       x22 = XEXP (x21, 0);
   23973              :       operands[0] = x22;
   23974              :       x23 = XEXP (x1, 1);
   23975              :       operands[1] = x23;
   23976              :       if (call_insn_operand (operands[0], E_SImode)
   23977              :           && (
   23978              : #line 20396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23979              : (!SIBLING_CALL_P (insn)) && 
   23980              : #line 1407 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23981              : (word_mode == SImode)))
   23982              :         return 1488; /* *call */
   23983              :       if (call_insn_operand (operands[0], E_DImode)
   23984              :           && (
   23985              : #line 20396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23986              : (!SIBLING_CALL_P (insn)) && 
   23987              : #line 1407 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23988              : (word_mode == DImode)))
   23989              :         return 1489; /* *call */
   23990              :       switch (GET_CODE (x22))
   23991              :         {
   23992              :         case ZERO_EXTEND:
   23993              :           if (GET_MODE (x22) == E_DImode)
   23994              :             {
   23995              :               x24 = XEXP (x22, 0);
   23996              :               operands[0] = x24;
   23997              :               if (GOT_memory_operand (operands[0], E_SImode))
   23998              :                 {
   23999              :                   operands[1] = x23;
   24000              :                   if (
   24001              : #line 20405 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24002              : (TARGET_X32 && !TARGET_INDIRECT_BRANCH_REGISTER))
   24003              :                     return 1490; /* *call_got_x32 */
   24004              :                 }
   24005              :             }
   24006              :           break;
   24007              : 
   24008              :         case MEM:
   24009              :           if (GET_MODE (x22) == E_SImode)
   24010              :             {
   24011              :               x24 = XEXP (x22, 0);
   24012              :               if (GET_CODE (x24) == PLUS
   24013              :                   && GET_MODE (x24) == E_SImode)
   24014              :                 {
   24015              :                   x25 = XEXP (x24, 0);
   24016              :                   operands[0] = x25;
   24017              :                   if (register_no_elim_operand (operands[0], E_SImode))
   24018              :                     {
   24019              :                       x26 = XEXP (x24, 1);
   24020              :                       operands[1] = x26;
   24021              :                       if (GOT32_symbol_operand (operands[1], E_SImode))
   24022              :                         {
   24023              :                           operands[2] = x23;
   24024              :                           if (
   24025              : #line 20420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24026              : (!TARGET_MACHO
   24027              :   && !TARGET_64BIT && !TARGET_INDIRECT_BRANCH_REGISTER
   24028              :   && SIBLING_CALL_P (insn)))
   24029              :                             return 1491; /* *sibcall_GOT_32 */
   24030              :                         }
   24031              :                     }
   24032              :                 }
   24033              :             }
   24034              :           break;
   24035              : 
   24036              :         default:
   24037              :           break;
   24038              :         }
   24039              :       operands[0] = x22;
   24040              :       operands[1] = x23;
   24041              :       if (sibcall_insn_operand (operands[0], E_SImode)
   24042              :           && (
   24043              : #line 20433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24044              : (SIBLING_CALL_P (insn)) && 
   24045              : #line 1407 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24046              : (word_mode == SImode)))
   24047              :         return 1492; /* *sibcall */
   24048              :       if (!sibcall_insn_operand (operands[0], E_DImode)
   24049              :           || !(
   24050              : #line 20433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24051              : (SIBLING_CALL_P (insn)) && 
   24052              : #line 1407 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24053              : (word_mode == DImode)))
   24054              :         return -1;
   24055              :       return 1493; /* *sibcall */
   24056              : 
   24057              :     case UNSPEC_VOLATILE:
   24058              :       return recog_444 (x1, insn, pnum_clobbers);
   24059              : 
   24060              :     case SIMPLE_RETURN:
   24061              :       if (!
   24062              : #line 20894 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24063              : (reload_completed))
   24064              :         return -1;
   24065              :       return 1513; /* simple_return_internal */
   24066              : 
   24067              :     case CONST_INT:
   24068              :       if (XWINT (x1, 0) != 0L)
   24069              :         return -1;
   24070              :       return 1519; /* nop */
   24071              : 
   24072              :     case EH_RETURN:
   24073              :       return 1527; /* eh_return_internal */
   24074              : 
   24075              :     case TRAP_IF:
   24076              :       x21 = XEXP (x1, 0);
   24077              :       if (x21 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   24078              :         return -1;
   24079              :       x23 = XEXP (x1, 1);
   24080              :       if (x23 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
   24081              :         return -1;
   24082              :       return 1930; /* trap */
   24083              : 
   24084              :     case PREFETCH:
   24085              :       x23 = XEXP (x1, 1);
   24086              :       if (GET_CODE (x23) != CONST_INT)
   24087              :         return -1;
   24088              :       x21 = XEXP (x1, 0);
   24089              :       operands[0] = x21;
   24090              :       if (!address_operand (operands[0], E_VOIDmode))
   24091              :         return -1;
   24092              :       switch (XWINT (x23, 0))
   24093              :         {
   24094              :         case 0L:
   24095              :           x27 = XEXP (x1, 2);
   24096              :           operands[1] = x27;
   24097              :           if (const_int_operand (operands[1], E_SImode)
   24098              :               && 
   24099              : #line 29603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24100              : (TARGET_PREFETCH_SSE))
   24101              :             return 1932; /* *prefetch_sse */
   24102              :           break;
   24103              : 
   24104              :         case 2L:
   24105              :           x27 = XEXP (x1, 2);
   24106              :           if (x27 == const_int_rtx[MAX_SAVED_CONST_INT + 1]
   24107              :               && 
   24108              : #line 29660 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24109              : (TARGET_MOVRS))
   24110              :             return 1935; /* *prefetch_rst2 */
   24111              :           break;
   24112              : 
   24113              :         default:
   24114              :           break;
   24115              :         }
   24116              :       x27 = XEXP (x1, 2);
   24117              :       if (x27 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
   24118              :         return -1;
   24119              :       operands[1] = x23;
   24120              :       if (!const_int_operand (operands[1], E_SImode)
   24121              :           || !
   24122              : #line 29624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24123              : (TARGET_3DNOW || TARGET_PRFCHW))
   24124              :         return -1;
   24125              :       return 1933; /* *prefetch_3dnow */
   24126              : 
   24127              :     default:
   24128              :       return -1;
   24129              :     }
   24130              : }
   24131              : 
   24132              :  rtx_insn *
   24133              : split_9 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   24134              : {
   24135              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24136              :   rtx x2, x3, x4, x5;
   24137              :   rtx_insn *res ATTRIBUTE_UNUSED;
   24138              :   x2 = XEXP (x1, 0);
   24139              :   operands[0] = x2;
   24140              :   x3 = XEXP (x1, 1);
   24141              :   x4 = XEXP (x3, 0);
   24142              :   operands[1] = x4;
   24143              :   switch (GET_CODE (operands[1]))
   24144              :     {
   24145              :     case CONST_INT:
   24146              :       switch (pattern586 (x3))
   24147              :         {
   24148              :         case 0:
   24149              :           if (!
   24150              : #line 18444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24151              : ((INTVAL (operands[3]) & (GET_MODE_BITSIZE (QImode) - 1))
   24152              :    == GET_MODE_BITSIZE (QImode) - 1))
   24153              :             return NULL;
   24154              :           return gen_split_692 (insn, operands);
   24155              : 
   24156              :         case 1:
   24157              :           if (!
   24158              : #line 18444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24159              : ((INTVAL (operands[3]) & (GET_MODE_BITSIZE (HImode) - 1))
   24160              :    == GET_MODE_BITSIZE (HImode) - 1))
   24161              :             return NULL;
   24162              :           return gen_split_694 (insn, operands);
   24163              : 
   24164              :         case 2:
   24165              :           if (!
   24166              : #line 18444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24167              : ((INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode) - 1))
   24168              :    == GET_MODE_BITSIZE (SImode) - 1))
   24169              :             return NULL;
   24170              :           return gen_split_696 (insn, operands);
   24171              : 
   24172              :         case 3:
   24173              :           if (!(
   24174              : #line 18444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24175              : ((INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode) - 1))
   24176              :    == GET_MODE_BITSIZE (DImode) - 1) && 
   24177              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24178              : (TARGET_64BIT)))
   24179              :             return NULL;
   24180              :           return gen_split_698 (insn, operands);
   24181              : 
   24182              :         case 4:
   24183              :           if (!
   24184              : #line 18528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24185              : ((INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0))
   24186              :             return NULL;
   24187              :           return gen_split_724 (insn, operands);
   24188              : 
   24189              :         case 5:
   24190              :           if (!
   24191              : #line 18528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24192              : ((INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0))
   24193              :             return NULL;
   24194              :           return gen_split_726 (insn, operands);
   24195              : 
   24196              :         case 6:
   24197              :           if (!
   24198              : #line 18528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24199              : ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0))
   24200              :             return NULL;
   24201              :           return gen_split_728 (insn, operands);
   24202              : 
   24203              :         case 7:
   24204              :           if (!(
   24205              : #line 18528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24206              : ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0) && 
   24207              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24208              : (TARGET_64BIT)))
   24209              :             return NULL;
   24210              :           return gen_split_730 (insn, operands);
   24211              : 
   24212              :         case 8:
   24213              :           if (!
   24214              : #line 18597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24215              : ((INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0))
   24216              :             return NULL;
   24217              :           return gen_split_756 (insn, operands);
   24218              : 
   24219              :         case 9:
   24220              :           if (!
   24221              : #line 18597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24222              : ((INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0))
   24223              :             return NULL;
   24224              :           return gen_split_758 (insn, operands);
   24225              : 
   24226              :         case 10:
   24227              :           if (!
   24228              : #line 18597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24229              : ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0))
   24230              :             return NULL;
   24231              :           return gen_split_760 (insn, operands);
   24232              : 
   24233              :         case 11:
   24234              :           if (!(
   24235              : #line 18597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24236              : ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0) && 
   24237              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24238              : (TARGET_64BIT)))
   24239              :             return NULL;
   24240              :           return gen_split_762 (insn, operands);
   24241              : 
   24242              :         case 12:
   24243              :           if (!
   24244              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24245              : ((INTVAL (operands[3]) & (GET_MODE_BITSIZE (QImode) - 1))
   24246              :   == GET_MODE_BITSIZE (QImode) - 1))
   24247              :             return NULL;
   24248              :           return gen_split_708 (insn, operands);
   24249              : 
   24250              :         case 13:
   24251              :           if (!
   24252              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24253              : ((INTVAL (operands[3]) & (GET_MODE_BITSIZE (HImode) - 1))
   24254              :   == GET_MODE_BITSIZE (HImode) - 1))
   24255              :             return NULL;
   24256              :           return gen_split_710 (insn, operands);
   24257              : 
   24258              :         case 14:
   24259              :           if (!
   24260              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24261              : ((INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode) - 1))
   24262              :   == GET_MODE_BITSIZE (SImode) - 1))
   24263              :             return NULL;
   24264              :           return gen_split_712 (insn, operands);
   24265              : 
   24266              :         case 15:
   24267              :           if (!(
   24268              : #line 18489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24269              : ((INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode) - 1))
   24270              :   == GET_MODE_BITSIZE (DImode) - 1) && 
   24271              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24272              : (TARGET_64BIT)))
   24273              :             return NULL;
   24274              :           return gen_split_714 (insn, operands);
   24275              : 
   24276              :         case 16:
   24277              :           if (!
   24278              : #line 18560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24279              : ((INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0))
   24280              :             return NULL;
   24281              :           return gen_split_740 (insn, operands);
   24282              : 
   24283              :         case 17:
   24284              :           if (!
   24285              : #line 18560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24286              : ((INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0))
   24287              :             return NULL;
   24288              :           return gen_split_742 (insn, operands);
   24289              : 
   24290              :         case 18:
   24291              :           if (!
   24292              : #line 18560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24293              : ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0))
   24294              :             return NULL;
   24295              :           return gen_split_744 (insn, operands);
   24296              : 
   24297              :         case 19:
   24298              :           if (!(
   24299              : #line 18560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24300              : ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0) && 
   24301              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24302              : (TARGET_64BIT)))
   24303              :             return NULL;
   24304              :           return gen_split_746 (insn, operands);
   24305              : 
   24306              :         case 20:
   24307              :           if (!
   24308              : #line 18629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24309              : ((INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0))
   24310              :             return NULL;
   24311              :           return gen_split_772 (insn, operands);
   24312              : 
   24313              :         case 21:
   24314              :           if (!
   24315              : #line 18629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24316              : ((INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0))
   24317              :             return NULL;
   24318              :           return gen_split_774 (insn, operands);
   24319              : 
   24320              :         case 22:
   24321              :           if (!
   24322              : #line 18629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24323              : ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0))
   24324              :             return NULL;
   24325              :           return gen_split_776 (insn, operands);
   24326              : 
   24327              :         case 23:
   24328              :           if (!(
   24329              : #line 18629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24330              : ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0) && 
   24331              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24332              : (TARGET_64BIT)))
   24333              :             return NULL;
   24334              :           return gen_split_778 (insn, operands);
   24335              : 
   24336              :         default:
   24337              :           return NULL;
   24338              :         }
   24339              : 
   24340              :     case REG:
   24341              :     case SUBREG:
   24342              :     case MEM:
   24343              :       x5 = XEXP (x3, 1);
   24344              :       if (GET_CODE (x5) != CONST_INT)
   24345              :         return NULL;
   24346              :       switch (XWINT (x5, 0))
   24347              :         {
   24348              :         case 32L:
   24349              :           if (register_operand (operands[0], E_DImode)
   24350              :               && GET_MODE (x3) == E_DImode
   24351              :               && register_operand (operands[1], E_DImode)
   24352              :               && (
   24353              : #line 18716 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24354              : (!TARGET_64BIT) && 
   24355              : #line 18718 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24356              : ( reload_completed)))
   24357              :             return gen_split_784 (insn, operands);
   24358              :           break;
   24359              : 
   24360              :         case 64L:
   24361              :           if (register_operand (operands[0], E_TImode)
   24362              :               && GET_MODE (x3) == E_TImode
   24363              :               && register_operand (operands[1], E_TImode)
   24364              :               && (
   24365              : #line 18734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24366              : (TARGET_64BIT) && 
   24367              : #line 18736 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24368              : ( reload_completed)))
   24369              :             return gen_split_786 (insn, operands);
   24370              :           break;
   24371              : 
   24372              :         default:
   24373              :           break;
   24374              :         }
   24375              :       operands[2] = x5;
   24376              :       if (!const_int_operand (operands[2], E_QImode))
   24377              :         return NULL;
   24378              :       switch (pattern132 (x3))
   24379              :         {
   24380              :         case 0:
   24381              :           if (!
   24382              : #line 18818 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24383              : (TARGET_BMI2 && reload_completed && !optimize_function_for_size_p (cfun)
   24384              :    && !TARGET_APX_NDD))
   24385              :             return NULL;
   24386              :           return gen_split_790 (insn, operands);
   24387              : 
   24388              :         case 1:
   24389              :           if (!(
   24390              : #line 18818 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24391              : (TARGET_BMI2 && reload_completed && !optimize_function_for_size_p (cfun)
   24392              :    && !TARGET_APX_NDD) && 
   24393              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24394              : (TARGET_64BIT)))
   24395              :             return NULL;
   24396              :           return gen_split_791 (insn, operands);
   24397              : 
   24398              :         default:
   24399              :           return NULL;
   24400              :         }
   24401              : 
   24402              :     default:
   24403              :       return NULL;
   24404              :     }
   24405              : }
   24406              : 
   24407              :  rtx_insn *
   24408              : split_11 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   24409              : {
   24410              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24411              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   24412              :   rtx x10, x11;
   24413              :   rtx_insn *res ATTRIBUTE_UNUSED;
   24414              :   x2 = XEXP (x1, 1);
   24415              :   x3 = XEXP (x2, 0);
   24416              :   switch (GET_CODE (x3))
   24417              :     {
   24418              :     case NE:
   24419              :     case EQ:
   24420              :       operands[5] = x3;
   24421              :       if (bt_comparison_operator (operands[5], E_VOIDmode))
   24422              :         {
   24423              :           res = split_3 (x1, insn);
   24424              :           if (res != NULL_RTX)
   24425              :             return res;
   24426              :         }
   24427              :       x4 = XEXP (x3, 0);
   24428              :       if (!ix86_comparison_operator (x4, E_VOIDmode))
   24429              :         return NULL;
   24430              :       operands[0] = x4;
   24431              :       x5 = XEXP (x4, 0);
   24432              :       if (GET_CODE (x5) != REG
   24433              :           || REGNO (x5) != 17)
   24434              :         return NULL;
   24435              :       x6 = XEXP (x4, 1);
   24436              :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   24437              :         return NULL;
   24438              :       x7 = XEXP (x3, 1);
   24439              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   24440              :         return NULL;
   24441              :       x8 = XEXP (x2, 1);
   24442              :       if (GET_CODE (x8) != LABEL_REF)
   24443              :         return NULL;
   24444              :       x9 = XEXP (x2, 2);
   24445              :       if (GET_CODE (x9) != PC)
   24446              :         return NULL;
   24447              :       x10 = XEXP (x1, 0);
   24448              :       if (GET_CODE (x10) != PC)
   24449              :         return NULL;
   24450              :       x11 = XEXP (x8, 0);
   24451              :       operands[1] = x11;
   24452              :       switch (GET_CODE (x3))
   24453              :         {
   24454              :         case NE:
   24455              :           return gen_split_864 (insn, operands);
   24456              : 
   24457              :         case EQ:
   24458              :           return gen_split_865 (insn, operands);
   24459              : 
   24460              :         default:
   24461              :           return NULL;
   24462              :         }
   24463              : 
   24464              :     case GEU:
   24465              :     case LTU:
   24466              :       operands[1] = x3;
   24467              :       if (!add_comparison_operator (operands[1], E_VOIDmode))
   24468              :         return NULL;
   24469              :       x4 = XEXP (x3, 0);
   24470              :       if (GET_CODE (x4) != NOT)
   24471              :         return NULL;
   24472              :       x8 = XEXP (x2, 1);
   24473              :       if (GET_CODE (x8) != LABEL_REF)
   24474              :         return NULL;
   24475              :       x9 = XEXP (x2, 2);
   24476              :       if (GET_CODE (x9) != PC)
   24477              :         return NULL;
   24478              :       x10 = XEXP (x1, 0);
   24479              :       if (GET_CODE (x10) != PC)
   24480              :         return NULL;
   24481              :       x5 = XEXP (x4, 0);
   24482              :       operands[2] = x5;
   24483              :       x7 = XEXP (x3, 1);
   24484              :       operands[3] = x7;
   24485              :       x11 = XEXP (x8, 0);
   24486              :       operands[0] = x11;
   24487              :       switch (GET_MODE (x4))
   24488              :         {
   24489              :         case E_QImode:
   24490              :           if (!register_operand (operands[2], E_QImode)
   24491              :               || !nonimmediate_operand (operands[3], E_QImode))
   24492              :             return NULL;
   24493              :           return gen_split_859 (insn, operands);
   24494              : 
   24495              :         case E_HImode:
   24496              :           if (!register_operand (operands[2], E_HImode)
   24497              :               || !nonimmediate_operand (operands[3], E_HImode))
   24498              :             return NULL;
   24499              :           return gen_split_860 (insn, operands);
   24500              : 
   24501              :         case E_SImode:
   24502              :           if (!register_operand (operands[2], E_SImode)
   24503              :               || !nonimmediate_operand (operands[3], E_SImode))
   24504              :             return NULL;
   24505              :           return gen_split_861 (insn, operands);
   24506              : 
   24507              :         case E_DImode:
   24508              :           if (!register_operand (operands[2], E_DImode)
   24509              :               || !nonimmediate_operand (operands[3], E_DImode)
   24510              :               || !
   24511              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24512              : (TARGET_64BIT))
   24513              :             return NULL;
   24514              :           return gen_split_862 (insn, operands);
   24515              : 
   24516              :         default:
   24517              :           return NULL;
   24518              :         }
   24519              : 
   24520              :     case GTU:
   24521              :     case LEU:
   24522              :       operands[1] = x3;
   24523              :       if (!shr_comparison_operator (operands[1], E_VOIDmode))
   24524              :         return NULL;
   24525              :       x8 = XEXP (x2, 1);
   24526              :       if (GET_CODE (x8) != LABEL_REF)
   24527              :         return NULL;
   24528              :       x9 = XEXP (x2, 2);
   24529              :       if (GET_CODE (x9) != PC)
   24530              :         return NULL;
   24531              :       x10 = XEXP (x1, 0);
   24532              :       if (GET_CODE (x10) != PC)
   24533              :         return NULL;
   24534              :       x4 = XEXP (x3, 0);
   24535              :       operands[2] = x4;
   24536              :       if (!register_operand (operands[2], E_DImode))
   24537              :         return NULL;
   24538              :       x7 = XEXP (x3, 1);
   24539              :       operands[3] = x7;
   24540              :       if (!const_int_operand (operands[3], E_VOIDmode))
   24541              :         return NULL;
   24542              :       x11 = XEXP (x8, 0);
   24543              :       operands[0] = x11;
   24544              :       if (!
   24545              : #line 19998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24546              : (TARGET_64BIT
   24547              :    && IN_RANGE (exact_log2 (UINTVAL (operands[3]) + 1), 32, 63)))
   24548              :         return NULL;
   24549              :       return gen_split_863 (insn, operands);
   24550              : 
   24551              :     default:
   24552              :       return NULL;
   24553              :     }
   24554              : }
   24555              : 
   24556              :  rtx_insn *
   24557              : split_13 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   24558              : {
   24559              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24560              :   rtx x2, x3, x4;
   24561              :   rtx_insn *res ATTRIBUTE_UNUSED;
   24562              :   x2 = XEXP (x1, 0);
   24563              :   operands[0] = x2;
   24564              :   x3 = XEXP (x1, 1);
   24565              :   x4 = XEXP (x3, 0);
   24566              :   operands[1] = x4;
   24567              :   switch (GET_MODE (operands[0]))
   24568              :     {
   24569              :     case E_SFmode:
   24570              :       if (GET_MODE (x3) != E_SFmode)
   24571              :         return NULL;
   24572              :       if (sse_reg_operand (operands[0], E_SFmode)
   24573              :           && nonimmediate_operand (operands[1], E_SImode))
   24574              :         {
   24575              :           if (
   24576              : #line 6247 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24577              : (TARGET_SSE2
   24578              :    && TARGET_USE_VECTOR_CONVERTS
   24579              :    && optimize_function_for_speed_p (cfun)
   24580              :    && reload_completed
   24581              :    && (MEM_P (operands[1]) || TARGET_INTER_UNIT_MOVES_TO_VEC)
   24582              :    && (!EXT_REX_SSE_REG_P (operands[0])
   24583              :        || TARGET_AVX512VL)))
   24584              :             return gen_split_85 (insn, operands);
   24585              :           if (
   24586              : #line 6332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24587              : (!TARGET_AVX
   24588              :    && TARGET_SSE_PARTIAL_REG_CONVERTS_DEPENDENCY
   24589              :    && epilogue_completed
   24590              :    && optimize_function_for_speed_p (cfun)
   24591              :    && (!EXT_REX_SSE_REG_P (operands[0])
   24592              :        || TARGET_AVX512VL)))
   24593              :             return gen_split_93 (insn, operands);
   24594              :         }
   24595              :       if (register_operand (operands[0], E_SFmode)
   24596              :           && register_operand (operands[1], E_DImode)
   24597              :           && 
   24598              : #line 6276 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24599              : (!TARGET_64BIT && TARGET_INTER_UNIT_MOVES_TO_VEC
   24600              :    && TARGET_80387 && X87_ENABLE_FLOAT (SFmode, DImode)
   24601              :    && TARGET_SSE2 && optimize_function_for_speed_p (cfun)
   24602              :    && can_create_pseudo_p ()))
   24603              :         return gen_split_87 (insn, operands);
   24604              :       if (!sse_reg_operand (operands[0], E_SFmode)
   24605              :           || !nonimmediate_operand (operands[1], E_DImode)
   24606              :           || !(
   24607              : #line 6332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24608              : (!TARGET_AVX
   24609              :    && TARGET_SSE_PARTIAL_REG_CONVERTS_DEPENDENCY
   24610              :    && epilogue_completed
   24611              :    && optimize_function_for_speed_p (cfun)
   24612              :    && (!EXT_REX_SSE_REG_P (operands[0])
   24613              :        || TARGET_AVX512VL)) && 
   24614              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24615              : (TARGET_64BIT)))
   24616              :         return NULL;
   24617              :       return gen_split_94 (insn, operands);
   24618              : 
   24619              :     case E_DFmode:
   24620              :       if (GET_MODE (x3) != E_DFmode)
   24621              :         return NULL;
   24622              :       if (sse_reg_operand (operands[0], E_DFmode)
   24623              :           && nonimmediate_operand (operands[1], E_SImode))
   24624              :         {
   24625              :           if (
   24626              : #line 6247 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24627              : (TARGET_SSE2
   24628              :    && TARGET_USE_VECTOR_CONVERTS
   24629              :    && optimize_function_for_speed_p (cfun)
   24630              :    && reload_completed
   24631              :    && (MEM_P (operands[1]) || TARGET_INTER_UNIT_MOVES_TO_VEC)
   24632              :    && (!EXT_REX_SSE_REG_P (operands[0])
   24633              :        || TARGET_AVX512VL)))
   24634              :             return gen_split_86 (insn, operands);
   24635              :           if (
   24636              : #line 6332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24637              : (!TARGET_AVX
   24638              :    && TARGET_SSE_PARTIAL_REG_CONVERTS_DEPENDENCY
   24639              :    && epilogue_completed
   24640              :    && optimize_function_for_speed_p (cfun)
   24641              :    && (!EXT_REX_SSE_REG_P (operands[0])
   24642              :        || TARGET_AVX512VL)))
   24643              :             return gen_split_95 (insn, operands);
   24644              :         }
   24645              :       if (register_operand (operands[0], E_DFmode)
   24646              :           && register_operand (operands[1], E_DImode)
   24647              :           && 
   24648              : #line 6276 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24649              : (!TARGET_64BIT && TARGET_INTER_UNIT_MOVES_TO_VEC
   24650              :    && TARGET_80387 && X87_ENABLE_FLOAT (DFmode, DImode)
   24651              :    && TARGET_SSE2 && optimize_function_for_speed_p (cfun)
   24652              :    && can_create_pseudo_p ()))
   24653              :         return gen_split_88 (insn, operands);
   24654              :       if (!sse_reg_operand (operands[0], E_DFmode)
   24655              :           || !nonimmediate_operand (operands[1], E_DImode)
   24656              :           || !(
   24657              : #line 6332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24658              : (!TARGET_AVX
   24659              :    && TARGET_SSE_PARTIAL_REG_CONVERTS_DEPENDENCY
   24660              :    && epilogue_completed
   24661              :    && optimize_function_for_speed_p (cfun)
   24662              :    && (!EXT_REX_SSE_REG_P (operands[0])
   24663              :        || TARGET_AVX512VL)) && 
   24664              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24665              : (TARGET_64BIT)))
   24666              :         return NULL;
   24667              :       return gen_split_96 (insn, operands);
   24668              : 
   24669              :     case E_XFmode:
   24670              :       if (!register_operand (operands[0], E_XFmode)
   24671              :           || GET_MODE (x3) != E_XFmode
   24672              :           || !register_operand (operands[1], E_DImode)
   24673              :           || !
   24674              : #line 6276 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24675              : (!TARGET_64BIT && TARGET_INTER_UNIT_MOVES_TO_VEC
   24676              :    && TARGET_80387 && X87_ENABLE_FLOAT (XFmode, DImode)
   24677              :    && TARGET_SSE2 && optimize_function_for_speed_p (cfun)
   24678              :    && can_create_pseudo_p ()))
   24679              :         return NULL;
   24680              :       return gen_split_89 (insn, operands);
   24681              : 
   24682              :     default:
   24683              :       return NULL;
   24684              :     }
   24685              : }
   24686              : 
   24687              :  rtx_insn *
   24688              : split_22 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   24689              : {
   24690              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24691              :   rtx x2, x3, x4, x5, x6, x7, x8;
   24692              :   rtx_insn *res ATTRIBUTE_UNUSED;
   24693              :   x2 = XVECEXP (x1, 0, 0);
   24694              :   x3 = XEXP (x2, 1);
   24695              :   x4 = XEXP (x3, 0);
   24696              :   x5 = XEXP (x4, 0);
   24697              :   switch (GET_CODE (x5))
   24698              :     {
   24699              :     case REG:
   24700              :     case SUBREG:
   24701              :       operands[1] = x5;
   24702              :       if (!register_operand (operands[1], E_SImode))
   24703              :         return NULL;
   24704              :       x6 = XEXP (x2, 0);
   24705              :       operands[0] = x6;
   24706              :       if (!register_operand (operands[0], E_DImode)
   24707              :           || GET_MODE (x3) != E_DImode
   24708              :           || GET_MODE (x4) != E_DImode)
   24709              :         return NULL;
   24710              :       x7 = XEXP (x3, 1);
   24711              :       operands[2] = x7;
   24712              :       if (!x86_64_zext_immediate_operand (operands[2], E_DImode)
   24713              :           || !
   24714              : #line 13024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24715              : (TARGET_64BIT))
   24716              :         return NULL;
   24717              :       return gen_split_292 (insn, operands);
   24718              : 
   24719              :     case ASHIFTRT:
   24720              :     case LSHIFTRT:
   24721              :     case SIGN_EXTRACT:
   24722              :     case ZERO_EXTRACT:
   24723              :       operands[3] = x5;
   24724              :       if (GET_MODE (x3) != E_QImode
   24725              :           || GET_MODE (x4) != E_QImode)
   24726              :         return NULL;
   24727              :       x8 = XEXP (x5, 0);
   24728              :       if (!int248_register_operand (x8, E_VOIDmode))
   24729              :         return NULL;
   24730              :       operands[2] = x8;
   24731              :       switch (pattern1643 (x2))
   24732              :         {
   24733              :         case 0:
   24734              :           if ((
   24735              : #line 13192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24736              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   24737              : #line 13196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24738              : ( reload_completed
   24739              :    && !rtx_equal_p (operands[0], operands[1]))))
   24740              :             return gen_split_299 (insn, operands);
   24741              :           break;
   24742              : 
   24743              :         case 1:
   24744              :           if ((
   24745              : #line 13192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24746              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   24747              : #line 13196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24748              : ( reload_completed
   24749              :    && !rtx_equal_p (operands[0], operands[1]))))
   24750              :             return gen_split_302 (insn, operands);
   24751              :           break;
   24752              : 
   24753              :         case 2:
   24754              :           if (((
   24755              : #line 13192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24756              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   24757              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24758              : (TARGET_64BIT)) && 
   24759              : #line 13196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24760              : ( reload_completed
   24761              :    && !rtx_equal_p (operands[0], operands[1]))))
   24762              :             return gen_split_305 (insn, operands);
   24763              :           break;
   24764              : 
   24765              :         default:
   24766              :           break;
   24767              :         }
   24768              :       operands[1] = x8;
   24769              :       switch (pattern1644 (x2))
   24770              :         {
   24771              :         case 0:
   24772              :           if (!(
   24773              : #line 13221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24774              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   24775              : #line 13223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24776              : ( reload_completed)))
   24777              :             return NULL;
   24778              :           return gen_split_308 (insn, operands);
   24779              : 
   24780              :         case 1:
   24781              :           if (!(
   24782              : #line 13221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24783              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   24784              : #line 13223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24785              : ( reload_completed)))
   24786              :             return NULL;
   24787              :           return gen_split_311 (insn, operands);
   24788              : 
   24789              :         case 2:
   24790              :           if (!((
   24791              : #line 13221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24792              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   24793              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24794              : (TARGET_64BIT)) && 
   24795              : #line 13223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24796              : ( reload_completed)))
   24797              :             return NULL;
   24798              :           return gen_split_314 (insn, operands);
   24799              : 
   24800              :         case 3:
   24801              :           if (!
   24802              : #line 13458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24803              : ( reload_completed))
   24804              :             return NULL;
   24805              :           return gen_split_328 (insn, operands);
   24806              : 
   24807              :         case 4:
   24808              :           if (!
   24809              : #line 13458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24810              : ( reload_completed))
   24811              :             return NULL;
   24812              :           return gen_split_331 (insn, operands);
   24813              : 
   24814              :         case 5:
   24815              :           if (!(
   24816              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24817              : (TARGET_64BIT) && 
   24818              : #line 13458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24819              : ( reload_completed)))
   24820              :             return NULL;
   24821              :           return gen_split_334 (insn, operands);
   24822              : 
   24823              :         default:
   24824              :           return NULL;
   24825              :         }
   24826              : 
   24827              :     case ROTATE:
   24828              :       if (GET_MODE (x5) != E_SImode)
   24829              :         return NULL;
   24830              :       x8 = XEXP (x5, 0);
   24831              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + -2])
   24832              :         return NULL;
   24833              :       switch (pattern1443 (x2))
   24834              :         {
   24835              :         case 0:
   24836              :           if (!(
   24837              : #line 19197 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24838              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   24839              : #line 19199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24840              : ( 1)))
   24841              :             return NULL;
   24842              :           return gen_split_814 (insn, operands);
   24843              : 
   24844              :         case 1:
   24845              :           if (!(
   24846              : #line 19197 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24847              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
   24848              : #line 19199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24849              : ( 1)))
   24850              :             return NULL;
   24851              :           return gen_split_815 (insn, operands);
   24852              : 
   24853              :         default:
   24854              :           return NULL;
   24855              :         }
   24856              : 
   24857              :     default:
   24858              :       return NULL;
   24859              :     }
   24860              : }
   24861              : 
   24862              :  rtx_insn *
   24863              : split_28 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   24864              : {
   24865              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24866              :   rtx x2, x3, x4, x5, x6, x7;
   24867              :   rtx_insn *res ATTRIBUTE_UNUSED;
   24868              :   x2 = XVECEXP (x1, 0, 0);
   24869              :   x3 = XEXP (x2, 1);
   24870              :   if (maybe_ne (SUBREG_BYTE (x3), 0))
   24871              :     return NULL;
   24872              :   x4 = XVECEXP (x1, 0, 1);
   24873              :   if (pattern237 (x4, 
   24874              : E_CCmode, 
   24875              : 17) != 0)
   24876              :     return NULL;
   24877              :   switch (pattern1049 (x2))
   24878              :     {
   24879              :     case 0:
   24880              :       x5 = XEXP (x3, 0);
   24881              :       x6 = XEXP (x5, 1);
   24882              :       operands[2] = x6;
   24883              :       if (general_operand (operands[2], E_QImode))
   24884              :         {
   24885              :           switch (pattern1047 (x2))
   24886              :             {
   24887              :             case 0:
   24888              :               if (
   24889              : #line 7668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24890              : (reload_completed
   24891              :    && !rtx_equal_p (operands[0], operands[1])))
   24892              :                 return gen_split_143 (insn, operands);
   24893              :               break;
   24894              : 
   24895              :             case 1:
   24896              :               if (
   24897              : #line 7668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24898              : (reload_completed
   24899              :    && !rtx_equal_p (operands[0], operands[1])))
   24900              :                 return gen_split_144 (insn, operands);
   24901              :               break;
   24902              : 
   24903              :             case 2:
   24904              :               if ((
   24905              : #line 7668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24906              : (reload_completed
   24907              :    && !rtx_equal_p (operands[0], operands[1])) && 
   24908              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24909              : (TARGET_64BIT)))
   24910              :                 return gen_split_145 (insn, operands);
   24911              :               break;
   24912              : 
   24913              :             default:
   24914              :               break;
   24915              :             }
   24916              :         }
   24917              :       if (GET_CODE (x6) != SUBREG)
   24918              :         return NULL;
   24919              :       switch (pattern1811 (x2))
   24920              :         {
   24921              :         case 0:
   24922              :           if (!
   24923              : #line 7711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24924              : (reload_completed
   24925              :    && !(rtx_equal_p (operands[0], operands[1])
   24926              :         || (PLUS == PLUS && rtx_equal_p (operands[0], operands[2])))))
   24927              :             return NULL;
   24928              :           return gen_split_146 (insn, operands);
   24929              : 
   24930              :         case 1:
   24931              :           if (!
   24932              : #line 7711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24933              : (reload_completed
   24934              :    && !(rtx_equal_p (operands[0], operands[1])
   24935              :         || (PLUS == PLUS && rtx_equal_p (operands[0], operands[2])))))
   24936              :             return NULL;
   24937              :           return gen_split_148 (insn, operands);
   24938              : 
   24939              :         case 2:
   24940              :           if (!(
   24941              : #line 7711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24942              : (reload_completed
   24943              :    && !(rtx_equal_p (operands[0], operands[1])
   24944              :         || (PLUS == PLUS && rtx_equal_p (operands[0], operands[2])))) && 
   24945              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24946              : (TARGET_64BIT)))
   24947              :             return NULL;
   24948              :           return gen_split_150 (insn, operands);
   24949              : 
   24950              :         default:
   24951              :           return NULL;
   24952              :         }
   24953              : 
   24954              :     case 1:
   24955              :       x5 = XEXP (x3, 0);
   24956              :       x6 = XEXP (x5, 1);
   24957              :       if (GET_CODE (x6) == SUBREG)
   24958              :         {
   24959              :           switch (pattern1811 (x2))
   24960              :             {
   24961              :             case 0:
   24962              :               if (
   24963              : #line 7711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24964              : (reload_completed
   24965              :    && !(rtx_equal_p (operands[0], operands[1])
   24966              :         || (MINUS == PLUS && rtx_equal_p (operands[0], operands[2])))))
   24967              :                 return gen_split_147 (insn, operands);
   24968              :               break;
   24969              : 
   24970              :             case 1:
   24971              :               if (
   24972              : #line 7711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24973              : (reload_completed
   24974              :    && !(rtx_equal_p (operands[0], operands[1])
   24975              :         || (MINUS == PLUS && rtx_equal_p (operands[0], operands[2])))))
   24976              :                 return gen_split_149 (insn, operands);
   24977              :               break;
   24978              : 
   24979              :             case 2:
   24980              :               if ((
   24981              : #line 7711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24982              : (reload_completed
   24983              :    && !(rtx_equal_p (operands[0], operands[1])
   24984              :         || (MINUS == PLUS && rtx_equal_p (operands[0], operands[2])))) && 
   24985              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24986              : (TARGET_64BIT)))
   24987              :                 return gen_split_151 (insn, operands);
   24988              :               break;
   24989              : 
   24990              :             default:
   24991              :               break;
   24992              :             }
   24993              :         }
   24994              :       operands[2] = x6;
   24995              :       if (!general_operand (operands[2], E_QImode))
   24996              :         return NULL;
   24997              :       switch (pattern1047 (x2))
   24998              :         {
   24999              :         case 0:
   25000              :           if (!
   25001              : #line 8476 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25002              : (reload_completed
   25003              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25004              :             return NULL;
   25005              :           return gen_split_189 (insn, operands);
   25006              : 
   25007              :         case 1:
   25008              :           if (!
   25009              : #line 8476 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25010              : (reload_completed
   25011              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25012              :             return NULL;
   25013              :           return gen_split_190 (insn, operands);
   25014              : 
   25015              :         case 2:
   25016              :           if (!(
   25017              : #line 8476 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25018              : (reload_completed
   25019              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   25020              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25021              : (TARGET_64BIT)))
   25022              :             return NULL;
   25023              :           return gen_split_191 (insn, operands);
   25024              : 
   25025              :         default:
   25026              :           return NULL;
   25027              :         }
   25028              : 
   25029              :     case 2:
   25030              :       x5 = XEXP (x3, 0);
   25031              :       x6 = XEXP (x5, 1);
   25032              :       operands[2] = x6;
   25033              :       if (general_operand (operands[2], E_QImode))
   25034              :         {
   25035              :           switch (pattern1047 (x2))
   25036              :             {
   25037              :             case 0:
   25038              :               if (
   25039              : #line 13506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25040              : (reload_completed
   25041              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25042              :                 return gen_split_337 (insn, operands);
   25043              :               break;
   25044              : 
   25045              :             case 1:
   25046              :               if (
   25047              : #line 13506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25048              : (reload_completed
   25049              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25050              :                 return gen_split_340 (insn, operands);
   25051              :               break;
   25052              : 
   25053              :             case 2:
   25054              :               if ((
   25055              : #line 13506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25056              : (reload_completed
   25057              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   25058              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25059              : (TARGET_64BIT)))
   25060              :                 return gen_split_343 (insn, operands);
   25061              :               break;
   25062              : 
   25063              :             default:
   25064              :               break;
   25065              :             }
   25066              :         }
   25067              :       if (GET_CODE (x6) != SUBREG)
   25068              :         return NULL;
   25069              :       switch (pattern1811 (x2))
   25070              :         {
   25071              :         case 0:
   25072              :           if (!
   25073              : #line 13598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25074              : (reload_completed
   25075              :    && !(rtx_equal_p (operands[0], operands[1])
   25076              :         || rtx_equal_p (operands[0], operands[2]))))
   25077              :             return NULL;
   25078              :           return gen_split_355 (insn, operands);
   25079              : 
   25080              :         case 1:
   25081              :           if (!
   25082              : #line 13598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25083              : (reload_completed
   25084              :    && !(rtx_equal_p (operands[0], operands[1])
   25085              :         || rtx_equal_p (operands[0], operands[2]))))
   25086              :             return NULL;
   25087              :           return gen_split_358 (insn, operands);
   25088              : 
   25089              :         case 2:
   25090              :           if (!(
   25091              : #line 13598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25092              : (reload_completed
   25093              :    && !(rtx_equal_p (operands[0], operands[1])
   25094              :         || rtx_equal_p (operands[0], operands[2]))) && 
   25095              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25096              : (TARGET_64BIT)))
   25097              :             return NULL;
   25098              :           return gen_split_361 (insn, operands);
   25099              : 
   25100              :         default:
   25101              :           return NULL;
   25102              :         }
   25103              : 
   25104              :     case 3:
   25105              :       x5 = XEXP (x3, 0);
   25106              :       x6 = XEXP (x5, 1);
   25107              :       operands[2] = x6;
   25108              :       if (general_operand (operands[2], E_QImode))
   25109              :         {
   25110              :           switch (pattern1047 (x2))
   25111              :             {
   25112              :             case 0:
   25113              :               if (
   25114              : #line 13506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25115              : (reload_completed
   25116              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25117              :                 return gen_split_338 (insn, operands);
   25118              :               break;
   25119              : 
   25120              :             case 1:
   25121              :               if (
   25122              : #line 13506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25123              : (reload_completed
   25124              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25125              :                 return gen_split_341 (insn, operands);
   25126              :               break;
   25127              : 
   25128              :             case 2:
   25129              :               if ((
   25130              : #line 13506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25131              : (reload_completed
   25132              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   25133              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25134              : (TARGET_64BIT)))
   25135              :                 return gen_split_344 (insn, operands);
   25136              :               break;
   25137              : 
   25138              :             default:
   25139              :               break;
   25140              :             }
   25141              :         }
   25142              :       if (GET_CODE (x6) != SUBREG)
   25143              :         return NULL;
   25144              :       switch (pattern1811 (x2))
   25145              :         {
   25146              :         case 0:
   25147              :           if (!
   25148              : #line 13598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25149              : (reload_completed
   25150              :    && !(rtx_equal_p (operands[0], operands[1])
   25151              :         || rtx_equal_p (operands[0], operands[2]))))
   25152              :             return NULL;
   25153              :           return gen_split_356 (insn, operands);
   25154              : 
   25155              :         case 1:
   25156              :           if (!
   25157              : #line 13598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25158              : (reload_completed
   25159              :    && !(rtx_equal_p (operands[0], operands[1])
   25160              :         || rtx_equal_p (operands[0], operands[2]))))
   25161              :             return NULL;
   25162              :           return gen_split_359 (insn, operands);
   25163              : 
   25164              :         case 2:
   25165              :           if (!(
   25166              : #line 13598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25167              : (reload_completed
   25168              :    && !(rtx_equal_p (operands[0], operands[1])
   25169              :         || rtx_equal_p (operands[0], operands[2]))) && 
   25170              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25171              : (TARGET_64BIT)))
   25172              :             return NULL;
   25173              :           return gen_split_362 (insn, operands);
   25174              : 
   25175              :         default:
   25176              :           return NULL;
   25177              :         }
   25178              : 
   25179              :     case 4:
   25180              :       x5 = XEXP (x3, 0);
   25181              :       x6 = XEXP (x5, 1);
   25182              :       operands[2] = x6;
   25183              :       if (general_operand (operands[2], E_QImode))
   25184              :         {
   25185              :           switch (pattern1047 (x2))
   25186              :             {
   25187              :             case 0:
   25188              :               if (
   25189              : #line 13506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25190              : (reload_completed
   25191              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25192              :                 return gen_split_339 (insn, operands);
   25193              :               break;
   25194              : 
   25195              :             case 1:
   25196              :               if (
   25197              : #line 13506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25198              : (reload_completed
   25199              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25200              :                 return gen_split_342 (insn, operands);
   25201              :               break;
   25202              : 
   25203              :             case 2:
   25204              :               if ((
   25205              : #line 13506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25206              : (reload_completed
   25207              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   25208              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25209              : (TARGET_64BIT)))
   25210              :                 return gen_split_345 (insn, operands);
   25211              :               break;
   25212              : 
   25213              :             default:
   25214              :               break;
   25215              :             }
   25216              :         }
   25217              :       if (GET_CODE (x6) != SUBREG)
   25218              :         return NULL;
   25219              :       switch (pattern1811 (x2))
   25220              :         {
   25221              :         case 0:
   25222              :           if (!
   25223              : #line 13598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25224              : (reload_completed
   25225              :    && !(rtx_equal_p (operands[0], operands[1])
   25226              :         || rtx_equal_p (operands[0], operands[2]))))
   25227              :             return NULL;
   25228              :           return gen_split_357 (insn, operands);
   25229              : 
   25230              :         case 1:
   25231              :           if (!
   25232              : #line 13598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25233              : (reload_completed
   25234              :    && !(rtx_equal_p (operands[0], operands[1])
   25235              :         || rtx_equal_p (operands[0], operands[2]))))
   25236              :             return NULL;
   25237              :           return gen_split_360 (insn, operands);
   25238              : 
   25239              :         case 2:
   25240              :           if (!(
   25241              : #line 13598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25242              : (reload_completed
   25243              :    && !(rtx_equal_p (operands[0], operands[1])
   25244              :         || rtx_equal_p (operands[0], operands[2]))) && 
   25245              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25246              : (TARGET_64BIT)))
   25247              :             return NULL;
   25248              :           return gen_split_363 (insn, operands);
   25249              : 
   25250              :         default:
   25251              :           return NULL;
   25252              :         }
   25253              : 
   25254              :     case 5:
   25255              :       if (!
   25256              : #line 14918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25257              : (reload_completed
   25258              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25259              :         return NULL;
   25260              :       return gen_split_500 (insn, operands);
   25261              : 
   25262              :     case 6:
   25263              :       if (!
   25264              : #line 14918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25265              : (reload_completed
   25266              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25267              :         return NULL;
   25268              :       return gen_split_501 (insn, operands);
   25269              : 
   25270              :     case 7:
   25271              :       if (!(
   25272              : #line 14918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25273              : (reload_completed
   25274              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   25275              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25276              : (TARGET_64BIT)))
   25277              :         return NULL;
   25278              :       return gen_split_502 (insn, operands);
   25279              : 
   25280              :     case 8:
   25281              :       if (!
   25282              : #line 16874 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25283              : (reload_completed
   25284              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25285              :         return NULL;
   25286              :       return gen_split_592 (insn, operands);
   25287              : 
   25288              :     case 9:
   25289              :       if (!
   25290              : #line 16874 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25291              : (reload_completed
   25292              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25293              :         return NULL;
   25294              :       return gen_split_593 (insn, operands);
   25295              : 
   25296              :     case 10:
   25297              :       if (!(
   25298              : #line 16874 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25299              : (reload_completed
   25300              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   25301              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25302              : (TARGET_64BIT)))
   25303              :         return NULL;
   25304              :       return gen_split_594 (insn, operands);
   25305              : 
   25306              :     case 11:
   25307              :       x7 = XEXP (x2, 0);
   25308              :       operands[0] = x7;
   25309              :       switch (pattern1241 (x3))
   25310              :         {
   25311              :         case 0:
   25312              :           if (((
   25313              : #line 17102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25314              : (UINTVAL (operands[2]) < 4 * BITS_PER_UNIT) && 
   25315              : #line 1239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25316              : (!TARGET_64BIT)) && 
   25317              : #line 17104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25318              : ( reload_completed)))
   25319              :             return gen_split_611 (insn, operands);
   25320              :           break;
   25321              : 
   25322              :         case 1:
   25323              :           if (((
   25324              : #line 17102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25325              : (UINTVAL (operands[2]) < 8 * BITS_PER_UNIT) && 
   25326              : #line 1240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25327              : (TARGET_64BIT)) && 
   25328              : #line 17104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25329              : ( reload_completed)))
   25330              :             return gen_split_613 (insn, operands);
   25331              :           break;
   25332              : 
   25333              :         default:
   25334              :           break;
   25335              :         }
   25336              :       x5 = XEXP (x3, 0);
   25337              :       if (GET_MODE (x5) != E_QImode)
   25338              :         return NULL;
   25339              :       switch (pattern1048 (x2))
   25340              :         {
   25341              :         case 0:
   25342              :           if (!
   25343              : #line 18068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25344              : (reload_completed
   25345              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25346              :             return NULL;
   25347              :           return gen_split_638 (insn, operands);
   25348              : 
   25349              :         case 1:
   25350              :           if (!
   25351              : #line 18068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25352              : (reload_completed
   25353              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25354              :             return NULL;
   25355              :           return gen_split_640 (insn, operands);
   25356              : 
   25357              :         case 2:
   25358              :           if (!(
   25359              : #line 18068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25360              : (reload_completed
   25361              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   25362              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25363              : (TARGET_64BIT)))
   25364              :             return NULL;
   25365              :           return gen_split_642 (insn, operands);
   25366              : 
   25367              :         default:
   25368              :           return NULL;
   25369              :         }
   25370              : 
   25371              :     case 12:
   25372              :       x7 = XEXP (x2, 0);
   25373              :       operands[0] = x7;
   25374              :       switch (pattern1241 (x3))
   25375              :         {
   25376              :         case 0:
   25377              :           if (((
   25378              : #line 17102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25379              : (UINTVAL (operands[2]) < 4 * BITS_PER_UNIT) && 
   25380              : #line 1239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25381              : (!TARGET_64BIT)) && 
   25382              : #line 17104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25383              : ( reload_completed)))
   25384              :             return gen_split_612 (insn, operands);
   25385              :           break;
   25386              : 
   25387              :         case 1:
   25388              :           if (((
   25389              : #line 17102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25390              : (UINTVAL (operands[2]) < 8 * BITS_PER_UNIT) && 
   25391              : #line 1240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25392              : (TARGET_64BIT)) && 
   25393              : #line 17104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25394              : ( reload_completed)))
   25395              :             return gen_split_614 (insn, operands);
   25396              :           break;
   25397              : 
   25398              :         default:
   25399              :           break;
   25400              :         }
   25401              :       x5 = XEXP (x3, 0);
   25402              :       if (GET_MODE (x5) != E_QImode)
   25403              :         return NULL;
   25404              :       switch (pattern1048 (x2))
   25405              :         {
   25406              :         case 0:
   25407              :           if (!
   25408              : #line 18068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25409              : (reload_completed
   25410              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25411              :             return NULL;
   25412              :           return gen_split_639 (insn, operands);
   25413              : 
   25414              :         case 1:
   25415              :           if (!
   25416              : #line 18068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25417              : (reload_completed
   25418              :    && !(rtx_equal_p (operands[0], operands[1]))))
   25419              :             return NULL;
   25420              :           return gen_split_641 (insn, operands);
   25421              : 
   25422              :         case 2:
   25423              :           if (!(
   25424              : #line 18068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25425              : (reload_completed
   25426              :    && !(rtx_equal_p (operands[0], operands[1]))) && 
   25427              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25428              : (TARGET_64BIT)))
   25429              :             return NULL;
   25430              :           return gen_split_643 (insn, operands);
   25431              : 
   25432              :         default:
   25433              :           return NULL;
   25434              :         }
   25435              : 
   25436              :     default:
   25437              :       return NULL;
   25438              :     }
   25439              : }
   25440              : 
   25441              :  rtx_insn *
   25442              : split_35 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25443              : {
   25444              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25445              :   rtx x2, x3, x4, x5, x6;
   25446              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25447              :   switch (pattern409 (x1))
   25448              :     {
   25449              :     case 0:
   25450              :       if (!(
   25451              : #line 18461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25452              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   25453              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (QImode)-1))
   25454              :       == GET_MODE_BITSIZE (QImode)-1
   25455              :    && ix86_pre_reload_split ()) && 
   25456              : #line 18466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25457              : ( 1)))
   25458              :         return NULL;
   25459              :       return gen_split_700 (insn, operands);
   25460              : 
   25461              :     case 1:
   25462              :       if (!(
   25463              : #line 18461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25464              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   25465              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (HImode)-1))
   25466              :       == GET_MODE_BITSIZE (HImode)-1
   25467              :    && ix86_pre_reload_split ()) && 
   25468              : #line 18466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25469              : ( 1)))
   25470              :         return NULL;
   25471              :       return gen_split_702 (insn, operands);
   25472              : 
   25473              :     case 2:
   25474              :       if (!(
   25475              : #line 18461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25476              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   25477              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   25478              :       == GET_MODE_BITSIZE (SImode)-1
   25479              :    && ix86_pre_reload_split ()) && 
   25480              : #line 18466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25481              : ( 1)))
   25482              :         return NULL;
   25483              :       return gen_split_704 (insn, operands);
   25484              : 
   25485              :     case 3:
   25486              :       if (!((
   25487              : #line 18461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25488              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   25489              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   25490              :       == GET_MODE_BITSIZE (DImode)-1
   25491              :    && ix86_pre_reload_split ()) && 
   25492              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25493              : (TARGET_64BIT)) && 
   25494              : #line 18466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25495              : ( 1)))
   25496              :         return NULL;
   25497              :       return gen_split_706 (insn, operands);
   25498              : 
   25499              :     case 4:
   25500              :       if (!(
   25501              : #line 18542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25502              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   25503              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
   25504              :    && ix86_pre_reload_split ()) && 
   25505              : #line 18546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25506              : ( 1)))
   25507              :         return NULL;
   25508              :       return gen_split_732 (insn, operands);
   25509              : 
   25510              :     case 5:
   25511              :       if (!(
   25512              : #line 18542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25513              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   25514              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
   25515              :    && ix86_pre_reload_split ()) && 
   25516              : #line 18546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25517              : ( 1)))
   25518              :         return NULL;
   25519              :       return gen_split_734 (insn, operands);
   25520              : 
   25521              :     case 6:
   25522              :       if (!(
   25523              : #line 18542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25524              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   25525              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   25526              :    && ix86_pre_reload_split ()) && 
   25527              : #line 18546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25528              : ( 1)))
   25529              :         return NULL;
   25530              :       return gen_split_736 (insn, operands);
   25531              : 
   25532              :     case 7:
   25533              :       if (!((
   25534              : #line 18542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25535              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   25536              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   25537              :    && ix86_pre_reload_split ()) && 
   25538              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25539              : (TARGET_64BIT)) && 
   25540              : #line 18546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25541              : ( 1)))
   25542              :         return NULL;
   25543              :       return gen_split_738 (insn, operands);
   25544              : 
   25545              :     case 8:
   25546              :       if (!(
   25547              : #line 18611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25548              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   25549              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
   25550              :    && ix86_pre_reload_split ()) && 
   25551              : #line 18615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25552              : ( 1)))
   25553              :         return NULL;
   25554              :       return gen_split_764 (insn, operands);
   25555              : 
   25556              :     case 9:
   25557              :       if (!(
   25558              : #line 18611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25559              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   25560              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
   25561              :    && ix86_pre_reload_split ()) && 
   25562              : #line 18615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25563              : ( 1)))
   25564              :         return NULL;
   25565              :       return gen_split_766 (insn, operands);
   25566              : 
   25567              :     case 10:
   25568              :       if (!(
   25569              : #line 18611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25570              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   25571              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   25572              :    && ix86_pre_reload_split ()) && 
   25573              : #line 18615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25574              : ( 1)))
   25575              :         return NULL;
   25576              :       return gen_split_768 (insn, operands);
   25577              : 
   25578              :     case 11:
   25579              :       if (!((
   25580              : #line 18611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25581              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   25582              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   25583              :    && ix86_pre_reload_split ()) && 
   25584              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25585              : (TARGET_64BIT)) && 
   25586              : #line 18615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25587              : ( 1)))
   25588              :         return NULL;
   25589              :       return gen_split_770 (insn, operands);
   25590              : 
   25591              :     case 12:
   25592              :       x2 = XVECEXP (x1, 0, 0);
   25593              :       x3 = XEXP (x2, 0);
   25594              :       operands[0] = x3;
   25595              :       x4 = XEXP (x2, 1);
   25596              :       switch (pattern1190 (x4))
   25597              :         {
   25598              :         case 0:
   25599              :           if ((
   25600              : #line 18413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25601              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   25602              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (QImode)-1))
   25603              :       == GET_MODE_BITSIZE (QImode)-1
   25604              :    && ix86_pre_reload_split ()) && 
   25605              : #line 18418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25606              : ( 1)))
   25607              :             return gen_split_684 (insn, operands);
   25608              :           break;
   25609              : 
   25610              :         case 1:
   25611              :           if ((
   25612              : #line 18413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25613              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   25614              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (HImode)-1))
   25615              :       == GET_MODE_BITSIZE (HImode)-1
   25616              :    && ix86_pre_reload_split ()) && 
   25617              : #line 18418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25618              : ( 1)))
   25619              :             return gen_split_686 (insn, operands);
   25620              :           break;
   25621              : 
   25622              :         case 2:
   25623              :           if ((
   25624              : #line 18413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25625              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   25626              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   25627              :       == GET_MODE_BITSIZE (SImode)-1
   25628              :    && ix86_pre_reload_split ()) && 
   25629              : #line 18418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25630              : ( 1)))
   25631              :             return gen_split_688 (insn, operands);
   25632              :           break;
   25633              : 
   25634              :         case 3:
   25635              :           if (((
   25636              : #line 18413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25637              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   25638              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   25639              :       == GET_MODE_BITSIZE (DImode)-1
   25640              :    && ix86_pre_reload_split ()) && 
   25641              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25642              : (TARGET_64BIT)) && 
   25643              : #line 18418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25644              : ( 1)))
   25645              :             return gen_split_690 (insn, operands);
   25646              :           break;
   25647              : 
   25648              :         case 4:
   25649              :           if ((
   25650              : #line 18506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25651              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   25652              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
   25653              :    && ix86_pre_reload_split ()) && 
   25654              : #line 18510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25655              : ( 1)))
   25656              :             return gen_split_716 (insn, operands);
   25657              :           break;
   25658              : 
   25659              :         case 5:
   25660              :           if ((
   25661              : #line 18506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25662              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   25663              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
   25664              :    && ix86_pre_reload_split ()) && 
   25665              : #line 18510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25666              : ( 1)))
   25667              :             return gen_split_718 (insn, operands);
   25668              :           break;
   25669              : 
   25670              :         case 6:
   25671              :           if ((
   25672              : #line 18506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25673              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   25674              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   25675              :    && ix86_pre_reload_split ()) && 
   25676              : #line 18510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25677              : ( 1)))
   25678              :             return gen_split_720 (insn, operands);
   25679              :           break;
   25680              : 
   25681              :         case 7:
   25682              :           if (((
   25683              : #line 18506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25684              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   25685              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   25686              :    && ix86_pre_reload_split ()) && 
   25687              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25688              : (TARGET_64BIT)) && 
   25689              : #line 18510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25690              : ( 1)))
   25691              :             return gen_split_722 (insn, operands);
   25692              :           break;
   25693              : 
   25694              :         case 8:
   25695              :           if ((
   25696              : #line 18575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25697              : (ix86_binary_operator_ok (ROTATE, QImode, operands)
   25698              :    && (INTVAL (operands[3]) & (1 * BITS_PER_UNIT - 1)) == 0
   25699              :    && ix86_pre_reload_split ()) && 
   25700              : #line 18579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25701              : ( 1)))
   25702              :             return gen_split_748 (insn, operands);
   25703              :           break;
   25704              : 
   25705              :         case 9:
   25706              :           if ((
   25707              : #line 18575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25708              : (ix86_binary_operator_ok (ROTATE, HImode, operands)
   25709              :    && (INTVAL (operands[3]) & (2 * BITS_PER_UNIT - 1)) == 0
   25710              :    && ix86_pre_reload_split ()) && 
   25711              : #line 18579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25712              : ( 1)))
   25713              :             return gen_split_750 (insn, operands);
   25714              :           break;
   25715              : 
   25716              :         case 10:
   25717              :           if ((
   25718              : #line 18575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25719              : (ix86_binary_operator_ok (ROTATE, SImode, operands)
   25720              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   25721              :    && ix86_pre_reload_split ()) && 
   25722              : #line 18579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25723              : ( 1)))
   25724              :             return gen_split_752 (insn, operands);
   25725              :           break;
   25726              : 
   25727              :         case 11:
   25728              :           if (((
   25729              : #line 18575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25730              : (ix86_binary_operator_ok (ROTATE, DImode, operands)
   25731              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   25732              :    && ix86_pre_reload_split ()) && 
   25733              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25734              : (TARGET_64BIT)) && 
   25735              : #line 18579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25736              : ( 1)))
   25737              :             return gen_split_754 (insn, operands);
   25738              :           break;
   25739              : 
   25740              :         case 12:
   25741              :           x5 = XEXP (x4, 1);
   25742              :           operands[2] = x5;
   25743              :           switch (pattern1347 (x4))
   25744              :             {
   25745              :             case 0:
   25746              :               if (
   25747              : #line 18805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25748              : (TARGET_BMI2 && reload_completed && !optimize_function_for_size_p (cfun)))
   25749              :                 return gen_split_788 (insn, operands);
   25750              :               break;
   25751              : 
   25752              :             case 1:
   25753              :               if ((
   25754              : #line 18805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25755              : (TARGET_BMI2 && reload_completed && !optimize_function_for_size_p (cfun)) && 
   25756              : #line 1171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25757              : (TARGET_64BIT)))
   25758              :                 return gen_split_789 (insn, operands);
   25759              :               break;
   25760              : 
   25761              :             default:
   25762              :               break;
   25763              :             }
   25764              :           if (XWINT (x5, 0) == 8L
   25765              :               && QIreg_operand (operands[0], E_HImode)
   25766              :               && GET_MODE (x4) == E_HImode)
   25767              :             {
   25768              :               x6 = XEXP (x4, 0);
   25769              :               if (rtx_equal_p (x6, operands[0])
   25770              :                   && 
   25771              : #line 18984 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25772              : (reload_completed
   25773              :   && (TARGET_USE_XCHGB || optimize_function_for_size_p (cfun))))
   25774              :                 return gen_split_800 (insn, operands);
   25775              :             }
   25776              :           break;
   25777              : 
   25778              :         default:
   25779              :           break;
   25780              :         }
   25781              :       x5 = XEXP (x4, 1);
   25782              :       operands[2] = x5;
   25783              :       switch (pattern1191 (x2))
   25784              :         {
   25785              :         case 0:
   25786              :           if (!(
   25787              : #line 18957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25788              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25789              : #line 18964 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25790              : ( reload_completed
   25791              :    && !(rtx_equal_p (operands[0], operands[1])))))
   25792              :             return NULL;
   25793              :           return gen_split_796 (insn, operands);
   25794              : 
   25795              :         case 1:
   25796              :           if (!(
   25797              : #line 18957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25798              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25799              : #line 18964 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25800              : ( reload_completed
   25801              :    && !(rtx_equal_p (operands[0], operands[1])))))
   25802              :             return NULL;
   25803              :           return gen_split_798 (insn, operands);
   25804              : 
   25805              :         default:
   25806              :           return NULL;
   25807              :         }
   25808              : 
   25809              :     default:
   25810              :       return NULL;
   25811              :     }
   25812              : }
   25813              : 
   25814              :  rtx_insn *
   25815              : split_47 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25816              : {
   25817              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25818              :   rtx x2, x3, x4;
   25819              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25820              :   x2 = XEXP (x1, 1);
   25821              :   operands[1] = x2;
   25822              :   x3 = XEXP (x1, 0);
   25823              :   operands[0] = x3;
   25824              :   switch (GET_MODE (operands[0]))
   25825              :     {
   25826              :     case E_V8QImode:
   25827              :       if (nonimmediate_gr_operand (operands[0], E_V8QImode)
   25828              :           && nonimmediate_gr_operand (operands[1], E_V8QImode)
   25829              :           && 
   25830              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25831              : (!TARGET_64BIT && reload_completed))
   25832              :         return gen_split_1009 (insn, operands);
   25833              :       if (general_reg_operand (operands[0], E_V8QImode)
   25834              :           && memory_operand (operands[1], E_V8QImode)
   25835              :           && (
   25836              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25837              : (reload_completed
   25838              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25839              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))) && 
   25840              : #line 87 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25841              : (TARGET_64BIT)))
   25842              :         return gen_split_1039 (insn, operands);
   25843              :       break;
   25844              : 
   25845              :     case E_V4HImode:
   25846              :       if (nonimmediate_gr_operand (operands[0], E_V4HImode)
   25847              :           && nonimmediate_gr_operand (operands[1], E_V4HImode)
   25848              :           && 
   25849              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25850              : (!TARGET_64BIT && reload_completed))
   25851              :         return gen_split_1010 (insn, operands);
   25852              :       if (general_reg_operand (operands[0], E_V4HImode)
   25853              :           && memory_operand (operands[1], E_V4HImode)
   25854              :           && (
   25855              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25856              : (reload_completed
   25857              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25858              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))) && 
   25859              : #line 87 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25860              : (TARGET_64BIT)))
   25861              :         return gen_split_1040 (insn, operands);
   25862              :       break;
   25863              : 
   25864              :     case E_V2SImode:
   25865              :       if (nonimmediate_gr_operand (operands[0], E_V2SImode)
   25866              :           && nonimmediate_gr_operand (operands[1], E_V2SImode)
   25867              :           && 
   25868              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25869              : (!TARGET_64BIT && reload_completed))
   25870              :         return gen_split_1011 (insn, operands);
   25871              :       if (general_reg_operand (operands[0], E_V2SImode)
   25872              :           && memory_operand (operands[1], E_V2SImode)
   25873              :           && (
   25874              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25875              : (reload_completed
   25876              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25877              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))) && 
   25878              : #line 89 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25879              : (TARGET_64BIT)))
   25880              :         return gen_split_1043 (insn, operands);
   25881              :       break;
   25882              : 
   25883              :     case E_V1DImode:
   25884              :       if (nonimmediate_gr_operand (operands[0], E_V1DImode)
   25885              :           && nonimmediate_gr_operand (operands[1], E_V1DImode)
   25886              :           && 
   25887              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25888              : (!TARGET_64BIT && reload_completed))
   25889              :         return gen_split_1012 (insn, operands);
   25890              :       if (general_reg_operand (operands[0], E_V1DImode)
   25891              :           && memory_operand (operands[1], E_V1DImode)
   25892              :           && (
   25893              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25894              : (reload_completed
   25895              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25896              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))) && 
   25897              : #line 90 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25898              : (TARGET_64BIT)))
   25899              :         return gen_split_1045 (insn, operands);
   25900              :       break;
   25901              : 
   25902              :     case E_V2SFmode:
   25903              :       if (nonimmediate_gr_operand (operands[0], E_V2SFmode)
   25904              :           && nonimmediate_gr_operand (operands[1], E_V2SFmode)
   25905              :           && 
   25906              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25907              : (!TARGET_64BIT && reload_completed))
   25908              :         return gen_split_1013 (insn, operands);
   25909              :       if (general_reg_operand (operands[0], E_V2SFmode)
   25910              :           && memory_operand (operands[1], E_V2SFmode)
   25911              :           && (
   25912              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25913              : (reload_completed
   25914              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25915              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))) && 
   25916              : #line 89 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25917              : (TARGET_64BIT)))
   25918              :         return gen_split_1044 (insn, operands);
   25919              :       break;
   25920              : 
   25921              :     case E_V4HFmode:
   25922              :       if (nonimmediate_gr_operand (operands[0], E_V4HFmode)
   25923              :           && nonimmediate_gr_operand (operands[1], E_V4HFmode)
   25924              :           && 
   25925              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25926              : (!TARGET_64BIT && reload_completed))
   25927              :         return gen_split_1014 (insn, operands);
   25928              :       if (general_reg_operand (operands[0], E_V4HFmode)
   25929              :           && memory_operand (operands[1], E_V4HFmode)
   25930              :           && (
   25931              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25932              : (reload_completed
   25933              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25934              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))) && 
   25935              : #line 88 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25936              : (TARGET_64BIT)))
   25937              :         return gen_split_1041 (insn, operands);
   25938              :       break;
   25939              : 
   25940              :     case E_V4BFmode:
   25941              :       if (nonimmediate_gr_operand (operands[0], E_V4BFmode)
   25942              :           && nonimmediate_gr_operand (operands[1], E_V4BFmode)
   25943              :           && 
   25944              : #line 312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25945              : (!TARGET_64BIT && reload_completed))
   25946              :         return gen_split_1015 (insn, operands);
   25947              :       if (general_reg_operand (operands[0], E_V4BFmode)
   25948              :           && memory_operand (operands[1], E_V4BFmode)
   25949              :           && (
   25950              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25951              : (reload_completed
   25952              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25953              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))) && 
   25954              : #line 88 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25955              : (TARGET_64BIT)))
   25956              :         return gen_split_1042 (insn, operands);
   25957              :       break;
   25958              : 
   25959              :     case E_V4QImode:
   25960              :       if (push_operand (operands[0], E_V4QImode)
   25961              :           && sse_reg_operand (operands[1], E_V4QImode))
   25962              :         {
   25963              :           if ((
   25964              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25965              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   25966              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25967              : (Pmode == SImode)))
   25968              :             return gen_split_1023 (insn, operands);
   25969              :           if ((
   25970              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25971              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   25972              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25973              : (Pmode == DImode)))
   25974              :             return gen_split_1028 (insn, operands);
   25975              :         }
   25976              :       if (general_reg_operand (operands[0], E_V4QImode)
   25977              :           && memory_operand (operands[1], E_V4QImode)
   25978              :           && 
   25979              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25980              : (reload_completed
   25981              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   25982              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))))
   25983              :         return gen_split_1034 (insn, operands);
   25984              :       break;
   25985              : 
   25986              :     case E_V2HImode:
   25987              :       if (push_operand (operands[0], E_V2HImode)
   25988              :           && sse_reg_operand (operands[1], E_V2HImode))
   25989              :         {
   25990              :           if ((
   25991              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25992              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   25993              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25994              : (Pmode == SImode)))
   25995              :             return gen_split_1024 (insn, operands);
   25996              :           if ((
   25997              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25998              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   25999              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26000              : (Pmode == DImode)))
   26001              :             return gen_split_1029 (insn, operands);
   26002              :         }
   26003              :       if (general_reg_operand (operands[0], E_V2HImode)
   26004              :           && memory_operand (operands[1], E_V2HImode)
   26005              :           && 
   26006              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26007              : (reload_completed
   26008              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   26009              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))))
   26010              :         return gen_split_1035 (insn, operands);
   26011              :       break;
   26012              : 
   26013              :     case E_V1SImode:
   26014              :       if (push_operand (operands[0], E_V1SImode)
   26015              :           && sse_reg_operand (operands[1], E_V1SImode))
   26016              :         {
   26017              :           if ((
   26018              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26019              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   26020              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26021              : (Pmode == SImode)))
   26022              :             return gen_split_1025 (insn, operands);
   26023              :           if ((
   26024              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26025              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   26026              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26027              : (Pmode == DImode)))
   26028              :             return gen_split_1030 (insn, operands);
   26029              :         }
   26030              :       if (general_reg_operand (operands[0], E_V1SImode)
   26031              :           && memory_operand (operands[1], E_V1SImode)
   26032              :           && 
   26033              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26034              : (reload_completed
   26035              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   26036              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))))
   26037              :         return gen_split_1036 (insn, operands);
   26038              :       break;
   26039              : 
   26040              :     case E_V2HFmode:
   26041              :       if (push_operand (operands[0], E_V2HFmode)
   26042              :           && sse_reg_operand (operands[1], E_V2HFmode))
   26043              :         {
   26044              :           if ((
   26045              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26046              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   26047              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26048              : (Pmode == SImode)))
   26049              :             return gen_split_1026 (insn, operands);
   26050              :           if ((
   26051              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26052              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   26053              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26054              : (Pmode == DImode)))
   26055              :             return gen_split_1031 (insn, operands);
   26056              :         }
   26057              :       if (general_reg_operand (operands[0], E_V2HFmode)
   26058              :           && memory_operand (operands[1], E_V2HFmode)
   26059              :           && 
   26060              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26061              : (reload_completed
   26062              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   26063              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))))
   26064              :         return gen_split_1037 (insn, operands);
   26065              :       break;
   26066              : 
   26067              :     case E_V2BFmode:
   26068              :       if (push_operand (operands[0], E_V2BFmode)
   26069              :           && sse_reg_operand (operands[1], E_V2BFmode))
   26070              :         {
   26071              :           if ((
   26072              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26073              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   26074              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26075              : (Pmode == SImode)))
   26076              :             return gen_split_1027 (insn, operands);
   26077              :           if ((
   26078              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26079              : (TARGET_64BIT && TARGET_SSE && reload_completed) && 
   26080              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26081              : (Pmode == DImode)))
   26082              :             return gen_split_1032 (insn, operands);
   26083              :         }
   26084              :       if (general_reg_operand (operands[0], E_V2BFmode)
   26085              :           && memory_operand (operands[1], E_V2BFmode)
   26086              :           && 
   26087              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26088              : (reload_completed
   26089              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   26090              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))))
   26091              :         return gen_split_1038 (insn, operands);
   26092              :       break;
   26093              : 
   26094              :     case E_V2QImode:
   26095              :       if (general_reg_operand (operands[0], E_V2QImode)
   26096              :           && memory_operand (operands[1], E_V2QImode)
   26097              :           && 
   26098              : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26099              : (reload_completed
   26100              :    && SYMBOL_REF_P (XEXP (operands[1], 0))
   26101              :    && CONSTANT_POOL_ADDRESS_P (XEXP (operands[1], 0))))
   26102              :         return gen_split_1033 (insn, operands);
   26103              :       if (push_operand (operands[0], E_V2QImode)
   26104              :           && sse_reg_operand (operands[1], E_V2QImode))
   26105              :         {
   26106              :           if ((
   26107              : #line 637 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26108              : (TARGET_SSE4_1 && reload_completed) && 
   26109              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26110              : (Pmode == SImode)))
   26111              :             return gen_split_1059 (insn, operands);
   26112              :           if ((
   26113              : #line 637 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26114              : (TARGET_SSE4_1 && reload_completed) && 
   26115              : #line 1402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26116              : (Pmode == DImode)))
   26117              :             return gen_split_1060 (insn, operands);
   26118              :         }
   26119              :       break;
   26120              : 
   26121              :     case E_P2QImode:
   26122              :       if (nonimmediate_operand (operands[0], E_P2QImode)
   26123              :           && nonimmediate_operand (operands[1], E_P2QImode)
   26124              :           && (
   26125              : #line 31929 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26126              : (TARGET_AVX512VP2INTERSECT
   26127              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   26128              : #line 31932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26129              : ( reload_completed)))
   26130              :         return gen_split_3942 (insn, operands);
   26131              :       break;
   26132              : 
   26133              :     case E_P2HImode:
   26134              :       if (nonimmediate_operand (operands[0], E_P2HImode)
   26135              :           && nonimmediate_operand (operands[1], E_P2HImode)
   26136              :           && (
   26137              : #line 31929 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26138              : (TARGET_AVX512VP2INTERSECT
   26139              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   26140              : #line 31932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26141              : ( reload_completed)))
   26142              :         return gen_split_3943 (insn, operands);
   26143              :       break;
   26144              : 
   26145              :     default:
   26146              :       break;
   26147              :     }
   26148              :   if (GET_CODE (x2) != SUBREG)
   26149              :     return NULL;
   26150              :   operands[0] = x3;
   26151              :   switch (SUBREG_BYTE (x2))
   26152              :     {
   26153              :     case 8:
   26154              :       if (GET_MODE (x2) != E_DFmode
   26155              :           || !register_operand (operands[0], E_DFmode))
   26156              :         return NULL;
   26157              :       x4 = XEXP (x2, 0);
   26158              :       operands[1] = x4;
   26159              :       if (!register_operand (operands[1], E_V2DFmode)
   26160              :           || !
   26161              : #line 15014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26162              : (TARGET_SSE))
   26163              :         return NULL;
   26164              :       return gen_split_3246 (insn, operands);
   26165              : 
   26166              :     case 0:
   26167              :       x4 = XEXP (x2, 0);
   26168              :       switch (GET_CODE (x4))
   26169              :         {
   26170              :         case REG:
   26171              :         case SUBREG:
   26172              :           operands[1] = x4;
   26173              :           switch (GET_MODE (operands[0]))
   26174              :             {
   26175              :             case E_DFmode:
   26176              :               if (!register_operand (operands[0], E_DFmode)
   26177              :                   || GET_MODE (x2) != E_DFmode
   26178              :                   || !register_operand (operands[1], E_V2DFmode)
   26179              :                   || !
   26180              : #line 15067 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26181              : (TARGET_SSE))
   26182              :                 return NULL;
   26183              :               return gen_split_3248 (insn, operands);
   26184              : 
   26185              :             case E_SImode:
   26186              :               if (!nonimmediate_operand (operands[0], E_SImode)
   26187              :                   || GET_MODE (x2) != E_SImode
   26188              :                   || !register_operand (operands[1], E_VOIDmode)
   26189              :                   || !
   26190              : #line 21917 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26191              : (can_create_pseudo_p ()
   26192              :    && REG_P (operands[1])
   26193              :    && VECTOR_MODE_P (GET_MODE (operands[1]))
   26194              :    && ((TARGET_SSE && GET_MODE_SIZE (GET_MODE (operands[1])) == 16)
   26195              :        || (TARGET_AVX && GET_MODE_SIZE (GET_MODE (operands[1])) == 32)
   26196              :        || (TARGET_AVX512F
   26197              :            && GET_MODE_SIZE (GET_MODE (operands[1])) == 64))
   26198              :    && (SImode == SImode || TARGET_64BIT || MEM_P (operands[0]))))
   26199              :                 return NULL;
   26200              :               return gen_split_3506 (insn, operands);
   26201              : 
   26202              :             case E_DImode:
   26203              :               if (!nonimmediate_operand (operands[0], E_DImode)
   26204              :                   || GET_MODE (x2) != E_DImode
   26205              :                   || !register_operand (operands[1], E_VOIDmode)
   26206              :                   || !
   26207              : #line 21917 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26208              : (can_create_pseudo_p ()
   26209              :    && REG_P (operands[1])
   26210              :    && VECTOR_MODE_P (GET_MODE (operands[1]))
   26211              :    && ((TARGET_SSE && GET_MODE_SIZE (GET_MODE (operands[1])) == 16)
   26212              :        || (TARGET_AVX && GET_MODE_SIZE (GET_MODE (operands[1])) == 32)
   26213              :        || (TARGET_AVX512F
   26214              :            && GET_MODE_SIZE (GET_MODE (operands[1])) == 64))
   26215              :    && (DImode == SImode || TARGET_64BIT || MEM_P (operands[0]))))
   26216              :                 return NULL;
   26217              :               return gen_split_3507 (insn, operands);
   26218              : 
   26219              :             default:
   26220              :               return NULL;
   26221              :             }
   26222              : 
   26223              :         case SS_TRUNCATE:
   26224              :           switch (pattern733 (x2))
   26225              :             {
   26226              :             case 0:
   26227              :               if (!(
   26228              : #line 15787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26229              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26230              : #line 15789 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26231              : ( 1)))
   26232              :                 return NULL;
   26233              :               return gen_split_3260 (insn, operands);
   26234              : 
   26235              :             case 1:
   26236              :               if (!(
   26237              : #line 15882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26238              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26239              : #line 15884 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26240              : ( 1)))
   26241              :                 return NULL;
   26242              :               return gen_split_3263 (insn, operands);
   26243              : 
   26244              :             case 2:
   26245              :               if (!(
   26246              : #line 15882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26247              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26248              : #line 15884 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26249              : ( 1)))
   26250              :                 return NULL;
   26251              :               return gen_split_3266 (insn, operands);
   26252              : 
   26253              :             case 3:
   26254              :               if (!(
   26255              : #line 16233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26256              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26257              : #line 16235 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26258              : ( 1)))
   26259              :                 return NULL;
   26260              :               return gen_split_3282 (insn, operands);
   26261              : 
   26262              :             case 4:
   26263              :               if (!((
   26264              : #line 15980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26265              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26266              : #line 15962 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26267              : (TARGET_AVX512BW)) && 
   26268              : #line 15982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26269              : ( 1)))
   26270              :                 return NULL;
   26271              :               return gen_split_3269 (insn, operands);
   26272              : 
   26273              :             case 5:
   26274              :               if (!(
   26275              : #line 15980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26276              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26277              : #line 15982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26278              : ( 1)))
   26279              :                 return NULL;
   26280              :               return gen_split_3272 (insn, operands);
   26281              : 
   26282              :             case 6:
   26283              :               if (!(
   26284              : #line 16496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26285              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   26286              : #line 16498 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26287              : ( 1)))
   26288              :                 return NULL;
   26289              :               return gen_split_3289 (insn, operands);
   26290              : 
   26291              :             case 7:
   26292              :               if (!(
   26293              : #line 16142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26294              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26295              : #line 16144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26296              : ( 1)))
   26297              :                 return NULL;
   26298              :               return gen_split_3276 (insn, operands);
   26299              : 
   26300              :             case 8:
   26301              :               if (!(
   26302              : #line 16142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26303              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26304              : #line 16144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26305              : ( 1)))
   26306              :                 return NULL;
   26307              :               return gen_split_3279 (insn, operands);
   26308              : 
   26309              :             case 9:
   26310              :               if (!(
   26311              : #line 16383 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26312              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26313              : #line 16385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26314              : ( 1)))
   26315              :                 return NULL;
   26316              :               return gen_split_3286 (insn, operands);
   26317              : 
   26318              :             default:
   26319              :               return NULL;
   26320              :             }
   26321              : 
   26322              :         case TRUNCATE:
   26323              :           switch (pattern733 (x2))
   26324              :             {
   26325              :             case 0:
   26326              :               if (!(
   26327              : #line 15787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26328              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26329              : #line 15789 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26330              : ( 1)))
   26331              :                 return NULL;
   26332              :               return gen_split_3261 (insn, operands);
   26333              : 
   26334              :             case 1:
   26335              :               if (!(
   26336              : #line 15882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26337              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26338              : #line 15884 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26339              : ( 1)))
   26340              :                 return NULL;
   26341              :               return gen_split_3264 (insn, operands);
   26342              : 
   26343              :             case 2:
   26344              :               if (!(
   26345              : #line 15882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26346              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26347              : #line 15884 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26348              : ( 1)))
   26349              :                 return NULL;
   26350              :               return gen_split_3267 (insn, operands);
   26351              : 
   26352              :             case 3:
   26353              :               if (!(
   26354              : #line 16233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26355              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26356              : #line 16235 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26357              : ( 1)))
   26358              :                 return NULL;
   26359              :               return gen_split_3283 (insn, operands);
   26360              : 
   26361              :             case 4:
   26362              :               if (!((
   26363              : #line 15980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26364              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26365              : #line 15962 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26366              : (TARGET_AVX512BW)) && 
   26367              : #line 15982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26368              : ( 1)))
   26369              :                 return NULL;
   26370              :               return gen_split_3270 (insn, operands);
   26371              : 
   26372              :             case 5:
   26373              :               if (!(
   26374              : #line 15980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26375              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26376              : #line 15982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26377              : ( 1)))
   26378              :                 return NULL;
   26379              :               return gen_split_3273 (insn, operands);
   26380              : 
   26381              :             case 6:
   26382              :               if (!(
   26383              : #line 16496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26384              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   26385              : #line 16498 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26386              : ( 1)))
   26387              :                 return NULL;
   26388              :               return gen_split_3290 (insn, operands);
   26389              : 
   26390              :             case 7:
   26391              :               if (!(
   26392              : #line 16142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26393              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26394              : #line 16144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26395              : ( 1)))
   26396              :                 return NULL;
   26397              :               return gen_split_3277 (insn, operands);
   26398              : 
   26399              :             case 8:
   26400              :               if (!(
   26401              : #line 16142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26402              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26403              : #line 16144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26404              : ( 1)))
   26405              :                 return NULL;
   26406              :               return gen_split_3280 (insn, operands);
   26407              : 
   26408              :             case 9:
   26409              :               if (!(
   26410              : #line 16383 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26411              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26412              : #line 16385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26413              : ( 1)))
   26414              :                 return NULL;
   26415              :               return gen_split_3287 (insn, operands);
   26416              : 
   26417              :             default:
   26418              :               return NULL;
   26419              :             }
   26420              : 
   26421              :         case US_TRUNCATE:
   26422              :           switch (pattern733 (x2))
   26423              :             {
   26424              :             case 0:
   26425              :               if (!(
   26426              : #line 15787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26427              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26428              : #line 15789 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26429              : ( 1)))
   26430              :                 return NULL;
   26431              :               return gen_split_3262 (insn, operands);
   26432              : 
   26433              :             case 1:
   26434              :               if (!(
   26435              : #line 15882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26436              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26437              : #line 15884 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26438              : ( 1)))
   26439              :                 return NULL;
   26440              :               return gen_split_3265 (insn, operands);
   26441              : 
   26442              :             case 2:
   26443              :               if (!(
   26444              : #line 15882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26445              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26446              : #line 15884 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26447              : ( 1)))
   26448              :                 return NULL;
   26449              :               return gen_split_3268 (insn, operands);
   26450              : 
   26451              :             case 3:
   26452              :               if (!(
   26453              : #line 16233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26454              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26455              : #line 16235 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26456              : ( 1)))
   26457              :                 return NULL;
   26458              :               return gen_split_3284 (insn, operands);
   26459              : 
   26460              :             case 4:
   26461              :               if (!((
   26462              : #line 15980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26463              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26464              : #line 15962 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26465              : (TARGET_AVX512BW)) && 
   26466              : #line 15982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26467              : ( 1)))
   26468              :                 return NULL;
   26469              :               return gen_split_3271 (insn, operands);
   26470              : 
   26471              :             case 5:
   26472              :               if (!(
   26473              : #line 15980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26474              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26475              : #line 15982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26476              : ( 1)))
   26477              :                 return NULL;
   26478              :               return gen_split_3274 (insn, operands);
   26479              : 
   26480              :             case 6:
   26481              :               if (!(
   26482              : #line 16496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26483              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   26484              : #line 16498 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26485              : ( 1)))
   26486              :                 return NULL;
   26487              :               return gen_split_3291 (insn, operands);
   26488              : 
   26489              :             case 7:
   26490              :               if (!(
   26491              : #line 16142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26492              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26493              : #line 16144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26494              : ( 1)))
   26495              :                 return NULL;
   26496              :               return gen_split_3278 (insn, operands);
   26497              : 
   26498              :             case 8:
   26499              :               if (!(
   26500              : #line 16142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26501              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26502              : #line 16144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26503              : ( 1)))
   26504              :                 return NULL;
   26505              :               return gen_split_3281 (insn, operands);
   26506              : 
   26507              :             case 9:
   26508              :               if (!(
   26509              : #line 16383 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26510              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26511              : #line 16385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26512              : ( 1)))
   26513              :                 return NULL;
   26514              :               return gen_split_3288 (insn, operands);
   26515              : 
   26516              :             default:
   26517              :               return NULL;
   26518              :             }
   26519              : 
   26520              :         default:
   26521              :           return NULL;
   26522              :         }
   26523              : 
   26524              :     default:
   26525              :       return NULL;
   26526              :     }
   26527              : }
   26528              : 
   26529              :  rtx_insn *
   26530              : split_63 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   26531              : {
   26532              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   26533              :   rtx x2, x3, x4;
   26534              :   rtx_insn *res ATTRIBUTE_UNUSED;
   26535              :   x2 = XEXP (x1, 1);
   26536              :   x3 = XEXP (x2, 0);
   26537              :   x4 = XEXP (x3, 0);
   26538              :   switch (GET_CODE (x4))
   26539              :     {
   26540              :     case REG:
   26541              :     case SUBREG:
   26542              :     case MEM:
   26543              :     case NOT:
   26544              :       switch (pattern537 (x2))
   26545              :         {
   26546              :         case 0:
   26547              :           if (!((
   26548              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26549              : ((64 == 64 || TARGET_AVX512VL
   26550              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26551              :    && ix86_pre_reload_split ()
   26552              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26553              :                     STRIP_UNARY (operands[4]))
   26554              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26555              :                        STRIP_UNARY (operands[4]))
   26556              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26557              :                        STRIP_UNARY (operands[3]))
   26558              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26559              :                        STRIP_UNARY (operands[3])))) && 
   26560              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26561              : (TARGET_AVX512F)) && 
   26562              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26563              : ( 1)))
   26564              :             return NULL;
   26565              :           return gen_split_1733 (insn, operands);
   26566              : 
   26567              :         case 1:
   26568              :           if (!((
   26569              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26570              : ((32 == 64 || TARGET_AVX512VL
   26571              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26572              :    && ix86_pre_reload_split ()
   26573              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26574              :                     STRIP_UNARY (operands[4]))
   26575              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26576              :                        STRIP_UNARY (operands[4]))
   26577              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26578              :                        STRIP_UNARY (operands[3]))
   26579              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26580              :                        STRIP_UNARY (operands[3])))) && 
   26581              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26582              : (TARGET_AVX)) && 
   26583              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26584              : ( 1)))
   26585              :             return NULL;
   26586              :           return gen_split_1760 (insn, operands);
   26587              : 
   26588              :         case 2:
   26589              :           if (!(
   26590              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26591              : ((16 == 64 || TARGET_AVX512VL
   26592              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26593              :    && ix86_pre_reload_split ()
   26594              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26595              :                     STRIP_UNARY (operands[4]))
   26596              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26597              :                        STRIP_UNARY (operands[4]))
   26598              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26599              :                        STRIP_UNARY (operands[3]))
   26600              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26601              :                        STRIP_UNARY (operands[3])))) && 
   26602              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26603              : ( 1)))
   26604              :             return NULL;
   26605              :           return gen_split_1787 (insn, operands);
   26606              : 
   26607              :         case 3:
   26608              :           if (!((
   26609              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26610              : ((64 == 64 || TARGET_AVX512VL
   26611              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26612              :    && ix86_pre_reload_split ()
   26613              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26614              :                     STRIP_UNARY (operands[4]))
   26615              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26616              :                        STRIP_UNARY (operands[4]))
   26617              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26618              :                        STRIP_UNARY (operands[3]))
   26619              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26620              :                        STRIP_UNARY (operands[3])))) && 
   26621              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26622              : (TARGET_AVX512F)) && 
   26623              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26624              : ( 1)))
   26625              :             return NULL;
   26626              :           return gen_split_1814 (insn, operands);
   26627              : 
   26628              :         case 4:
   26629              :           if (!((
   26630              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26631              : ((32 == 64 || TARGET_AVX512VL
   26632              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26633              :    && ix86_pre_reload_split ()
   26634              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26635              :                     STRIP_UNARY (operands[4]))
   26636              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26637              :                        STRIP_UNARY (operands[4]))
   26638              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26639              :                        STRIP_UNARY (operands[3]))
   26640              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26641              :                        STRIP_UNARY (operands[3])))) && 
   26642              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26643              : (TARGET_AVX)) && 
   26644              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26645              : ( 1)))
   26646              :             return NULL;
   26647              :           return gen_split_1841 (insn, operands);
   26648              : 
   26649              :         case 5:
   26650              :           if (!(
   26651              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26652              : ((16 == 64 || TARGET_AVX512VL
   26653              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26654              :    && ix86_pre_reload_split ()
   26655              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26656              :                     STRIP_UNARY (operands[4]))
   26657              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26658              :                        STRIP_UNARY (operands[4]))
   26659              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26660              :                        STRIP_UNARY (operands[3]))
   26661              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26662              :                        STRIP_UNARY (operands[3])))) && 
   26663              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26664              : ( 1)))
   26665              :             return NULL;
   26666              :           return gen_split_1868 (insn, operands);
   26667              : 
   26668              :         case 6:
   26669              :           if (!((
   26670              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26671              : ((64 == 64 || TARGET_AVX512VL
   26672              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26673              :    && ix86_pre_reload_split ()
   26674              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26675              :                     STRIP_UNARY (operands[4]))
   26676              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26677              :                        STRIP_UNARY (operands[4]))
   26678              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26679              :                        STRIP_UNARY (operands[3]))
   26680              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26681              :                        STRIP_UNARY (operands[3])))) && 
   26682              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26683              : (TARGET_AVX512F)) && 
   26684              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26685              : ( 1)))
   26686              :             return NULL;
   26687              :           return gen_split_1895 (insn, operands);
   26688              : 
   26689              :         case 7:
   26690              :           if (!((
   26691              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26692              : ((32 == 64 || TARGET_AVX512VL
   26693              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26694              :    && ix86_pre_reload_split ()
   26695              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26696              :                     STRIP_UNARY (operands[4]))
   26697              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26698              :                        STRIP_UNARY (operands[4]))
   26699              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26700              :                        STRIP_UNARY (operands[3]))
   26701              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26702              :                        STRIP_UNARY (operands[3])))) && 
   26703              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26704              : (TARGET_AVX)) && 
   26705              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26706              : ( 1)))
   26707              :             return NULL;
   26708              :           return gen_split_1922 (insn, operands);
   26709              : 
   26710              :         case 8:
   26711              :           if (!(
   26712              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26713              : ((16 == 64 || TARGET_AVX512VL
   26714              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26715              :    && ix86_pre_reload_split ()
   26716              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26717              :                     STRIP_UNARY (operands[4]))
   26718              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26719              :                        STRIP_UNARY (operands[4]))
   26720              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26721              :                        STRIP_UNARY (operands[3]))
   26722              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26723              :                        STRIP_UNARY (operands[3])))) && 
   26724              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26725              : ( 1)))
   26726              :             return NULL;
   26727              :           return gen_split_1949 (insn, operands);
   26728              : 
   26729              :         case 9:
   26730              :           if (!((
   26731              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26732              : ((64 == 64 || TARGET_AVX512VL
   26733              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26734              :    && ix86_pre_reload_split ()
   26735              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26736              :                     STRIP_UNARY (operands[4]))
   26737              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26738              :                        STRIP_UNARY (operands[4]))
   26739              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26740              :                        STRIP_UNARY (operands[3]))
   26741              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26742              :                        STRIP_UNARY (operands[3])))) && 
   26743              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26744              : (TARGET_AVX512F)) && 
   26745              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26746              : ( 1)))
   26747              :             return NULL;
   26748              :           return gen_split_1976 (insn, operands);
   26749              : 
   26750              :         case 10:
   26751              :           if (!((
   26752              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26753              : ((32 == 64 || TARGET_AVX512VL
   26754              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26755              :    && ix86_pre_reload_split ()
   26756              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26757              :                     STRIP_UNARY (operands[4]))
   26758              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26759              :                        STRIP_UNARY (operands[4]))
   26760              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26761              :                        STRIP_UNARY (operands[3]))
   26762              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26763              :                        STRIP_UNARY (operands[3])))) && 
   26764              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26765              : (TARGET_AVX)) && 
   26766              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26767              : ( 1)))
   26768              :             return NULL;
   26769              :           return gen_split_2003 (insn, operands);
   26770              : 
   26771              :         case 11:
   26772              :           if (!(
   26773              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26774              : ((16 == 64 || TARGET_AVX512VL
   26775              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26776              :    && ix86_pre_reload_split ()
   26777              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26778              :                     STRIP_UNARY (operands[4]))
   26779              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26780              :                        STRIP_UNARY (operands[4]))
   26781              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26782              :                        STRIP_UNARY (operands[3]))
   26783              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26784              :                        STRIP_UNARY (operands[3])))) && 
   26785              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26786              : ( 1)))
   26787              :             return NULL;
   26788              :           return gen_split_2030 (insn, operands);
   26789              : 
   26790              :         case 12:
   26791              :           if (!((
   26792              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26793              : ((64 == 64 || TARGET_AVX512VL
   26794              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26795              :    && ix86_pre_reload_split ()
   26796              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26797              :                     STRIP_UNARY (operands[4]))
   26798              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26799              :                        STRIP_UNARY (operands[4]))
   26800              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26801              :                        STRIP_UNARY (operands[3]))
   26802              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26803              :                        STRIP_UNARY (operands[3])))) && 
   26804              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26805              : (TARGET_AVX512F)) && 
   26806              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26807              : ( 1)))
   26808              :             return NULL;
   26809              :           return gen_split_1736 (insn, operands);
   26810              : 
   26811              :         case 13:
   26812              :           if (!((
   26813              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26814              : ((32 == 64 || TARGET_AVX512VL
   26815              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26816              :    && ix86_pre_reload_split ()
   26817              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26818              :                     STRIP_UNARY (operands[4]))
   26819              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26820              :                        STRIP_UNARY (operands[4]))
   26821              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26822              :                        STRIP_UNARY (operands[3]))
   26823              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26824              :                        STRIP_UNARY (operands[3])))) && 
   26825              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26826              : (TARGET_AVX)) && 
   26827              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26828              : ( 1)))
   26829              :             return NULL;
   26830              :           return gen_split_1763 (insn, operands);
   26831              : 
   26832              :         case 14:
   26833              :           if (!(
   26834              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26835              : ((16 == 64 || TARGET_AVX512VL
   26836              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26837              :    && ix86_pre_reload_split ()
   26838              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26839              :                     STRIP_UNARY (operands[4]))
   26840              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26841              :                        STRIP_UNARY (operands[4]))
   26842              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26843              :                        STRIP_UNARY (operands[3]))
   26844              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26845              :                        STRIP_UNARY (operands[3])))) && 
   26846              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26847              : ( 1)))
   26848              :             return NULL;
   26849              :           return gen_split_1790 (insn, operands);
   26850              : 
   26851              :         case 15:
   26852              :           if (!((
   26853              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26854              : ((64 == 64 || TARGET_AVX512VL
   26855              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26856              :    && ix86_pre_reload_split ()
   26857              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26858              :                     STRIP_UNARY (operands[4]))
   26859              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26860              :                        STRIP_UNARY (operands[4]))
   26861              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26862              :                        STRIP_UNARY (operands[3]))
   26863              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26864              :                        STRIP_UNARY (operands[3])))) && 
   26865              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26866              : (TARGET_AVX512F)) && 
   26867              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26868              : ( 1)))
   26869              :             return NULL;
   26870              :           return gen_split_1817 (insn, operands);
   26871              : 
   26872              :         case 16:
   26873              :           if (!((
   26874              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26875              : ((32 == 64 || TARGET_AVX512VL
   26876              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26877              :    && ix86_pre_reload_split ()
   26878              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26879              :                     STRIP_UNARY (operands[4]))
   26880              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26881              :                        STRIP_UNARY (operands[4]))
   26882              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26883              :                        STRIP_UNARY (operands[3]))
   26884              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26885              :                        STRIP_UNARY (operands[3])))) && 
   26886              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26887              : (TARGET_AVX)) && 
   26888              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26889              : ( 1)))
   26890              :             return NULL;
   26891              :           return gen_split_1844 (insn, operands);
   26892              : 
   26893              :         case 17:
   26894              :           if (!(
   26895              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26896              : ((16 == 64 || TARGET_AVX512VL
   26897              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26898              :    && ix86_pre_reload_split ()
   26899              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26900              :                     STRIP_UNARY (operands[4]))
   26901              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26902              :                        STRIP_UNARY (operands[4]))
   26903              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26904              :                        STRIP_UNARY (operands[3]))
   26905              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26906              :                        STRIP_UNARY (operands[3])))) && 
   26907              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26908              : ( 1)))
   26909              :             return NULL;
   26910              :           return gen_split_1871 (insn, operands);
   26911              : 
   26912              :         case 18:
   26913              :           if (!((
   26914              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26915              : ((64 == 64 || TARGET_AVX512VL
   26916              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26917              :    && ix86_pre_reload_split ()
   26918              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26919              :                     STRIP_UNARY (operands[4]))
   26920              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26921              :                        STRIP_UNARY (operands[4]))
   26922              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26923              :                        STRIP_UNARY (operands[3]))
   26924              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26925              :                        STRIP_UNARY (operands[3])))) && 
   26926              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26927              : (TARGET_AVX512F)) && 
   26928              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26929              : ( 1)))
   26930              :             return NULL;
   26931              :           return gen_split_1898 (insn, operands);
   26932              : 
   26933              :         case 19:
   26934              :           if (!((
   26935              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26936              : ((32 == 64 || TARGET_AVX512VL
   26937              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26938              :    && ix86_pre_reload_split ()
   26939              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26940              :                     STRIP_UNARY (operands[4]))
   26941              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26942              :                        STRIP_UNARY (operands[4]))
   26943              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26944              :                        STRIP_UNARY (operands[3]))
   26945              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26946              :                        STRIP_UNARY (operands[3])))) && 
   26947              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26948              : (TARGET_AVX)) && 
   26949              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26950              : ( 1)))
   26951              :             return NULL;
   26952              :           return gen_split_1925 (insn, operands);
   26953              : 
   26954              :         case 20:
   26955              :           if (!(
   26956              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26957              : ((16 == 64 || TARGET_AVX512VL
   26958              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26959              :    && ix86_pre_reload_split ()
   26960              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26961              :                     STRIP_UNARY (operands[4]))
   26962              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26963              :                        STRIP_UNARY (operands[4]))
   26964              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26965              :                        STRIP_UNARY (operands[3]))
   26966              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26967              :                        STRIP_UNARY (operands[3])))) && 
   26968              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26969              : ( 1)))
   26970              :             return NULL;
   26971              :           return gen_split_1952 (insn, operands);
   26972              : 
   26973              :         case 21:
   26974              :           if (!((
   26975              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26976              : ((64 == 64 || TARGET_AVX512VL
   26977              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26978              :    && ix86_pre_reload_split ()
   26979              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   26980              :                     STRIP_UNARY (operands[4]))
   26981              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26982              :                        STRIP_UNARY (operands[4]))
   26983              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   26984              :                        STRIP_UNARY (operands[3]))
   26985              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   26986              :                        STRIP_UNARY (operands[3])))) && 
   26987              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26988              : (TARGET_AVX512F)) && 
   26989              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26990              : ( 1)))
   26991              :             return NULL;
   26992              :           return gen_split_1979 (insn, operands);
   26993              : 
   26994              :         case 22:
   26995              :           if (!((
   26996              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26997              : ((32 == 64 || TARGET_AVX512VL
   26998              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   26999              :    && ix86_pre_reload_split ()
   27000              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27001              :                     STRIP_UNARY (operands[4]))
   27002              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27003              :                        STRIP_UNARY (operands[4]))
   27004              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27005              :                        STRIP_UNARY (operands[3]))
   27006              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27007              :                        STRIP_UNARY (operands[3])))) && 
   27008              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27009              : (TARGET_AVX)) && 
   27010              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27011              : ( 1)))
   27012              :             return NULL;
   27013              :           return gen_split_2006 (insn, operands);
   27014              : 
   27015              :         case 23:
   27016              :           if (!(
   27017              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27018              : ((16 == 64 || TARGET_AVX512VL
   27019              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27020              :    && ix86_pre_reload_split ()
   27021              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27022              :                     STRIP_UNARY (operands[4]))
   27023              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27024              :                        STRIP_UNARY (operands[4]))
   27025              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27026              :                        STRIP_UNARY (operands[3]))
   27027              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27028              :                        STRIP_UNARY (operands[3])))) && 
   27029              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27030              : ( 1)))
   27031              :             return NULL;
   27032              :           return gen_split_2033 (insn, operands);
   27033              : 
   27034              :         case 24:
   27035              :           if (!((
   27036              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27037              : ((64 == 64 || TARGET_AVX512VL
   27038              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27039              :    && ix86_pre_reload_split ()
   27040              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27041              :                     STRIP_UNARY (operands[4]))
   27042              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27043              :                        STRIP_UNARY (operands[4]))
   27044              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27045              :                        STRIP_UNARY (operands[3]))
   27046              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27047              :                        STRIP_UNARY (operands[3])))) && 
   27048              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27049              : (TARGET_AVX512F)) && 
   27050              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27051              : ( 1)))
   27052              :             return NULL;
   27053              :           return gen_split_1739 (insn, operands);
   27054              : 
   27055              :         case 25:
   27056              :           if (!((
   27057              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27058              : ((32 == 64 || TARGET_AVX512VL
   27059              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27060              :    && ix86_pre_reload_split ()
   27061              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27062              :                     STRIP_UNARY (operands[4]))
   27063              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27064              :                        STRIP_UNARY (operands[4]))
   27065              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27066              :                        STRIP_UNARY (operands[3]))
   27067              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27068              :                        STRIP_UNARY (operands[3])))) && 
   27069              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27070              : (TARGET_AVX)) && 
   27071              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27072              : ( 1)))
   27073              :             return NULL;
   27074              :           return gen_split_1766 (insn, operands);
   27075              : 
   27076              :         case 26:
   27077              :           if (!(
   27078              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27079              : ((16 == 64 || TARGET_AVX512VL
   27080              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27081              :    && ix86_pre_reload_split ()
   27082              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27083              :                     STRIP_UNARY (operands[4]))
   27084              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27085              :                        STRIP_UNARY (operands[4]))
   27086              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27087              :                        STRIP_UNARY (operands[3]))
   27088              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27089              :                        STRIP_UNARY (operands[3])))) && 
   27090              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27091              : ( 1)))
   27092              :             return NULL;
   27093              :           return gen_split_1793 (insn, operands);
   27094              : 
   27095              :         case 27:
   27096              :           if (!((
   27097              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27098              : ((64 == 64 || TARGET_AVX512VL
   27099              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27100              :    && ix86_pre_reload_split ()
   27101              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27102              :                     STRIP_UNARY (operands[4]))
   27103              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27104              :                        STRIP_UNARY (operands[4]))
   27105              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27106              :                        STRIP_UNARY (operands[3]))
   27107              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27108              :                        STRIP_UNARY (operands[3])))) && 
   27109              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27110              : (TARGET_AVX512F)) && 
   27111              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27112              : ( 1)))
   27113              :             return NULL;
   27114              :           return gen_split_1820 (insn, operands);
   27115              : 
   27116              :         case 28:
   27117              :           if (!((
   27118              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27119              : ((32 == 64 || TARGET_AVX512VL
   27120              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27121              :    && ix86_pre_reload_split ()
   27122              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27123              :                     STRIP_UNARY (operands[4]))
   27124              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27125              :                        STRIP_UNARY (operands[4]))
   27126              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27127              :                        STRIP_UNARY (operands[3]))
   27128              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27129              :                        STRIP_UNARY (operands[3])))) && 
   27130              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27131              : (TARGET_AVX)) && 
   27132              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27133              : ( 1)))
   27134              :             return NULL;
   27135              :           return gen_split_1847 (insn, operands);
   27136              : 
   27137              :         case 29:
   27138              :           if (!(
   27139              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27140              : ((16 == 64 || TARGET_AVX512VL
   27141              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27142              :    && ix86_pre_reload_split ()
   27143              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27144              :                     STRIP_UNARY (operands[4]))
   27145              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27146              :                        STRIP_UNARY (operands[4]))
   27147              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27148              :                        STRIP_UNARY (operands[3]))
   27149              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27150              :                        STRIP_UNARY (operands[3])))) && 
   27151              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27152              : ( 1)))
   27153              :             return NULL;
   27154              :           return gen_split_1874 (insn, operands);
   27155              : 
   27156              :         case 30:
   27157              :           if (!((
   27158              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27159              : ((64 == 64 || TARGET_AVX512VL
   27160              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27161              :    && ix86_pre_reload_split ()
   27162              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27163              :                     STRIP_UNARY (operands[4]))
   27164              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27165              :                        STRIP_UNARY (operands[4]))
   27166              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27167              :                        STRIP_UNARY (operands[3]))
   27168              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27169              :                        STRIP_UNARY (operands[3])))) && 
   27170              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27171              : (TARGET_AVX512F)) && 
   27172              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27173              : ( 1)))
   27174              :             return NULL;
   27175              :           return gen_split_1901 (insn, operands);
   27176              : 
   27177              :         case 31:
   27178              :           if (!((
   27179              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27180              : ((32 == 64 || TARGET_AVX512VL
   27181              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27182              :    && ix86_pre_reload_split ()
   27183              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27184              :                     STRIP_UNARY (operands[4]))
   27185              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27186              :                        STRIP_UNARY (operands[4]))
   27187              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27188              :                        STRIP_UNARY (operands[3]))
   27189              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27190              :                        STRIP_UNARY (operands[3])))) && 
   27191              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27192              : (TARGET_AVX)) && 
   27193              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27194              : ( 1)))
   27195              :             return NULL;
   27196              :           return gen_split_1928 (insn, operands);
   27197              : 
   27198              :         case 32:
   27199              :           if (!(
   27200              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27201              : ((16 == 64 || TARGET_AVX512VL
   27202              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27203              :    && ix86_pre_reload_split ()
   27204              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27205              :                     STRIP_UNARY (operands[4]))
   27206              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27207              :                        STRIP_UNARY (operands[4]))
   27208              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27209              :                        STRIP_UNARY (operands[3]))
   27210              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27211              :                        STRIP_UNARY (operands[3])))) && 
   27212              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27213              : ( 1)))
   27214              :             return NULL;
   27215              :           return gen_split_1955 (insn, operands);
   27216              : 
   27217              :         case 33:
   27218              :           if (!((
   27219              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27220              : ((64 == 64 || TARGET_AVX512VL
   27221              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27222              :    && ix86_pre_reload_split ()
   27223              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27224              :                     STRIP_UNARY (operands[4]))
   27225              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27226              :                        STRIP_UNARY (operands[4]))
   27227              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27228              :                        STRIP_UNARY (operands[3]))
   27229              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27230              :                        STRIP_UNARY (operands[3])))) && 
   27231              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27232              : (TARGET_AVX512F)) && 
   27233              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27234              : ( 1)))
   27235              :             return NULL;
   27236              :           return gen_split_1982 (insn, operands);
   27237              : 
   27238              :         case 34:
   27239              :           if (!((
   27240              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27241              : ((32 == 64 || TARGET_AVX512VL
   27242              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27243              :    && ix86_pre_reload_split ()
   27244              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27245              :                     STRIP_UNARY (operands[4]))
   27246              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27247              :                        STRIP_UNARY (operands[4]))
   27248              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27249              :                        STRIP_UNARY (operands[3]))
   27250              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27251              :                        STRIP_UNARY (operands[3])))) && 
   27252              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27253              : (TARGET_AVX)) && 
   27254              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27255              : ( 1)))
   27256              :             return NULL;
   27257              :           return gen_split_2009 (insn, operands);
   27258              : 
   27259              :         case 35:
   27260              :           if (!(
   27261              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27262              : ((16 == 64 || TARGET_AVX512VL
   27263              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27264              :    && ix86_pre_reload_split ()
   27265              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27266              :                     STRIP_UNARY (operands[4]))
   27267              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27268              :                        STRIP_UNARY (operands[4]))
   27269              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27270              :                        STRIP_UNARY (operands[3]))
   27271              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27272              :                        STRIP_UNARY (operands[3])))) && 
   27273              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27274              : ( 1)))
   27275              :             return NULL;
   27276              :           return gen_split_2036 (insn, operands);
   27277              : 
   27278              :         case 36:
   27279              :           if (!((
   27280              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27281              : ((64 == 64 || TARGET_AVX512VL
   27282              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27283              :    && ix86_pre_reload_split ()) && 
   27284              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27285              : (TARGET_AVX512F)) && 
   27286              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27287              : ( 1)))
   27288              :             return NULL;
   27289              :           return gen_split_3029 (insn, operands);
   27290              : 
   27291              :         case 37:
   27292              :           if (!((
   27293              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27294              : ((32 == 64 || TARGET_AVX512VL
   27295              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27296              :    && ix86_pre_reload_split ()) && 
   27297              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27298              : (TARGET_AVX)) && 
   27299              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27300              : ( 1)))
   27301              :             return NULL;
   27302              :           return gen_split_3038 (insn, operands);
   27303              : 
   27304              :         case 38:
   27305              :           if (!(
   27306              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27307              : ((16 == 64 || TARGET_AVX512VL
   27308              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27309              :    && ix86_pre_reload_split ()) && 
   27310              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27311              : ( 1)))
   27312              :             return NULL;
   27313              :           return gen_split_3047 (insn, operands);
   27314              : 
   27315              :         case 39:
   27316              :           if (!((
   27317              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27318              : ((64 == 64 || TARGET_AVX512VL
   27319              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27320              :    && ix86_pre_reload_split ()) && 
   27321              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27322              : (TARGET_AVX512F)) && 
   27323              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27324              : ( 1)))
   27325              :             return NULL;
   27326              :           return gen_split_3056 (insn, operands);
   27327              : 
   27328              :         case 40:
   27329              :           if (!((
   27330              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27331              : ((32 == 64 || TARGET_AVX512VL
   27332              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27333              :    && ix86_pre_reload_split ()) && 
   27334              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27335              : (TARGET_AVX)) && 
   27336              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27337              : ( 1)))
   27338              :             return NULL;
   27339              :           return gen_split_3065 (insn, operands);
   27340              : 
   27341              :         case 41:
   27342              :           if (!(
   27343              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27344              : ((16 == 64 || TARGET_AVX512VL
   27345              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27346              :    && ix86_pre_reload_split ()) && 
   27347              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27348              : ( 1)))
   27349              :             return NULL;
   27350              :           return gen_split_3074 (insn, operands);
   27351              : 
   27352              :         case 42:
   27353              :           if (!((
   27354              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27355              : ((64 == 64 || TARGET_AVX512VL
   27356              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27357              :    && ix86_pre_reload_split ()) && 
   27358              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27359              : (TARGET_AVX512F)) && 
   27360              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27361              : ( 1)))
   27362              :             return NULL;
   27363              :           return gen_split_3083 (insn, operands);
   27364              : 
   27365              :         case 43:
   27366              :           if (!((
   27367              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27368              : ((32 == 64 || TARGET_AVX512VL
   27369              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27370              :    && ix86_pre_reload_split ()) && 
   27371              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27372              : (TARGET_AVX)) && 
   27373              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27374              : ( 1)))
   27375              :             return NULL;
   27376              :           return gen_split_3092 (insn, operands);
   27377              : 
   27378              :         case 44:
   27379              :           if (!(
   27380              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27381              : ((16 == 64 || TARGET_AVX512VL
   27382              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27383              :    && ix86_pre_reload_split ()) && 
   27384              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27385              : ( 1)))
   27386              :             return NULL;
   27387              :           return gen_split_3101 (insn, operands);
   27388              : 
   27389              :         case 45:
   27390              :           if (!((
   27391              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27392              : ((64 == 64 || TARGET_AVX512VL
   27393              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27394              :    && ix86_pre_reload_split ()) && 
   27395              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27396              : (TARGET_AVX512F)) && 
   27397              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27398              : ( 1)))
   27399              :             return NULL;
   27400              :           return gen_split_3110 (insn, operands);
   27401              : 
   27402              :         case 46:
   27403              :           if (!((
   27404              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27405              : ((32 == 64 || TARGET_AVX512VL
   27406              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27407              :    && ix86_pre_reload_split ()) && 
   27408              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27409              : (TARGET_AVX)) && 
   27410              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27411              : ( 1)))
   27412              :             return NULL;
   27413              :           return gen_split_3119 (insn, operands);
   27414              : 
   27415              :         case 47:
   27416              :           if (!(
   27417              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27418              : ((16 == 64 || TARGET_AVX512VL
   27419              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27420              :    && ix86_pre_reload_split ()) && 
   27421              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27422              : ( 1)))
   27423              :             return NULL;
   27424              :           return gen_split_3128 (insn, operands);
   27425              : 
   27426              :         default:
   27427              :           return NULL;
   27428              :         }
   27429              : 
   27430              :     case AND:
   27431              :       switch (pattern539 (x2))
   27432              :         {
   27433              :         case 0:
   27434              :           if (!((
   27435              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27436              : ((64 == 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 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27448              : (TARGET_AVX512F)) && 
   27449              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27450              : ( 1)))
   27451              :             return NULL;
   27452              :           return gen_split_2381 (insn, operands);
   27453              : 
   27454              :         case 1:
   27455              :           if (!((
   27456              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27457              : ((32 == 64 || TARGET_AVX512VL
   27458              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27459              :    && ix86_pre_reload_split ()
   27460              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27461              :                     STRIP_UNARY (operands[4]))
   27462              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27463              :                        STRIP_UNARY (operands[4]))
   27464              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27465              :                        STRIP_UNARY (operands[3]))
   27466              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27467              :                        STRIP_UNARY (operands[3])))) && 
   27468              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27469              : (TARGET_AVX)) && 
   27470              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27471              : ( 1)))
   27472              :             return NULL;
   27473              :           return gen_split_2408 (insn, operands);
   27474              : 
   27475              :         case 2:
   27476              :           if (!(
   27477              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27478              : ((16 == 64 || TARGET_AVX512VL
   27479              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27480              :    && ix86_pre_reload_split ()
   27481              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27482              :                     STRIP_UNARY (operands[4]))
   27483              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27484              :                        STRIP_UNARY (operands[4]))
   27485              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27486              :                        STRIP_UNARY (operands[3]))
   27487              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27488              :                        STRIP_UNARY (operands[3])))) && 
   27489              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27490              : ( 1)))
   27491              :             return NULL;
   27492              :           return gen_split_2435 (insn, operands);
   27493              : 
   27494              :         case 3:
   27495              :           if (!((
   27496              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27497              : ((64 == 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 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27509              : (TARGET_AVX512F)) && 
   27510              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27511              : ( 1)))
   27512              :             return NULL;
   27513              :           return gen_split_2462 (insn, operands);
   27514              : 
   27515              :         case 4:
   27516              :           if (!((
   27517              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27518              : ((32 == 64 || TARGET_AVX512VL
   27519              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27520              :    && ix86_pre_reload_split ()
   27521              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27522              :                     STRIP_UNARY (operands[4]))
   27523              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27524              :                        STRIP_UNARY (operands[4]))
   27525              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27526              :                        STRIP_UNARY (operands[3]))
   27527              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27528              :                        STRIP_UNARY (operands[3])))) && 
   27529              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27530              : (TARGET_AVX)) && 
   27531              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27532              : ( 1)))
   27533              :             return NULL;
   27534              :           return gen_split_2489 (insn, operands);
   27535              : 
   27536              :         case 5:
   27537              :           if (!(
   27538              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27539              : ((16 == 64 || TARGET_AVX512VL
   27540              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27541              :    && ix86_pre_reload_split ()
   27542              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27543              :                     STRIP_UNARY (operands[4]))
   27544              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27545              :                        STRIP_UNARY (operands[4]))
   27546              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27547              :                        STRIP_UNARY (operands[3]))
   27548              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27549              :                        STRIP_UNARY (operands[3])))) && 
   27550              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27551              : ( 1)))
   27552              :             return NULL;
   27553              :           return gen_split_2516 (insn, operands);
   27554              : 
   27555              :         case 6:
   27556              :           if (!((
   27557              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27558              : ((64 == 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 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27570              : (TARGET_AVX512F)) && 
   27571              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27572              : ( 1)))
   27573              :             return NULL;
   27574              :           return gen_split_2543 (insn, operands);
   27575              : 
   27576              :         case 7:
   27577              :           if (!((
   27578              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27579              : ((32 == 64 || TARGET_AVX512VL
   27580              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27581              :    && ix86_pre_reload_split ()
   27582              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27583              :                     STRIP_UNARY (operands[4]))
   27584              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27585              :                        STRIP_UNARY (operands[4]))
   27586              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27587              :                        STRIP_UNARY (operands[3]))
   27588              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27589              :                        STRIP_UNARY (operands[3])))) && 
   27590              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27591              : (TARGET_AVX)) && 
   27592              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27593              : ( 1)))
   27594              :             return NULL;
   27595              :           return gen_split_2570 (insn, operands);
   27596              : 
   27597              :         case 8:
   27598              :           if (!(
   27599              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27600              : ((16 == 64 || TARGET_AVX512VL
   27601              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27602              :    && ix86_pre_reload_split ()
   27603              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27604              :                     STRIP_UNARY (operands[4]))
   27605              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27606              :                        STRIP_UNARY (operands[4]))
   27607              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27608              :                        STRIP_UNARY (operands[3]))
   27609              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27610              :                        STRIP_UNARY (operands[3])))) && 
   27611              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27612              : ( 1)))
   27613              :             return NULL;
   27614              :           return gen_split_2597 (insn, operands);
   27615              : 
   27616              :         case 9:
   27617              :           if (!((
   27618              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27619              : ((64 == 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 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27631              : (TARGET_AVX512F)) && 
   27632              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27633              : ( 1)))
   27634              :             return NULL;
   27635              :           return gen_split_2624 (insn, operands);
   27636              : 
   27637              :         case 10:
   27638              :           if (!((
   27639              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27640              : ((32 == 64 || TARGET_AVX512VL
   27641              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27642              :    && ix86_pre_reload_split ()
   27643              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27644              :                     STRIP_UNARY (operands[4]))
   27645              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27646              :                        STRIP_UNARY (operands[4]))
   27647              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27648              :                        STRIP_UNARY (operands[3]))
   27649              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27650              :                        STRIP_UNARY (operands[3])))) && 
   27651              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27652              : (TARGET_AVX)) && 
   27653              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27654              : ( 1)))
   27655              :             return NULL;
   27656              :           return gen_split_2651 (insn, operands);
   27657              : 
   27658              :         case 11:
   27659              :           if (!(
   27660              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27661              : ((16 == 64 || TARGET_AVX512VL
   27662              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27663              :    && ix86_pre_reload_split ()
   27664              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27665              :                     STRIP_UNARY (operands[4]))
   27666              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27667              :                        STRIP_UNARY (operands[4]))
   27668              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27669              :                        STRIP_UNARY (operands[3]))
   27670              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27671              :                        STRIP_UNARY (operands[3])))) && 
   27672              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27673              : ( 1)))
   27674              :             return NULL;
   27675              :           return gen_split_2678 (insn, operands);
   27676              : 
   27677              :         default:
   27678              :           return NULL;
   27679              :         }
   27680              : 
   27681              :     case IOR:
   27682              :       switch (pattern539 (x2))
   27683              :         {
   27684              :         case 0:
   27685              :           if (!((
   27686              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27687              : ((64 == 64 || TARGET_AVX512VL
   27688              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27689              :    && ix86_pre_reload_split ()
   27690              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27691              :                     STRIP_UNARY (operands[4]))
   27692              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27693              :                        STRIP_UNARY (operands[4]))
   27694              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27695              :                        STRIP_UNARY (operands[3]))
   27696              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27697              :                        STRIP_UNARY (operands[3])))) && 
   27698              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27699              : (TARGET_AVX512F)) && 
   27700              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27701              : ( 1)))
   27702              :             return NULL;
   27703              :           return gen_split_2384 (insn, operands);
   27704              : 
   27705              :         case 1:
   27706              :           if (!((
   27707              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27708              : ((32 == 64 || TARGET_AVX512VL
   27709              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27710              :    && ix86_pre_reload_split ()
   27711              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27712              :                     STRIP_UNARY (operands[4]))
   27713              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27714              :                        STRIP_UNARY (operands[4]))
   27715              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27716              :                        STRIP_UNARY (operands[3]))
   27717              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27718              :                        STRIP_UNARY (operands[3])))) && 
   27719              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27720              : (TARGET_AVX)) && 
   27721              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27722              : ( 1)))
   27723              :             return NULL;
   27724              :           return gen_split_2411 (insn, operands);
   27725              : 
   27726              :         case 2:
   27727              :           if (!(
   27728              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27729              : ((16 == 64 || TARGET_AVX512VL
   27730              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27731              :    && ix86_pre_reload_split ()
   27732              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27733              :                     STRIP_UNARY (operands[4]))
   27734              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27735              :                        STRIP_UNARY (operands[4]))
   27736              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27737              :                        STRIP_UNARY (operands[3]))
   27738              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27739              :                        STRIP_UNARY (operands[3])))) && 
   27740              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27741              : ( 1)))
   27742              :             return NULL;
   27743              :           return gen_split_2438 (insn, operands);
   27744              : 
   27745              :         case 3:
   27746              :           if (!((
   27747              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27748              : ((64 == 64 || TARGET_AVX512VL
   27749              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27750              :    && ix86_pre_reload_split ()
   27751              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27752              :                     STRIP_UNARY (operands[4]))
   27753              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27754              :                        STRIP_UNARY (operands[4]))
   27755              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27756              :                        STRIP_UNARY (operands[3]))
   27757              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27758              :                        STRIP_UNARY (operands[3])))) && 
   27759              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27760              : (TARGET_AVX512F)) && 
   27761              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27762              : ( 1)))
   27763              :             return NULL;
   27764              :           return gen_split_2465 (insn, operands);
   27765              : 
   27766              :         case 4:
   27767              :           if (!((
   27768              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27769              : ((32 == 64 || TARGET_AVX512VL
   27770              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27771              :    && ix86_pre_reload_split ()
   27772              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27773              :                     STRIP_UNARY (operands[4]))
   27774              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27775              :                        STRIP_UNARY (operands[4]))
   27776              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27777              :                        STRIP_UNARY (operands[3]))
   27778              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27779              :                        STRIP_UNARY (operands[3])))) && 
   27780              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27781              : (TARGET_AVX)) && 
   27782              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27783              : ( 1)))
   27784              :             return NULL;
   27785              :           return gen_split_2492 (insn, operands);
   27786              : 
   27787              :         case 5:
   27788              :           if (!(
   27789              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27790              : ((16 == 64 || TARGET_AVX512VL
   27791              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27792              :    && ix86_pre_reload_split ()
   27793              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27794              :                     STRIP_UNARY (operands[4]))
   27795              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27796              :                        STRIP_UNARY (operands[4]))
   27797              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27798              :                        STRIP_UNARY (operands[3]))
   27799              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27800              :                        STRIP_UNARY (operands[3])))) && 
   27801              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27802              : ( 1)))
   27803              :             return NULL;
   27804              :           return gen_split_2519 (insn, operands);
   27805              : 
   27806              :         case 6:
   27807              :           if (!((
   27808              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27809              : ((64 == 64 || TARGET_AVX512VL
   27810              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27811              :    && ix86_pre_reload_split ()
   27812              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27813              :                     STRIP_UNARY (operands[4]))
   27814              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27815              :                        STRIP_UNARY (operands[4]))
   27816              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27817              :                        STRIP_UNARY (operands[3]))
   27818              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27819              :                        STRIP_UNARY (operands[3])))) && 
   27820              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27821              : (TARGET_AVX512F)) && 
   27822              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27823              : ( 1)))
   27824              :             return NULL;
   27825              :           return gen_split_2546 (insn, operands);
   27826              : 
   27827              :         case 7:
   27828              :           if (!((
   27829              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27830              : ((32 == 64 || TARGET_AVX512VL
   27831              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27832              :    && ix86_pre_reload_split ()
   27833              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27834              :                     STRIP_UNARY (operands[4]))
   27835              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27836              :                        STRIP_UNARY (operands[4]))
   27837              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27838              :                        STRIP_UNARY (operands[3]))
   27839              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27840              :                        STRIP_UNARY (operands[3])))) && 
   27841              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27842              : (TARGET_AVX)) && 
   27843              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27844              : ( 1)))
   27845              :             return NULL;
   27846              :           return gen_split_2573 (insn, operands);
   27847              : 
   27848              :         case 8:
   27849              :           if (!(
   27850              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27851              : ((16 == 64 || TARGET_AVX512VL
   27852              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27853              :    && ix86_pre_reload_split ()
   27854              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27855              :                     STRIP_UNARY (operands[4]))
   27856              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27857              :                        STRIP_UNARY (operands[4]))
   27858              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27859              :                        STRIP_UNARY (operands[3]))
   27860              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27861              :                        STRIP_UNARY (operands[3])))) && 
   27862              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27863              : ( 1)))
   27864              :             return NULL;
   27865              :           return gen_split_2600 (insn, operands);
   27866              : 
   27867              :         case 9:
   27868              :           if (!((
   27869              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27870              : ((64 == 64 || TARGET_AVX512VL
   27871              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27872              :    && ix86_pre_reload_split ()
   27873              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27874              :                     STRIP_UNARY (operands[4]))
   27875              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27876              :                        STRIP_UNARY (operands[4]))
   27877              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27878              :                        STRIP_UNARY (operands[3]))
   27879              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27880              :                        STRIP_UNARY (operands[3])))) && 
   27881              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27882              : (TARGET_AVX512F)) && 
   27883              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27884              : ( 1)))
   27885              :             return NULL;
   27886              :           return gen_split_2627 (insn, operands);
   27887              : 
   27888              :         case 10:
   27889              :           if (!((
   27890              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27891              : ((32 == 64 || TARGET_AVX512VL
   27892              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27893              :    && ix86_pre_reload_split ()
   27894              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27895              :                     STRIP_UNARY (operands[4]))
   27896              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27897              :                        STRIP_UNARY (operands[4]))
   27898              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27899              :                        STRIP_UNARY (operands[3]))
   27900              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27901              :                        STRIP_UNARY (operands[3])))) && 
   27902              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27903              : (TARGET_AVX)) && 
   27904              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27905              : ( 1)))
   27906              :             return NULL;
   27907              :           return gen_split_2654 (insn, operands);
   27908              : 
   27909              :         case 11:
   27910              :           if (!(
   27911              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27912              : ((16 == 64 || TARGET_AVX512VL
   27913              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27914              :    && ix86_pre_reload_split ()
   27915              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27916              :                     STRIP_UNARY (operands[4]))
   27917              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27918              :                        STRIP_UNARY (operands[4]))
   27919              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27920              :                        STRIP_UNARY (operands[3]))
   27921              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27922              :                        STRIP_UNARY (operands[3])))) && 
   27923              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27924              : ( 1)))
   27925              :             return NULL;
   27926              :           return gen_split_2681 (insn, operands);
   27927              : 
   27928              :         default:
   27929              :           return NULL;
   27930              :         }
   27931              : 
   27932              :     case XOR:
   27933              :       switch (pattern539 (x2))
   27934              :         {
   27935              :         case 0:
   27936              :           if (!((
   27937              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27938              : ((64 == 64 || TARGET_AVX512VL
   27939              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27940              :    && ix86_pre_reload_split ()
   27941              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27942              :                     STRIP_UNARY (operands[4]))
   27943              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27944              :                        STRIP_UNARY (operands[4]))
   27945              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27946              :                        STRIP_UNARY (operands[3]))
   27947              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27948              :                        STRIP_UNARY (operands[3])))) && 
   27949              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27950              : (TARGET_AVX512F)) && 
   27951              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27952              : ( 1)))
   27953              :             return NULL;
   27954              :           return gen_split_2387 (insn, operands);
   27955              : 
   27956              :         case 1:
   27957              :           if (!((
   27958              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27959              : ((32 == 64 || TARGET_AVX512VL
   27960              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27961              :    && ix86_pre_reload_split ()
   27962              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27963              :                     STRIP_UNARY (operands[4]))
   27964              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27965              :                        STRIP_UNARY (operands[4]))
   27966              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27967              :                        STRIP_UNARY (operands[3]))
   27968              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27969              :                        STRIP_UNARY (operands[3])))) && 
   27970              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27971              : (TARGET_AVX)) && 
   27972              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27973              : ( 1)))
   27974              :             return NULL;
   27975              :           return gen_split_2414 (insn, operands);
   27976              : 
   27977              :         case 2:
   27978              :           if (!(
   27979              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27980              : ((16 == 64 || TARGET_AVX512VL
   27981              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27982              :    && ix86_pre_reload_split ()
   27983              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27984              :                     STRIP_UNARY (operands[4]))
   27985              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27986              :                        STRIP_UNARY (operands[4]))
   27987              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27988              :                        STRIP_UNARY (operands[3]))
   27989              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27990              :                        STRIP_UNARY (operands[3])))) && 
   27991              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27992              : ( 1)))
   27993              :             return NULL;
   27994              :           return gen_split_2441 (insn, operands);
   27995              : 
   27996              :         case 3:
   27997              :           if (!((
   27998              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27999              : ((64 == 64 || TARGET_AVX512VL
   28000              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28001              :    && ix86_pre_reload_split ()
   28002              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28003              :                     STRIP_UNARY (operands[4]))
   28004              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28005              :                        STRIP_UNARY (operands[4]))
   28006              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28007              :                        STRIP_UNARY (operands[3]))
   28008              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28009              :                        STRIP_UNARY (operands[3])))) && 
   28010              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28011              : (TARGET_AVX512F)) && 
   28012              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28013              : ( 1)))
   28014              :             return NULL;
   28015              :           return gen_split_2468 (insn, operands);
   28016              : 
   28017              :         case 4:
   28018              :           if (!((
   28019              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28020              : ((32 == 64 || TARGET_AVX512VL
   28021              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28022              :    && ix86_pre_reload_split ()
   28023              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28024              :                     STRIP_UNARY (operands[4]))
   28025              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28026              :                        STRIP_UNARY (operands[4]))
   28027              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28028              :                        STRIP_UNARY (operands[3]))
   28029              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28030              :                        STRIP_UNARY (operands[3])))) && 
   28031              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28032              : (TARGET_AVX)) && 
   28033              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28034              : ( 1)))
   28035              :             return NULL;
   28036              :           return gen_split_2495 (insn, operands);
   28037              : 
   28038              :         case 5:
   28039              :           if (!(
   28040              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28041              : ((16 == 64 || TARGET_AVX512VL
   28042              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28043              :    && ix86_pre_reload_split ()
   28044              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28045              :                     STRIP_UNARY (operands[4]))
   28046              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28047              :                        STRIP_UNARY (operands[4]))
   28048              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28049              :                        STRIP_UNARY (operands[3]))
   28050              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28051              :                        STRIP_UNARY (operands[3])))) && 
   28052              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28053              : ( 1)))
   28054              :             return NULL;
   28055              :           return gen_split_2522 (insn, operands);
   28056              : 
   28057              :         case 6:
   28058              :           if (!((
   28059              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28060              : ((64 == 64 || TARGET_AVX512VL
   28061              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28062              :    && ix86_pre_reload_split ()
   28063              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28064              :                     STRIP_UNARY (operands[4]))
   28065              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28066              :                        STRIP_UNARY (operands[4]))
   28067              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28068              :                        STRIP_UNARY (operands[3]))
   28069              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28070              :                        STRIP_UNARY (operands[3])))) && 
   28071              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28072              : (TARGET_AVX512F)) && 
   28073              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28074              : ( 1)))
   28075              :             return NULL;
   28076              :           return gen_split_2549 (insn, operands);
   28077              : 
   28078              :         case 7:
   28079              :           if (!((
   28080              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28081              : ((32 == 64 || TARGET_AVX512VL
   28082              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28083              :    && ix86_pre_reload_split ()
   28084              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28085              :                     STRIP_UNARY (operands[4]))
   28086              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28087              :                        STRIP_UNARY (operands[4]))
   28088              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28089              :                        STRIP_UNARY (operands[3]))
   28090              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28091              :                        STRIP_UNARY (operands[3])))) && 
   28092              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28093              : (TARGET_AVX)) && 
   28094              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28095              : ( 1)))
   28096              :             return NULL;
   28097              :           return gen_split_2576 (insn, operands);
   28098              : 
   28099              :         case 8:
   28100              :           if (!(
   28101              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28102              : ((16 == 64 || TARGET_AVX512VL
   28103              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28104              :    && ix86_pre_reload_split ()
   28105              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28106              :                     STRIP_UNARY (operands[4]))
   28107              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28108              :                        STRIP_UNARY (operands[4]))
   28109              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28110              :                        STRIP_UNARY (operands[3]))
   28111              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28112              :                        STRIP_UNARY (operands[3])))) && 
   28113              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28114              : ( 1)))
   28115              :             return NULL;
   28116              :           return gen_split_2603 (insn, operands);
   28117              : 
   28118              :         case 9:
   28119              :           if (!((
   28120              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28121              : ((64 == 64 || TARGET_AVX512VL
   28122              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28123              :    && ix86_pre_reload_split ()
   28124              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28125              :                     STRIP_UNARY (operands[4]))
   28126              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28127              :                        STRIP_UNARY (operands[4]))
   28128              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28129              :                        STRIP_UNARY (operands[3]))
   28130              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28131              :                        STRIP_UNARY (operands[3])))) && 
   28132              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28133              : (TARGET_AVX512F)) && 
   28134              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28135              : ( 1)))
   28136              :             return NULL;
   28137              :           return gen_split_2630 (insn, operands);
   28138              : 
   28139              :         case 10:
   28140              :           if (!((
   28141              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28142              : ((32 == 64 || TARGET_AVX512VL
   28143              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28144              :    && ix86_pre_reload_split ()
   28145              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28146              :                     STRIP_UNARY (operands[4]))
   28147              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28148              :                        STRIP_UNARY (operands[4]))
   28149              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28150              :                        STRIP_UNARY (operands[3]))
   28151              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28152              :                        STRIP_UNARY (operands[3])))) && 
   28153              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28154              : (TARGET_AVX)) && 
   28155              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28156              : ( 1)))
   28157              :             return NULL;
   28158              :           return gen_split_2657 (insn, operands);
   28159              : 
   28160              :         case 11:
   28161              :           if (!(
   28162              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28163              : ((16 == 64 || TARGET_AVX512VL
   28164              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28165              :    && ix86_pre_reload_split ()
   28166              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28167              :                     STRIP_UNARY (operands[4]))
   28168              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28169              :                        STRIP_UNARY (operands[4]))
   28170              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28171              :                        STRIP_UNARY (operands[3]))
   28172              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28173              :                        STRIP_UNARY (operands[3])))) && 
   28174              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28175              : ( 1)))
   28176              :             return NULL;
   28177              :           return gen_split_2684 (insn, operands);
   28178              : 
   28179              :         default:
   28180              :           return NULL;
   28181              :         }
   28182              : 
   28183              :     default:
   28184              :       return NULL;
   28185              :     }
   28186              : }
   28187              : 
   28188              :  rtx_insn *
   28189              : split_73 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   28190              : {
   28191              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   28192              :   rtx x2, x3, x4;
   28193              :   rtx_insn *res ATTRIBUTE_UNUSED;
   28194              :   x2 = XEXP (x1, 1);
   28195              :   x3 = XEXP (x2, 0);
   28196              :   switch (GET_CODE (x3))
   28197              :     {
   28198              :     case AND:
   28199              :       x4 = XEXP (x3, 0);
   28200              :       switch (GET_CODE (x4))
   28201              :         {
   28202              :         case REG:
   28203              :         case SUBREG:
   28204              :         case MEM:
   28205              :         case NOT:
   28206              :           switch (pattern543 (x2))
   28207              :             {
   28208              :             case 0:
   28209              :               if (!((
   28210              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28211              : ((64 == 64 || TARGET_AVX512VL
   28212              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28213              :    && ix86_pre_reload_split ()
   28214              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28215              :                     STRIP_UNARY (operands[4]))
   28216              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28217              :                        STRIP_UNARY (operands[4]))
   28218              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28219              :                        STRIP_UNARY (operands[3]))
   28220              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28221              :                        STRIP_UNARY (operands[3])))) && 
   28222              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28223              : (TARGET_AVX512F)) && 
   28224              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28225              : ( 1)))
   28226              :                 return NULL;
   28227              :               return gen_split_2058 (insn, operands);
   28228              : 
   28229              :             case 1:
   28230              :               if (!((
   28231              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28232              : ((32 == 64 || TARGET_AVX512VL
   28233              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28234              :    && ix86_pre_reload_split ()
   28235              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28236              :                     STRIP_UNARY (operands[4]))
   28237              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28238              :                        STRIP_UNARY (operands[4]))
   28239              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28240              :                        STRIP_UNARY (operands[3]))
   28241              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28242              :                        STRIP_UNARY (operands[3])))) && 
   28243              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28244              : (TARGET_AVX)) && 
   28245              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28246              : ( 1)))
   28247              :                 return NULL;
   28248              :               return gen_split_2085 (insn, operands);
   28249              : 
   28250              :             case 2:
   28251              :               if (!(
   28252              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28253              : ((16 == 64 || TARGET_AVX512VL
   28254              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28255              :    && ix86_pre_reload_split ()
   28256              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28257              :                     STRIP_UNARY (operands[4]))
   28258              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28259              :                        STRIP_UNARY (operands[4]))
   28260              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28261              :                        STRIP_UNARY (operands[3]))
   28262              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28263              :                        STRIP_UNARY (operands[3])))) && 
   28264              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28265              : ( 1)))
   28266              :                 return NULL;
   28267              :               return gen_split_2112 (insn, operands);
   28268              : 
   28269              :             case 3:
   28270              :               if (!((
   28271              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28272              : ((64 == 64 || TARGET_AVX512VL
   28273              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28274              :    && ix86_pre_reload_split ()
   28275              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28276              :                     STRIP_UNARY (operands[4]))
   28277              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28278              :                        STRIP_UNARY (operands[4]))
   28279              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28280              :                        STRIP_UNARY (operands[3]))
   28281              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28282              :                        STRIP_UNARY (operands[3])))) && 
   28283              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28284              : (TARGET_AVX512F)) && 
   28285              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28286              : ( 1)))
   28287              :                 return NULL;
   28288              :               return gen_split_2139 (insn, operands);
   28289              : 
   28290              :             case 4:
   28291              :               if (!((
   28292              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28293              : ((32 == 64 || TARGET_AVX512VL
   28294              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28295              :    && ix86_pre_reload_split ()
   28296              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28297              :                     STRIP_UNARY (operands[4]))
   28298              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28299              :                        STRIP_UNARY (operands[4]))
   28300              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28301              :                        STRIP_UNARY (operands[3]))
   28302              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28303              :                        STRIP_UNARY (operands[3])))) && 
   28304              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28305              : (TARGET_AVX)) && 
   28306              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28307              : ( 1)))
   28308              :                 return NULL;
   28309              :               return gen_split_2166 (insn, operands);
   28310              : 
   28311              :             case 5:
   28312              :               if (!(
   28313              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28314              : ((16 == 64 || TARGET_AVX512VL
   28315              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28316              :    && ix86_pre_reload_split ()
   28317              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28318              :                     STRIP_UNARY (operands[4]))
   28319              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28320              :                        STRIP_UNARY (operands[4]))
   28321              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28322              :                        STRIP_UNARY (operands[3]))
   28323              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28324              :                        STRIP_UNARY (operands[3])))) && 
   28325              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28326              : ( 1)))
   28327              :                 return NULL;
   28328              :               return gen_split_2193 (insn, operands);
   28329              : 
   28330              :             case 6:
   28331              :               if (!((
   28332              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28333              : ((64 == 64 || TARGET_AVX512VL
   28334              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28335              :    && ix86_pre_reload_split ()
   28336              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28337              :                     STRIP_UNARY (operands[4]))
   28338              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28339              :                        STRIP_UNARY (operands[4]))
   28340              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28341              :                        STRIP_UNARY (operands[3]))
   28342              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28343              :                        STRIP_UNARY (operands[3])))) && 
   28344              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28345              : (TARGET_AVX512F)) && 
   28346              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28347              : ( 1)))
   28348              :                 return NULL;
   28349              :               return gen_split_2220 (insn, operands);
   28350              : 
   28351              :             case 7:
   28352              :               if (!((
   28353              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28354              : ((32 == 64 || TARGET_AVX512VL
   28355              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28356              :    && ix86_pre_reload_split ()
   28357              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28358              :                     STRIP_UNARY (operands[4]))
   28359              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28360              :                        STRIP_UNARY (operands[4]))
   28361              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28362              :                        STRIP_UNARY (operands[3]))
   28363              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28364              :                        STRIP_UNARY (operands[3])))) && 
   28365              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28366              : (TARGET_AVX)) && 
   28367              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28368              : ( 1)))
   28369              :                 return NULL;
   28370              :               return gen_split_2247 (insn, operands);
   28371              : 
   28372              :             case 8:
   28373              :               if (!(
   28374              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28375              : ((16 == 64 || TARGET_AVX512VL
   28376              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28377              :    && ix86_pre_reload_split ()
   28378              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28379              :                     STRIP_UNARY (operands[4]))
   28380              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28381              :                        STRIP_UNARY (operands[4]))
   28382              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28383              :                        STRIP_UNARY (operands[3]))
   28384              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28385              :                        STRIP_UNARY (operands[3])))) && 
   28386              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28387              : ( 1)))
   28388              :                 return NULL;
   28389              :               return gen_split_2274 (insn, operands);
   28390              : 
   28391              :             case 9:
   28392              :               if (!((
   28393              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28394              : ((64 == 64 || TARGET_AVX512VL
   28395              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28396              :    && ix86_pre_reload_split ()
   28397              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28398              :                     STRIP_UNARY (operands[4]))
   28399              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28400              :                        STRIP_UNARY (operands[4]))
   28401              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28402              :                        STRIP_UNARY (operands[3]))
   28403              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28404              :                        STRIP_UNARY (operands[3])))) && 
   28405              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28406              : (TARGET_AVX512F)) && 
   28407              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28408              : ( 1)))
   28409              :                 return NULL;
   28410              :               return gen_split_2301 (insn, operands);
   28411              : 
   28412              :             case 10:
   28413              :               if (!((
   28414              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28415              : ((32 == 64 || TARGET_AVX512VL
   28416              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28417              :    && ix86_pre_reload_split ()
   28418              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28419              :                     STRIP_UNARY (operands[4]))
   28420              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28421              :                        STRIP_UNARY (operands[4]))
   28422              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28423              :                        STRIP_UNARY (operands[3]))
   28424              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28425              :                        STRIP_UNARY (operands[3])))) && 
   28426              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28427              : (TARGET_AVX)) && 
   28428              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28429              : ( 1)))
   28430              :                 return NULL;
   28431              :               return gen_split_2328 (insn, operands);
   28432              : 
   28433              :             case 11:
   28434              :               if (!((
   28435              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28436              : ((16 == 64 || TARGET_AVX512VL
   28437              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28438              :    && ix86_pre_reload_split ()
   28439              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28440              :                     STRIP_UNARY (operands[4]))
   28441              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28442              :                        STRIP_UNARY (operands[4]))
   28443              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28444              :                        STRIP_UNARY (operands[3]))
   28445              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28446              :                        STRIP_UNARY (operands[3])))) && 
   28447              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28448              : (TARGET_SSE2)) && 
   28449              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28450              : ( 1)))
   28451              :                 return NULL;
   28452              :               return gen_split_2355 (insn, operands);
   28453              : 
   28454              :             case 12:
   28455              :               if (!((
   28456              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28457              : ((64 == 64 || TARGET_AVX512VL
   28458              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28459              :    && ix86_pre_reload_split ()
   28460              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28461              :                     STRIP_UNARY (operands[4]))
   28462              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28463              :                        STRIP_UNARY (operands[4]))
   28464              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28465              :                        STRIP_UNARY (operands[3]))
   28466              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28467              :                        STRIP_UNARY (operands[3])))) && 
   28468              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28469              : (TARGET_AVX512F)) && 
   28470              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28471              : ( 1)))
   28472              :                 return NULL;
   28473              :               return gen_split_2061 (insn, operands);
   28474              : 
   28475              :             case 13:
   28476              :               if (!((
   28477              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28478              : ((32 == 64 || TARGET_AVX512VL
   28479              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28480              :    && ix86_pre_reload_split ()
   28481              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28482              :                     STRIP_UNARY (operands[4]))
   28483              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28484              :                        STRIP_UNARY (operands[4]))
   28485              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28486              :                        STRIP_UNARY (operands[3]))
   28487              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28488              :                        STRIP_UNARY (operands[3])))) && 
   28489              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28490              : (TARGET_AVX)) && 
   28491              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28492              : ( 1)))
   28493              :                 return NULL;
   28494              :               return gen_split_2088 (insn, operands);
   28495              : 
   28496              :             case 14:
   28497              :               if (!(
   28498              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28499              : ((16 == 64 || TARGET_AVX512VL
   28500              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28501              :    && ix86_pre_reload_split ()
   28502              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28503              :                     STRIP_UNARY (operands[4]))
   28504              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28505              :                        STRIP_UNARY (operands[4]))
   28506              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28507              :                        STRIP_UNARY (operands[3]))
   28508              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28509              :                        STRIP_UNARY (operands[3])))) && 
   28510              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28511              : ( 1)))
   28512              :                 return NULL;
   28513              :               return gen_split_2115 (insn, operands);
   28514              : 
   28515              :             case 15:
   28516              :               if (!((
   28517              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28518              : ((64 == 64 || TARGET_AVX512VL
   28519              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28520              :    && ix86_pre_reload_split ()
   28521              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28522              :                     STRIP_UNARY (operands[4]))
   28523              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28524              :                        STRIP_UNARY (operands[4]))
   28525              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28526              :                        STRIP_UNARY (operands[3]))
   28527              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28528              :                        STRIP_UNARY (operands[3])))) && 
   28529              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28530              : (TARGET_AVX512F)) && 
   28531              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28532              : ( 1)))
   28533              :                 return NULL;
   28534              :               return gen_split_2142 (insn, operands);
   28535              : 
   28536              :             case 16:
   28537              :               if (!((
   28538              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28539              : ((32 == 64 || TARGET_AVX512VL
   28540              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28541              :    && ix86_pre_reload_split ()
   28542              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28543              :                     STRIP_UNARY (operands[4]))
   28544              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28545              :                        STRIP_UNARY (operands[4]))
   28546              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28547              :                        STRIP_UNARY (operands[3]))
   28548              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28549              :                        STRIP_UNARY (operands[3])))) && 
   28550              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28551              : (TARGET_AVX)) && 
   28552              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28553              : ( 1)))
   28554              :                 return NULL;
   28555              :               return gen_split_2169 (insn, operands);
   28556              : 
   28557              :             case 17:
   28558              :               if (!(
   28559              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28560              : ((16 == 64 || TARGET_AVX512VL
   28561              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28562              :    && ix86_pre_reload_split ()
   28563              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28564              :                     STRIP_UNARY (operands[4]))
   28565              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28566              :                        STRIP_UNARY (operands[4]))
   28567              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28568              :                        STRIP_UNARY (operands[3]))
   28569              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28570              :                        STRIP_UNARY (operands[3])))) && 
   28571              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28572              : ( 1)))
   28573              :                 return NULL;
   28574              :               return gen_split_2196 (insn, operands);
   28575              : 
   28576              :             case 18:
   28577              :               if (!((
   28578              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28579              : ((64 == 64 || TARGET_AVX512VL
   28580              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28581              :    && ix86_pre_reload_split ()
   28582              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28583              :                     STRIP_UNARY (operands[4]))
   28584              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28585              :                        STRIP_UNARY (operands[4]))
   28586              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28587              :                        STRIP_UNARY (operands[3]))
   28588              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28589              :                        STRIP_UNARY (operands[3])))) && 
   28590              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28591              : (TARGET_AVX512F)) && 
   28592              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28593              : ( 1)))
   28594              :                 return NULL;
   28595              :               return gen_split_2223 (insn, operands);
   28596              : 
   28597              :             case 19:
   28598              :               if (!((
   28599              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28600              : ((32 == 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 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28612              : (TARGET_AVX)) && 
   28613              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28614              : ( 1)))
   28615              :                 return NULL;
   28616              :               return gen_split_2250 (insn, operands);
   28617              : 
   28618              :             case 20:
   28619              :               if (!(
   28620              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28621              : ((16 == 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 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28633              : ( 1)))
   28634              :                 return NULL;
   28635              :               return gen_split_2277 (insn, operands);
   28636              : 
   28637              :             case 21:
   28638              :               if (!((
   28639              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28640              : ((64 == 64 || TARGET_AVX512VL
   28641              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28642              :    && ix86_pre_reload_split ()
   28643              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28644              :                     STRIP_UNARY (operands[4]))
   28645              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28646              :                        STRIP_UNARY (operands[4]))
   28647              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28648              :                        STRIP_UNARY (operands[3]))
   28649              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28650              :                        STRIP_UNARY (operands[3])))) && 
   28651              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28652              : (TARGET_AVX512F)) && 
   28653              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28654              : ( 1)))
   28655              :                 return NULL;
   28656              :               return gen_split_2304 (insn, operands);
   28657              : 
   28658              :             case 22:
   28659              :               if (!((
   28660              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28661              : ((32 == 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 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28673              : (TARGET_AVX)) && 
   28674              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28675              : ( 1)))
   28676              :                 return NULL;
   28677              :               return gen_split_2331 (insn, operands);
   28678              : 
   28679              :             case 23:
   28680              :               if (!((
   28681              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28682              : ((16 == 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 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28694              : (TARGET_SSE2)) && 
   28695              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28696              : ( 1)))
   28697              :                 return NULL;
   28698              :               return gen_split_2358 (insn, operands);
   28699              : 
   28700              :             case 24:
   28701              :               if (!((
   28702              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28703              : ((64 == 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 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28715              : (TARGET_AVX512F)) && 
   28716              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28717              : ( 1)))
   28718              :                 return NULL;
   28719              :               return gen_split_2064 (insn, operands);
   28720              : 
   28721              :             case 25:
   28722              :               if (!((
   28723              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28724              : ((32 == 64 || TARGET_AVX512VL
   28725              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28726              :    && ix86_pre_reload_split ()
   28727              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28728              :                     STRIP_UNARY (operands[4]))
   28729              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28730              :                        STRIP_UNARY (operands[4]))
   28731              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28732              :                        STRIP_UNARY (operands[3]))
   28733              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28734              :                        STRIP_UNARY (operands[3])))) && 
   28735              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28736              : (TARGET_AVX)) && 
   28737              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28738              : ( 1)))
   28739              :                 return NULL;
   28740              :               return gen_split_2091 (insn, operands);
   28741              : 
   28742              :             case 26:
   28743              :               if (!(
   28744              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28745              : ((16 == 64 || TARGET_AVX512VL
   28746              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28747              :    && ix86_pre_reload_split ()
   28748              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28749              :                     STRIP_UNARY (operands[4]))
   28750              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28751              :                        STRIP_UNARY (operands[4]))
   28752              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28753              :                        STRIP_UNARY (operands[3]))
   28754              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28755              :                        STRIP_UNARY (operands[3])))) && 
   28756              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28757              : ( 1)))
   28758              :                 return NULL;
   28759              :               return gen_split_2118 (insn, operands);
   28760              : 
   28761              :             case 27:
   28762              :               if (!((
   28763              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28764              : ((64 == 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 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28776              : (TARGET_AVX512F)) && 
   28777              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28778              : ( 1)))
   28779              :                 return NULL;
   28780              :               return gen_split_2145 (insn, operands);
   28781              : 
   28782              :             case 28:
   28783              :               if (!((
   28784              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28785              : ((32 == 64 || TARGET_AVX512VL
   28786              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28787              :    && ix86_pre_reload_split ()
   28788              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28789              :                     STRIP_UNARY (operands[4]))
   28790              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28791              :                        STRIP_UNARY (operands[4]))
   28792              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28793              :                        STRIP_UNARY (operands[3]))
   28794              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28795              :                        STRIP_UNARY (operands[3])))) && 
   28796              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28797              : (TARGET_AVX)) && 
   28798              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28799              : ( 1)))
   28800              :                 return NULL;
   28801              :               return gen_split_2172 (insn, operands);
   28802              : 
   28803              :             case 29:
   28804              :               if (!(
   28805              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28806              : ((16 == 64 || TARGET_AVX512VL
   28807              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28808              :    && ix86_pre_reload_split ()
   28809              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28810              :                     STRIP_UNARY (operands[4]))
   28811              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28812              :                        STRIP_UNARY (operands[4]))
   28813              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28814              :                        STRIP_UNARY (operands[3]))
   28815              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28816              :                        STRIP_UNARY (operands[3])))) && 
   28817              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28818              : ( 1)))
   28819              :                 return NULL;
   28820              :               return gen_split_2199 (insn, operands);
   28821              : 
   28822              :             case 30:
   28823              :               if (!((
   28824              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28825              : ((64 == 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 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28837              : (TARGET_AVX512F)) && 
   28838              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28839              : ( 1)))
   28840              :                 return NULL;
   28841              :               return gen_split_2226 (insn, operands);
   28842              : 
   28843              :             case 31:
   28844              :               if (!((
   28845              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28846              : ((32 == 64 || TARGET_AVX512VL
   28847              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28848              :    && ix86_pre_reload_split ()
   28849              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28850              :                     STRIP_UNARY (operands[4]))
   28851              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28852              :                        STRIP_UNARY (operands[4]))
   28853              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28854              :                        STRIP_UNARY (operands[3]))
   28855              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28856              :                        STRIP_UNARY (operands[3])))) && 
   28857              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28858              : (TARGET_AVX)) && 
   28859              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28860              : ( 1)))
   28861              :                 return NULL;
   28862              :               return gen_split_2253 (insn, operands);
   28863              : 
   28864              :             case 32:
   28865              :               if (!(
   28866              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28867              : ((16 == 64 || TARGET_AVX512VL
   28868              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28869              :    && ix86_pre_reload_split ()
   28870              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28871              :                     STRIP_UNARY (operands[4]))
   28872              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28873              :                        STRIP_UNARY (operands[4]))
   28874              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28875              :                        STRIP_UNARY (operands[3]))
   28876              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28877              :                        STRIP_UNARY (operands[3])))) && 
   28878              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28879              : ( 1)))
   28880              :                 return NULL;
   28881              :               return gen_split_2280 (insn, operands);
   28882              : 
   28883              :             case 33:
   28884              :               if (!((
   28885              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28886              : ((64 == 64 || TARGET_AVX512VL
   28887              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28888              :    && ix86_pre_reload_split ()
   28889              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28890              :                     STRIP_UNARY (operands[4]))
   28891              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28892              :                        STRIP_UNARY (operands[4]))
   28893              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28894              :                        STRIP_UNARY (operands[3]))
   28895              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28896              :                        STRIP_UNARY (operands[3])))) && 
   28897              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28898              : (TARGET_AVX512F)) && 
   28899              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28900              : ( 1)))
   28901              :                 return NULL;
   28902              :               return gen_split_2307 (insn, operands);
   28903              : 
   28904              :             case 34:
   28905              :               if (!((
   28906              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28907              : ((32 == 64 || TARGET_AVX512VL
   28908              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28909              :    && ix86_pre_reload_split ()
   28910              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28911              :                     STRIP_UNARY (operands[4]))
   28912              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28913              :                        STRIP_UNARY (operands[4]))
   28914              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28915              :                        STRIP_UNARY (operands[3]))
   28916              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28917              :                        STRIP_UNARY (operands[3])))) && 
   28918              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28919              : (TARGET_AVX)) && 
   28920              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28921              : ( 1)))
   28922              :                 return NULL;
   28923              :               return gen_split_2334 (insn, operands);
   28924              : 
   28925              :             case 35:
   28926              :               if (!((
   28927              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28928              : ((16 == 64 || TARGET_AVX512VL
   28929              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28930              :    && ix86_pre_reload_split ()
   28931              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28932              :                     STRIP_UNARY (operands[4]))
   28933              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28934              :                        STRIP_UNARY (operands[4]))
   28935              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28936              :                        STRIP_UNARY (operands[3]))
   28937              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28938              :                        STRIP_UNARY (operands[3])))) && 
   28939              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28940              : (TARGET_SSE2)) && 
   28941              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28942              : ( 1)))
   28943              :                 return NULL;
   28944              :               return gen_split_2361 (insn, operands);
   28945              : 
   28946              :             case 36:
   28947              :               if (!((
   28948              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28949              : ((64 == 64 || TARGET_AVX512VL
   28950              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28951              :    && ix86_pre_reload_split ()) && 
   28952              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28953              : (TARGET_AVX512F)) && 
   28954              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28955              : ( 1)))
   28956              :                 return NULL;
   28957              :               return gen_split_3138 (insn, operands);
   28958              : 
   28959              :             case 37:
   28960              :               if (!((
   28961              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28962              : ((32 == 64 || TARGET_AVX512VL
   28963              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28964              :    && ix86_pre_reload_split ()) && 
   28965              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28966              : (TARGET_AVX)) && 
   28967              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28968              : ( 1)))
   28969              :                 return NULL;
   28970              :               return gen_split_3147 (insn, operands);
   28971              : 
   28972              :             case 38:
   28973              :               if (!(
   28974              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28975              : ((16 == 64 || TARGET_AVX512VL
   28976              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28977              :    && ix86_pre_reload_split ()) && 
   28978              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28979              : ( 1)))
   28980              :                 return NULL;
   28981              :               return gen_split_3156 (insn, operands);
   28982              : 
   28983              :             case 39:
   28984              :               if (!((
   28985              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28986              : ((64 == 64 || TARGET_AVX512VL
   28987              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28988              :    && ix86_pre_reload_split ()) && 
   28989              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28990              : (TARGET_AVX512F)) && 
   28991              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28992              : ( 1)))
   28993              :                 return NULL;
   28994              :               return gen_split_3165 (insn, operands);
   28995              : 
   28996              :             case 40:
   28997              :               if (!((
   28998              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28999              : ((32 == 64 || TARGET_AVX512VL
   29000              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29001              :    && ix86_pre_reload_split ()) && 
   29002              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29003              : (TARGET_AVX)) && 
   29004              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29005              : ( 1)))
   29006              :                 return NULL;
   29007              :               return gen_split_3174 (insn, operands);
   29008              : 
   29009              :             case 41:
   29010              :               if (!(
   29011              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29012              : ((16 == 64 || TARGET_AVX512VL
   29013              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29014              :    && ix86_pre_reload_split ()) && 
   29015              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29016              : ( 1)))
   29017              :                 return NULL;
   29018              :               return gen_split_3183 (insn, operands);
   29019              : 
   29020              :             case 42:
   29021              :               if (!((
   29022              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29023              : ((64 == 64 || TARGET_AVX512VL
   29024              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29025              :    && ix86_pre_reload_split ()) && 
   29026              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29027              : (TARGET_AVX512F)) && 
   29028              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29029              : ( 1)))
   29030              :                 return NULL;
   29031              :               return gen_split_3192 (insn, operands);
   29032              : 
   29033              :             case 43:
   29034              :               if (!((
   29035              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29036              : ((32 == 64 || TARGET_AVX512VL
   29037              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29038              :    && ix86_pre_reload_split ()) && 
   29039              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29040              : (TARGET_AVX)) && 
   29041              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29042              : ( 1)))
   29043              :                 return NULL;
   29044              :               return gen_split_3201 (insn, operands);
   29045              : 
   29046              :             case 44:
   29047              :               if (!(
   29048              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29049              : ((16 == 64 || TARGET_AVX512VL
   29050              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29051              :    && ix86_pre_reload_split ()) && 
   29052              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29053              : ( 1)))
   29054              :                 return NULL;
   29055              :               return gen_split_3210 (insn, operands);
   29056              : 
   29057              :             case 45:
   29058              :               if (!((
   29059              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29060              : ((64 == 64 || TARGET_AVX512VL
   29061              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29062              :    && ix86_pre_reload_split ()) && 
   29063              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29064              : (TARGET_AVX512F)) && 
   29065              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29066              : ( 1)))
   29067              :                 return NULL;
   29068              :               return gen_split_3219 (insn, operands);
   29069              : 
   29070              :             case 46:
   29071              :               if (!((
   29072              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29073              : ((32 == 64 || TARGET_AVX512VL
   29074              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29075              :    && ix86_pre_reload_split ()) && 
   29076              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29077              : (TARGET_AVX)) && 
   29078              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29079              : ( 1)))
   29080              :                 return NULL;
   29081              :               return gen_split_3228 (insn, operands);
   29082              : 
   29083              :             case 47:
   29084              :               if (!((
   29085              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29086              : ((16 == 64 || TARGET_AVX512VL
   29087              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29088              :    && ix86_pre_reload_split ()) && 
   29089              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29090              : (TARGET_SSE2)) && 
   29091              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29092              : ( 1)))
   29093              :                 return NULL;
   29094              :               return gen_split_3237 (insn, operands);
   29095              : 
   29096              :             default:
   29097              :               return NULL;
   29098              :             }
   29099              : 
   29100              :         case AND:
   29101              :           switch (pattern544 (x2))
   29102              :             {
   29103              :             case 0:
   29104              :               if (!((
   29105              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29106              : ((64 == 64 || TARGET_AVX512VL
   29107              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29108              :    && ix86_pre_reload_split ()
   29109              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29110              :                     STRIP_UNARY (operands[4]))
   29111              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29112              :                        STRIP_UNARY (operands[4]))
   29113              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29114              :                        STRIP_UNARY (operands[3]))
   29115              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29116              :                        STRIP_UNARY (operands[3])))) && 
   29117              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29118              : (TARGET_AVX512F)) && 
   29119              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29120              : ( 1)))
   29121              :                 return NULL;
   29122              :               return gen_split_2706 (insn, operands);
   29123              : 
   29124              :             case 1:
   29125              :               if (!((
   29126              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29127              : ((32 == 64 || TARGET_AVX512VL
   29128              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29129              :    && ix86_pre_reload_split ()
   29130              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29131              :                     STRIP_UNARY (operands[4]))
   29132              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29133              :                        STRIP_UNARY (operands[4]))
   29134              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29135              :                        STRIP_UNARY (operands[3]))
   29136              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29137              :                        STRIP_UNARY (operands[3])))) && 
   29138              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29139              : (TARGET_AVX)) && 
   29140              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29141              : ( 1)))
   29142              :                 return NULL;
   29143              :               return gen_split_2733 (insn, operands);
   29144              : 
   29145              :             case 2:
   29146              :               if (!(
   29147              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29148              : ((16 == 64 || TARGET_AVX512VL
   29149              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29150              :    && ix86_pre_reload_split ()
   29151              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29152              :                     STRIP_UNARY (operands[4]))
   29153              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29154              :                        STRIP_UNARY (operands[4]))
   29155              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29156              :                        STRIP_UNARY (operands[3]))
   29157              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29158              :                        STRIP_UNARY (operands[3])))) && 
   29159              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29160              : ( 1)))
   29161              :                 return NULL;
   29162              :               return gen_split_2760 (insn, operands);
   29163              : 
   29164              :             case 3:
   29165              :               if (!((
   29166              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29167              : ((64 == 64 || TARGET_AVX512VL
   29168              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29169              :    && ix86_pre_reload_split ()
   29170              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29171              :                     STRIP_UNARY (operands[4]))
   29172              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29173              :                        STRIP_UNARY (operands[4]))
   29174              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29175              :                        STRIP_UNARY (operands[3]))
   29176              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29177              :                        STRIP_UNARY (operands[3])))) && 
   29178              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29179              : (TARGET_AVX512F)) && 
   29180              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29181              : ( 1)))
   29182              :                 return NULL;
   29183              :               return gen_split_2787 (insn, operands);
   29184              : 
   29185              :             case 4:
   29186              :               if (!((
   29187              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29188              : ((32 == 64 || TARGET_AVX512VL
   29189              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29190              :    && ix86_pre_reload_split ()
   29191              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29192              :                     STRIP_UNARY (operands[4]))
   29193              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29194              :                        STRIP_UNARY (operands[4]))
   29195              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29196              :                        STRIP_UNARY (operands[3]))
   29197              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29198              :                        STRIP_UNARY (operands[3])))) && 
   29199              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29200              : (TARGET_AVX)) && 
   29201              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29202              : ( 1)))
   29203              :                 return NULL;
   29204              :               return gen_split_2814 (insn, operands);
   29205              : 
   29206              :             case 5:
   29207              :               if (!(
   29208              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29209              : ((16 == 64 || TARGET_AVX512VL
   29210              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29211              :    && ix86_pre_reload_split ()
   29212              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29213              :                     STRIP_UNARY (operands[4]))
   29214              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29215              :                        STRIP_UNARY (operands[4]))
   29216              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29217              :                        STRIP_UNARY (operands[3]))
   29218              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29219              :                        STRIP_UNARY (operands[3])))) && 
   29220              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29221              : ( 1)))
   29222              :                 return NULL;
   29223              :               return gen_split_2841 (insn, operands);
   29224              : 
   29225              :             case 6:
   29226              :               if (!((
   29227              : #line 14236 "/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 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29240              : (TARGET_AVX512F)) && 
   29241              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29242              : ( 1)))
   29243              :                 return NULL;
   29244              :               return gen_split_2868 (insn, operands);
   29245              : 
   29246              :             case 7:
   29247              :               if (!((
   29248              : #line 14236 "/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 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29261              : (TARGET_AVX)) && 
   29262              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29263              : ( 1)))
   29264              :                 return NULL;
   29265              :               return gen_split_2895 (insn, operands);
   29266              : 
   29267              :             case 8:
   29268              :               if (!(
   29269              : #line 14236 "/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 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29282              : ( 1)))
   29283              :                 return NULL;
   29284              :               return gen_split_2922 (insn, operands);
   29285              : 
   29286              :             case 9:
   29287              :               if (!((
   29288              : #line 14236 "/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 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29301              : (TARGET_AVX512F)) && 
   29302              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29303              : ( 1)))
   29304              :                 return NULL;
   29305              :               return gen_split_2949 (insn, operands);
   29306              : 
   29307              :             case 10:
   29308              :               if (!((
   29309              : #line 14236 "/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 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29322              : (TARGET_AVX)) && 
   29323              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29324              : ( 1)))
   29325              :                 return NULL;
   29326              :               return gen_split_2976 (insn, operands);
   29327              : 
   29328              :             case 11:
   29329              :               if (!((
   29330              : #line 14236 "/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 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29343              : (TARGET_SSE2)) && 
   29344              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29345              : ( 1)))
   29346              :                 return NULL;
   29347              :               return gen_split_3003 (insn, operands);
   29348              : 
   29349              :             default:
   29350              :               return NULL;
   29351              :             }
   29352              : 
   29353              :         case IOR:
   29354              :           switch (pattern544 (x2))
   29355              :             {
   29356              :             case 0:
   29357              :               if (!((
   29358              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29359              : ((64 == 64 || TARGET_AVX512VL
   29360              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29361              :    && ix86_pre_reload_split ()
   29362              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29363              :                     STRIP_UNARY (operands[4]))
   29364              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29365              :                        STRIP_UNARY (operands[4]))
   29366              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29367              :                        STRIP_UNARY (operands[3]))
   29368              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29369              :                        STRIP_UNARY (operands[3])))) && 
   29370              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29371              : (TARGET_AVX512F)) && 
   29372              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29373              : ( 1)))
   29374              :                 return NULL;
   29375              :               return gen_split_2709 (insn, operands);
   29376              : 
   29377              :             case 1:
   29378              :               if (!((
   29379              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29380              : ((32 == 64 || TARGET_AVX512VL
   29381              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29382              :    && ix86_pre_reload_split ()
   29383              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29384              :                     STRIP_UNARY (operands[4]))
   29385              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29386              :                        STRIP_UNARY (operands[4]))
   29387              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29388              :                        STRIP_UNARY (operands[3]))
   29389              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29390              :                        STRIP_UNARY (operands[3])))) && 
   29391              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29392              : (TARGET_AVX)) && 
   29393              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29394              : ( 1)))
   29395              :                 return NULL;
   29396              :               return gen_split_2736 (insn, operands);
   29397              : 
   29398              :             case 2:
   29399              :               if (!(
   29400              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29401              : ((16 == 64 || TARGET_AVX512VL
   29402              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29403              :    && ix86_pre_reload_split ()
   29404              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29405              :                     STRIP_UNARY (operands[4]))
   29406              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29407              :                        STRIP_UNARY (operands[4]))
   29408              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29409              :                        STRIP_UNARY (operands[3]))
   29410              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29411              :                        STRIP_UNARY (operands[3])))) && 
   29412              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29413              : ( 1)))
   29414              :                 return NULL;
   29415              :               return gen_split_2763 (insn, operands);
   29416              : 
   29417              :             case 3:
   29418              :               if (!((
   29419              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29420              : ((64 == 64 || TARGET_AVX512VL
   29421              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29422              :    && ix86_pre_reload_split ()
   29423              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29424              :                     STRIP_UNARY (operands[4]))
   29425              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29426              :                        STRIP_UNARY (operands[4]))
   29427              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29428              :                        STRIP_UNARY (operands[3]))
   29429              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29430              :                        STRIP_UNARY (operands[3])))) && 
   29431              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29432              : (TARGET_AVX512F)) && 
   29433              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29434              : ( 1)))
   29435              :                 return NULL;
   29436              :               return gen_split_2790 (insn, operands);
   29437              : 
   29438              :             case 4:
   29439              :               if (!((
   29440              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29441              : ((32 == 64 || TARGET_AVX512VL
   29442              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29443              :    && ix86_pre_reload_split ()
   29444              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29445              :                     STRIP_UNARY (operands[4]))
   29446              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29447              :                        STRIP_UNARY (operands[4]))
   29448              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29449              :                        STRIP_UNARY (operands[3]))
   29450              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29451              :                        STRIP_UNARY (operands[3])))) && 
   29452              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29453              : (TARGET_AVX)) && 
   29454              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29455              : ( 1)))
   29456              :                 return NULL;
   29457              :               return gen_split_2817 (insn, operands);
   29458              : 
   29459              :             case 5:
   29460              :               if (!(
   29461              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29462              : ((16 == 64 || TARGET_AVX512VL
   29463              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29464              :    && ix86_pre_reload_split ()
   29465              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29466              :                     STRIP_UNARY (operands[4]))
   29467              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29468              :                        STRIP_UNARY (operands[4]))
   29469              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29470              :                        STRIP_UNARY (operands[3]))
   29471              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29472              :                        STRIP_UNARY (operands[3])))) && 
   29473              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29474              : ( 1)))
   29475              :                 return NULL;
   29476              :               return gen_split_2844 (insn, operands);
   29477              : 
   29478              :             case 6:
   29479              :               if (!((
   29480              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29481              : ((64 == 64 || TARGET_AVX512VL
   29482              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29483              :    && ix86_pre_reload_split ()
   29484              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29485              :                     STRIP_UNARY (operands[4]))
   29486              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29487              :                        STRIP_UNARY (operands[4]))
   29488              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29489              :                        STRIP_UNARY (operands[3]))
   29490              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29491              :                        STRIP_UNARY (operands[3])))) && 
   29492              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29493              : (TARGET_AVX512F)) && 
   29494              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29495              : ( 1)))
   29496              :                 return NULL;
   29497              :               return gen_split_2871 (insn, operands);
   29498              : 
   29499              :             case 7:
   29500              :               if (!((
   29501              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29502              : ((32 == 64 || TARGET_AVX512VL
   29503              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29504              :    && ix86_pre_reload_split ()
   29505              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29506              :                     STRIP_UNARY (operands[4]))
   29507              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29508              :                        STRIP_UNARY (operands[4]))
   29509              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29510              :                        STRIP_UNARY (operands[3]))
   29511              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29512              :                        STRIP_UNARY (operands[3])))) && 
   29513              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29514              : (TARGET_AVX)) && 
   29515              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29516              : ( 1)))
   29517              :                 return NULL;
   29518              :               return gen_split_2898 (insn, operands);
   29519              : 
   29520              :             case 8:
   29521              :               if (!(
   29522              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29523              : ((16 == 64 || TARGET_AVX512VL
   29524              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29525              :    && ix86_pre_reload_split ()
   29526              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29527              :                     STRIP_UNARY (operands[4]))
   29528              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29529              :                        STRIP_UNARY (operands[4]))
   29530              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29531              :                        STRIP_UNARY (operands[3]))
   29532              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29533              :                        STRIP_UNARY (operands[3])))) && 
   29534              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29535              : ( 1)))
   29536              :                 return NULL;
   29537              :               return gen_split_2925 (insn, operands);
   29538              : 
   29539              :             case 9:
   29540              :               if (!((
   29541              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29542              : ((64 == 64 || TARGET_AVX512VL
   29543              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29544              :    && ix86_pre_reload_split ()
   29545              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29546              :                     STRIP_UNARY (operands[4]))
   29547              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29548              :                        STRIP_UNARY (operands[4]))
   29549              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29550              :                        STRIP_UNARY (operands[3]))
   29551              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29552              :                        STRIP_UNARY (operands[3])))) && 
   29553              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29554              : (TARGET_AVX512F)) && 
   29555              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29556              : ( 1)))
   29557              :                 return NULL;
   29558              :               return gen_split_2952 (insn, operands);
   29559              : 
   29560              :             case 10:
   29561              :               if (!((
   29562              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29563              : ((32 == 64 || TARGET_AVX512VL
   29564              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29565              :    && ix86_pre_reload_split ()
   29566              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29567              :                     STRIP_UNARY (operands[4]))
   29568              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29569              :                        STRIP_UNARY (operands[4]))
   29570              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29571              :                        STRIP_UNARY (operands[3]))
   29572              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29573              :                        STRIP_UNARY (operands[3])))) && 
   29574              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29575              : (TARGET_AVX)) && 
   29576              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29577              : ( 1)))
   29578              :                 return NULL;
   29579              :               return gen_split_2979 (insn, operands);
   29580              : 
   29581              :             case 11:
   29582              :               if (!((
   29583              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29584              : ((16 == 64 || TARGET_AVX512VL
   29585              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29586              :    && ix86_pre_reload_split ()
   29587              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29588              :                     STRIP_UNARY (operands[4]))
   29589              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29590              :                        STRIP_UNARY (operands[4]))
   29591              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29592              :                        STRIP_UNARY (operands[3]))
   29593              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29594              :                        STRIP_UNARY (operands[3])))) && 
   29595              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29596              : (TARGET_SSE2)) && 
   29597              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29598              : ( 1)))
   29599              :                 return NULL;
   29600              :               return gen_split_3006 (insn, operands);
   29601              : 
   29602              :             default:
   29603              :               return NULL;
   29604              :             }
   29605              : 
   29606              :         case XOR:
   29607              :           switch (pattern544 (x2))
   29608              :             {
   29609              :             case 0:
   29610              :               if (!((
   29611              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29612              : ((64 == 64 || TARGET_AVX512VL
   29613              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29614              :    && ix86_pre_reload_split ()
   29615              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29616              :                     STRIP_UNARY (operands[4]))
   29617              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29618              :                        STRIP_UNARY (operands[4]))
   29619              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29620              :                        STRIP_UNARY (operands[3]))
   29621              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29622              :                        STRIP_UNARY (operands[3])))) && 
   29623              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29624              : (TARGET_AVX512F)) && 
   29625              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29626              : ( 1)))
   29627              :                 return NULL;
   29628              :               return gen_split_2712 (insn, operands);
   29629              : 
   29630              :             case 1:
   29631              :               if (!((
   29632              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29633              : ((32 == 64 || TARGET_AVX512VL
   29634              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29635              :    && ix86_pre_reload_split ()
   29636              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29637              :                     STRIP_UNARY (operands[4]))
   29638              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29639              :                        STRIP_UNARY (operands[4]))
   29640              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29641              :                        STRIP_UNARY (operands[3]))
   29642              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29643              :                        STRIP_UNARY (operands[3])))) && 
   29644              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29645              : (TARGET_AVX)) && 
   29646              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29647              : ( 1)))
   29648              :                 return NULL;
   29649              :               return gen_split_2739 (insn, operands);
   29650              : 
   29651              :             case 2:
   29652              :               if (!(
   29653              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29654              : ((16 == 64 || TARGET_AVX512VL
   29655              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29656              :    && ix86_pre_reload_split ()
   29657              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29658              :                     STRIP_UNARY (operands[4]))
   29659              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29660              :                        STRIP_UNARY (operands[4]))
   29661              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29662              :                        STRIP_UNARY (operands[3]))
   29663              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29664              :                        STRIP_UNARY (operands[3])))) && 
   29665              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29666              : ( 1)))
   29667              :                 return NULL;
   29668              :               return gen_split_2766 (insn, operands);
   29669              : 
   29670              :             case 3:
   29671              :               if (!((
   29672              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29673              : ((64 == 64 || TARGET_AVX512VL
   29674              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29675              :    && ix86_pre_reload_split ()
   29676              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29677              :                     STRIP_UNARY (operands[4]))
   29678              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29679              :                        STRIP_UNARY (operands[4]))
   29680              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29681              :                        STRIP_UNARY (operands[3]))
   29682              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29683              :                        STRIP_UNARY (operands[3])))) && 
   29684              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29685              : (TARGET_AVX512F)) && 
   29686              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29687              : ( 1)))
   29688              :                 return NULL;
   29689              :               return gen_split_2793 (insn, operands);
   29690              : 
   29691              :             case 4:
   29692              :               if (!((
   29693              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29694              : ((32 == 64 || TARGET_AVX512VL
   29695              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29696              :    && ix86_pre_reload_split ()
   29697              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29698              :                     STRIP_UNARY (operands[4]))
   29699              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29700              :                        STRIP_UNARY (operands[4]))
   29701              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29702              :                        STRIP_UNARY (operands[3]))
   29703              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29704              :                        STRIP_UNARY (operands[3])))) && 
   29705              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29706              : (TARGET_AVX)) && 
   29707              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29708              : ( 1)))
   29709              :                 return NULL;
   29710              :               return gen_split_2820 (insn, operands);
   29711              : 
   29712              :             case 5:
   29713              :               if (!(
   29714              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29715              : ((16 == 64 || TARGET_AVX512VL
   29716              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29717              :    && ix86_pre_reload_split ()
   29718              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29719              :                     STRIP_UNARY (operands[4]))
   29720              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29721              :                        STRIP_UNARY (operands[4]))
   29722              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29723              :                        STRIP_UNARY (operands[3]))
   29724              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29725              :                        STRIP_UNARY (operands[3])))) && 
   29726              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29727              : ( 1)))
   29728              :                 return NULL;
   29729              :               return gen_split_2847 (insn, operands);
   29730              : 
   29731              :             case 6:
   29732              :               if (!((
   29733              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29734              : ((64 == 64 || TARGET_AVX512VL
   29735              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29736              :    && ix86_pre_reload_split ()
   29737              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29738              :                     STRIP_UNARY (operands[4]))
   29739              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29740              :                        STRIP_UNARY (operands[4]))
   29741              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29742              :                        STRIP_UNARY (operands[3]))
   29743              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29744              :                        STRIP_UNARY (operands[3])))) && 
   29745              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29746              : (TARGET_AVX512F)) && 
   29747              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29748              : ( 1)))
   29749              :                 return NULL;
   29750              :               return gen_split_2874 (insn, operands);
   29751              : 
   29752              :             case 7:
   29753              :               if (!((
   29754              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29755              : ((32 == 64 || TARGET_AVX512VL
   29756              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29757              :    && ix86_pre_reload_split ()
   29758              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29759              :                     STRIP_UNARY (operands[4]))
   29760              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29761              :                        STRIP_UNARY (operands[4]))
   29762              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29763              :                        STRIP_UNARY (operands[3]))
   29764              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29765              :                        STRIP_UNARY (operands[3])))) && 
   29766              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29767              : (TARGET_AVX)) && 
   29768              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29769              : ( 1)))
   29770              :                 return NULL;
   29771              :               return gen_split_2901 (insn, operands);
   29772              : 
   29773              :             case 8:
   29774              :               if (!(
   29775              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29776              : ((16 == 64 || TARGET_AVX512VL
   29777              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29778              :    && ix86_pre_reload_split ()
   29779              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29780              :                     STRIP_UNARY (operands[4]))
   29781              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29782              :                        STRIP_UNARY (operands[4]))
   29783              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29784              :                        STRIP_UNARY (operands[3]))
   29785              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29786              :                        STRIP_UNARY (operands[3])))) && 
   29787              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29788              : ( 1)))
   29789              :                 return NULL;
   29790              :               return gen_split_2928 (insn, operands);
   29791              : 
   29792              :             case 9:
   29793              :               if (!((
   29794              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29795              : ((64 == 64 || TARGET_AVX512VL
   29796              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29797              :    && ix86_pre_reload_split ()
   29798              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29799              :                     STRIP_UNARY (operands[4]))
   29800              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29801              :                        STRIP_UNARY (operands[4]))
   29802              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29803              :                        STRIP_UNARY (operands[3]))
   29804              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29805              :                        STRIP_UNARY (operands[3])))) && 
   29806              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29807              : (TARGET_AVX512F)) && 
   29808              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29809              : ( 1)))
   29810              :                 return NULL;
   29811              :               return gen_split_2955 (insn, operands);
   29812              : 
   29813              :             case 10:
   29814              :               if (!((
   29815              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29816              : ((32 == 64 || TARGET_AVX512VL
   29817              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29818              :    && ix86_pre_reload_split ()
   29819              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29820              :                     STRIP_UNARY (operands[4]))
   29821              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29822              :                        STRIP_UNARY (operands[4]))
   29823              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29824              :                        STRIP_UNARY (operands[3]))
   29825              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29826              :                        STRIP_UNARY (operands[3])))) && 
   29827              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29828              : (TARGET_AVX)) && 
   29829              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29830              : ( 1)))
   29831              :                 return NULL;
   29832              :               return gen_split_2982 (insn, operands);
   29833              : 
   29834              :             case 11:
   29835              :               if (!((
   29836              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29837              : ((16 == 64 || TARGET_AVX512VL
   29838              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29839              :    && ix86_pre_reload_split ()
   29840              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29841              :                     STRIP_UNARY (operands[4]))
   29842              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29843              :                        STRIP_UNARY (operands[4]))
   29844              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29845              :                        STRIP_UNARY (operands[3]))
   29846              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29847              :                        STRIP_UNARY (operands[3])))) && 
   29848              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29849              : (TARGET_SSE2)) && 
   29850              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29851              : ( 1)))
   29852              :                 return NULL;
   29853              :               return gen_split_3009 (insn, operands);
   29854              : 
   29855              :             default:
   29856              :               return NULL;
   29857              :             }
   29858              : 
   29859              :         default:
   29860              :           return NULL;
   29861              :         }
   29862              : 
   29863              :     case IOR:
   29864              :       x4 = XEXP (x3, 0);
   29865              :       switch (GET_CODE (x4))
   29866              :         {
   29867              :         case REG:
   29868              :         case SUBREG:
   29869              :         case MEM:
   29870              :         case NOT:
   29871              :           switch (pattern543 (x2))
   29872              :             {
   29873              :             case 0:
   29874              :               if (!((
   29875              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29876              : ((64 == 64 || TARGET_AVX512VL
   29877              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29878              :    && ix86_pre_reload_split ()
   29879              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29880              :                     STRIP_UNARY (operands[4]))
   29881              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29882              :                        STRIP_UNARY (operands[4]))
   29883              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29884              :                        STRIP_UNARY (operands[3]))
   29885              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29886              :                        STRIP_UNARY (operands[3])))) && 
   29887              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29888              : (TARGET_AVX512F)) && 
   29889              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29890              : ( 1)))
   29891              :                 return NULL;
   29892              :               return gen_split_2067 (insn, operands);
   29893              : 
   29894              :             case 1:
   29895              :               if (!((
   29896              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29897              : ((32 == 64 || TARGET_AVX512VL
   29898              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29899              :    && ix86_pre_reload_split ()
   29900              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29901              :                     STRIP_UNARY (operands[4]))
   29902              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29903              :                        STRIP_UNARY (operands[4]))
   29904              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29905              :                        STRIP_UNARY (operands[3]))
   29906              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29907              :                        STRIP_UNARY (operands[3])))) && 
   29908              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29909              : (TARGET_AVX)) && 
   29910              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29911              : ( 1)))
   29912              :                 return NULL;
   29913              :               return gen_split_2094 (insn, operands);
   29914              : 
   29915              :             case 2:
   29916              :               if (!(
   29917              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29918              : ((16 == 64 || TARGET_AVX512VL
   29919              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29920              :    && ix86_pre_reload_split ()
   29921              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29922              :                     STRIP_UNARY (operands[4]))
   29923              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29924              :                        STRIP_UNARY (operands[4]))
   29925              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29926              :                        STRIP_UNARY (operands[3]))
   29927              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29928              :                        STRIP_UNARY (operands[3])))) && 
   29929              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29930              : ( 1)))
   29931              :                 return NULL;
   29932              :               return gen_split_2121 (insn, operands);
   29933              : 
   29934              :             case 3:
   29935              :               if (!((
   29936              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29937              : ((64 == 64 || TARGET_AVX512VL
   29938              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29939              :    && ix86_pre_reload_split ()
   29940              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29941              :                     STRIP_UNARY (operands[4]))
   29942              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29943              :                        STRIP_UNARY (operands[4]))
   29944              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29945              :                        STRIP_UNARY (operands[3]))
   29946              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29947              :                        STRIP_UNARY (operands[3])))) && 
   29948              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29949              : (TARGET_AVX512F)) && 
   29950              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29951              : ( 1)))
   29952              :                 return NULL;
   29953              :               return gen_split_2148 (insn, operands);
   29954              : 
   29955              :             case 4:
   29956              :               if (!((
   29957              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29958              : ((32 == 64 || TARGET_AVX512VL
   29959              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29960              :    && ix86_pre_reload_split ()
   29961              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29962              :                     STRIP_UNARY (operands[4]))
   29963              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29964              :                        STRIP_UNARY (operands[4]))
   29965              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29966              :                        STRIP_UNARY (operands[3]))
   29967              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29968              :                        STRIP_UNARY (operands[3])))) && 
   29969              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29970              : (TARGET_AVX)) && 
   29971              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29972              : ( 1)))
   29973              :                 return NULL;
   29974              :               return gen_split_2175 (insn, operands);
   29975              : 
   29976              :             case 5:
   29977              :               if (!(
   29978              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29979              : ((16 == 64 || TARGET_AVX512VL
   29980              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29981              :    && ix86_pre_reload_split ()
   29982              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29983              :                     STRIP_UNARY (operands[4]))
   29984              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29985              :                        STRIP_UNARY (operands[4]))
   29986              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29987              :                        STRIP_UNARY (operands[3]))
   29988              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29989              :                        STRIP_UNARY (operands[3])))) && 
   29990              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29991              : ( 1)))
   29992              :                 return NULL;
   29993              :               return gen_split_2202 (insn, operands);
   29994              : 
   29995              :             case 6:
   29996              :               if (!((
   29997              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29998              : ((64 == 64 || TARGET_AVX512VL
   29999              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30000              :    && ix86_pre_reload_split ()
   30001              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30002              :                     STRIP_UNARY (operands[4]))
   30003              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30004              :                        STRIP_UNARY (operands[4]))
   30005              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30006              :                        STRIP_UNARY (operands[3]))
   30007              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30008              :                        STRIP_UNARY (operands[3])))) && 
   30009              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30010              : (TARGET_AVX512F)) && 
   30011              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30012              : ( 1)))
   30013              :                 return NULL;
   30014              :               return gen_split_2229 (insn, operands);
   30015              : 
   30016              :             case 7:
   30017              :               if (!((
   30018              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30019              : ((32 == 64 || TARGET_AVX512VL
   30020              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30021              :    && ix86_pre_reload_split ()
   30022              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30023              :                     STRIP_UNARY (operands[4]))
   30024              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30025              :                        STRIP_UNARY (operands[4]))
   30026              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30027              :                        STRIP_UNARY (operands[3]))
   30028              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30029              :                        STRIP_UNARY (operands[3])))) && 
   30030              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30031              : (TARGET_AVX)) && 
   30032              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30033              : ( 1)))
   30034              :                 return NULL;
   30035              :               return gen_split_2256 (insn, operands);
   30036              : 
   30037              :             case 8:
   30038              :               if (!(
   30039              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30040              : ((16 == 64 || TARGET_AVX512VL
   30041              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30042              :    && ix86_pre_reload_split ()
   30043              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30044              :                     STRIP_UNARY (operands[4]))
   30045              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30046              :                        STRIP_UNARY (operands[4]))
   30047              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30048              :                        STRIP_UNARY (operands[3]))
   30049              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30050              :                        STRIP_UNARY (operands[3])))) && 
   30051              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30052              : ( 1)))
   30053              :                 return NULL;
   30054              :               return gen_split_2283 (insn, operands);
   30055              : 
   30056              :             case 9:
   30057              :               if (!((
   30058              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30059              : ((64 == 64 || TARGET_AVX512VL
   30060              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30061              :    && ix86_pre_reload_split ()
   30062              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30063              :                     STRIP_UNARY (operands[4]))
   30064              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30065              :                        STRIP_UNARY (operands[4]))
   30066              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30067              :                        STRIP_UNARY (operands[3]))
   30068              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30069              :                        STRIP_UNARY (operands[3])))) && 
   30070              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30071              : (TARGET_AVX512F)) && 
   30072              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30073              : ( 1)))
   30074              :                 return NULL;
   30075              :               return gen_split_2310 (insn, operands);
   30076              : 
   30077              :             case 10:
   30078              :               if (!((
   30079              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30080              : ((32 == 64 || TARGET_AVX512VL
   30081              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30082              :    && ix86_pre_reload_split ()
   30083              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30084              :                     STRIP_UNARY (operands[4]))
   30085              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30086              :                        STRIP_UNARY (operands[4]))
   30087              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30088              :                        STRIP_UNARY (operands[3]))
   30089              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30090              :                        STRIP_UNARY (operands[3])))) && 
   30091              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30092              : (TARGET_AVX)) && 
   30093              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30094              : ( 1)))
   30095              :                 return NULL;
   30096              :               return gen_split_2337 (insn, operands);
   30097              : 
   30098              :             case 11:
   30099              :               if (!((
   30100              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30101              : ((16 == 64 || TARGET_AVX512VL
   30102              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30103              :    && ix86_pre_reload_split ()
   30104              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30105              :                     STRIP_UNARY (operands[4]))
   30106              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30107              :                        STRIP_UNARY (operands[4]))
   30108              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30109              :                        STRIP_UNARY (operands[3]))
   30110              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30111              :                        STRIP_UNARY (operands[3])))) && 
   30112              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30113              : (TARGET_SSE2)) && 
   30114              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30115              : ( 1)))
   30116              :                 return NULL;
   30117              :               return gen_split_2364 (insn, operands);
   30118              : 
   30119              :             case 12:
   30120              :               if (!((
   30121              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30122              : ((64 == 64 || TARGET_AVX512VL
   30123              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30124              :    && ix86_pre_reload_split ()
   30125              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30126              :                     STRIP_UNARY (operands[4]))
   30127              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30128              :                        STRIP_UNARY (operands[4]))
   30129              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30130              :                        STRIP_UNARY (operands[3]))
   30131              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30132              :                        STRIP_UNARY (operands[3])))) && 
   30133              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30134              : (TARGET_AVX512F)) && 
   30135              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30136              : ( 1)))
   30137              :                 return NULL;
   30138              :               return gen_split_2070 (insn, operands);
   30139              : 
   30140              :             case 13:
   30141              :               if (!((
   30142              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30143              : ((32 == 64 || TARGET_AVX512VL
   30144              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30145              :    && ix86_pre_reload_split ()
   30146              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30147              :                     STRIP_UNARY (operands[4]))
   30148              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30149              :                        STRIP_UNARY (operands[4]))
   30150              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30151              :                        STRIP_UNARY (operands[3]))
   30152              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30153              :                        STRIP_UNARY (operands[3])))) && 
   30154              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30155              : (TARGET_AVX)) && 
   30156              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30157              : ( 1)))
   30158              :                 return NULL;
   30159              :               return gen_split_2097 (insn, operands);
   30160              : 
   30161              :             case 14:
   30162              :               if (!(
   30163              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30164              : ((16 == 64 || TARGET_AVX512VL
   30165              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30166              :    && ix86_pre_reload_split ()
   30167              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30168              :                     STRIP_UNARY (operands[4]))
   30169              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30170              :                        STRIP_UNARY (operands[4]))
   30171              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30172              :                        STRIP_UNARY (operands[3]))
   30173              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30174              :                        STRIP_UNARY (operands[3])))) && 
   30175              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30176              : ( 1)))
   30177              :                 return NULL;
   30178              :               return gen_split_2124 (insn, operands);
   30179              : 
   30180              :             case 15:
   30181              :               if (!((
   30182              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30183              : ((64 == 64 || TARGET_AVX512VL
   30184              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30185              :    && ix86_pre_reload_split ()
   30186              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30187              :                     STRIP_UNARY (operands[4]))
   30188              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30189              :                        STRIP_UNARY (operands[4]))
   30190              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30191              :                        STRIP_UNARY (operands[3]))
   30192              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30193              :                        STRIP_UNARY (operands[3])))) && 
   30194              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30195              : (TARGET_AVX512F)) && 
   30196              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30197              : ( 1)))
   30198              :                 return NULL;
   30199              :               return gen_split_2151 (insn, operands);
   30200              : 
   30201              :             case 16:
   30202              :               if (!((
   30203              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30204              : ((32 == 64 || TARGET_AVX512VL
   30205              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30206              :    && ix86_pre_reload_split ()
   30207              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30208              :                     STRIP_UNARY (operands[4]))
   30209              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30210              :                        STRIP_UNARY (operands[4]))
   30211              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30212              :                        STRIP_UNARY (operands[3]))
   30213              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30214              :                        STRIP_UNARY (operands[3])))) && 
   30215              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30216              : (TARGET_AVX)) && 
   30217              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30218              : ( 1)))
   30219              :                 return NULL;
   30220              :               return gen_split_2178 (insn, operands);
   30221              : 
   30222              :             case 17:
   30223              :               if (!(
   30224              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30225              : ((16 == 64 || TARGET_AVX512VL
   30226              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30227              :    && ix86_pre_reload_split ()
   30228              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30229              :                     STRIP_UNARY (operands[4]))
   30230              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30231              :                        STRIP_UNARY (operands[4]))
   30232              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30233              :                        STRIP_UNARY (operands[3]))
   30234              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30235              :                        STRIP_UNARY (operands[3])))) && 
   30236              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30237              : ( 1)))
   30238              :                 return NULL;
   30239              :               return gen_split_2205 (insn, operands);
   30240              : 
   30241              :             case 18:
   30242              :               if (!((
   30243              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30244              : ((64 == 64 || TARGET_AVX512VL
   30245              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30246              :    && ix86_pre_reload_split ()
   30247              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30248              :                     STRIP_UNARY (operands[4]))
   30249              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30250              :                        STRIP_UNARY (operands[4]))
   30251              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30252              :                        STRIP_UNARY (operands[3]))
   30253              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30254              :                        STRIP_UNARY (operands[3])))) && 
   30255              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30256              : (TARGET_AVX512F)) && 
   30257              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30258              : ( 1)))
   30259              :                 return NULL;
   30260              :               return gen_split_2232 (insn, operands);
   30261              : 
   30262              :             case 19:
   30263              :               if (!((
   30264              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30265              : ((32 == 64 || TARGET_AVX512VL
   30266              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30267              :    && ix86_pre_reload_split ()
   30268              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30269              :                     STRIP_UNARY (operands[4]))
   30270              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30271              :                        STRIP_UNARY (operands[4]))
   30272              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30273              :                        STRIP_UNARY (operands[3]))
   30274              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30275              :                        STRIP_UNARY (operands[3])))) && 
   30276              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30277              : (TARGET_AVX)) && 
   30278              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30279              : ( 1)))
   30280              :                 return NULL;
   30281              :               return gen_split_2259 (insn, operands);
   30282              : 
   30283              :             case 20:
   30284              :               if (!(
   30285              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30286              : ((16 == 64 || TARGET_AVX512VL
   30287              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30288              :    && ix86_pre_reload_split ()
   30289              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30290              :                     STRIP_UNARY (operands[4]))
   30291              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30292              :                        STRIP_UNARY (operands[4]))
   30293              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30294              :                        STRIP_UNARY (operands[3]))
   30295              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30296              :                        STRIP_UNARY (operands[3])))) && 
   30297              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30298              : ( 1)))
   30299              :                 return NULL;
   30300              :               return gen_split_2286 (insn, operands);
   30301              : 
   30302              :             case 21:
   30303              :               if (!((
   30304              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30305              : ((64 == 64 || TARGET_AVX512VL
   30306              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30307              :    && ix86_pre_reload_split ()
   30308              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30309              :                     STRIP_UNARY (operands[4]))
   30310              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30311              :                        STRIP_UNARY (operands[4]))
   30312              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30313              :                        STRIP_UNARY (operands[3]))
   30314              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30315              :                        STRIP_UNARY (operands[3])))) && 
   30316              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30317              : (TARGET_AVX512F)) && 
   30318              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30319              : ( 1)))
   30320              :                 return NULL;
   30321              :               return gen_split_2313 (insn, operands);
   30322              : 
   30323              :             case 22:
   30324              :               if (!((
   30325              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30326              : ((32 == 64 || TARGET_AVX512VL
   30327              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30328              :    && ix86_pre_reload_split ()
   30329              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30330              :                     STRIP_UNARY (operands[4]))
   30331              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30332              :                        STRIP_UNARY (operands[4]))
   30333              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30334              :                        STRIP_UNARY (operands[3]))
   30335              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30336              :                        STRIP_UNARY (operands[3])))) && 
   30337              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30338              : (TARGET_AVX)) && 
   30339              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30340              : ( 1)))
   30341              :                 return NULL;
   30342              :               return gen_split_2340 (insn, operands);
   30343              : 
   30344              :             case 23:
   30345              :               if (!((
   30346              : #line 14151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30347              : ((16 == 64 || TARGET_AVX512VL
   30348              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30349              :    && ix86_pre_reload_split ()
   30350              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30351              :                     STRIP_UNARY (operands[4]))
   30352              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30353              :                        STRIP_UNARY (operands[4]))
   30354              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30355              :                        STRIP_UNARY (operands[3]))
   30356              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30357              :                        STRIP_UNARY (operands[3])))) && 
   30358              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30359              : (TARGET_SSE2)) && 
   30360              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30361              : ( 1)))
   30362              :                 return NULL;
   30363              :               return gen_split_2367 (insn, operands);
   30364              : 
   30365              :             case 24:
   30366              :               if (!((
   30367              : #line 14151 "/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 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30380              : (TARGET_AVX512F)) && 
   30381              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30382              : ( 1)))
   30383              :                 return NULL;
   30384              :               return gen_split_2073 (insn, operands);
   30385              : 
   30386              :             case 25:
   30387              :               if (!((
   30388              : #line 14151 "/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 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30401              : (TARGET_AVX)) && 
   30402              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30403              : ( 1)))
   30404              :                 return NULL;
   30405              :               return gen_split_2100 (insn, operands);
   30406              : 
   30407              :             case 26:
   30408              :               if (!(
   30409              : #line 14151 "/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 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30422              : ( 1)))
   30423              :                 return NULL;
   30424              :               return gen_split_2127 (insn, operands);
   30425              : 
   30426              :             case 27:
   30427              :               if (!((
   30428              : #line 14151 "/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 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30441              : (TARGET_AVX512F)) && 
   30442              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30443              : ( 1)))
   30444              :                 return NULL;
   30445              :               return gen_split_2154 (insn, operands);
   30446              : 
   30447              :             case 28:
   30448              :               if (!((
   30449              : #line 14151 "/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 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30462              : (TARGET_AVX)) && 
   30463              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30464              : ( 1)))
   30465              :                 return NULL;
   30466              :               return gen_split_2181 (insn, operands);
   30467              : 
   30468              :             case 29:
   30469              :               if (!(
   30470              : #line 14151 "/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 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30483              : ( 1)))
   30484              :                 return NULL;
   30485              :               return gen_split_2208 (insn, operands);
   30486              : 
   30487              :             case 30:
   30488              :               if (!((
   30489              : #line 14151 "/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 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30502              : (TARGET_AVX512F)) && 
   30503              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30504              : ( 1)))
   30505              :                 return NULL;
   30506              :               return gen_split_2235 (insn, operands);
   30507              : 
   30508              :             case 31:
   30509              :               if (!((
   30510              : #line 14151 "/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 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30523              : (TARGET_AVX)) && 
   30524              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30525              : ( 1)))
   30526              :                 return NULL;
   30527              :               return gen_split_2262 (insn, operands);
   30528              : 
   30529              :             case 32:
   30530              :               if (!(
   30531              : #line 14151 "/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 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30544              : ( 1)))
   30545              :                 return NULL;
   30546              :               return gen_split_2289 (insn, operands);
   30547              : 
   30548              :             case 33:
   30549              :               if (!((
   30550              : #line 14151 "/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 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30563              : (TARGET_AVX512F)) && 
   30564              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30565              : ( 1)))
   30566              :                 return NULL;
   30567              :               return gen_split_2316 (insn, operands);
   30568              : 
   30569              :             case 34:
   30570              :               if (!((
   30571              : #line 14151 "/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 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30584              : (TARGET_AVX)) && 
   30585              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30586              : ( 1)))
   30587              :                 return NULL;
   30588              :               return gen_split_2343 (insn, operands);
   30589              : 
   30590              :             case 35:
   30591              :               if (!((
   30592              : #line 14151 "/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 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30605              : (TARGET_SSE2)) && 
   30606              : #line 14163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30607              : ( 1)))
   30608              :                 return NULL;
   30609              :               return gen_split_2370 (insn, operands);
   30610              : 
   30611              :             case 36:
   30612              :               if (!((
   30613              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30614              : ((64 == 64 || TARGET_AVX512VL
   30615              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30616              :    && ix86_pre_reload_split ()) && 
   30617              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30618              : (TARGET_AVX512F)) && 
   30619              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30620              : ( 1)))
   30621              :                 return NULL;
   30622              :               return gen_split_3141 (insn, operands);
   30623              : 
   30624              :             case 37:
   30625              :               if (!((
   30626              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30627              : ((32 == 64 || TARGET_AVX512VL
   30628              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30629              :    && ix86_pre_reload_split ()) && 
   30630              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30631              : (TARGET_AVX)) && 
   30632              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30633              : ( 1)))
   30634              :                 return NULL;
   30635              :               return gen_split_3150 (insn, operands);
   30636              : 
   30637              :             case 38:
   30638              :               if (!(
   30639              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30640              : ((16 == 64 || TARGET_AVX512VL
   30641              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30642              :    && ix86_pre_reload_split ()) && 
   30643              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30644              : ( 1)))
   30645              :                 return NULL;
   30646              :               return gen_split_3159 (insn, operands);
   30647              : 
   30648              :             case 39:
   30649              :               if (!((
   30650              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30651              : ((64 == 64 || TARGET_AVX512VL
   30652              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30653              :    && ix86_pre_reload_split ()) && 
   30654              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30655              : (TARGET_AVX512F)) && 
   30656              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30657              : ( 1)))
   30658              :                 return NULL;
   30659              :               return gen_split_3168 (insn, operands);
   30660              : 
   30661              :             case 40:
   30662              :               if (!((
   30663              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30664              : ((32 == 64 || TARGET_AVX512VL
   30665              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30666              :    && ix86_pre_reload_split ()) && 
   30667              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30668              : (TARGET_AVX)) && 
   30669              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30670              : ( 1)))
   30671              :                 return NULL;
   30672              :               return gen_split_3177 (insn, operands);
   30673              : 
   30674              :             case 41:
   30675              :               if (!(
   30676              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30677              : ((16 == 64 || TARGET_AVX512VL
   30678              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30679              :    && ix86_pre_reload_split ()) && 
   30680              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30681              : ( 1)))
   30682              :                 return NULL;
   30683              :               return gen_split_3186 (insn, operands);
   30684              : 
   30685              :             case 42:
   30686              :               if (!((
   30687              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30688              : ((64 == 64 || TARGET_AVX512VL
   30689              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30690              :    && ix86_pre_reload_split ()) && 
   30691              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30692              : (TARGET_AVX512F)) && 
   30693              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30694              : ( 1)))
   30695              :                 return NULL;
   30696              :               return gen_split_3195 (insn, operands);
   30697              : 
   30698              :             case 43:
   30699              :               if (!((
   30700              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30701              : ((32 == 64 || TARGET_AVX512VL
   30702              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30703              :    && ix86_pre_reload_split ()) && 
   30704              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30705              : (TARGET_AVX)) && 
   30706              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30707              : ( 1)))
   30708              :                 return NULL;
   30709              :               return gen_split_3204 (insn, operands);
   30710              : 
   30711              :             case 44:
   30712              :               if (!(
   30713              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30714              : ((16 == 64 || TARGET_AVX512VL
   30715              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30716              :    && ix86_pre_reload_split ()) && 
   30717              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30718              : ( 1)))
   30719              :                 return NULL;
   30720              :               return gen_split_3213 (insn, operands);
   30721              : 
   30722              :             case 45:
   30723              :               if (!((
   30724              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30725              : ((64 == 64 || TARGET_AVX512VL
   30726              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30727              :    && ix86_pre_reload_split ()) && 
   30728              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30729              : (TARGET_AVX512F)) && 
   30730              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30731              : ( 1)))
   30732              :                 return NULL;
   30733              :               return gen_split_3222 (insn, operands);
   30734              : 
   30735              :             case 46:
   30736              :               if (!((
   30737              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30738              : ((32 == 64 || TARGET_AVX512VL
   30739              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30740              :    && ix86_pre_reload_split ()) && 
   30741              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30742              : (TARGET_AVX)) && 
   30743              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30744              : ( 1)))
   30745              :                 return NULL;
   30746              :               return gen_split_3231 (insn, operands);
   30747              : 
   30748              :             case 47:
   30749              :               if (!((
   30750              : #line 14320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30751              : ((16 == 64 || TARGET_AVX512VL
   30752              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30753              :    && ix86_pre_reload_split ()) && 
   30754              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30755              : (TARGET_SSE2)) && 
   30756              : #line 14324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30757              : ( 1)))
   30758              :                 return NULL;
   30759              :               return gen_split_3240 (insn, operands);
   30760              : 
   30761              :             default:
   30762              :               return NULL;
   30763              :             }
   30764              : 
   30765              :         case AND:
   30766              :           switch (pattern544 (x2))
   30767              :             {
   30768              :             case 0:
   30769              :               if (!((
   30770              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30771              : ((64 == 64 || TARGET_AVX512VL
   30772              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30773              :    && ix86_pre_reload_split ()
   30774              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30775              :                     STRIP_UNARY (operands[4]))
   30776              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30777              :                        STRIP_UNARY (operands[4]))
   30778              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30779              :                        STRIP_UNARY (operands[3]))
   30780              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30781              :                        STRIP_UNARY (operands[3])))) && 
   30782              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30783              : (TARGET_AVX512F)) && 
   30784              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30785              : ( 1)))
   30786              :                 return NULL;
   30787              :               return gen_split_2715 (insn, operands);
   30788              : 
   30789              :             case 1:
   30790              :               if (!((
   30791              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30792              : ((32 == 64 || TARGET_AVX512VL
   30793              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30794              :    && ix86_pre_reload_split ()
   30795              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30796              :                     STRIP_UNARY (operands[4]))
   30797              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30798              :                        STRIP_UNARY (operands[4]))
   30799              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30800              :                        STRIP_UNARY (operands[3]))
   30801              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30802              :                        STRIP_UNARY (operands[3])))) && 
   30803              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30804              : (TARGET_AVX)) && 
   30805              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30806              : ( 1)))
   30807              :                 return NULL;
   30808              :               return gen_split_2742 (insn, operands);
   30809              : 
   30810              :             case 2:
   30811              :               if (!(
   30812              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30813              : ((16 == 64 || TARGET_AVX512VL
   30814              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30815              :    && ix86_pre_reload_split ()
   30816              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30817              :                     STRIP_UNARY (operands[4]))
   30818              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30819              :                        STRIP_UNARY (operands[4]))
   30820              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30821              :                        STRIP_UNARY (operands[3]))
   30822              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30823              :                        STRIP_UNARY (operands[3])))) && 
   30824              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30825              : ( 1)))
   30826              :                 return NULL;
   30827              :               return gen_split_2769 (insn, operands);
   30828              : 
   30829              :             case 3:
   30830              :               if (!((
   30831              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30832              : ((64 == 64 || TARGET_AVX512VL
   30833              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30834              :    && ix86_pre_reload_split ()
   30835              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30836              :                     STRIP_UNARY (operands[4]))
   30837              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30838              :                        STRIP_UNARY (operands[4]))
   30839              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30840              :                        STRIP_UNARY (operands[3]))
   30841              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30842              :                        STRIP_UNARY (operands[3])))) && 
   30843              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30844              : (TARGET_AVX512F)) && 
   30845              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30846              : ( 1)))
   30847              :                 return NULL;
   30848              :               return gen_split_2796 (insn, operands);
   30849              : 
   30850              :             case 4:
   30851              :               if (!((
   30852              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30853              : ((32 == 64 || TARGET_AVX512VL
   30854              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30855              :    && ix86_pre_reload_split ()
   30856              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30857              :                     STRIP_UNARY (operands[4]))
   30858              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30859              :                        STRIP_UNARY (operands[4]))
   30860              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30861              :                        STRIP_UNARY (operands[3]))
   30862              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30863              :                        STRIP_UNARY (operands[3])))) && 
   30864              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30865              : (TARGET_AVX)) && 
   30866              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30867              : ( 1)))
   30868              :                 return NULL;
   30869              :               return gen_split_2823 (insn, operands);
   30870              : 
   30871              :             case 5:
   30872              :               if (!(
   30873              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30874              : ((16 == 64 || TARGET_AVX512VL
   30875              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30876              :    && ix86_pre_reload_split ()
   30877              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30878              :                     STRIP_UNARY (operands[4]))
   30879              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30880              :                        STRIP_UNARY (operands[4]))
   30881              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30882              :                        STRIP_UNARY (operands[3]))
   30883              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30884              :                        STRIP_UNARY (operands[3])))) && 
   30885              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30886              : ( 1)))
   30887              :                 return NULL;
   30888              :               return gen_split_2850 (insn, operands);
   30889              : 
   30890              :             case 6:
   30891              :               if (!((
   30892              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30893              : ((64 == 64 || TARGET_AVX512VL
   30894              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30895              :    && ix86_pre_reload_split ()
   30896              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30897              :                     STRIP_UNARY (operands[4]))
   30898              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30899              :                        STRIP_UNARY (operands[4]))
   30900              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30901              :                        STRIP_UNARY (operands[3]))
   30902              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30903              :                        STRIP_UNARY (operands[3])))) && 
   30904              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30905              : (TARGET_AVX512F)) && 
   30906              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30907              : ( 1)))
   30908              :                 return NULL;
   30909              :               return gen_split_2877 (insn, operands);
   30910              : 
   30911              :             case 7:
   30912              :               if (!((
   30913              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30914              : ((32 == 64 || TARGET_AVX512VL
   30915              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30916              :    && ix86_pre_reload_split ()
   30917              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30918              :                     STRIP_UNARY (operands[4]))
   30919              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30920              :                        STRIP_UNARY (operands[4]))
   30921              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30922              :                        STRIP_UNARY (operands[3]))
   30923              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30924              :                        STRIP_UNARY (operands[3])))) && 
   30925              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30926              : (TARGET_AVX)) && 
   30927              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30928              : ( 1)))
   30929              :                 return NULL;
   30930              :               return gen_split_2904 (insn, operands);
   30931              : 
   30932              :             case 8:
   30933              :               if (!(
   30934              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30935              : ((16 == 64 || TARGET_AVX512VL
   30936              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30937              :    && ix86_pre_reload_split ()
   30938              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30939              :                     STRIP_UNARY (operands[4]))
   30940              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30941              :                        STRIP_UNARY (operands[4]))
   30942              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30943              :                        STRIP_UNARY (operands[3]))
   30944              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30945              :                        STRIP_UNARY (operands[3])))) && 
   30946              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30947              : ( 1)))
   30948              :                 return NULL;
   30949              :               return gen_split_2931 (insn, operands);
   30950              : 
   30951              :             case 9:
   30952              :               if (!((
   30953              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30954              : ((64 == 64 || TARGET_AVX512VL
   30955              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30956              :    && ix86_pre_reload_split ()
   30957              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30958              :                     STRIP_UNARY (operands[4]))
   30959              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30960              :                        STRIP_UNARY (operands[4]))
   30961              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30962              :                        STRIP_UNARY (operands[3]))
   30963              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30964              :                        STRIP_UNARY (operands[3])))) && 
   30965              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30966              : (TARGET_AVX512F)) && 
   30967              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30968              : ( 1)))
   30969              :                 return NULL;
   30970              :               return gen_split_2958 (insn, operands);
   30971              : 
   30972              :             case 10:
   30973              :               if (!((
   30974              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30975              : ((32 == 64 || TARGET_AVX512VL
   30976              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30977              :    && ix86_pre_reload_split ()
   30978              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   30979              :                     STRIP_UNARY (operands[4]))
   30980              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30981              :                        STRIP_UNARY (operands[4]))
   30982              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   30983              :                        STRIP_UNARY (operands[3]))
   30984              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   30985              :                        STRIP_UNARY (operands[3])))) && 
   30986              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30987              : (TARGET_AVX)) && 
   30988              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30989              : ( 1)))
   30990              :                 return NULL;
   30991              :               return gen_split_2985 (insn, operands);
   30992              : 
   30993              :             case 11:
   30994              :               if (!((
   30995              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30996              : ((16 == 64 || TARGET_AVX512VL
   30997              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   30998              :    && ix86_pre_reload_split ()
   30999              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31000              :                     STRIP_UNARY (operands[4]))
   31001              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31002              :                        STRIP_UNARY (operands[4]))
   31003              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31004              :                        STRIP_UNARY (operands[3]))
   31005              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31006              :                        STRIP_UNARY (operands[3])))) && 
   31007              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31008              : (TARGET_SSE2)) && 
   31009              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31010              : ( 1)))
   31011              :                 return NULL;
   31012              :               return gen_split_3012 (insn, operands);
   31013              : 
   31014              :             default:
   31015              :               return NULL;
   31016              :             }
   31017              : 
   31018              :         case IOR:
   31019              :           switch (pattern544 (x2))
   31020              :             {
   31021              :             case 0:
   31022              :               if (!((
   31023              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31024              : ((64 == 64 || TARGET_AVX512VL
   31025              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31026              :    && ix86_pre_reload_split ()
   31027              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31028              :                     STRIP_UNARY (operands[4]))
   31029              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31030              :                        STRIP_UNARY (operands[4]))
   31031              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31032              :                        STRIP_UNARY (operands[3]))
   31033              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31034              :                        STRIP_UNARY (operands[3])))) && 
   31035              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31036              : (TARGET_AVX512F)) && 
   31037              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31038              : ( 1)))
   31039              :                 return NULL;
   31040              :               return gen_split_2718 (insn, operands);
   31041              : 
   31042              :             case 1:
   31043              :               if (!((
   31044              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31045              : ((32 == 64 || TARGET_AVX512VL
   31046              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31047              :    && ix86_pre_reload_split ()
   31048              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31049              :                     STRIP_UNARY (operands[4]))
   31050              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31051              :                        STRIP_UNARY (operands[4]))
   31052              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31053              :                        STRIP_UNARY (operands[3]))
   31054              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31055              :                        STRIP_UNARY (operands[3])))) && 
   31056              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31057              : (TARGET_AVX)) && 
   31058              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31059              : ( 1)))
   31060              :                 return NULL;
   31061              :               return gen_split_2745 (insn, operands);
   31062              : 
   31063              :             case 2:
   31064              :               if (!(
   31065              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31066              : ((16 == 64 || TARGET_AVX512VL
   31067              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31068              :    && ix86_pre_reload_split ()
   31069              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31070              :                     STRIP_UNARY (operands[4]))
   31071              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31072              :                        STRIP_UNARY (operands[4]))
   31073              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31074              :                        STRIP_UNARY (operands[3]))
   31075              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31076              :                        STRIP_UNARY (operands[3])))) && 
   31077              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31078              : ( 1)))
   31079              :                 return NULL;
   31080              :               return gen_split_2772 (insn, operands);
   31081              : 
   31082              :             case 3:
   31083              :               if (!((
   31084              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31085              : ((64 == 64 || TARGET_AVX512VL
   31086              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31087              :    && ix86_pre_reload_split ()
   31088              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31089              :                     STRIP_UNARY (operands[4]))
   31090              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31091              :                        STRIP_UNARY (operands[4]))
   31092              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31093              :                        STRIP_UNARY (operands[3]))
   31094              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31095              :                        STRIP_UNARY (operands[3])))) && 
   31096              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31097              : (TARGET_AVX512F)) && 
   31098              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31099              : ( 1)))
   31100              :                 return NULL;
   31101              :               return gen_split_2799 (insn, operands);
   31102              : 
   31103              :             case 4:
   31104              :               if (!((
   31105              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31106              : ((32 == 64 || TARGET_AVX512VL
   31107              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31108              :    && ix86_pre_reload_split ()
   31109              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31110              :                     STRIP_UNARY (operands[4]))
   31111              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31112              :                        STRIP_UNARY (operands[4]))
   31113              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31114              :                        STRIP_UNARY (operands[3]))
   31115              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31116              :                        STRIP_UNARY (operands[3])))) && 
   31117              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31118              : (TARGET_AVX)) && 
   31119              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31120              : ( 1)))
   31121              :                 return NULL;
   31122              :               return gen_split_2826 (insn, operands);
   31123              : 
   31124              :             case 5:
   31125              :               if (!(
   31126              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31127              : ((16 == 64 || TARGET_AVX512VL
   31128              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31129              :    && ix86_pre_reload_split ()
   31130              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31131              :                     STRIP_UNARY (operands[4]))
   31132              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31133              :                        STRIP_UNARY (operands[4]))
   31134              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31135              :                        STRIP_UNARY (operands[3]))
   31136              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31137              :                        STRIP_UNARY (operands[3])))) && 
   31138              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31139              : ( 1)))
   31140              :                 return NULL;
   31141              :               return gen_split_2853 (insn, operands);
   31142              : 
   31143              :             case 6:
   31144              :               if (!((
   31145              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31146              : ((64 == 64 || TARGET_AVX512VL
   31147              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31148              :    && ix86_pre_reload_split ()
   31149              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31150              :                     STRIP_UNARY (operands[4]))
   31151              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31152              :                        STRIP_UNARY (operands[4]))
   31153              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31154              :                        STRIP_UNARY (operands[3]))
   31155              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31156              :                        STRIP_UNARY (operands[3])))) && 
   31157              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31158              : (TARGET_AVX512F)) && 
   31159              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31160              : ( 1)))
   31161              :                 return NULL;
   31162              :               return gen_split_2880 (insn, operands);
   31163              : 
   31164              :             case 7:
   31165              :               if (!((
   31166              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31167              : ((32 == 64 || TARGET_AVX512VL
   31168              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31169              :    && ix86_pre_reload_split ()
   31170              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31171              :                     STRIP_UNARY (operands[4]))
   31172              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31173              :                        STRIP_UNARY (operands[4]))
   31174              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31175              :                        STRIP_UNARY (operands[3]))
   31176              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31177              :                        STRIP_UNARY (operands[3])))) && 
   31178              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31179              : (TARGET_AVX)) && 
   31180              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31181              : ( 1)))
   31182              :                 return NULL;
   31183              :               return gen_split_2907 (insn, operands);
   31184              : 
   31185              :             case 8:
   31186              :               if (!(
   31187              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31188              : ((16 == 64 || TARGET_AVX512VL
   31189              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31190              :    && ix86_pre_reload_split ()
   31191              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31192              :                     STRIP_UNARY (operands[4]))
   31193              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31194              :                        STRIP_UNARY (operands[4]))
   31195              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31196              :                        STRIP_UNARY (operands[3]))
   31197              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31198              :                        STRIP_UNARY (operands[3])))) && 
   31199              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31200              : ( 1)))
   31201              :                 return NULL;
   31202              :               return gen_split_2934 (insn, operands);
   31203              : 
   31204              :             case 9:
   31205              :               if (!((
   31206              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31207              : ((64 == 64 || TARGET_AVX512VL
   31208              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31209              :    && ix86_pre_reload_split ()
   31210              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31211              :                     STRIP_UNARY (operands[4]))
   31212              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31213              :                        STRIP_UNARY (operands[4]))
   31214              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31215              :                        STRIP_UNARY (operands[3]))
   31216              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31217              :                        STRIP_UNARY (operands[3])))) && 
   31218              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31219              : (TARGET_AVX512F)) && 
   31220              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31221              : ( 1)))
   31222              :                 return NULL;
   31223              :               return gen_split_2961 (insn, operands);
   31224              : 
   31225              :             case 10:
   31226              :               if (!((
   31227              : #line 14236 "/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              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31232              :                     STRIP_UNARY (operands[4]))
   31233              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31234              :                        STRIP_UNARY (operands[4]))
   31235              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31236              :                        STRIP_UNARY (operands[3]))
   31237              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31238              :                        STRIP_UNARY (operands[3])))) && 
   31239              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31240              : (TARGET_AVX)) && 
   31241              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31242              : ( 1)))
   31243              :                 return NULL;
   31244              :               return gen_split_2988 (insn, operands);
   31245              : 
   31246              :             case 11:
   31247              :               if (!((
   31248              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31249              : ((16 == 64 || TARGET_AVX512VL
   31250              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31251              :    && ix86_pre_reload_split ()
   31252              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31253              :                     STRIP_UNARY (operands[4]))
   31254              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31255              :                        STRIP_UNARY (operands[4]))
   31256              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31257              :                        STRIP_UNARY (operands[3]))
   31258              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31259              :                        STRIP_UNARY (operands[3])))) && 
   31260              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31261              : (TARGET_SSE2)) && 
   31262              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31263              : ( 1)))
   31264              :                 return NULL;
   31265              :               return gen_split_3015 (insn, operands);
   31266              : 
   31267              :             default:
   31268              :               return NULL;
   31269              :             }
   31270              : 
   31271              :         case XOR:
   31272              :           switch (pattern544 (x2))
   31273              :             {
   31274              :             case 0:
   31275              :               if (!((
   31276              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31277              : ((64 == 64 || TARGET_AVX512VL
   31278              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31279              :    && ix86_pre_reload_split ()
   31280              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31281              :                     STRIP_UNARY (operands[4]))
   31282              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31283              :                        STRIP_UNARY (operands[4]))
   31284              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31285              :                        STRIP_UNARY (operands[3]))
   31286              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31287              :                        STRIP_UNARY (operands[3])))) && 
   31288              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31289              : (TARGET_AVX512F)) && 
   31290              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31291              : ( 1)))
   31292              :                 return NULL;
   31293              :               return gen_split_2721 (insn, operands);
   31294              : 
   31295              :             case 1:
   31296              :               if (!((
   31297              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31298              : ((32 == 64 || TARGET_AVX512VL
   31299              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31300              :    && ix86_pre_reload_split ()
   31301              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31302              :                     STRIP_UNARY (operands[4]))
   31303              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31304              :                        STRIP_UNARY (operands[4]))
   31305              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31306              :                        STRIP_UNARY (operands[3]))
   31307              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31308              :                        STRIP_UNARY (operands[3])))) && 
   31309              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31310              : (TARGET_AVX)) && 
   31311              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31312              : ( 1)))
   31313              :                 return NULL;
   31314              :               return gen_split_2748 (insn, operands);
   31315              : 
   31316              :             case 2:
   31317              :               if (!(
   31318              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31319              : ((16 == 64 || TARGET_AVX512VL
   31320              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31321              :    && ix86_pre_reload_split ()
   31322              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31323              :                     STRIP_UNARY (operands[4]))
   31324              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31325              :                        STRIP_UNARY (operands[4]))
   31326              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31327              :                        STRIP_UNARY (operands[3]))
   31328              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31329              :                        STRIP_UNARY (operands[3])))) && 
   31330              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31331              : ( 1)))
   31332              :                 return NULL;
   31333              :               return gen_split_2775 (insn, operands);
   31334              : 
   31335              :             case 3:
   31336              :               if (!((
   31337              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31338              : ((64 == 64 || TARGET_AVX512VL
   31339              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31340              :    && ix86_pre_reload_split ()
   31341              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31342              :                     STRIP_UNARY (operands[4]))
   31343              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31344              :                        STRIP_UNARY (operands[4]))
   31345              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31346              :                        STRIP_UNARY (operands[3]))
   31347              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31348              :                        STRIP_UNARY (operands[3])))) && 
   31349              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31350              : (TARGET_AVX512F)) && 
   31351              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31352              : ( 1)))
   31353              :                 return NULL;
   31354              :               return gen_split_2802 (insn, operands);
   31355              : 
   31356              :             case 4:
   31357              :               if (!((
   31358              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31359              : ((32 == 64 || TARGET_AVX512VL
   31360              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31361              :    && ix86_pre_reload_split ()
   31362              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31363              :                     STRIP_UNARY (operands[4]))
   31364              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31365              :                        STRIP_UNARY (operands[4]))
   31366              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31367              :                        STRIP_UNARY (operands[3]))
   31368              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31369              :                        STRIP_UNARY (operands[3])))) && 
   31370              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31371              : (TARGET_AVX)) && 
   31372              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31373              : ( 1)))
   31374              :                 return NULL;
   31375              :               return gen_split_2829 (insn, operands);
   31376              : 
   31377              :             case 5:
   31378              :               if (!(
   31379              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31380              : ((16 == 64 || TARGET_AVX512VL
   31381              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31382              :    && ix86_pre_reload_split ()
   31383              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31384              :                     STRIP_UNARY (operands[4]))
   31385              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31386              :                        STRIP_UNARY (operands[4]))
   31387              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31388              :                        STRIP_UNARY (operands[3]))
   31389              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31390              :                        STRIP_UNARY (operands[3])))) && 
   31391              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31392              : ( 1)))
   31393              :                 return NULL;
   31394              :               return gen_split_2856 (insn, operands);
   31395              : 
   31396              :             case 6:
   31397              :               if (!((
   31398              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31399              : ((64 == 64 || TARGET_AVX512VL
   31400              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31401              :    && ix86_pre_reload_split ()
   31402              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31403              :                     STRIP_UNARY (operands[4]))
   31404              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31405              :                        STRIP_UNARY (operands[4]))
   31406              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31407              :                        STRIP_UNARY (operands[3]))
   31408              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31409              :                        STRIP_UNARY (operands[3])))) && 
   31410              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31411              : (TARGET_AVX512F)) && 
   31412              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31413              : ( 1)))
   31414              :                 return NULL;
   31415              :               return gen_split_2883 (insn, operands);
   31416              : 
   31417              :             case 7:
   31418              :               if (!((
   31419              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31420              : ((32 == 64 || TARGET_AVX512VL
   31421              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31422              :    && ix86_pre_reload_split ()
   31423              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31424              :                     STRIP_UNARY (operands[4]))
   31425              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31426              :                        STRIP_UNARY (operands[4]))
   31427              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31428              :                        STRIP_UNARY (operands[3]))
   31429              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31430              :                        STRIP_UNARY (operands[3])))) && 
   31431              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31432              : (TARGET_AVX)) && 
   31433              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31434              : ( 1)))
   31435              :                 return NULL;
   31436              :               return gen_split_2910 (insn, operands);
   31437              : 
   31438              :             case 8:
   31439              :               if (!(
   31440              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31441              : ((16 == 64 || TARGET_AVX512VL
   31442              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31443              :    && ix86_pre_reload_split ()
   31444              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31445              :                     STRIP_UNARY (operands[4]))
   31446              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31447              :                        STRIP_UNARY (operands[4]))
   31448              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31449              :                        STRIP_UNARY (operands[3]))
   31450              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31451              :                        STRIP_UNARY (operands[3])))) && 
   31452              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31453              : ( 1)))
   31454              :                 return NULL;
   31455              :               return gen_split_2937 (insn, operands);
   31456              : 
   31457              :             case 9:
   31458              :               if (!((
   31459              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31460              : ((64 == 64 || TARGET_AVX512VL
   31461              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31462              :    && ix86_pre_reload_split ()
   31463              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31464              :                     STRIP_UNARY (operands[4]))
   31465              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31466              :                        STRIP_UNARY (operands[4]))
   31467              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31468              :                        STRIP_UNARY (operands[3]))
   31469              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31470              :                        STRIP_UNARY (operands[3])))) && 
   31471              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31472              : (TARGET_AVX512F)) && 
   31473              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31474              : ( 1)))
   31475              :                 return NULL;
   31476              :               return gen_split_2964 (insn, operands);
   31477              : 
   31478              :             case 10:
   31479              :               if (!((
   31480              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31481              : ((32 == 64 || TARGET_AVX512VL
   31482              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31483              :    && ix86_pre_reload_split ()
   31484              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31485              :                     STRIP_UNARY (operands[4]))
   31486              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31487              :                        STRIP_UNARY (operands[4]))
   31488              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31489              :                        STRIP_UNARY (operands[3]))
   31490              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31491              :                        STRIP_UNARY (operands[3])))) && 
   31492              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31493              : (TARGET_AVX)) && 
   31494              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31495              : ( 1)))
   31496              :                 return NULL;
   31497              :               return gen_split_2991 (insn, operands);
   31498              : 
   31499              :             case 11:
   31500              :               if (!((
   31501              : #line 14236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31502              : ((16 == 64 || TARGET_AVX512VL
   31503              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   31504              :    && ix86_pre_reload_split ()
   31505              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   31506              :                     STRIP_UNARY (operands[4]))
   31507              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31508              :                        STRIP_UNARY (operands[4]))
   31509              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   31510              :                        STRIP_UNARY (operands[3]))
   31511              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   31512              :                        STRIP_UNARY (operands[3])))) && 
   31513              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31514              : (TARGET_SSE2)) && 
   31515              : #line 14248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31516              : ( 1)))
   31517              :                 return NULL;
   31518              :               return gen_split_3018 (insn, operands);
   31519              : 
   31520              :             default:
   31521              :               return NULL;
   31522              :             }
   31523              : 
   31524              :         default:
   31525              :           return NULL;
   31526              :         }
   31527              : 
   31528              :     case XOR:
   31529              :       return split_69 (x1, insn);
   31530              : 
   31531              :     default:
   31532              :       return NULL;
   31533              :     }
   31534              : }
        

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.