LCOV - code coverage report
Current view: top level - /mnt/build/buildbot/bld/build-lcov/gcc - insn-recog-4.cc (source / functions) Coverage Total Hit
Test: gcc.info Lines: 92.6 % 3862 3576
Test Date: 2026-02-28 14:20:25 Functions: 95.4 % 197 188
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        87449 : pattern3 (rtx x1, machine_mode i1)
      57              : {
      58        87449 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      59        87449 :   int res ATTRIBUTE_UNUSED;
      60        87449 :   if (!register_operand (operands[0], i1)
      61        85959 :       || GET_MODE (x1) != i1
      62        85959 :       || !nonimmediate_operand (operands[1], i1)
      63       164487 :       || !nonimmediate_operand (operands[2], i1))
      64        31835 :     return -1;
      65              :   return 0;
      66              : }
      67              : 
      68              : int
      69       226652 : pattern13 (rtx x1, int *pnum_clobbers)
      70              : {
      71       226652 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      72       226652 :   rtx x2, x3, x4, x5;
      73       226652 :   int res ATTRIBUTE_UNUSED;
      74       226652 :   if (pnum_clobbers == NULL)
      75              :     return -1;
      76       226652 :   x2 = XEXP (x1, 0);
      77       226652 :   operands[0] = x2;
      78       226652 :   x3 = XEXP (x1, 1);
      79       226652 :   x4 = XEXP (x3, 0);
      80       226652 :   operands[1] = x4;
      81       226652 :   x5 = XEXP (x3, 1);
      82       226652 :   operands[2] = x5;
      83       226652 :   switch (GET_MODE (operands[0]))
      84              :     {
      85        41910 :     case E_SImode:
      86        41910 :       return pattern12 (x3, 
      87        41910 : E_SImode); /* [-1, 0] */
      88              : 
      89       184742 :     case E_DImode:
      90       184742 :       if (pattern12 (x3, 
      91              : E_DImode) != 0)
      92              :         return -1;
      93              :       return 1;
      94              : 
      95              :     default:
      96              :       return -1;
      97              :     }
      98              : }
      99              : 
     100              : int
     101       277896 : pattern20 (rtx x1, int *pnum_clobbers)
     102              : {
     103       277896 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     104       277896 :   rtx x2, x3;
     105       277896 :   int res ATTRIBUTE_UNUSED;
     106       277896 :   if (pnum_clobbers == NULL)
     107              :     return -1;
     108       274735 :   x2 = XEXP (x1, 0);
     109       274735 :   operands[0] = x2;
     110       274735 :   x3 = XEXP (x1, 1);
     111       274735 :   return pattern19 (x3); /* [-1, 1] */
     112              : }
     113              : 
     114              : int
     115      3108365 : pattern24 (rtx x1)
     116              : {
     117      3108365 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     118      3108365 :   int res ATTRIBUTE_UNUSED;
     119      3108365 :   switch (GET_MODE (operands[0]))
     120              :     {
     121       645482 :     case E_SImode:
     122       645482 :       if (!register_operand (operands[0], E_SImode)
     123       645482 :           || GET_MODE (x1) != E_SImode)
     124              :         return -1;
     125              :       return 0;
     126              : 
     127      1996585 :     case E_DImode:
     128      1996585 :       if (!register_operand (operands[0], E_DImode)
     129      1996585 :           || GET_MODE (x1) != E_DImode)
     130              :         return -1;
     131              :       return 1;
     132              : 
     133              :     default:
     134              :       return -1;
     135              :     }
     136              : }
     137              : 
     138              : int
     139         1095 : pattern31 (rtx x1)
     140              : {
     141         1095 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     142         1095 :   int res ATTRIBUTE_UNUSED;
     143         1095 :   if (!register_operand (operands[0], E_V1TImode)
     144         1080 :       || GET_MODE (x1) != E_V1TImode
     145         1080 :       || !register_operand (operands[1], E_V1TImode)
     146         2163 :       || !const_0_to_255_operand (operands[2], E_SImode))
     147           27 :     return -1;
     148              :   return 0;
     149              : }
     150              : 
     151              : int
     152        20114 : pattern33 (rtx x1)
     153              : {
     154        20114 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     155        20114 :   rtx x2, x3, x4, x5;
     156        20114 :   int res ATTRIBUTE_UNUSED;
     157        20114 :   x2 = XEXP (x1, 0);
     158        20114 :   operands[0] = x2;
     159        20114 :   x3 = XEXP (x1, 1);
     160        20114 :   x4 = XEXP (x3, 0);
     161        20114 :   operands[1] = x4;
     162        20114 :   x5 = XEXP (x3, 1);
     163        20114 :   operands[2] = x5;
     164        20114 :   switch (GET_CODE (operands[2]))
     165              :     {
     166        15310 :     case CONST_INT:
     167        15310 :       switch (GET_MODE (operands[0]))
     168              :         {
     169          248 :         case E_V1TImode:
     170          248 :           return pattern31 (x3); /* [-1, 0] */
     171              : 
     172          142 :         case E_V16SImode:
     173          142 :           if (pattern32 (x3, 
     174              : E_V16SImode) != 0)
     175              :             return -1;
     176              :           return 1;
     177              : 
     178          186 :         case E_V8SImode:
     179          186 :           if (pattern32 (x3, 
     180              : E_V8SImode) != 0)
     181              :             return -1;
     182              :           return 2;
     183              : 
     184          760 :         case E_V4SImode:
     185          760 :           if (!register_operand (operands[0], E_V4SImode)
     186          680 :               || GET_MODE (x3) != E_V4SImode
     187         1440 :               || !nonimmediate_operand (operands[1], E_V4SImode))
     188          105 :             return -1;
     189              :           return 3;
     190              : 
     191          132 :         case E_V8DImode:
     192          132 :           if (pattern32 (x3, 
     193              : E_V8DImode) != 0)
     194              :             return -1;
     195              :           return 4;
     196              : 
     197          132 :         case E_V4DImode:
     198          132 :           if (pattern32 (x3, 
     199              : E_V4DImode) != 0)
     200              :             return -1;
     201              :           return 5;
     202              : 
     203          378 :         case E_V2DImode:
     204          378 :           if (!register_operand (operands[0], E_V2DImode)
     205          343 :               || GET_MODE (x3) != E_V2DImode
     206          721 :               || !nonimmediate_operand (operands[1], E_V2DImode))
     207           35 :             return -1;
     208              :           return 6;
     209              : 
     210          412 :         case E_V16QImode:
     211          412 :           if (!register_operand (operands[0], E_V16QImode)
     212          343 :               || GET_MODE (x3) != E_V16QImode
     213          343 :               || !nonimmediate_operand (operands[1], E_V16QImode)
     214          755 :               || !const_0_to_7_operand (operands[2], E_SImode))
     215           69 :             return -1;
     216              :           return 7;
     217              : 
     218          188 :         case E_V8HImode:
     219          188 :           if (!register_operand (operands[0], E_V8HImode)
     220          157 :               || GET_MODE (x3) != E_V8HImode
     221          157 :               || !nonimmediate_operand (operands[1], E_V8HImode)
     222          345 :               || !const_0_to_15_operand (operands[2], E_SImode))
     223           31 :             return -1;
     224              :           return 8;
     225              : 
     226              :         default:
     227              :           return -1;
     228              :         }
     229              : 
     230         4613 :     case REG:
     231         4613 :     case SUBREG:
     232         4613 :     case MEM:
     233         4613 :       switch (GET_MODE (operands[0]))
     234              :         {
     235          154 :         case E_V16SImode:
     236          154 :           if (pattern12 (x3, 
     237              : E_V16SImode) != 0)
     238              :             return -1;
     239              :           return 9;
     240              : 
     241          154 :         case E_V8SImode:
     242          154 :           if (pattern12 (x3, 
     243              : E_V8SImode) != 0)
     244              :             return -1;
     245              :           return 10;
     246              : 
     247          137 :         case E_V4SImode:
     248          137 :           if (pattern12 (x3, 
     249              : E_V4SImode) != 0)
     250              :             return -1;
     251              :           return 11;
     252              : 
     253          148 :         case E_V8DImode:
     254          148 :           if (pattern12 (x3, 
     255              : E_V8DImode) != 0)
     256              :             return -1;
     257              :           return 12;
     258              : 
     259          148 :         case E_V4DImode:
     260          148 :           if (pattern12 (x3, 
     261              : E_V4DImode) != 0)
     262              :             return -1;
     263              :           return 13;
     264              : 
     265          120 :         case E_V2DImode:
     266          120 :           if (pattern12 (x3, 
     267              : E_V2DImode) != 0)
     268              :             return -1;
     269              :           return 14;
     270              : 
     271              :         default:
     272              :           return -1;
     273              :         }
     274              : 
     275              :     default:
     276              :       return -1;
     277              :     }
     278              : }
     279              : 
     280              : int
     281       497013 : pattern55 (rtx x1)
     282              : {
     283       497013 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     284       497013 :   rtx x2, x3, x4, x5;
     285       497013 :   int res ATTRIBUTE_UNUSED;
     286       497013 :   x2 = XEXP (x1, 0);
     287       497013 :   operands[0] = x2;
     288       497013 :   x3 = XEXP (x1, 1);
     289       497013 :   x4 = XEXP (x3, 0);
     290       497013 :   operands[1] = x4;
     291       497013 :   x5 = XEXP (x3, 1);
     292       497013 :   operands[2] = x5;
     293       497013 :   if (!const_int_operand (operands[2], E_VOIDmode))
     294              :     return -1;
     295       477293 :   switch (GET_MODE (operands[0]))
     296              :     {
     297         2268 :     case E_QImode:
     298         2268 :       if (!mask_reg_operand (operands[0], E_QImode)
     299            0 :           || GET_MODE (x3) != E_QImode
     300         2268 :           || !mask_reg_operand (operands[1], E_QImode))
     301         2268 :         return -1;
     302              :       return 0;
     303              : 
     304         3273 :     case E_HImode:
     305         3273 :       if (!mask_reg_operand (operands[0], E_HImode)
     306            0 :           || GET_MODE (x3) != E_HImode
     307         3273 :           || !mask_reg_operand (operands[1], E_HImode))
     308         3273 :         return -1;
     309              :       return 1;
     310              : 
     311        41458 :     case E_SImode:
     312        41458 :       if (!mask_reg_operand (operands[0], E_SImode)
     313            0 :           || GET_MODE (x3) != E_SImode
     314        41458 :           || !mask_reg_operand (operands[1], E_SImode))
     315        41458 :         return -1;
     316              :       return 2;
     317              : 
     318       152688 :     case E_DImode:
     319       152688 :       if (!mask_reg_operand (operands[0], E_DImode)
     320            0 :           || GET_MODE (x3) != E_DImode
     321       152688 :           || !mask_reg_operand (operands[1], E_DImode))
     322       152688 :         return -1;
     323              :       return 3;
     324              : 
     325              :     default:
     326              :       return -1;
     327              :     }
     328              : }
     329              : 
     330              : int
     331       148196 : pattern68 (rtx x1)
     332              : {
     333       148196 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     334       148196 :   rtx x2, x3, x4, x5;
     335       148196 :   int res ATTRIBUTE_UNUSED;
     336       148196 :   x2 = XEXP (x1, 0);
     337       148196 :   operands[0] = x2;
     338       148196 :   x3 = XEXP (x1, 1);
     339       148196 :   x4 = XVECEXP (x3, 0, 0);
     340       148196 :   operands[1] = x4;
     341       148196 :   x5 = XVECEXP (x3, 0, 1);
     342       148196 :   operands[2] = x5;
     343       148196 :   switch (GET_MODE (operands[0]))
     344              :     {
     345        13743 :     case E_V8QImode:
     346        13743 :       return pattern67 (x3, 
     347        13743 : E_V8QImode); /* [-1, 0] */
     348              : 
     349         2336 :     case E_V4HImode:
     350         2336 :       if (!register_operand (operands[0], E_V4HImode)
     351         2336 :           || GET_MODE (x3) != E_V4HImode
     352         2336 :           || !register_operand (operands[1], E_V2SImode)
     353         4011 :           || !register_operand (operands[2], E_V2SImode))
     354         1115 :         return -1;
     355              :       return 1;
     356              : 
     357              :     default:
     358              :       return -1;
     359              :     }
     360              : }
     361              : 
     362              : int
     363         1468 : pattern78 (rtx x1, int *pnum_clobbers)
     364              : {
     365         1468 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     366         1468 :   rtx x2, x3, x4;
     367         1468 :   int res ATTRIBUTE_UNUSED;
     368         1468 :   if (pnum_clobbers == NULL)
     369              :     return -1;
     370         1468 :   x2 = XEXP (x1, 0);
     371         1468 :   x3 = XEXP (x2, 0);
     372         1468 :   operands[0] = x3;
     373         1468 :   switch (GET_MODE (operands[0]))
     374              :     {
     375          220 :     case E_QImode:
     376          220 :       x4 = XEXP (x1, 1);
     377          220 :       return pattern77 (x4, 
     378          220 : E_QImode); /* [-1, 0] */
     379              : 
     380         1248 :     case E_HImode:
     381         1248 :       x4 = XEXP (x1, 1);
     382         1248 :       if (pattern77 (x4, 
     383              : E_HImode) != 0)
     384              :         return -1;
     385              :       return 1;
     386              : 
     387              :     default:
     388              :       return -1;
     389              :     }
     390              : }
     391              : 
     392              : int
     393         2938 : pattern86 (rtx x1)
     394              : {
     395         2938 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     396         2938 :   rtx x2, x3;
     397         2938 :   int res ATTRIBUTE_UNUSED;
     398         2938 :   x2 = XEXP (x1, 0);
     399         2938 :   if (GET_MODE (x2) != E_QImode
     400          707 :       || !register_operand (operands[0], E_HImode)
     401         3143 :       || GET_MODE (x1) != E_HImode)
     402         2733 :     return -1;
     403          205 :   x3 = XEXP (x2, 0);
     404          205 :   operands[1] = x3;
     405          205 :   if (!nonimmediate_operand (operands[1], E_QImode))
     406              :     return -1;
     407              :   return 0;
     408              : }
     409              : 
     410              : int
     411     13687920 : pattern89 (rtx x1, machine_mode i1, int i2, int i3)
     412              : {
     413     13687920 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     414     13687920 :   int res ATTRIBUTE_UNUSED;
     415     13687920 :   if (GET_CODE (x1) != UNSPEC
     416        20811 :       || XVECLEN (x1, 0) != i3
     417        19625 :       || XINT (x1, 1) != i2
     418        17785 :       || GET_MODE (x1) != i1)
     419     13670135 :     return -1;
     420              :   return 0;
     421              : }
     422              : 
     423              : int
     424        27134 : pattern96 (rtx x1, int *pnum_clobbers)
     425              : {
     426        27134 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     427        27134 :   rtx x2, x3, x4, x5, x6, x7;
     428        27134 :   int res ATTRIBUTE_UNUSED;
     429        27134 :   if (pnum_clobbers == NULL)
     430              :     return -1;
     431        27134 :   x2 = XEXP (x1, 1);
     432        27134 :   x3 = XEXP (x2, 0);
     433        27134 :   x4 = XEXP (x3, 1);
     434        27134 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     435              :     return -1;
     436        20891 :   x5 = XEXP (x1, 0);
     437        20891 :   operands[0] = x5;
     438        20891 :   x6 = XEXP (x3, 0);
     439        20891 :   operands[2] = x6;
     440        20891 :   if (!int_nonimmediate_operand (operands[2], E_VOIDmode))
     441              :     return -1;
     442         1579 :   x7 = XEXP (x2, 1);
     443         1579 :   operands[1] = x7;
     444         1579 :   switch (GET_MODE (operands[0]))
     445              :     {
     446           39 :     case E_QImode:
     447           39 :       return pattern95 (x2, 
     448           39 : E_QImode); /* [-1, 0] */
     449              : 
     450           11 :     case E_HImode:
     451           11 :       if (pattern95 (x2, 
     452              : E_HImode) != 0)
     453              :         return -1;
     454              :       return 1;
     455              : 
     456              :     default:
     457              :       return -1;
     458              :     }
     459              : }
     460              : 
     461              : int
     462         1035 : pattern105 (rtx x1, machine_mode i1)
     463              : {
     464         1035 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     465         1035 :   rtx x2;
     466         1035 :   int res ATTRIBUTE_UNUSED;
     467         1035 :   if (!memory_operand (operands[0], i1)
     468         1035 :       || GET_MODE (x1) != i1)
     469              :     return -1;
     470         1035 :   x2 = XEXP (x1, 0);
     471         1035 :   if (GET_MODE (x2) != i1)
     472              :     return -1;
     473         1035 :   switch (GET_MODE (operands[1]))
     474              :     {
     475          536 :     case E_V4SImode:
     476          536 :       if (!register_operand (operands[1], E_V4SImode))
     477              :         return -1;
     478              :       return 0;
     479              : 
     480          499 :     case E_V4DImode:
     481          499 :       if (!register_operand (operands[1], E_V4DImode))
     482              :         return -1;
     483              :       return 1;
     484              : 
     485              :     default:
     486              :       return -1;
     487              :     }
     488              : }
     489              : 
     490              : int
     491        27104 : pattern112 (rtx x1, int *pnum_clobbers)
     492              : {
     493        27104 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     494        27104 :   rtx x2, x3, x4, x5;
     495        27104 :   int res ATTRIBUTE_UNUSED;
     496        27104 :   if (pnum_clobbers == NULL)
     497              :     return -1;
     498        27104 :   x2 = XEXP (x1, 0);
     499        27104 :   x3 = XEXP (x2, 1);
     500        27104 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     501              :     return -1;
     502        20861 :   x4 = XEXP (x2, 0);
     503        20861 :   operands[2] = x4;
     504        20861 :   if (!int_nonimmediate_operand (operands[2], E_VOIDmode))
     505              :     return -1;
     506         1549 :   x5 = XEXP (x1, 1);
     507         1549 :   operands[1] = x5;
     508         1549 :   switch (GET_MODE (operands[0]))
     509              :     {
     510          930 :     case E_SImode:
     511          930 :       return pattern111 (x1, 
     512          930 : E_SImode); /* [-1, 0] */
     513              : 
     514          595 :     case E_DImode:
     515          595 :       if (pattern111 (x1, 
     516              : E_DImode) != 0)
     517              :         return -1;
     518              :       return 1;
     519              : 
     520              :     default:
     521              :       return -1;
     522              :     }
     523              : }
     524              : 
     525              : int
     526       637881 : pattern121 (rtx x1)
     527              : {
     528       637881 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     529       637881 :   rtx x2;
     530       637881 :   int res ATTRIBUTE_UNUSED;
     531       637881 :   x2 = XEXP (x1, 0);
     532       637881 :   operands[1] = x2;
     533       637881 :   switch (GET_MODE (operands[0]))
     534              :     {
     535       353246 :     case E_DImode:
     536       353246 :       if (!nonimmediate_operand (operands[0], E_DImode)
     537       352890 :           || GET_MODE (x1) != E_DImode
     538       706136 :           || !nonimmediate_operand (operands[1], E_DImode))
     539          440 :         return -1;
     540              :       return 0;
     541              : 
     542       226846 :     case E_SImode:
     543       226846 :       if (!nonimmediate_operand (operands[0], E_SImode)
     544       226188 :           || GET_MODE (x1) != E_SImode
     545       453034 :           || !nonimmediate_operand (operands[1], E_SImode))
     546         1399 :         return -1;
     547              :       return 1;
     548              : 
     549              :     default:
     550              :       return -1;
     551              :     }
     552              : }
     553              : 
     554              : int
     555         1724 : pattern131 (rtx x1)
     556              : {
     557         1724 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     558         1724 :   rtx x2, x3, x4, x5, x6, x7;
     559         1724 :   int res ATTRIBUTE_UNUSED;
     560         1724 :   x2 = XEXP (x1, 1);
     561         1724 :   x3 = XVECEXP (x2, 0, 0);
     562         1724 :   if (GET_CODE (x3) != VEC_SELECT)
     563              :     return -1;
     564          200 :   x4 = XEXP (x3, 1);
     565          200 :   if (GET_CODE (x4) != PARALLEL
     566          200 :       || XVECLEN (x4, 0) != 1)
     567              :     return -1;
     568          200 :   x5 = XVECEXP (x4, 0, 0);
     569          200 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     570              :     return -1;
     571          200 :   x6 = XEXP (x1, 0);
     572          200 :   operands[0] = x6;
     573          200 :   x7 = XEXP (x3, 0);
     574          200 :   operands[1] = x7;
     575          200 :   switch (GET_MODE (operands[0]))
     576              :     {
     577          100 :     case E_SImode:
     578          100 :       return pattern130 (x2, 
     579          100 : E_SImode); /* [-1, 1] */
     580              : 
     581          100 :     case E_DImode:
     582          100 :       res = pattern130 (x2, 
     583              : E_DImode);
     584          100 :       if (res >= 0)
     585           76 :         return res + 2; /* [2, 3] */
     586              :       return -1;
     587              : 
     588              :     default:
     589              :       return -1;
     590              :     }
     591              : }
     592              : 
     593              : int
     594         9528 : pattern142 (rtx x1, machine_mode i1, machine_mode i2)
     595              : {
     596         9528 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     597         9528 :   rtx x2;
     598         9528 :   int res ATTRIBUTE_UNUSED;
     599         9528 :   if (!register_operand (operands[0], i1)
     600         9528 :       || GET_MODE (x1) != i1)
     601              :     return -1;
     602         8906 :   x2 = XEXP (x1, 0);
     603         8906 :   if (GET_MODE (x2) != i1
     604         8906 :       || !nonimm_or_0_operand (operands[2], i1)
     605        17363 :       || !register_operand (operands[3], i2))
     606          818 :     return -1;
     607              :   return 0;
     608              : }
     609              : 
     610              : int
     611         2556 : pattern149 (rtx x1, machine_mode i1, machine_mode i2)
     612              : {
     613         2556 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     614         2556 :   rtx x2;
     615         2556 :   int res ATTRIBUTE_UNUSED;
     616         2556 :   if (!register_operand (operands[0], i1)
     617         2556 :       || GET_MODE (x1) != i1)
     618              :     return -1;
     619         2426 :   x2 = XEXP (x1, 0);
     620         2426 :   if (GET_MODE (x2) != i1
     621         2426 :       || !nonimmediate_operand (operands[1], i1)
     622         2426 :       || !nonimm_or_0_operand (operands[3], i1)
     623         4776 :       || !register_operand (operands[4], i2))
     624          236 :     return -1;
     625              :   return 0;
     626              : }
     627              : 
     628              : int
     629          673 : pattern153 (rtx x1, machine_mode i1)
     630              : {
     631          673 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     632          673 :   rtx x2;
     633          673 :   int res ATTRIBUTE_UNUSED;
     634          673 :   if (!register_operand (operands[0], E_V16HImode)
     635          673 :       || GET_MODE (x1) != E_V16HImode)
     636              :     return -1;
     637          638 :   x2 = XEXP (x1, 0);
     638          638 :   if (GET_MODE (x2) != E_V16HImode
     639          638 :       || !nonimmediate_operand (operands[1], i1)
     640          626 :       || !nonimm_or_0_operand (operands[2], E_V16HImode)
     641         1246 :       || !register_operand (operands[3], E_HImode))
     642           78 :     return -1;
     643              :   return 0;
     644              : }
     645              : 
     646              : int
     647            9 : pattern156 (rtx x1, machine_mode i1, machine_mode i2)
     648              : {
     649            9 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     650            9 :   rtx x2;
     651            9 :   int res ATTRIBUTE_UNUSED;
     652            9 :   if (!register_operand (operands[0], i1)
     653            9 :       || GET_MODE (x1) != i1)
     654              :     return -1;
     655            6 :   x2 = XEXP (x1, 0);
     656            6 :   if (GET_MODE (x2) != i1
     657            6 :       || !memory_operand (operands[1], i2)
     658            6 :       || !nonimm_or_0_operand (operands[2], i1)
     659           12 :       || !register_operand (operands[3], E_QImode))
     660            0 :     return -1;
     661              :   return 0;
     662              : }
     663              : 
     664              : int
     665         1618 : pattern160 (rtx x1, machine_mode i1)
     666              : {
     667         1618 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     668         1618 :   int res ATTRIBUTE_UNUSED;
     669         1618 :   if (!register_operand (operands[0], i1)
     670         1410 :       || GET_MODE (x1) != i1
     671         1410 :       || !vector_operand (operands[1], i1)
     672         3005 :       || !vector_operand (operands[2], i1))
     673          239 :     return -1;
     674              :   return 0;
     675              : }
     676              : 
     677              : int
     678          116 : pattern162 (rtx x1)
     679              : {
     680          116 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     681          116 :   rtx x2, x3, x4, x5;
     682          116 :   int res ATTRIBUTE_UNUSED;
     683          116 :   x2 = XEXP (x1, 1);
     684          116 :   if (GET_MODE (x2) != E_V32HImode)
     685              :     return -1;
     686          116 :   x3 = XEXP (x1, 0);
     687          116 :   operands[0] = x3;
     688          116 :   if (!register_operand (operands[0], E_V32HImode))
     689              :     return -1;
     690          108 :   x4 = XVECEXP (x2, 0, 0);
     691          108 :   operands[1] = x4;
     692          108 :   if (!nonimmediate_operand (operands[1], E_V32HImode))
     693              :     return -1;
     694          108 :   x5 = XVECEXP (x2, 0, 1);
     695          108 :   operands[2] = x5;
     696          108 :   if (!const_0_to_255_operand (operands[2], E_SImode))
     697              :     return -1;
     698              :   return 0;
     699              : }
     700              : 
     701              : int
     702         7323 : pattern166 (rtx x1, machine_mode i1)
     703              : {
     704         7323 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     705         7323 :   rtx x2, x3, x4, x5;
     706         7323 :   int res ATTRIBUTE_UNUSED;
     707         7323 :   x2 = XEXP (x1, 1);
     708         7323 :   if (GET_MODE (x2) != i1)
     709              :     return -1;
     710         7323 :   x3 = XEXP (x1, 0);
     711         7323 :   operands[0] = x3;
     712         7323 :   if (!register_operand (operands[0], i1))
     713              :     return -1;
     714         6997 :   x4 = XVECEXP (x2, 0, 0);
     715         6997 :   operands[1] = x4;
     716         6997 :   if (!register_operand (operands[1], i1))
     717              :     return -1;
     718         5431 :   x5 = XVECEXP (x2, 0, 1);
     719         5431 :   operands[2] = x5;
     720         5431 :   if (!vector_operand (operands[2], i1))
     721              :     return -1;
     722              :   return 0;
     723              : }
     724              : 
     725              : int
     726           18 : pattern174 (rtx x1, machine_mode i1)
     727              : {
     728           18 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     729           18 :   int res ATTRIBUTE_UNUSED;
     730           18 :   if (!register_operand (operands[0], i1)
     731           18 :       || GET_MODE (x1) != i1
     732           18 :       || !vector_operand (operands[1], i1)
     733           18 :       || !bcst_vector_operand (operands[2], i1)
     734           36 :       || !vector_operand (operands[3], i1))
     735            0 :     return -1;
     736              :   return 0;
     737              : }
     738              : 
     739              : int
     740         4394 : pattern180 (rtx x1)
     741              : {
     742         4394 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     743         4394 :   rtx x2, x3, x4, x5, x6;
     744         4394 :   int res ATTRIBUTE_UNUSED;
     745         4394 :   x2 = XEXP (x1, 0);
     746         4394 :   operands[0] = x2;
     747         4394 :   x3 = XEXP (x1, 1);
     748         4394 :   x4 = XVECEXP (x3, 0, 0);
     749         4394 :   operands[1] = x4;
     750         4394 :   x5 = XVECEXP (x3, 0, 1);
     751         4394 :   operands[2] = x5;
     752         4394 :   x6 = XVECEXP (x3, 0, 2);
     753         4394 :   operands[3] = x6;
     754         4394 :   if (!const_0_to_255_operand (operands[3], E_VOIDmode))
     755              :     return -1;
     756         4394 :   switch (GET_MODE (operands[0]))
     757              :     {
     758         1624 :     case E_V64QImode:
     759         1624 :       return pattern158 (x3, 
     760         1624 : E_V64QImode); /* [-1, 0] */
     761              : 
     762         1604 :     case E_V32QImode:
     763         1604 :       if (pattern158 (x3, 
     764              : E_V32QImode) != 0)
     765              :         return -1;
     766              :       return 1;
     767              : 
     768         1166 :     case E_V16QImode:
     769         1166 :       if (pattern158 (x3, 
     770              : E_V16QImode) != 0)
     771              :         return -1;
     772              :       return 2;
     773              : 
     774              :     default:
     775              :       return -1;
     776              :     }
     777              : }
     778              : 
     779              : int
     780          286 : pattern188 (rtx x1)
     781              : {
     782          286 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     783          286 :   rtx x2, x3, x4;
     784          286 :   int res ATTRIBUTE_UNUSED;
     785          286 :   x2 = XEXP (x1, 0);
     786          286 :   if (GET_MODE (x2) != E_DImode)
     787              :     return -1;
     788          181 :   x3 = XEXP (x1, 1);
     789          181 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
     790          171 :       || !register_operand (operands[0], E_V2DImode)
     791          350 :       || GET_MODE (x1) != E_V2DImode)
     792           12 :     return -1;
     793          169 :   x4 = XEXP (x2, 0);
     794          169 :   operands[1] = x4;
     795          169 :   switch (GET_MODE (operands[1]))
     796              :     {
     797           13 :     case E_HImode:
     798           13 :       if (!nonimmediate_operand (operands[1], E_HImode))
     799              :         return -1;
     800              :       return 0;
     801              : 
     802          148 :     case E_SImode:
     803          148 :       if (!nonimmediate_operand (operands[1], E_SImode))
     804              :         return -1;
     805              :       return 1;
     806              : 
     807              :     default:
     808              :       return -1;
     809              :     }
     810              : }
     811              : 
     812              : int
     813          807 : pattern196 (rtx x1, machine_mode i1, machine_mode i2)
     814              : {
     815          807 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     816          807 :   rtx x2, x3, x4, x5;
     817          807 :   int res ATTRIBUTE_UNUSED;
     818          807 :   if (!register_operand (operands[0], i2)
     819          807 :       || GET_MODE (x1) != i2)
     820              :     return -1;
     821          778 :   x2 = XEXP (x1, 0);
     822          778 :   if (GET_MODE (x2) != i2)
     823              :     return -1;
     824          778 :   x3 = XEXP (x2, 0);
     825          778 :   if (GET_MODE (x3) != i1
     826          778 :       || !register_operand (operands[1], i2)
     827         1486 :       || !vector_operand (operands[2], i2))
     828           70 :     return -1;
     829          708 :   x4 = XEXP (x1, 1);
     830          708 :   if (GET_MODE (x4) != i2)
     831              :     return -1;
     832          708 :   x5 = XEXP (x4, 0);
     833          708 :   if (GET_MODE (x5) != i1)
     834              :     return -1;
     835              :   return 0;
     836              : }
     837              : 
     838              : int
     839       451066 : pattern201 (rtx x1, rtx_code i1)
     840              : {
     841       451066 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     842       451066 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
     843       451066 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
     844       451066 :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
     845       451066 :   int res ATTRIBUTE_UNUSED;
     846       451066 :   x2 = XEXP (x1, 0);
     847       451066 :   x3 = XEXP (x2, 0);
     848       451066 :   if (GET_CODE (x3) != VEC_SELECT)
     849              :     return -1;
     850       202466 :   x4 = XEXP (x3, 1);
     851       202466 :   if (GET_CODE (x4) != PARALLEL)
     852              :     return -1;
     853       202466 :   x5 = XEXP (x1, 1);
     854       202466 :   if (GET_CODE (x5) != i1)
     855              :     return -1;
     856       169140 :   x6 = XEXP (x5, 0);
     857       169140 :   if (GET_CODE (x6) != VEC_SELECT)
     858              :     return -1;
     859       169079 :   x7 = XEXP (x6, 1);
     860       169079 :   if (GET_CODE (x7) != PARALLEL)
     861              :     return -1;
     862       169079 :   x8 = XEXP (x3, 0);
     863       169079 :   operands[1] = x8;
     864       169079 :   x9 = XEXP (x6, 0);
     865       169079 :   operands[2] = x9;
     866       169079 :   switch (XVECLEN (x4, 0))
     867              :     {
     868         6312 :     case 8:
     869         6312 :       x10 = XVECEXP (x4, 0, 0);
     870         6312 :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     871              :         return -1;
     872         6312 :       x11 = XVECEXP (x4, 0, 1);
     873         6312 :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
     874              :         return -1;
     875         6168 :       x12 = XVECEXP (x4, 0, 2);
     876         6168 :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
     877              :         return -1;
     878         6168 :       x13 = XVECEXP (x4, 0, 3);
     879         6168 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
     880              :         return -1;
     881         6168 :       x14 = XVECEXP (x4, 0, 4);
     882         6168 :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
     883              :         return -1;
     884         6168 :       x15 = XVECEXP (x4, 0, 5);
     885         6168 :       if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 10])
     886              :         return -1;
     887         6168 :       x16 = XVECEXP (x4, 0, 6);
     888         6168 :       if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 12])
     889              :         return -1;
     890         6168 :       x17 = XVECEXP (x4, 0, 7);
     891         6168 :       if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 14]
     892         6168 :           || XVECLEN (x7, 0) != 8)
     893              :         return -1;
     894         6168 :       x18 = XVECEXP (x7, 0, 0);
     895         6168 :       if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     896              :         return -1;
     897         6168 :       x19 = XVECEXP (x7, 0, 1);
     898         6168 :       if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
     899              :         return -1;
     900         6168 :       x20 = XVECEXP (x7, 0, 2);
     901         6168 :       if (x20 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
     902              :         return -1;
     903         6168 :       x21 = XVECEXP (x7, 0, 3);
     904         6168 :       if (x21 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
     905              :         return -1;
     906         6168 :       x22 = XVECEXP (x7, 0, 4);
     907         6168 :       if (x22 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
     908              :         return -1;
     909         6168 :       x23 = XVECEXP (x7, 0, 5);
     910         6168 :       if (x23 != const_int_rtx[MAX_SAVED_CONST_INT + 10])
     911              :         return -1;
     912         6168 :       x24 = XVECEXP (x7, 0, 6);
     913         6168 :       if (x24 != const_int_rtx[MAX_SAVED_CONST_INT + 12])
     914              :         return -1;
     915         6168 :       x25 = XVECEXP (x7, 0, 7);
     916         6168 :       if (x25 != const_int_rtx[MAX_SAVED_CONST_INT + 14]
     917         6168 :           || pattern200 (x1, 
     918              : E_V16SImode, 
     919              : E_V8SImode, 
     920              : E_V8DImode) != 0)
     921          760 :         return -1;
     922              :       return 0;
     923              : 
     924        11105 :     case 4:
     925        11105 :       x10 = XVECEXP (x4, 0, 0);
     926        11105 :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     927              :         return -1;
     928        11105 :       x11 = XVECEXP (x4, 0, 1);
     929        11105 :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
     930              :         return -1;
     931        11101 :       x12 = XVECEXP (x4, 0, 2);
     932        11101 :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
     933              :         return -1;
     934        11101 :       x13 = XVECEXP (x4, 0, 3);
     935        11101 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 6]
     936        11101 :           || XVECLEN (x7, 0) != 4)
     937              :         return -1;
     938        11101 :       x18 = XVECEXP (x7, 0, 0);
     939        11101 :       if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     940              :         return -1;
     941        11101 :       x19 = XVECEXP (x7, 0, 1);
     942        11101 :       if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
     943              :         return -1;
     944        11101 :       x20 = XVECEXP (x7, 0, 2);
     945        11101 :       if (x20 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
     946              :         return -1;
     947        11101 :       x21 = XVECEXP (x7, 0, 3);
     948        11101 :       if (x21 != const_int_rtx[MAX_SAVED_CONST_INT + 6]
     949        11101 :           || pattern200 (x1, 
     950              : E_V8SImode, 
     951              : E_V4SImode, 
     952              : E_V4DImode) != 0)
     953         2094 :         return -1;
     954              :       return 1;
     955              : 
     956       151654 :     case 2:
     957       151654 :       x10 = XVECEXP (x4, 0, 0);
     958       151654 :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     959              :         return -1;
     960       151565 :       x11 = XVECEXP (x4, 0, 1);
     961       151565 :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 2]
     962       151553 :           || XVECLEN (x7, 0) != 2)
     963              :         return -1;
     964       151553 :       x18 = XVECEXP (x7, 0, 0);
     965       151553 :       if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     966              :         return -1;
     967       151553 :       x19 = XVECEXP (x7, 0, 1);
     968       151553 :       if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 2]
     969       151553 :           || !register_operand (operands[0], E_V2DImode)
     970       151442 :           || GET_MODE (x1) != E_V2DImode
     971       151442 :           || GET_MODE (x2) != E_V2DImode
     972       151442 :           || GET_MODE (x3) != E_V2SImode
     973       151442 :           || !vector_operand (operands[1], E_V4SImode)
     974       124317 :           || GET_MODE (x5) != E_V2DImode
     975       124317 :           || GET_MODE (x6) != E_V2SImode
     976       275870 :           || !vector_operand (operands[2], E_V4SImode))
     977        42281 :         return -1;
     978              :       return 2;
     979              : 
     980              :     default:
     981              :       return -1;
     982              :     }
     983              : }
     984              : 
     985              : int
     986     32906677 : pattern236 (rtx x1, machine_mode i1, unsigned int i2)
     987              : {
     988     32906677 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     989     32906677 :   rtx x2;
     990     32906677 :   int res ATTRIBUTE_UNUSED;
     991     32906677 :   if (GET_CODE (x1) != CLOBBER)
     992              :     return -1;
     993     32764715 :   x2 = XEXP (x1, 0);
     994     32764715 :   if (GET_CODE (x2) != REG
     995     32759535 :       || REGNO (x2) != i2
     996     62986956 :       || GET_MODE (x2) != i1)
     997      2563179 :     return -1;
     998              :   return 0;
     999              : }
    1000              : 
    1001              : int
    1002           89 : pattern243 (rtx x1, machine_mode i1)
    1003              : {
    1004           89 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1005           89 :   int res ATTRIBUTE_UNUSED;
    1006           89 :   if (!register_operand (operands[0], i1)
    1007           89 :       || GET_MODE (x1) != i1
    1008           89 :       || !nonimmediate_operand (operands[1], i1)
    1009           92 :       || !const_vector_duplicate_operand (operands[2], i1))
    1010           86 :     return -1;
    1011              :   return 0;
    1012              : }
    1013              : 
    1014              : int
    1015       353557 : pattern249 (rtx x1)
    1016              : {
    1017       353557 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1018       353557 :   int res ATTRIBUTE_UNUSED;
    1019       353557 :   switch (GET_MODE (operands[0]))
    1020              :     {
    1021       221008 :     case E_DImode:
    1022       221008 :       if (!register_operand (operands[0], E_DImode)
    1023       220481 :           || GET_MODE (x1) != E_DImode
    1024       441489 :           || !register_operand (operands[1], E_DImode))
    1025         2155 :         return -1;
    1026              :       return 0;
    1027              : 
    1028         5234 :     case E_TImode:
    1029         5234 :       if (!register_operand (operands[0], E_TImode)
    1030         5233 :           || GET_MODE (x1) != E_TImode
    1031        10467 :           || !register_operand (operands[1], E_TImode))
    1032           31 :         return -1;
    1033              :       return 1;
    1034              : 
    1035              :     default:
    1036              :       return -1;
    1037              :     }
    1038              : }
    1039              : 
    1040              : int
    1041          138 : pattern256 (rtx x1)
    1042              : {
    1043          138 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1044          138 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1045          138 :   rtx x10;
    1046          138 :   int res ATTRIBUTE_UNUSED;
    1047          138 :   x2 = XEXP (x1, 0);
    1048          138 :   if (GET_CODE (x2) != ZERO_EXTRACT)
    1049              :     return -1;
    1050          138 :   x3 = XEXP (x2, 1);
    1051          138 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    1052              :     return -1;
    1053          138 :   x4 = XEXP (x2, 2);
    1054          138 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    1055              :     return -1;
    1056          138 :   x5 = XEXP (x2, 0);
    1057          138 :   operands[0] = x5;
    1058          138 :   if (!int248_register_operand (operands[0], E_VOIDmode))
    1059              :     return -1;
    1060          138 :   x6 = XEXP (x1, 1);
    1061          138 :   x7 = XEXP (x6, 0);
    1062          138 :   x8 = XEXP (x7, 0);
    1063          138 :   x9 = XEXP (x8, 0);
    1064          138 :   x10 = XEXP (x9, 0);
    1065          138 :   operands[1] = x10;
    1066          138 :   if (!int248_register_operand (operands[1], E_VOIDmode))
    1067              :     return -1;
    1068              :   return 0;
    1069              : }
    1070              : 
    1071              : int
    1072        23433 : pattern272 (rtx x1, machine_mode i1, machine_mode i2)
    1073              : {
    1074        23433 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1075        23433 :   rtx x2;
    1076        23433 :   int res ATTRIBUTE_UNUSED;
    1077        23433 :   if (!register_operand (operands[0], i1)
    1078        23433 :       || GET_MODE (x1) != i1)
    1079              :     return -1;
    1080        22164 :   x2 = XEXP (x1, 0);
    1081        22164 :   if (GET_MODE (x2) != i2
    1082        22164 :       || !register_operand (operands[1], i1)
    1083        42696 :       || !register_operand (operands[2], i1))
    1084         3364 :     return -1;
    1085              :   return 0;
    1086              : }
    1087              : 
    1088              : int
    1089       261567 : pattern278 (rtx x1, int *pnum_clobbers, machine_mode i1, machine_mode i2)
    1090              : {
    1091       261567 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1092       261567 :   rtx x2, x3, x4;
    1093       261567 :   int res ATTRIBUTE_UNUSED;
    1094       261567 :   if (!nonimmediate_operand (operands[0], i1)
    1095       261567 :       || GET_MODE (x1) != i1)
    1096              :     return -1;
    1097       261496 :   x2 = XEXP (x1, 0);
    1098       261496 :   x3 = XEXP (x2, 0);
    1099       261496 :   if (!nonimmediate_operand (x3, i2))
    1100              :     return -1;
    1101       229763 :   x4 = XEXP (x1, 1);
    1102       229763 :   switch (GET_CODE (x4))
    1103              :     {
    1104       197891 :     case REG:
    1105       197891 :     case SUBREG:
    1106       197891 :     case MEM:
    1107       197891 :       if (pnum_clobbers == NULL)
    1108              :         return -1;
    1109       197891 :       operands[1] = x4;
    1110       197891 :       if (!nonimmediate_operand (operands[1], i1))
    1111              :         return -1;
    1112       197842 :       operands[2] = x3;
    1113       197842 :       return 0;
    1114              : 
    1115            0 :     case ASHIFT:
    1116            0 :       if (GET_MODE (x4) != i1)
    1117              :         return -1;
    1118            0 :       operands[1] = x3;
    1119            0 :       res = pattern39 (x4, 
    1120              : i1, 
    1121              : i2);
    1122            0 :       if (res >= 0)
    1123            0 :         return res + 1; /* [1, 3] */
    1124              :       return -1;
    1125              : 
    1126        20655 :     case CONST_INT:
    1127        20655 :     case CONST_WIDE_INT:
    1128        20655 :       operands[2] = x4;
    1129        20655 :       if (!const_scalar_int_operand (operands[2], i1))
    1130              :         return -1;
    1131        20655 :       operands[1] = x3;
    1132        20655 :       return 4;
    1133              : 
    1134              :     default:
    1135              :       return -1;
    1136              :     }
    1137              : }
    1138              : 
    1139              : int
    1140        29063 : pattern294 (rtx x1, machine_mode i1, machine_mode i2)
    1141              : {
    1142        29063 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1143        29063 :   rtx x2;
    1144        29063 :   int res ATTRIBUTE_UNUSED;
    1145        29063 :   if (!register_operand (operands[0], i2)
    1146        29063 :       || GET_MODE (x1) != i2)
    1147              :     return -1;
    1148        28045 :   x2 = XEXP (x1, 0);
    1149        28045 :   if (GET_MODE (x2) != i1
    1150        28045 :       || !register_operand (operands[1], i1))
    1151          826 :     return -1;
    1152              :   return 0;
    1153              : }
    1154              : 
    1155              : int
    1156          734 : pattern299 (rtx x1)
    1157              : {
    1158          734 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1159          734 :   rtx x2, x3, x4;
    1160          734 :   int res ATTRIBUTE_UNUSED;
    1161          734 :   if (GET_MODE (x1) != E_SImode)
    1162              :     return -1;
    1163          734 :   x2 = XVECEXP (x1, 0, 0);
    1164          734 :   if (!ix86_comparison_operator (x2, E_QImode))
    1165              :     return -1;
    1166          650 :   operands[1] = x2;
    1167          650 :   x3 = XEXP (x2, 0);
    1168          650 :   if (GET_CODE (x3) != REG
    1169          650 :       || REGNO (x3) != 17)
    1170              :     return -1;
    1171          650 :   x4 = XEXP (x2, 1);
    1172          650 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1173              :     return -1;
    1174              :   return 0;
    1175              : }
    1176              : 
    1177              : int
    1178         1055 : pattern307 (rtx x1)
    1179              : {
    1180         1055 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1181         1055 :   rtx x2;
    1182         1055 :   int res ATTRIBUTE_UNUSED;
    1183         1055 :   x2 = XVECEXP (x1, 0, 0);
    1184         1055 :   operands[1] = x2;
    1185         1055 :   switch (GET_MODE (operands[0]))
    1186              :     {
    1187          310 :     case E_SImode:
    1188          310 :       if (!register_operand (operands[0], E_SImode)
    1189          310 :           || GET_MODE (x1) != E_SImode
    1190          620 :           || !register_operand (operands[1], E_SImode))
    1191          180 :         return -1;
    1192              :       return 0;
    1193              : 
    1194          745 :     case E_DImode:
    1195          745 :       if (!register_operand (operands[0], E_DImode)
    1196          721 :           || GET_MODE (x1) != E_DImode
    1197         1466 :           || !register_operand (operands[1], E_DImode))
    1198          425 :         return -1;
    1199              :       return 1;
    1200              : 
    1201              :     default:
    1202              :       return -1;
    1203              :     }
    1204              : }
    1205              : 
    1206              : int
    1207          233 : pattern315 (rtx x1)
    1208              : {
    1209          233 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1210          233 :   rtx x2, x3, x4, x5, x6;
    1211          233 :   int res ATTRIBUTE_UNUSED;
    1212          233 :   x2 = XEXP (x1, 2);
    1213          233 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    1214              :     return -1;
    1215          211 :   x3 = XEXP (x1, 0);
    1216          211 :   x4 = XEXP (x3, 0);
    1217          211 :   x5 = XEXP (x4, 0);
    1218          211 :   operands[1] = x5;
    1219          211 :   x6 = XEXP (x1, 1);
    1220          211 :   operands[2] = x6;
    1221          211 :   switch (GET_MODE (operands[0]))
    1222              :     {
    1223            3 :     case E_V16SImode:
    1224            3 :       return pattern313 (x1, 
    1225            3 : E_V16SImode); /* [-1, 0] */
    1226              : 
    1227            3 :     case E_V8SImode:
    1228            3 :       if (pattern313 (x1, 
    1229              : E_V8SImode) != 0)
    1230              :         return -1;
    1231              :       return 1;
    1232              : 
    1233           94 :     case E_V4SImode:
    1234           94 :       if (pattern313 (x1, 
    1235              : E_V4SImode) != 0)
    1236              :         return -1;
    1237              :       return 2;
    1238              : 
    1239            4 :     case E_V8DImode:
    1240            4 :       res = pattern314 (x1, 
    1241              : E_V8DImode);
    1242            4 :       if (res >= 0)
    1243            4 :         return res + 3; /* [3, 4] */
    1244              :       return -1;
    1245              : 
    1246            4 :     case E_V4DImode:
    1247            4 :       res = pattern314 (x1, 
    1248              : E_V4DImode);
    1249            4 :       if (res >= 0)
    1250            4 :         return res + 5; /* [5, 6] */
    1251              :       return -1;
    1252              : 
    1253            0 :     case E_V2DImode:
    1254            0 :       res = pattern314 (x1, 
    1255              : E_V2DImode);
    1256            0 :       if (res >= 0)
    1257            0 :         return res + 7; /* [7, 8] */
    1258              :       return -1;
    1259              : 
    1260              :     default:
    1261              :       return -1;
    1262              :     }
    1263              : }
    1264              : 
    1265              : int
    1266         1572 : pattern330 (rtx x1)
    1267              : {
    1268         1572 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1269         1572 :   rtx x2;
    1270         1572 :   int res ATTRIBUTE_UNUSED;
    1271         1572 :   x2 = XVECEXP (x1, 0, 0);
    1272         1572 :   operands[1] = x2;
    1273         1572 :   switch (GET_MODE (operands[0]))
    1274              :     {
    1275          124 :     case E_V16SImode:
    1276          124 :       if (!register_operand (operands[0], E_V16SImode)
    1277          116 :           || GET_MODE (x1) != E_V16SImode
    1278          240 :           || !vector_operand (operands[1], E_V16SFmode))
    1279           10 :         return -1;
    1280              :       return 0;
    1281              : 
    1282          252 :     case E_V8SImode:
    1283          252 :       if (!register_operand (operands[0], E_V8SImode)
    1284          252 :           || GET_MODE (x1) != E_V8SImode)
    1285              :         return -1;
    1286          236 :       switch (GET_MODE (operands[1]))
    1287              :         {
    1288          114 :         case E_V8SFmode:
    1289          114 :           if (!vector_operand (operands[1], E_V8SFmode))
    1290              :             return -1;
    1291              :           return 1;
    1292              : 
    1293          122 :         case E_V8DFmode:
    1294          122 :           if (!vector_operand (operands[1], E_V8DFmode))
    1295              :             return -1;
    1296              :           return 2;
    1297              : 
    1298              :         default:
    1299              :           return -1;
    1300              :         }
    1301              : 
    1302          352 :     case E_V4SImode:
    1303          352 :       if (!register_operand (operands[0], E_V4SImode)
    1304          352 :           || GET_MODE (x1) != E_V4SImode)
    1305              :         return -1;
    1306          346 :       switch (GET_MODE (operands[1]))
    1307              :         {
    1308          114 :         case E_V4SFmode:
    1309          114 :           if (!vector_operand (operands[1], E_V4SFmode))
    1310              :             return -1;
    1311              :           return 3;
    1312              : 
    1313          116 :         case E_V4DFmode:
    1314          116 :           if (!vector_operand (operands[1], E_V4DFmode))
    1315              :             return -1;
    1316              :           return 4;
    1317              : 
    1318          116 :         case E_V2DFmode:
    1319          116 :           if (!vector_operand (operands[1], E_V2DFmode))
    1320              :             return -1;
    1321              :           return 5;
    1322              : 
    1323              :         default:
    1324              :           return -1;
    1325              :         }
    1326              : 
    1327          274 :     case E_V8DImode:
    1328          274 :       if (!register_operand (operands[0], E_V8DImode)
    1329          274 :           || GET_MODE (x1) != E_V8DImode)
    1330              :         return -1;
    1331          238 :       switch (GET_MODE (operands[1]))
    1332              :         {
    1333          122 :         case E_V8DFmode:
    1334          122 :           if (!vector_operand (operands[1], E_V8DFmode))
    1335              :             return -1;
    1336              :           return 6;
    1337              : 
    1338          116 :         case E_V8SFmode:
    1339          116 :           if (!vector_operand (operands[1], E_V8SFmode))
    1340              :             return -1;
    1341              :           return 7;
    1342              : 
    1343              :         default:
    1344              :           return -1;
    1345              :         }
    1346              : 
    1347          269 :     case E_V4DImode:
    1348          269 :       if (!register_operand (operands[0], E_V4DImode)
    1349          269 :           || GET_MODE (x1) != E_V4DImode)
    1350              :         return -1;
    1351          233 :       switch (GET_MODE (operands[1]))
    1352              :         {
    1353          120 :         case E_V4DFmode:
    1354          120 :           if (!vector_operand (operands[1], E_V4DFmode))
    1355              :             return -1;
    1356              :           return 8;
    1357              : 
    1358          113 :         case E_V4SFmode:
    1359          113 :           if (!vector_operand (operands[1], E_V4SFmode))
    1360              :             return -1;
    1361              :           return 9;
    1362              : 
    1363              :         default:
    1364              :           return -1;
    1365              :         }
    1366              : 
    1367          253 :     case E_V2DImode:
    1368          253 :       if (!register_operand (operands[0], E_V2DImode)
    1369          253 :           || GET_MODE (x1) != E_V2DImode)
    1370              :         return -1;
    1371          229 :       switch (GET_MODE (operands[1]))
    1372              :         {
    1373          116 :         case E_V2DFmode:
    1374          116 :           if (!vector_operand (operands[1], E_V2DFmode))
    1375              :             return -1;
    1376              :           return 10;
    1377              : 
    1378          113 :         case E_V4SFmode:
    1379          113 :           if (!vector_operand (operands[1], E_V4SFmode))
    1380              :             return -1;
    1381              :           return 11;
    1382              : 
    1383              :         default:
    1384              :           return -1;
    1385              :         }
    1386              : 
    1387              :     default:
    1388              :       return -1;
    1389              :     }
    1390              : }
    1391              : 
    1392              : int
    1393          251 : pattern347 (rtx x1, int *pnum_clobbers, rtx_code i1)
    1394              : {
    1395          251 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1396          251 :   rtx x2, x3, x4, x5, x6, x7;
    1397          251 :   int res ATTRIBUTE_UNUSED;
    1398          251 :   if (pnum_clobbers == NULL)
    1399              :     return -1;
    1400          249 :   x2 = XVECEXP (x1, 0, 0);
    1401          249 :   x3 = XEXP (x2, 1);
    1402          249 :   x4 = XEXP (x3, 0);
    1403          249 :   if (GET_MODE (x4) != E_SImode)
    1404              :     return -1;
    1405          237 :   x5 = XVECEXP (x1, 0, 1);
    1406          237 :   if (GET_CODE (x5) != SET)
    1407              :     return -1;
    1408          237 :   x6 = XEXP (x5, 1);
    1409          237 :   if (GET_CODE (x6) != i1
    1410          237 :       || GET_MODE (x6) != E_SImode)
    1411              :     return -1;
    1412          237 :   x7 = XEXP (x2, 0);
    1413          237 :   operands[1] = x7;
    1414          237 :   if (!register_operand (operands[1], E_DImode)
    1415          237 :       || GET_MODE (x3) != E_DImode)
    1416              :     return -1;
    1417              :   return 0;
    1418              : }
    1419              : 
    1420              : int
    1421        21982 : pattern352 (rtx x1)
    1422              : {
    1423        21982 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1424        21982 :   int res ATTRIBUTE_UNUSED;
    1425        21982 :   if (!nonmemory_operand (operands[2], E_QImode))
    1426              :     return -1;
    1427        21836 :   return pattern351 (x1); /* [-1, 5] */
    1428              : }
    1429              : 
    1430              : int
    1431         4542 : pattern356 (rtx x1, machine_mode i1, machine_mode i2)
    1432              : {
    1433         4542 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1434         4542 :   rtx x2, x3, x4, x5;
    1435         4542 :   int res ATTRIBUTE_UNUSED;
    1436         4542 :   if (!register_operand (operands[0], i1)
    1437         4542 :       || GET_MODE (x1) != i1)
    1438              :     return -1;
    1439         4542 :   x2 = XEXP (x1, 0);
    1440         4542 :   if (GET_MODE (x2) != i1)
    1441              :     return -1;
    1442         4542 :   x3 = XEXP (x2, 0);
    1443         4542 :   if (GET_MODE (x3) != i1)
    1444              :     return -1;
    1445         4542 :   x4 = XEXP (x3, 0);
    1446         4542 :   if (GET_MODE (x4) != i1
    1447         4542 :       || !nonimmediate_operand (operands[2], i2))
    1448           23 :     return -1;
    1449         4519 :   x5 = XEXP (x2, 1);
    1450         4519 :   if (GET_MODE (x5) != i1
    1451         4519 :       || !nonimmediate_operand (operands[4], i2)
    1452         9027 :       || !register_operand (operands[1], i1))
    1453           11 :     return -1;
    1454              :   return 0;
    1455              : }
    1456              : 
    1457              : int
    1458           64 : pattern361 (rtx x1, machine_mode i1)
    1459              : {
    1460           64 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1461           64 :   rtx x2;
    1462           64 :   int res ATTRIBUTE_UNUSED;
    1463           64 :   if (!nonimmediate_operand (operands[0], i1)
    1464           64 :       || GET_MODE (x1) != i1)
    1465              :     return -1;
    1466           64 :   x2 = XEXP (x1, 0);
    1467           64 :   if (GET_MODE (x2) != i1
    1468           64 :       || !general_operand (operands[1], i1))
    1469            0 :     return -1;
    1470              :   return 0;
    1471              : }
    1472              : 
    1473              : int
    1474        21065 : pattern365 (rtx x1, machine_mode i1)
    1475              : {
    1476        21065 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1477        21065 :   rtx x2, x3, x4, x5, x6, x7;
    1478        21065 :   int res ATTRIBUTE_UNUSED;
    1479        21065 :   x2 = XVECEXP (x1, 0, 0);
    1480        21065 :   x3 = XEXP (x2, 1);
    1481        21065 :   x4 = XEXP (x3, 0);
    1482        21065 :   x5 = XEXP (x4, 0);
    1483        21065 :   if (GET_MODE (x5) != i1
    1484        21065 :       || !memory_operand (operands[0], i1)
    1485        42023 :       || !nonmemory_operand (operands[1], i1))
    1486          107 :     return -1;
    1487        20958 :   x6 = XVECEXP (x1, 0, 1);
    1488        20958 :   x7 = XEXP (x6, 1);
    1489        20958 :   if (GET_MODE (x7) != i1)
    1490              :     return -1;
    1491              :   return 0;
    1492              : }
    1493              : 
    1494              : int
    1495       190102 : pattern369 (rtx x1)
    1496              : {
    1497       190102 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1498       190102 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1499       190102 :   rtx x10;
    1500       190102 :   int res ATTRIBUTE_UNUSED;
    1501       190102 :   x2 = XVECEXP (x1, 0, 0);
    1502       190102 :   x3 = XEXP (x2, 1);
    1503       190102 :   x4 = XEXP (x3, 1);
    1504       190102 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1505              :     return -1;
    1506        47186 :   x5 = XEXP (x2, 0);
    1507        47186 :   if (GET_CODE (x5) != REG
    1508        47186 :       || REGNO (x5) != 17)
    1509              :     return -1;
    1510        47186 :   x6 = XEXP (x3, 0);
    1511        47186 :   x7 = XEXP (x6, 0);
    1512        47186 :   operands[1] = x7;
    1513        47186 :   x8 = XEXP (x6, 1);
    1514        47186 :   operands[2] = x8;
    1515        47186 :   x9 = XVECEXP (x1, 0, 1);
    1516        47186 :   switch (GET_CODE (x9))
    1517              :     {
    1518        41451 :     case SET:
    1519        41451 :       x10 = XEXP (x9, 0);
    1520        41451 :       operands[0] = x10;
    1521        41451 :       return 0;
    1522              : 
    1523         5735 :     case CLOBBER:
    1524         5735 :       x10 = XEXP (x9, 0);
    1525         5735 :       operands[0] = x10;
    1526         5735 :       switch (GET_MODE (x6))
    1527              :         {
    1528          131 :         case E_QImode:
    1529          131 :           if (!nonimmediate_operand (operands[1], E_QImode)
    1530          128 :               || !const_1_to_31_operand (operands[2], E_QImode)
    1531          259 :               || !scratch_operand (operands[0], E_QImode))
    1532            3 :             return -1;
    1533              :           return 1;
    1534              : 
    1535          238 :         case E_HImode:
    1536          238 :           if (!nonimmediate_operand (operands[1], E_HImode)
    1537          221 :               || !const_1_to_31_operand (operands[2], E_QImode)
    1538          459 :               || !scratch_operand (operands[0], E_HImode))
    1539           23 :             return -1;
    1540              :           return 2;
    1541              : 
    1542          151 :         case E_SImode:
    1543          151 :           if (!nonimmediate_operand (operands[1], E_SImode)
    1544          101 :               || !const_1_to_31_operand (operands[2], E_QImode)
    1545          252 :               || !scratch_operand (operands[0], E_SImode))
    1546           53 :             return -1;
    1547              :           return 3;
    1548              : 
    1549         5215 :         case E_DImode:
    1550         5215 :           if (!nonimmediate_operand (operands[1], E_DImode)
    1551         3803 :               || !const_1_to_63_operand (operands[2], E_QImode)
    1552         9018 :               || !scratch_operand (operands[0], E_DImode))
    1553         1417 :             return -1;
    1554              :           return 4;
    1555              : 
    1556              :         default:
    1557              :           return -1;
    1558              :         }
    1559              : 
    1560              :     default:
    1561              :       return -1;
    1562              :     }
    1563              : }
    1564              : 
    1565              : int
    1566      1033671 : pattern391 (rtx x1, machine_mode i1)
    1567              : {
    1568      1033671 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1569      1033671 :   rtx x2, x3, x4, x5;
    1570      1033671 :   int res ATTRIBUTE_UNUSED;
    1571      1033671 :   if (!register_operand (operands[0], i1))
    1572              :     return -1;
    1573      1032715 :   x2 = XVECEXP (x1, 0, 0);
    1574      1032715 :   x3 = XEXP (x2, 1);
    1575      1032715 :   if (GET_MODE (x3) != i1
    1576      1032715 :       || !register_operand (operands[2], i1)
    1577       958518 :       || !nonimmediate_operand (operands[3], i1)
    1578      1961527 :       || !register_operand (operands[1], i1))
    1579       104045 :     return -1;
    1580       928670 :   x4 = XVECEXP (x1, 0, 1);
    1581       928670 :   x5 = XEXP (x4, 1);
    1582       928670 :   if (GET_MODE (x5) != i1)
    1583              :     return -1;
    1584              :   return 0;
    1585              : }
    1586              : 
    1587              : int
    1588          766 : pattern399 (rtx x1, machine_mode i1)
    1589              : {
    1590          766 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1591          766 :   rtx x2;
    1592          766 :   int res ATTRIBUTE_UNUSED;
    1593          766 :   if (!register_operand (operands[0], i1)
    1594          766 :       || GET_MODE (x1) != i1)
    1595              :     return -1;
    1596          737 :   x2 = XEXP (x1, 0);
    1597          737 :   if (GET_MODE (x2) != i1
    1598          737 :       || !register_no_SP_operand (operands[1], i1)
    1599         1474 :       || !nonmemory_operand (operands[3], i1))
    1600            0 :     return -1;
    1601              :   return 0;
    1602              : }
    1603              : 
    1604              : int
    1605          735 : pattern406 (rtx x1)
    1606              : {
    1607          735 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1608          735 :   rtx x2, x3, x4;
    1609          735 :   int res ATTRIBUTE_UNUSED;
    1610          735 :   x2 = XEXP (x1, 0);
    1611          735 :   x3 = XEXP (x2, 0);
    1612          735 :   operands[1] = x3;
    1613          735 :   x4 = XEXP (x2, 1);
    1614          735 :   operands[2] = x4;
    1615          735 :   switch (GET_MODE (operands[0]))
    1616              :     {
    1617            3 :     case E_HImode:
    1618            3 :       if (!register_operand (operands[0], E_HImode)
    1619            3 :           || GET_MODE (x1) != E_HImode
    1620            3 :           || GET_MODE (x2) != E_QImode
    1621            3 :           || !memory_operand (operands[1], E_QImode)
    1622            6 :           || !const_int_operand (operands[2], E_QImode))
    1623            0 :         return -1;
    1624              :       return 0;
    1625              : 
    1626          452 :     case E_SImode:
    1627          452 :       if (!register_operand (operands[0], E_SImode)
    1628          452 :           || GET_MODE (x1) != E_SImode)
    1629              :         return -1;
    1630          265 :       switch (GET_MODE (x2))
    1631              :         {
    1632          202 :         case E_QImode:
    1633          202 :           if (!memory_operand (operands[1], E_QImode)
    1634          202 :               || !const_int_operand (operands[2], E_QImode))
    1635          130 :             return -1;
    1636              :           return 1;
    1637              : 
    1638           63 :         case E_HImode:
    1639           63 :           if (!memory_operand (operands[1], E_HImode)
    1640           63 :               || !const_int_operand (operands[2], E_HImode))
    1641           39 :             return -1;
    1642              :           return 2;
    1643              : 
    1644              :         default:
    1645              :           return -1;
    1646              :         }
    1647              : 
    1648          278 :     case E_DImode:
    1649          278 :       if (!register_operand (operands[0], E_DImode)
    1650          278 :           || GET_MODE (x1) != E_DImode)
    1651              :         return -1;
    1652          272 :       switch (GET_MODE (x2))
    1653              :         {
    1654            7 :         case E_QImode:
    1655            7 :           if (!memory_operand (operands[1], E_QImode)
    1656            7 :               || !const_int_operand (operands[2], E_QImode))
    1657            4 :             return -1;
    1658              :           return 3;
    1659              : 
    1660            4 :         case E_HImode:
    1661            4 :           if (!memory_operand (operands[1], E_HImode)
    1662            4 :               || !const_int_operand (operands[2], E_HImode))
    1663            1 :             return -1;
    1664              :           return 4;
    1665              : 
    1666          261 :         case E_SImode:
    1667          261 :           if (!memory_operand (operands[1], E_SImode)
    1668          261 :               || !const_int_operand (operands[2], E_SImode))
    1669          247 :             return -1;
    1670              :           return 5;
    1671              : 
    1672              :         default:
    1673              :           return -1;
    1674              :         }
    1675              : 
    1676              :     default:
    1677              :       return -1;
    1678              :     }
    1679              : }
    1680              : 
    1681              : int
    1682       533602 : pattern428 (rtx x1, machine_mode i1)
    1683              : {
    1684       533602 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1685       533602 :   int res ATTRIBUTE_UNUSED;
    1686       533602 :   if (GET_MODE (x1) != i1)
    1687              :     return -1;
    1688       533602 :   switch (GET_MODE (operands[1]))
    1689              :     {
    1690       409255 :     case E_SFmode:
    1691       409255 :       if (!nonimmediate_operand (operands[1], E_SFmode))
    1692              :         return -1;
    1693              :       return 0;
    1694              : 
    1695       124336 :     case E_DFmode:
    1696       124336 :       if (!nonimmediate_operand (operands[1], E_DFmode))
    1697              :         return -1;
    1698              :       return 1;
    1699              : 
    1700              :     default:
    1701              :       return -1;
    1702              :     }
    1703              : }
    1704              : 
    1705              : int
    1706         8992 : pattern436 (rtx x1, int *pnum_clobbers)
    1707              : {
    1708         8992 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1709         8992 :   rtx x2, x3, x4, x5, x6;
    1710         8992 :   int res ATTRIBUTE_UNUSED;
    1711         8992 :   if (pnum_clobbers == NULL)
    1712              :     return -1;
    1713         8992 :   x2 = XEXP (x1, 1);
    1714         8992 :   x3 = XEXP (x2, 1);
    1715         8992 :   operands[2] = x3;
    1716         8992 :   x4 = XEXP (x3, 0);
    1717         8992 :   if (GET_CODE (x4) != REG
    1718         8992 :       || REGNO (x4) != 17)
    1719              :     return -1;
    1720         7189 :   x5 = XEXP (x3, 1);
    1721         7189 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1722              :     return -1;
    1723         7189 :   x6 = XEXP (x1, 0);
    1724         7189 :   operands[0] = x6;
    1725         7189 :   switch (GET_MODE (operands[0]))
    1726              :     {
    1727              :     case E_QImode:
    1728              :       return 0;
    1729              : 
    1730            2 :     case E_HImode:
    1731            2 :       return 1;
    1732              : 
    1733              :     default:
    1734              :       return -1;
    1735              :     }
    1736              : }
    1737              : 
    1738              : int
    1739         8228 : pattern445 (rtx x1)
    1740              : {
    1741         8228 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1742         8228 :   rtx x2, x3;
    1743         8228 :   int res ATTRIBUTE_UNUSED;
    1744         8228 :   switch (GET_MODE (operands[0]))
    1745              :     {
    1746         3996 :     case E_DImode:
    1747         3996 :       if (!nonimmediate_operand (operands[0], E_DImode)
    1748         3996 :           || GET_MODE (x1) != E_DImode)
    1749              :         return -1;
    1750         3992 :       x2 = XEXP (x1, 0);
    1751         3992 :       if (GET_MODE (x2) != E_DImode
    1752         3992 :           || !nonimmediate_operand (operands[4], E_DImode)
    1753         7618 :           || !const_0_to_63_operand (operands[2], E_QImode))
    1754         1941 :         return -1;
    1755         2051 :       x3 = XEXP (x1, 1);
    1756         2051 :       if (GET_MODE (x3) != E_DImode
    1757         2051 :           || !nonimmediate_operand (operands[1], E_DImode)
    1758         3539 :           || !const_0_to_63_operand (operands[3], E_QImode))
    1759          563 :         return -1;
    1760              :       return 0;
    1761              : 
    1762         2229 :     case E_SImode:
    1763         2229 :       if (!nonimmediate_operand (operands[0], E_SImode)
    1764         2229 :           || GET_MODE (x1) != E_SImode)
    1765              :         return -1;
    1766         2229 :       x2 = XEXP (x1, 0);
    1767         2229 :       if (GET_MODE (x2) != E_SImode
    1768         2229 :           || !nonimmediate_operand (operands[4], E_SImode)
    1769         4447 :           || !const_0_to_31_operand (operands[2], E_QImode))
    1770          561 :         return -1;
    1771         1668 :       x3 = XEXP (x1, 1);
    1772         1668 :       if (GET_MODE (x3) != E_SImode
    1773         1668 :           || !nonimmediate_operand (operands[1], E_SImode)
    1774         3299 :           || !const_0_to_31_operand (operands[3], E_QImode))
    1775           37 :         return -1;
    1776              :       return 1;
    1777              : 
    1778              :     default:
    1779              :       return -1;
    1780              :     }
    1781              : }
    1782              : 
    1783              : int
    1784         1140 : pattern462 (rtx x1, machine_mode i1, machine_mode i2)
    1785              : {
    1786         1140 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1787         1140 :   rtx x2, x3;
    1788         1140 :   int res ATTRIBUTE_UNUSED;
    1789         1140 :   if (!register_operand (operands[0], i2)
    1790         1140 :       || GET_MODE (x1) != i2)
    1791              :     return -1;
    1792         1042 :   x2 = XEXP (x1, 0);
    1793         1042 :   if (GET_MODE (x2) != i2
    1794         1042 :       || !vector_operand (operands[1], i2)
    1795         1024 :       || !vector_operand (operands[2], i2)
    1796         2066 :       || !nonimm_or_0_operand (operands[3], i2))
    1797           26 :     return -1;
    1798         1016 :   x3 = XEXP (x1, 2);
    1799         1016 :   if (GET_MODE (x3) != i1
    1800         1016 :       || !register_operand (operands[4], E_QImode))
    1801          108 :     return -1;
    1802              :   return 0;
    1803              : }
    1804              : 
    1805              : int
    1806         2245 : pattern471 (rtx x1)
    1807              : {
    1808         2245 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1809         2245 :   rtx x2, x3, x4, x5, x6;
    1810         2245 :   int res ATTRIBUTE_UNUSED;
    1811         2245 :   x2 = XEXP (x1, 0);
    1812         2245 :   x3 = XVECEXP (x2, 0, 0);
    1813         2245 :   operands[1] = x3;
    1814         2245 :   x4 = XVECEXP (x2, 0, 1);
    1815         2245 :   operands[2] = x4;
    1816         2245 :   if (!const_0_to_255_operand (operands[2], E_SImode))
    1817              :     return -1;
    1818         2245 :   x5 = XEXP (x1, 1);
    1819         2245 :   operands[3] = x5;
    1820         2245 :   x6 = XEXP (x1, 2);
    1821         2245 :   operands[4] = x6;
    1822         2245 :   switch (GET_MODE (operands[0]))
    1823              :     {
    1824          753 :     case E_V32BFmode:
    1825          753 :       return pattern470 (x1, 
    1826              : E_V32BFmode, 
    1827          753 : E_SImode); /* [-1, 0] */
    1828              : 
    1829          752 :     case E_V16BFmode:
    1830          752 :       if (pattern470 (x1, 
    1831              : E_V16BFmode, 
    1832              : E_HImode) != 0)
    1833              :         return -1;
    1834              :       return 1;
    1835              : 
    1836          740 :     case E_V8BFmode:
    1837          740 :       if (pattern470 (x1, 
    1838              : E_V8BFmode, 
    1839              : E_QImode) != 0)
    1840              :         return -1;
    1841              :       return 2;
    1842              : 
    1843              :     default:
    1844              :       return -1;
    1845              :     }
    1846              : }
    1847              : 
    1848              : int
    1849         1727 : pattern479 (rtx x1)
    1850              : {
    1851         1727 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1852         1727 :   rtx x2, x3, x4, x5, x6, x7;
    1853         1727 :   int res ATTRIBUTE_UNUSED;
    1854         1727 :   x2 = XEXP (x1, 0);
    1855         1727 :   x3 = XVECEXP (x2, 0, 0);
    1856         1727 :   operands[1] = x3;
    1857         1727 :   x4 = XVECEXP (x2, 0, 1);
    1858         1727 :   operands[2] = x4;
    1859         1727 :   x5 = XVECEXP (x2, 0, 2);
    1860         1727 :   operands[3] = x5;
    1861         1727 :   x6 = XEXP (x1, 2);
    1862         1727 :   if (!register_operand (x6, E_QImode))
    1863              :     return -1;
    1864         1533 :   x7 = XEXP (x1, 1);
    1865         1533 :   switch (GET_CODE (x7))
    1866              :     {
    1867          736 :     case CONST_INT:
    1868          736 :     case CONST_DOUBLE:
    1869          736 :     case CONST_VECTOR:
    1870          736 :       operands[4] = x7;
    1871          736 :       operands[5] = x6;
    1872          736 :       switch (GET_MODE (operands[0]))
    1873              :         {
    1874          247 :         case E_V8DImode:
    1875          247 :           return pattern477 (x1, 
    1876          247 : E_V8DImode); /* [-1, 0] */
    1877              : 
    1878          249 :         case E_V4DImode:
    1879          249 :           if (pattern477 (x1, 
    1880              : E_V4DImode) != 0)
    1881              :             return -1;
    1882              :           return 1;
    1883              : 
    1884          240 :         case E_V2DImode:
    1885          240 :           if (pattern477 (x1, 
    1886              : E_V2DImode) != 0)
    1887              :             return -1;
    1888              :           return 2;
    1889              : 
    1890              :         default:
    1891              :           return -1;
    1892              :         }
    1893              : 
    1894          760 :     case REG:
    1895          760 :     case SUBREG:
    1896          760 :       if (!rtx_equal_p (x7, operands[1]))
    1897              :         return -1;
    1898          760 :       operands[4] = x6;
    1899          760 :       switch (GET_MODE (operands[0]))
    1900              :         {
    1901          283 :         case E_V8DImode:
    1902          283 :           if (pattern478 (x1, 
    1903              : E_V8DImode) != 0)
    1904              :             return -1;
    1905              :           return 3;
    1906              : 
    1907          242 :         case E_V4DImode:
    1908          242 :           if (pattern478 (x1, 
    1909              : E_V4DImode) != 0)
    1910              :             return -1;
    1911              :           return 4;
    1912              : 
    1913          235 :         case E_V2DImode:
    1914          235 :           if (pattern478 (x1, 
    1915              : E_V2DImode) != 0)
    1916              :             return -1;
    1917              :           return 5;
    1918              : 
    1919              :         default:
    1920              :           return -1;
    1921              :         }
    1922              : 
    1923              :     default:
    1924              :       return -1;
    1925              :     }
    1926              : }
    1927              : 
    1928              : int
    1929           84 : pattern497 (rtx x1)
    1930              : {
    1931           84 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1932           84 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1933           84 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    1934           84 :   rtx x18, x19, x20;
    1935           84 :   int res ATTRIBUTE_UNUSED;
    1936           84 :   x2 = XVECEXP (x1, 0, 1);
    1937           84 :   operands[1] = x2;
    1938           84 :   x3 = XVECEXP (x1, 0, 2);
    1939           84 :   operands[2] = x3;
    1940           84 :   x4 = XVECEXP (x1, 0, 0);
    1941           84 :   switch (XVECLEN (x4, 0))
    1942              :     {
    1943           33 :     case 16:
    1944           33 :       if (GET_MODE (x4) != E_V16QImode)
    1945              :         return -1;
    1946            9 :       x5 = XVECEXP (x4, 0, 0);
    1947            9 :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1948              :         return -1;
    1949            9 :       x6 = XVECEXP (x4, 0, 1);
    1950            9 :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    1951              :         return -1;
    1952            8 :       x7 = XVECEXP (x4, 0, 2);
    1953            8 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    1954              :         return -1;
    1955            8 :       x8 = XVECEXP (x4, 0, 3);
    1956            8 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    1957              :         return -1;
    1958            8 :       x9 = XVECEXP (x4, 0, 4);
    1959            8 :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    1960              :         return -1;
    1961            8 :       x10 = XVECEXP (x4, 0, 5);
    1962            8 :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    1963              :         return -1;
    1964            8 :       x11 = XVECEXP (x4, 0, 6);
    1965            8 :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
    1966              :         return -1;
    1967            8 :       x12 = XVECEXP (x4, 0, 7);
    1968            8 :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
    1969              :         return -1;
    1970            8 :       x13 = XVECEXP (x4, 0, 8);
    1971            8 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 16])
    1972              :         return -1;
    1973            8 :       x14 = XVECEXP (x4, 0, 9);
    1974            8 :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 17])
    1975              :         return -1;
    1976            8 :       x15 = XVECEXP (x4, 0, 10);
    1977            8 :       if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 18])
    1978              :         return -1;
    1979            8 :       x16 = XVECEXP (x4, 0, 11);
    1980            8 :       if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 19])
    1981              :         return -1;
    1982            8 :       x17 = XVECEXP (x4, 0, 12);
    1983            8 :       if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 20])
    1984              :         return -1;
    1985            8 :       x18 = XVECEXP (x4, 0, 13);
    1986            8 :       if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 21])
    1987              :         return -1;
    1988            8 :       x19 = XVECEXP (x4, 0, 14);
    1989            8 :       if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 22])
    1990              :         return -1;
    1991            8 :       x20 = XVECEXP (x4, 0, 15);
    1992            8 :       if (x20 != const_int_rtx[MAX_SAVED_CONST_INT + 23]
    1993            8 :           || pattern496 (x1, 
    1994              : E_V16QImode) != 0)
    1995            6 :         return -1;
    1996              :       return 0;
    1997              : 
    1998           32 :     case 8:
    1999           32 :       if (GET_MODE (x4) != E_V8HImode)
    2000              :         return -1;
    2001           13 :       x5 = XVECEXP (x4, 0, 0);
    2002           13 :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2003              :         return -1;
    2004            9 :       x6 = XVECEXP (x4, 0, 1);
    2005            9 :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    2006              :         return -1;
    2007            0 :       x7 = XVECEXP (x4, 0, 2);
    2008            0 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    2009              :         return -1;
    2010            0 :       x8 = XVECEXP (x4, 0, 3);
    2011            0 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    2012              :         return -1;
    2013            0 :       x9 = XVECEXP (x4, 0, 4);
    2014            0 :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    2015              :         return -1;
    2016            0 :       x10 = XVECEXP (x4, 0, 5);
    2017            0 :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 9])
    2018              :         return -1;
    2019            0 :       x11 = XVECEXP (x4, 0, 6);
    2020            0 :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 10])
    2021              :         return -1;
    2022            0 :       x12 = XVECEXP (x4, 0, 7);
    2023            0 :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 11]
    2024            0 :           || pattern496 (x1, 
    2025              : E_V8HImode) != 0)
    2026            0 :         return -1;
    2027              :       return 1;
    2028              : 
    2029              :     default:
    2030              :       return -1;
    2031              :     }
    2032              : }
    2033              : 
    2034              : int
    2035         2415 : pattern527 (rtx x1)
    2036              : {
    2037         2415 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2038         2415 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2039         2415 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    2040         2415 :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
    2041         2415 :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
    2042         2415 :   rtx x34, x35, x36, x37;
    2043         2415 :   int res ATTRIBUTE_UNUSED;
    2044         2415 :   x2 = XEXP (x1, 0);
    2045         2415 :   if (XINT (x2, 1) != 152)
    2046              :     return -1;
    2047           52 :   x3 = XVECEXP (x2, 0, 0);
    2048           52 :   operands[1] = x3;
    2049           52 :   x4 = XVECEXP (x2, 0, 1);
    2050           52 :   operands[2] = x4;
    2051           52 :   x5 = XEXP (x1, 1);
    2052           52 :   switch (XVECLEN (x5, 0))
    2053              :     {
    2054            8 :     case 16:
    2055            8 :       x6 = XVECEXP (x5, 0, 0);
    2056            8 :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2057              :         return -1;
    2058            8 :       x7 = XVECEXP (x5, 0, 1);
    2059            8 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    2060              :         return -1;
    2061            8 :       x8 = XVECEXP (x5, 0, 2);
    2062            8 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    2063              :         return -1;
    2064            8 :       x9 = XVECEXP (x5, 0, 3);
    2065            8 :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    2066              :         return -1;
    2067            8 :       x10 = XVECEXP (x5, 0, 4);
    2068            8 :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    2069              :         return -1;
    2070            8 :       x11 = XVECEXP (x5, 0, 5);
    2071            8 :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    2072              :         return -1;
    2073            8 :       x12 = XVECEXP (x5, 0, 6);
    2074            8 :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
    2075              :         return -1;
    2076            8 :       x13 = XVECEXP (x5, 0, 7);
    2077            8 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
    2078              :         return -1;
    2079            8 :       x14 = XVECEXP (x5, 0, 8);
    2080            8 :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    2081              :         return -1;
    2082            8 :       x15 = XVECEXP (x5, 0, 9);
    2083            8 :       if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 9])
    2084              :         return -1;
    2085            8 :       x16 = XVECEXP (x5, 0, 10);
    2086            8 :       if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 10])
    2087              :         return -1;
    2088            8 :       x17 = XVECEXP (x5, 0, 11);
    2089            8 :       if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 11])
    2090              :         return -1;
    2091            8 :       x18 = XVECEXP (x5, 0, 12);
    2092            8 :       if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 12])
    2093              :         return -1;
    2094            8 :       x19 = XVECEXP (x5, 0, 13);
    2095            8 :       if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 13])
    2096              :         return -1;
    2097            8 :       x20 = XVECEXP (x5, 0, 14);
    2098            8 :       if (x20 != const_int_rtx[MAX_SAVED_CONST_INT + 14])
    2099              :         return -1;
    2100            8 :       x21 = XVECEXP (x5, 0, 15);
    2101            8 :       if (x21 != const_int_rtx[MAX_SAVED_CONST_INT + 15])
    2102              :         return -1;
    2103            8 :       switch (GET_MODE (operands[0]))
    2104              :         {
    2105            4 :         case E_V16HImode:
    2106            4 :           return pattern526 (x1, 
    2107              : E_V32HImode, 
    2108            4 : E_V16HImode); /* [-1, 0] */
    2109              : 
    2110            4 :         case E_V16QImode:
    2111            4 :           if (pattern526 (x1, 
    2112              : E_V32QImode, 
    2113              : E_V16QImode) != 0)
    2114              :             return -1;
    2115              :           return 1;
    2116              : 
    2117              :         default:
    2118              :           return -1;
    2119              :         }
    2120              : 
    2121           24 :     case 8:
    2122           24 :       x6 = XVECEXP (x5, 0, 0);
    2123           24 :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2124              :         return -1;
    2125           24 :       x7 = XVECEXP (x5, 0, 1);
    2126           24 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    2127              :         return -1;
    2128           24 :       x8 = XVECEXP (x5, 0, 2);
    2129           24 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    2130              :         return -1;
    2131           24 :       x9 = XVECEXP (x5, 0, 3);
    2132           24 :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    2133              :         return -1;
    2134           24 :       x10 = XVECEXP (x5, 0, 4);
    2135           24 :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    2136              :         return -1;
    2137           24 :       x11 = XVECEXP (x5, 0, 5);
    2138           24 :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    2139              :         return -1;
    2140           24 :       x12 = XVECEXP (x5, 0, 6);
    2141           24 :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
    2142              :         return -1;
    2143           24 :       x13 = XVECEXP (x5, 0, 7);
    2144           24 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
    2145              :         return -1;
    2146           24 :       switch (GET_MODE (operands[0]))
    2147              :         {
    2148            4 :         case E_V8HImode:
    2149            4 :           if (pattern526 (x1, 
    2150              : E_V16HImode, 
    2151              : E_V8HImode) != 0)
    2152              :             return -1;
    2153              :           return 2;
    2154              : 
    2155           20 :         case E_V8SImode:
    2156           20 :           if (pattern526 (x1, 
    2157              : E_V16SImode, 
    2158              : E_V8SImode) != 0)
    2159              :             return -1;
    2160              :           return 3;
    2161              : 
    2162              :         default:
    2163              :           return -1;
    2164              :         }
    2165              : 
    2166            4 :     case 32:
    2167            4 :       x6 = XVECEXP (x5, 0, 0);
    2168            4 :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2169              :         return -1;
    2170            4 :       x7 = XVECEXP (x5, 0, 1);
    2171            4 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    2172              :         return -1;
    2173            4 :       x8 = XVECEXP (x5, 0, 2);
    2174            4 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    2175              :         return -1;
    2176            4 :       x9 = XVECEXP (x5, 0, 3);
    2177            4 :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    2178              :         return -1;
    2179            4 :       x10 = XVECEXP (x5, 0, 4);
    2180            4 :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    2181              :         return -1;
    2182            4 :       x11 = XVECEXP (x5, 0, 5);
    2183            4 :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    2184              :         return -1;
    2185            4 :       x12 = XVECEXP (x5, 0, 6);
    2186            4 :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
    2187              :         return -1;
    2188            4 :       x13 = XVECEXP (x5, 0, 7);
    2189            4 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
    2190              :         return -1;
    2191            4 :       x14 = XVECEXP (x5, 0, 8);
    2192            4 :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    2193              :         return -1;
    2194            4 :       x15 = XVECEXP (x5, 0, 9);
    2195            4 :       if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 9])
    2196              :         return -1;
    2197            4 :       x16 = XVECEXP (x5, 0, 10);
    2198            4 :       if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 10])
    2199              :         return -1;
    2200            4 :       x17 = XVECEXP (x5, 0, 11);
    2201            4 :       if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 11])
    2202              :         return -1;
    2203            4 :       x18 = XVECEXP (x5, 0, 12);
    2204            4 :       if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 12])
    2205              :         return -1;
    2206            4 :       x19 = XVECEXP (x5, 0, 13);
    2207            4 :       if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 13])
    2208              :         return -1;
    2209            4 :       x20 = XVECEXP (x5, 0, 14);
    2210            4 :       if (x20 != const_int_rtx[MAX_SAVED_CONST_INT + 14])
    2211              :         return -1;
    2212            4 :       x21 = XVECEXP (x5, 0, 15);
    2213            4 :       if (x21 != const_int_rtx[MAX_SAVED_CONST_INT + 15])
    2214              :         return -1;
    2215            4 :       x22 = XVECEXP (x5, 0, 16);
    2216            4 :       if (x22 != const_int_rtx[MAX_SAVED_CONST_INT + 16])
    2217              :         return -1;
    2218            4 :       x23 = XVECEXP (x5, 0, 17);
    2219            4 :       if (x23 != const_int_rtx[MAX_SAVED_CONST_INT + 17])
    2220              :         return -1;
    2221            4 :       x24 = XVECEXP (x5, 0, 18);
    2222            4 :       if (x24 != const_int_rtx[MAX_SAVED_CONST_INT + 18])
    2223              :         return -1;
    2224            4 :       x25 = XVECEXP (x5, 0, 19);
    2225            4 :       if (x25 != const_int_rtx[MAX_SAVED_CONST_INT + 19])
    2226              :         return -1;
    2227            4 :       x26 = XVECEXP (x5, 0, 20);
    2228            4 :       if (x26 != const_int_rtx[MAX_SAVED_CONST_INT + 20])
    2229              :         return -1;
    2230            4 :       x27 = XVECEXP (x5, 0, 21);
    2231            4 :       if (x27 != const_int_rtx[MAX_SAVED_CONST_INT + 21])
    2232              :         return -1;
    2233            4 :       x28 = XVECEXP (x5, 0, 22);
    2234            4 :       if (x28 != const_int_rtx[MAX_SAVED_CONST_INT + 22])
    2235              :         return -1;
    2236            4 :       x29 = XVECEXP (x5, 0, 23);
    2237            4 :       if (x29 != const_int_rtx[MAX_SAVED_CONST_INT + 23])
    2238              :         return -1;
    2239            4 :       x30 = XVECEXP (x5, 0, 24);
    2240            4 :       if (x30 != const_int_rtx[MAX_SAVED_CONST_INT + 24])
    2241              :         return -1;
    2242            4 :       x31 = XVECEXP (x5, 0, 25);
    2243            4 :       if (x31 != const_int_rtx[MAX_SAVED_CONST_INT + 25])
    2244              :         return -1;
    2245            4 :       x32 = XVECEXP (x5, 0, 26);
    2246            4 :       if (x32 != const_int_rtx[MAX_SAVED_CONST_INT + 26])
    2247              :         return -1;
    2248            4 :       x33 = XVECEXP (x5, 0, 27);
    2249            4 :       if (x33 != const_int_rtx[MAX_SAVED_CONST_INT + 27])
    2250              :         return -1;
    2251            4 :       x34 = XVECEXP (x5, 0, 28);
    2252            4 :       if (x34 != const_int_rtx[MAX_SAVED_CONST_INT + 28])
    2253              :         return -1;
    2254            4 :       x35 = XVECEXP (x5, 0, 29);
    2255            4 :       if (x35 != const_int_rtx[MAX_SAVED_CONST_INT + 29])
    2256              :         return -1;
    2257            4 :       x36 = XVECEXP (x5, 0, 30);
    2258            4 :       if (x36 != const_int_rtx[MAX_SAVED_CONST_INT + 30])
    2259              :         return -1;
    2260            4 :       x37 = XVECEXP (x5, 0, 31);
    2261            4 :       if (x37 != const_int_rtx[MAX_SAVED_CONST_INT + 31]
    2262            4 :           || pattern526 (x1, 
    2263              : E_V64QImode, 
    2264              : E_V32QImode) != 0)
    2265            2 :         return -1;
    2266              :       return 4;
    2267              : 
    2268           16 :     case 4:
    2269           16 :       x6 = XVECEXP (x5, 0, 0);
    2270           16 :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2271              :         return -1;
    2272           15 :       x7 = XVECEXP (x5, 0, 1);
    2273           15 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    2274              :         return -1;
    2275           15 :       x8 = XVECEXP (x5, 0, 2);
    2276           15 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    2277              :         return -1;
    2278           15 :       x9 = XVECEXP (x5, 0, 3);
    2279           15 :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 3]
    2280           15 :           || pattern526 (x1, 
    2281              : E_V8SImode, 
    2282              : E_V4SImode) != 0)
    2283           13 :         return -1;
    2284              :       return 5;
    2285              : 
    2286              :     default:
    2287              :       return -1;
    2288              :     }
    2289              : }
    2290              : 
    2291              : int
    2292           52 : pattern602 (rtx x1)
    2293              : {
    2294           52 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2295           52 :   rtx x2, x3, x4;
    2296           52 :   int res ATTRIBUTE_UNUSED;
    2297           52 :   x2 = XVECEXP (x1, 0, 1);
    2298           52 :   x3 = XEXP (x2, 0);
    2299           52 :   operands[2] = x3;
    2300           52 :   x4 = XVECEXP (x1, 0, 2);
    2301           52 :   operands[3] = x4;
    2302           52 :   switch (GET_MODE (operands[0]))
    2303              :     {
    2304           10 :     case E_V32HFmode:
    2305           10 :       return pattern601 (x1, 
    2306              : E_V32HFmode, 
    2307           10 : E_V16SFmode); /* [-1, 0] */
    2308              : 
    2309           10 :     case E_V16HFmode:
    2310           10 :       if (pattern601 (x1, 
    2311              : E_V16HFmode, 
    2312              : E_V8SFmode) != 0)
    2313              :         return -1;
    2314              :       return 1;
    2315              : 
    2316           32 :     case E_V8HFmode:
    2317           32 :       if (pattern601 (x1, 
    2318              : E_V8HFmode, 
    2319              : E_V4SFmode) != 0)
    2320              :         return -1;
    2321              :       return 2;
    2322              : 
    2323              :     default:
    2324              :       return -1;
    2325              :     }
    2326              : }
    2327              : 
    2328              : int
    2329         4147 : pattern610 (rtx x1)
    2330              : {
    2331         4147 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2332         4147 :   rtx x2, x3, x4, x5, x6, x7;
    2333         4147 :   int res ATTRIBUTE_UNUSED;
    2334         4147 :   x2 = XEXP (x1, 0);
    2335         4147 :   x3 = XEXP (x2, 1);
    2336         4147 :   if (GET_CODE (x3) != PARALLEL
    2337         4147 :       || XVECLEN (x3, 0) != 1)
    2338              :     return -1;
    2339         4147 :   x4 = XVECEXP (x3, 0, 0);
    2340         4147 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2341              :     return -1;
    2342         3512 :   x5 = XEXP (x1, 1);
    2343         3512 :   if (GET_CODE (x5) != VEC_SELECT)
    2344              :     return -1;
    2345         1811 :   x6 = XEXP (x5, 1);
    2346         1811 :   if (GET_CODE (x6) != PARALLEL
    2347         1811 :       || XVECLEN (x6, 0) != 1)
    2348              :     return -1;
    2349         1811 :   x7 = XVECEXP (x6, 0, 0);
    2350         1811 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2351           28 :     return -1;
    2352              :   return 0;
    2353              : }
    2354              : 
    2355              : int
    2356        43360 : pattern616 (rtx x1, machine_mode i1, machine_mode i2)
    2357              : {
    2358        43360 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2359        43360 :   rtx x2, x3, x4;
    2360        43360 :   int res ATTRIBUTE_UNUSED;
    2361        43360 :   x2 = XEXP (x1, 1);
    2362        43360 :   if (GET_MODE (x2) != i2
    2363         1518 :       || !nonimmediate_operand (operands[0], i2)
    2364        44878 :       || GET_MODE (x1) != i2)
    2365        41842 :     return -1;
    2366         1518 :   x3 = XEXP (x1, 0);
    2367         1518 :   if (GET_MODE (x3) != i2
    2368         1518 :       || !register_operand (operands[1], i2)
    2369         3036 :       || !const_int_operand (operands[2], E_QImode))
    2370           12 :     return -1;
    2371         1506 :   x4 = XEXP (x2, 0);
    2372         1506 :   operands[3] = x4;
    2373         1506 :   if (!nonimmediate_operand (operands[3], i1))
    2374              :     return -1;
    2375              :   return 0;
    2376              : }
    2377              : 
    2378              : int
    2379         3727 : pattern623 (rtx x1, machine_mode i1)
    2380              : {
    2381         3727 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2382         3727 :   rtx x2;
    2383         3727 :   int res ATTRIBUTE_UNUSED;
    2384         3727 :   if (!register_operand (operands[0], i1)
    2385         3727 :       || GET_MODE (x1) != i1)
    2386              :     return -1;
    2387         3552 :   x2 = XEXP (x1, 0);
    2388         3552 :   if (GET_MODE (x2) != i1
    2389         3552 :       || !register_operand (operands[1], i1)
    2390         7021 :       || !vector_operand (operands[2], i1))
    2391          162 :     return -1;
    2392              :   return 0;
    2393              : }
    2394              : 
    2395              : int
    2396           77 : pattern629 (rtx x1)
    2397              : {
    2398           77 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2399           77 :   rtx x2, x3, x4;
    2400           77 :   int res ATTRIBUTE_UNUSED;
    2401           77 :   if (GET_MODE (x1) != E_SImode)
    2402              :     return -1;
    2403           77 :   x2 = XEXP (x1, 0);
    2404           77 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 63])
    2405              :     return -1;
    2406           74 :   x3 = XEXP (x1, 1);
    2407           74 :   if (GET_CODE (x3) != SUBREG
    2408           74 :       || maybe_ne (SUBREG_BYTE (x3), 0)
    2409          148 :       || GET_MODE (x3) != E_SImode)
    2410              :     return -1;
    2411           74 :   x4 = XEXP (x3, 0);
    2412           74 :   if (GET_CODE (x4) != CLZ
    2413           74 :       || GET_MODE (x4) != E_DImode)
    2414            0 :     return -1;
    2415              :   return 0;
    2416              : }
    2417              : 
    2418              : int
    2419          662 : pattern637 (rtx x1)
    2420              : {
    2421          662 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2422          662 :   rtx x2, x3, x4;
    2423          662 :   int res ATTRIBUTE_UNUSED;
    2424          662 :   x2 = XVECEXP (x1, 0, 0);
    2425          662 :   x3 = XEXP (x2, 1);
    2426          662 :   operands[1] = x3;
    2427          662 :   x4 = XEXP (x2, 0);
    2428          662 :   if (!rtx_equal_p (x4, operands[0]))
    2429              :     return -1;
    2430          658 :   switch (GET_MODE (operands[0]))
    2431              :     {
    2432          301 :     case E_SImode:
    2433          301 :       return pattern636 (x1, 
    2434          301 : E_SImode); /* [-1, 0] */
    2435              : 
    2436          357 :     case E_DImode:
    2437          357 :       if (pattern636 (x1, 
    2438              : E_DImode) != 0)
    2439              :         return -1;
    2440              :       return 1;
    2441              : 
    2442              :     default:
    2443              :       return -1;
    2444              :     }
    2445              : }
    2446              : 
    2447              : int
    2448         3048 : pattern646 (rtx x1)
    2449              : {
    2450         3048 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2451         3048 :   rtx x2, x3, x4;
    2452         3048 :   int res ATTRIBUTE_UNUSED;
    2453         3048 :   x2 = XEXP (x1, 0);
    2454         3048 :   x3 = XVECEXP (x2, 0, 0);
    2455         3048 :   operands[1] = x3;
    2456         3048 :   x4 = XEXP (x1, 2);
    2457         3048 :   operands[3] = x4;
    2458         3048 :   switch (GET_MODE (operands[0]))
    2459              :     {
    2460         1032 :     case E_V16SImode:
    2461         1032 :       return pattern644 (x1, 
    2462              : E_V16SImode, 
    2463              : E_HImode, 
    2464         1032 : E_V16SFmode); /* [-1, 0] */
    2465              : 
    2466         1024 :     case E_V8SImode:
    2467         1024 :       if (pattern644 (x1, 
    2468              : E_V8SImode, 
    2469              : E_QImode, 
    2470              : E_V8SFmode) != 0)
    2471              :         return -1;
    2472              :       return 1;
    2473              : 
    2474          992 :     case E_V4SImode:
    2475          992 :       if (pattern644 (x1, 
    2476              : E_V4SImode, 
    2477              : E_QImode, 
    2478              : E_V4SFmode) != 0)
    2479              :         return -1;
    2480              :       return 2;
    2481              : 
    2482              :     default:
    2483              :       return -1;
    2484              :     }
    2485              : }
    2486              : 
    2487              : int
    2488          244 : pattern652 (rtx x1, machine_mode i1)
    2489              : {
    2490          244 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2491          244 :   int res ATTRIBUTE_UNUSED;
    2492          244 :   if (!register_operand (operands[0], i1)
    2493          244 :       || GET_MODE (x1) != i1)
    2494              :     return -1;
    2495          212 :   switch (GET_MODE (operands[1]))
    2496              :     {
    2497           77 :     case E_V8HFmode:
    2498           77 :       if (!vector_operand (operands[1], E_V8HFmode))
    2499              :         return -1;
    2500              :       return 0;
    2501              : 
    2502          101 :     case E_V8SFmode:
    2503          101 :       if (!nonimmediate_operand (operands[1], E_V8SFmode))
    2504              :         return -1;
    2505              :       return 1;
    2506              : 
    2507           34 :     case E_V8DFmode:
    2508           34 :       if (!vector_operand (operands[1], E_V8DFmode))
    2509              :         return -1;
    2510              :       return 2;
    2511              : 
    2512              :     default:
    2513              :       return -1;
    2514              :     }
    2515              : }
    2516              : 
    2517              : int
    2518         4028 : pattern657 (rtx x1, machine_mode i1, machine_mode i2)
    2519              : {
    2520         4028 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2521         4028 :   rtx x2, x3;
    2522         4028 :   int res ATTRIBUTE_UNUSED;
    2523         4028 :   if (!register_operand (operands[0], i1)
    2524         4028 :       || GET_MODE (x1) != i1)
    2525              :     return -1;
    2526         3938 :   x2 = XVECEXP (x1, 0, 0);
    2527         3938 :   if (GET_MODE (x2) != i1)
    2528              :     return -1;
    2529         3938 :   x3 = XEXP (x2, 0);
    2530         3938 :   if (GET_MODE (x3) != i1
    2531         3938 :       || !register_operand (operands[1], i1)
    2532         3898 :       || !register_operand (operands[2], i1)
    2533         3866 :       || !nonimm_or_0_operand (operands[3], i1)
    2534         7802 :       || !register_operand (operands[4], i2))
    2535           74 :     return -1;
    2536              :   return 0;
    2537              : }
    2538              : 
    2539              : int
    2540         1732 : pattern665 (rtx x1, machine_mode i1)
    2541              : {
    2542         1732 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2543         1732 :   rtx x2;
    2544         1732 :   int res ATTRIBUTE_UNUSED;
    2545         1732 :   if (!register_operand (operands[0], i1)
    2546         1575 :       || GET_MODE (x1) != i1
    2547         1575 :       || !nonimmediate_operand (operands[1], i1)
    2548         3112 :       || !nonimmediate_operand (operands[2], i1))
    2549          475 :     return -1;
    2550         1257 :   x2 = XVECEXP (x1, 0, 2);
    2551         1257 :   if (GET_MODE (x2) != i1
    2552         1257 :       || !nonimmediate_operand (operands[3], i1)
    2553         2514 :       || !nonimmediate_operand (operands[4], i1))
    2554            0 :     return -1;
    2555              :   return 0;
    2556              : }
    2557              : 
    2558              : int
    2559            6 : pattern669 (rtx x1, machine_mode i1)
    2560              : {
    2561            6 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2562            6 :   rtx x2, x3;
    2563            6 :   int res ATTRIBUTE_UNUSED;
    2564            6 :   if (!register_operand (operands[0], i1)
    2565            6 :       || GET_MODE (x1) != i1
    2566            6 :       || !vector_operand (operands[2], i1)
    2567           12 :       || !register_operand (operands[1], i1))
    2568            0 :     return -1;
    2569            6 :   x2 = XVECEXP (x1, 0, 2);
    2570            6 :   if (GET_MODE (x2) != i1)
    2571              :     return -1;
    2572            6 :   x3 = XEXP (x2, 0);
    2573            6 :   if (GET_MODE (x3) != i1
    2574            6 :       || !const0_operand (operands[4], i1))
    2575            0 :     return -1;
    2576              :   return 0;
    2577              : }
    2578              : 
    2579              : int
    2580            0 : pattern674 (rtx x1, machine_mode i1)
    2581              : {
    2582            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2583            0 :   rtx x2, x3;
    2584            0 :   int res ATTRIBUTE_UNUSED;
    2585            0 :   if (!register_operand (operands[0], i1)
    2586            0 :       || GET_MODE (x1) != i1
    2587            0 :       || !register_operand (operands[2], i1)
    2588            0 :       || !vector_operand (operands[1], i1))
    2589            0 :     return -1;
    2590            0 :   x2 = XVECEXP (x1, 0, 2);
    2591            0 :   if (GET_MODE (x2) != i1)
    2592              :     return -1;
    2593            0 :   x3 = XEXP (x2, 0);
    2594            0 :   if (GET_MODE (x3) != i1
    2595            0 :       || !vector_all_ones_operand (operands[4], i1))
    2596            0 :     return -1;
    2597              :   return 0;
    2598              : }
    2599              : 
    2600              : int
    2601         1579 : pattern678 (rtx x1, int i1, machine_mode i2)
    2602              : {
    2603         1579 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2604         1579 :   rtx x2;
    2605         1579 :   int res ATTRIBUTE_UNUSED;
    2606         1579 :   if (GET_CODE (x1) != VEC_SELECT
    2607         1225 :       || GET_MODE (x1) != i2)
    2608              :     return -1;
    2609         1225 :   x2 = XEXP (x1, 1);
    2610         1225 :   if (GET_CODE (x2) != PARALLEL
    2611         1225 :       || XVECLEN (x2, 0) != i1)
    2612            0 :     return -1;
    2613              :   return 0;
    2614              : }
    2615              : 
    2616              : int
    2617        19826 : pattern683 (rtx x1)
    2618              : {
    2619        19826 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2620        19826 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2621        19826 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    2622        19826 :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
    2623        19826 :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
    2624        19826 :   int res ATTRIBUTE_UNUSED;
    2625        19826 :   x2 = XVECEXP (x1, 0, 0);
    2626        19826 :   if (GET_CODE (x2) != CONST_INT)
    2627              :     return -1;
    2628        19826 :   x3 = XVECEXP (x1, 0, 1);
    2629        19826 :   if (GET_CODE (x3) != CONST_INT)
    2630              :     return -1;
    2631        19826 :   x4 = XVECEXP (x1, 0, 2);
    2632        19826 :   if (GET_CODE (x4) != CONST_INT)
    2633              :     return -1;
    2634        19826 :   x5 = XVECEXP (x1, 0, 3);
    2635        19826 :   if (GET_CODE (x5) != CONST_INT)
    2636              :     return -1;
    2637        19826 :   x6 = XVECEXP (x1, 0, 4);
    2638        19826 :   if (GET_CODE (x6) != CONST_INT)
    2639              :     return -1;
    2640        19826 :   x7 = XVECEXP (x1, 0, 5);
    2641        19826 :   if (GET_CODE (x7) != CONST_INT)
    2642              :     return -1;
    2643        19826 :   x8 = XVECEXP (x1, 0, 6);
    2644        19826 :   if (GET_CODE (x8) != CONST_INT)
    2645              :     return -1;
    2646        19826 :   x9 = XVECEXP (x1, 0, 7);
    2647        19826 :   if (GET_CODE (x9) != CONST_INT)
    2648              :     return -1;
    2649        19826 :   x10 = XVECEXP (x1, 0, 8);
    2650        19826 :   if (GET_CODE (x10) != CONST_INT)
    2651              :     return -1;
    2652        19826 :   x11 = XVECEXP (x1, 0, 9);
    2653        19826 :   if (GET_CODE (x11) != CONST_INT)
    2654              :     return -1;
    2655        19826 :   x12 = XVECEXP (x1, 0, 10);
    2656        19826 :   if (GET_CODE (x12) != CONST_INT)
    2657              :     return -1;
    2658        19826 :   x13 = XVECEXP (x1, 0, 11);
    2659        19826 :   if (GET_CODE (x13) != CONST_INT)
    2660              :     return -1;
    2661        19826 :   x14 = XVECEXP (x1, 0, 12);
    2662        19826 :   if (GET_CODE (x14) != CONST_INT)
    2663              :     return -1;
    2664        19826 :   x15 = XVECEXP (x1, 0, 13);
    2665        19826 :   if (GET_CODE (x15) != CONST_INT)
    2666              :     return -1;
    2667        19826 :   x16 = XVECEXP (x1, 0, 14);
    2668        19826 :   if (GET_CODE (x16) != CONST_INT)
    2669              :     return -1;
    2670        19826 :   x17 = XVECEXP (x1, 0, 15);
    2671        19826 :   if (GET_CODE (x17) != CONST_INT)
    2672              :     return -1;
    2673        19826 :   x18 = XVECEXP (x1, 0, 16);
    2674        19826 :   if (GET_CODE (x18) != CONST_INT)
    2675              :     return -1;
    2676        19826 :   x19 = XVECEXP (x1, 0, 17);
    2677        19826 :   if (GET_CODE (x19) != CONST_INT)
    2678              :     return -1;
    2679        19826 :   x20 = XVECEXP (x1, 0, 18);
    2680        19826 :   if (GET_CODE (x20) != CONST_INT)
    2681              :     return -1;
    2682        19826 :   x21 = XVECEXP (x1, 0, 19);
    2683        19826 :   if (GET_CODE (x21) != CONST_INT)
    2684              :     return -1;
    2685        19826 :   x22 = XVECEXP (x1, 0, 20);
    2686        19826 :   if (GET_CODE (x22) != CONST_INT)
    2687              :     return -1;
    2688        19826 :   x23 = XVECEXP (x1, 0, 21);
    2689        19826 :   if (GET_CODE (x23) != CONST_INT)
    2690              :     return -1;
    2691        19826 :   x24 = XVECEXP (x1, 0, 22);
    2692        19826 :   if (GET_CODE (x24) != CONST_INT)
    2693              :     return -1;
    2694        19826 :   x25 = XVECEXP (x1, 0, 23);
    2695        19826 :   if (GET_CODE (x25) != CONST_INT)
    2696              :     return -1;
    2697        19826 :   x26 = XVECEXP (x1, 0, 24);
    2698        19826 :   if (GET_CODE (x26) != CONST_INT)
    2699              :     return -1;
    2700        19826 :   x27 = XVECEXP (x1, 0, 25);
    2701        19826 :   if (GET_CODE (x27) != CONST_INT)
    2702              :     return -1;
    2703        19826 :   x28 = XVECEXP (x1, 0, 26);
    2704        19826 :   if (GET_CODE (x28) != CONST_INT)
    2705              :     return -1;
    2706        19826 :   x29 = XVECEXP (x1, 0, 27);
    2707        19826 :   if (GET_CODE (x29) != CONST_INT)
    2708              :     return -1;
    2709        19826 :   x30 = XVECEXP (x1, 0, 28);
    2710        19826 :   if (GET_CODE (x30) != CONST_INT)
    2711              :     return -1;
    2712        19826 :   x31 = XVECEXP (x1, 0, 29);
    2713        19826 :   if (GET_CODE (x31) != CONST_INT)
    2714              :     return -1;
    2715        19826 :   x32 = XVECEXP (x1, 0, 30);
    2716        19826 :   if (GET_CODE (x32) != CONST_INT)
    2717              :     return -1;
    2718        19826 :   x33 = XVECEXP (x1, 0, 31);
    2719        19826 :   if (GET_CODE (x33) != CONST_INT)
    2720            0 :     return -1;
    2721              :   return 0;
    2722              : }
    2723              : 
    2724              : int
    2725            0 : pattern719 (rtx x1)
    2726              : {
    2727            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2728            0 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2729            0 :   int res ATTRIBUTE_UNUSED;
    2730            0 :   x2 = XVECEXP (x1, 0, 2);
    2731            0 :   x3 = XEXP (x2, 0);
    2732            0 :   if (GET_CODE (x3) != REG
    2733            0 :       || REGNO (x3) != 17
    2734            0 :       || GET_MODE (x3) != E_CCmode)
    2735              :     return -1;
    2736            0 :   x4 = XVECEXP (x1, 0, 0);
    2737            0 :   x5 = XEXP (x4, 0);
    2738            0 :   operands[0] = x5;
    2739            0 :   if (!register_operand (operands[0], E_SImode))
    2740              :     return -1;
    2741            0 :   x6 = XEXP (x4, 1);
    2742            0 :   x7 = XEXP (x6, 0);
    2743            0 :   operands[1] = x7;
    2744            0 :   if (!nonimmediate_operand (operands[1], E_SImode))
    2745              :     return -1;
    2746            0 :   x8 = XVECEXP (x1, 0, 1);
    2747            0 :   x9 = XEXP (x8, 0);
    2748            0 :   operands[2] = x9;
    2749            0 :   if (!scratch_operand (operands[2], E_SImode))
    2750              :     return -1;
    2751              :   return 0;
    2752              : }
    2753              : 
    2754              : int
    2755            0 : pattern724 (rtx x1)
    2756              : {
    2757            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2758            0 :   rtx x2, x3;
    2759            0 :   int res ATTRIBUTE_UNUSED;
    2760            0 :   if (GET_MODE (x1) != E_QImode)
    2761              :     return -1;
    2762            0 :   x2 = XEXP (x1, 0);
    2763            0 :   if (GET_CODE (x2) != REG
    2764            0 :       || REGNO (x2) != 17)
    2765              :     return -1;
    2766            0 :   x3 = XEXP (x1, 1);
    2767            0 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2768            0 :     return -1;
    2769              :   return 0;
    2770              : }
    2771              : 
    2772              : int
    2773           12 : pattern731 (rtx x1)
    2774              : {
    2775           12 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2776           12 :   rtx x2, x3;
    2777           12 :   int res ATTRIBUTE_UNUSED;
    2778           12 :   x2 = XEXP (x1, 0);
    2779           12 :   x3 = XEXP (x2, 0);
    2780           12 :   operands[1] = x3;
    2781           12 :   switch (GET_MODE (operands[0]))
    2782              :     {
    2783            0 :     case E_HImode:
    2784            0 :       if (!memory_operand (operands[0], E_HImode)
    2785            0 :           || GET_MODE (x1) != E_HImode
    2786            0 :           || GET_MODE (x2) != E_V2QImode
    2787            0 :           || !register_operand (operands[1], E_V2DImode))
    2788            0 :         return -1;
    2789              :       return 0;
    2790              : 
    2791            0 :     case E_SImode:
    2792            0 :       res = pattern296 (x1);
    2793            0 :       if (res >= 0)
    2794            0 :         return res + 1; /* [1, 3] */
    2795              :       return -1;
    2796              : 
    2797            3 :     case E_DImode:
    2798            3 :       res = pattern297 (x1);
    2799            3 :       if (res >= 0)
    2800            3 :         return res + 4; /* [4, 9] */
    2801              :       return -1;
    2802              : 
    2803              :     default:
    2804              :       return -1;
    2805              :     }
    2806              : }
    2807              : 
    2808              : int
    2809       102986 : pattern739 (rtx x1, machine_mode i1, machine_mode i2)
    2810              : {
    2811       102986 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2812       102986 :   int res ATTRIBUTE_UNUSED;
    2813       102986 :   if (!register_operand (operands[0], i2)
    2814        99808 :       || GET_MODE (x1) != i2
    2815        99808 :       || !register_operand (operands[1], i1)
    2816       174323 :       || !vector_operand (operands[2], i1))
    2817        52876 :     return -1;
    2818              :   return 0;
    2819              : }
    2820              : 
    2821              : int
    2822           40 : pattern744 (rtx x1, int *pnum_clobbers)
    2823              : {
    2824           40 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2825           40 :   rtx x2, x3, x4, x5, x6;
    2826           40 :   int res ATTRIBUTE_UNUSED;
    2827           40 :   if (pnum_clobbers == NULL)
    2828              :     return -1;
    2829           40 :   x2 = XEXP (x1, 1);
    2830           40 :   operands[3] = x2;
    2831           40 :   x3 = XEXP (x2, 0);
    2832           40 :   x4 = XEXP (x3, 0);
    2833           40 :   operands[1] = x4;
    2834           40 :   if (!int248_register_operand (operands[1], E_VOIDmode))
    2835              :     return -1;
    2836           40 :   x5 = XEXP (x3, 1);
    2837           40 :   operands[2] = x5;
    2838           40 :   if (!int248_register_operand (operands[2], E_VOIDmode))
    2839              :     return -1;
    2840           36 :   x6 = XEXP (x1, 0);
    2841           36 :   switch (GET_MODE (x6))
    2842              :     {
    2843            6 :     case E_HImode:
    2844            6 :       if (!extract_high_operator (operands[3], E_HImode))
    2845              :         return -1;
    2846              :       return 0;
    2847              : 
    2848           18 :     case E_SImode:
    2849           18 :       if (!extract_high_operator (operands[3], E_SImode))
    2850              :         return -1;
    2851              :       return 1;
    2852              : 
    2853           12 :     case E_DImode:
    2854           12 :       if (!extract_high_operator (operands[3], E_DImode))
    2855              :         return -1;
    2856              :       return 2;
    2857              : 
    2858              :     default:
    2859              :       return -1;
    2860              :     }
    2861              : }
    2862              : 
    2863              : int
    2864          480 : pattern757 (rtx x1)
    2865              : {
    2866          480 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2867          480 :   rtx x2, x3, x4, x5;
    2868          480 :   int res ATTRIBUTE_UNUSED;
    2869          480 :   x2 = XEXP (x1, 0);
    2870          480 :   x3 = XEXP (x2, 1);
    2871          480 :   x4 = XEXP (x3, 1);
    2872          480 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2873              :     return -1;
    2874          477 :   x5 = XEXP (x3, 0);
    2875          477 :   operands[3] = x5;
    2876          477 :   if (!int_nonimmediate_operand (operands[3], E_VOIDmode))
    2877              :     return -1;
    2878          474 :   switch (GET_MODE (operands[0]))
    2879              :     {
    2880          159 :     case E_SImode:
    2881          159 :       return pattern756 (x1, 
    2882          159 : E_SImode); /* [-1, 0] */
    2883              : 
    2884          315 :     case E_DImode:
    2885          315 :       if (pattern756 (x1, 
    2886              : E_DImode) != 0)
    2887              :         return -1;
    2888              :       return 1;
    2889              : 
    2890              :     default:
    2891              :       return -1;
    2892              :     }
    2893              : }
    2894              : 
    2895              : int
    2896         5167 : pattern767 (rtx x1, rtx_code i1)
    2897              : {
    2898         5167 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2899         5167 :   rtx x2, x3, x4, x5, x6, x7, x8;
    2900         5167 :   int res ATTRIBUTE_UNUSED;
    2901         5167 :   x2 = XEXP (x1, 0);
    2902         5167 :   x3 = XEXP (x2, 0);
    2903         5167 :   x4 = XEXP (x3, 1);
    2904         5167 :   if (GET_CODE (x4) != i1)
    2905              :     return -1;
    2906         4775 :   x5 = XEXP (x3, 0);
    2907         4775 :   x6 = XEXP (x5, 0);
    2908         4775 :   operands[1] = x6;
    2909         4775 :   x7 = XEXP (x4, 0);
    2910         4775 :   operands[2] = x7;
    2911         4775 :   x8 = XEXP (x2, 1);
    2912         4775 :   switch (XWINT (x8, 0))
    2913              :     {
    2914            0 :     case 64L:
    2915            0 :       return pattern766 (x1, 
    2916              : E_DImode, 
    2917            0 : E_TImode); /* [-1, 0] */
    2918              : 
    2919            0 :     case 32L:
    2920            0 :       if (pattern766 (x1, 
    2921              : E_SImode, 
    2922              : E_DImode) != 0)
    2923              :         return -1;
    2924              :       return 1;
    2925              : 
    2926              :     default:
    2927              :       return -1;
    2928              :     }
    2929              : }
    2930              : 
    2931              : int
    2932        83816 : pattern778 (rtx x1, machine_mode i1, machine_mode i2)
    2933              : {
    2934        83816 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2935        83816 :   rtx x2, x3;
    2936        83816 :   int res ATTRIBUTE_UNUSED;
    2937        83816 :   if (!register_operand (operands[0], i2)
    2938        83816 :       || GET_MODE (x1) != i2)
    2939              :     return -1;
    2940        83796 :   x2 = XEXP (x1, 0);
    2941        83796 :   if (GET_MODE (x2) != i2)
    2942              :     return -1;
    2943        83796 :   x3 = XEXP (x2, 0);
    2944        83796 :   if (GET_MODE (x3) != i1)
    2945            0 :     return -1;
    2946              :   return 0;
    2947              : }
    2948              : 
    2949              : int
    2950         3958 : pattern782 (rtx x1)
    2951              : {
    2952         3958 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2953         3958 :   rtx x2, x3;
    2954         3958 :   int res ATTRIBUTE_UNUSED;
    2955         3958 :   x2 = XVECEXP (x1, 0, 0);
    2956         3958 :   x3 = XEXP (x2, 1);
    2957         3958 :   if (!rtx_equal_p (x3, operands[1]))
    2958              :     return -1;
    2959         3922 :   switch (GET_MODE (operands[0]))
    2960              :     {
    2961         1054 :     case E_V8HFmode:
    2962         1054 :       return pattern781 (x1, 
    2963         1054 : E_V8HFmode); /* [-1, 0] */
    2964              : 
    2965         1434 :     case E_V4SFmode:
    2966         1434 :       if (pattern781 (x1, 
    2967              : E_V4SFmode) != 0)
    2968              :         return -1;
    2969              :       return 1;
    2970              : 
    2971         1434 :     case E_V2DFmode:
    2972         1434 :       if (pattern781 (x1, 
    2973              : E_V2DFmode) != 0)
    2974              :         return -1;
    2975              :       return 2;
    2976              : 
    2977              :     default:
    2978              :       return -1;
    2979              :     }
    2980              : }
    2981              : 
    2982              : int
    2983          624 : pattern790 (rtx x1, machine_mode i1, machine_mode i2)
    2984              : {
    2985          624 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2986          624 :   int res ATTRIBUTE_UNUSED;
    2987          624 :   if (!register_operand (operands[0], i1)
    2988          622 :       || GET_MODE (x1) != i1
    2989          622 :       || !register_operand (operands[2], i2)
    2990         1149 :       || !memory_operand (operands[1], i1))
    2991          107 :     return -1;
    2992              :   return 0;
    2993              : }
    2994              : 
    2995              : int
    2996      1271066 : pattern799 (rtx x1, machine_mode i1, machine_mode i2)
    2997              : {
    2998      1271066 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2999      1271066 :   rtx x2;
    3000      1271066 :   int res ATTRIBUTE_UNUSED;
    3001      1271066 :   if (!register_operand (operands[0], i2)
    3002      1040488 :       || GET_MODE (x1) != i2
    3003      2311554 :       || !register_operand (operands[1], i1))
    3004       255593 :     return -1;
    3005      1015473 :   x2 = XEXP (x1, 1);
    3006      1015473 :   operands[2] = x2;
    3007      1015473 :   if (!nonimmediate_operand (operands[2], i1))
    3008              :     return -1;
    3009              :   return 0;
    3010              : }
    3011              : 
    3012              : int
    3013       108417 : pattern805 (machine_mode i1)
    3014              : {
    3015       108417 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3016       108417 :   int res ATTRIBUTE_UNUSED;
    3017       108417 :   if (!register_operand (operands[0], i1)
    3018       105559 :       || !ix86_comparison_uns_operator (operands[1], i1)
    3019       105479 :       || !register_operand (operands[2], i1)
    3020       170938 :       || !nonimmediate_operand (operands[3], i1))
    3021       107263 :     return -1;
    3022              :   return 0;
    3023              : }
    3024              : 
    3025              : int
    3026      1245347 : pattern814 (rtx x1)
    3027              : {
    3028      1245347 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3029      1245347 :   rtx x2, x3, x4, x5, x6;
    3030      1245347 :   int res ATTRIBUTE_UNUSED;
    3031      1245347 :   if (!movq_parallel (operands[3], E_VOIDmode))
    3032              :     return -1;
    3033        96341 :   x2 = XEXP (x1, 0);
    3034        96341 :   x3 = XEXP (x2, 0);
    3035        96341 :   operands[1] = x3;
    3036        96341 :   x4 = XEXP (x2, 1);
    3037        96341 :   operands[2] = x4;
    3038        96341 :   x5 = XEXP (x1, 1);
    3039        96341 :   x6 = XVECEXP (x5, 0, 0);
    3040        96341 :   operands[4] = x6;
    3041        96341 :   if (!const_int_operand (operands[4], E_VOIDmode))
    3042              :     return -1;
    3043        96341 :   switch (GET_MODE (operands[0]))
    3044              :     {
    3045           24 :     case E_V64QImode:
    3046           24 :       return pattern808 (x1, 
    3047              : E_V64QImode, 
    3048           24 : E_V128QImode); /* [-1, 0] */
    3049              : 
    3050           28 :     case E_V32QImode:
    3051           28 :       if (pattern808 (x1, 
    3052              : E_V32QImode, 
    3053              : E_V64QImode) != 0)
    3054              :         return -1;
    3055              :       return 1;
    3056              : 
    3057           96 :     case E_V16QImode:
    3058           96 :       if (pattern808 (x1, 
    3059              : E_V16QImode, 
    3060              : E_V32QImode) != 0)
    3061              :         return -1;
    3062              :       return 2;
    3063              : 
    3064           46 :     case E_V32HImode:
    3065           46 :       if (pattern808 (x1, 
    3066              : E_V32HImode, 
    3067              : E_V64HImode) != 0)
    3068              :         return -1;
    3069              :       return 3;
    3070              : 
    3071           50 :     case E_V16HImode:
    3072           50 :       if (pattern808 (x1, 
    3073              : E_V16HImode, 
    3074              : E_V32HImode) != 0)
    3075              :         return -1;
    3076              :       return 4;
    3077              : 
    3078          131 :     case E_V8HImode:
    3079          131 :       if (pattern808 (x1, 
    3080              : E_V8HImode, 
    3081              : E_V16HImode) != 0)
    3082              :         return -1;
    3083              :       return 5;
    3084              : 
    3085              :     default:
    3086              :       return -1;
    3087              :     }
    3088              : }
    3089              : 
    3090              : int
    3091        11936 : pattern825 (rtx x1)
    3092              : {
    3093        11936 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3094        11936 :   rtx x2;
    3095        11936 :   int res ATTRIBUTE_UNUSED;
    3096        11936 :   if (GET_MODE (x1) != E_SImode)
    3097              :     return -1;
    3098        11936 :   x2 = XVECEXP (x1, 0, 3);
    3099        11936 :   if (GET_CODE (x2) != REG
    3100        11936 :       || REGNO (x2) != 7
    3101        23872 :       || GET_MODE (x2) != E_SImode)
    3102            0 :     return -1;
    3103              :   return 0;
    3104              : }
    3105              : 
    3106              : int
    3107        60523 : pattern831 (rtx x1)
    3108              : {
    3109        60523 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3110        60523 :   rtx x2, x3;
    3111        60523 :   int res ATTRIBUTE_UNUSED;
    3112        60523 :   switch (GET_CODE (x1))
    3113              :     {
    3114        56488 :     case CLOBBER:
    3115        56488 :       x2 = XEXP (x1, 0);
    3116        56488 :       if (GET_CODE (x2) != REG
    3117        56488 :           || REGNO (x2) != 17
    3118       112976 :           || GET_MODE (x2) != E_CCmode)
    3119            0 :         return -1;
    3120              :       return 0;
    3121              : 
    3122          705 :     case UNSPEC:
    3123          705 :       if (XVECLEN (x1, 0) != 1
    3124          705 :           || XINT (x1, 1) != 175)
    3125              :         return -1;
    3126          705 :       x3 = XVECEXP (x1, 0, 0);
    3127          705 :       if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3128              :         return -1;
    3129          705 :       switch (GET_MODE (operands[0]))
    3130              :         {
    3131              :         case E_QImode:
    3132              :           return 1;
    3133              : 
    3134              :         case E_HImode:
    3135              :           return 2;
    3136              : 
    3137              :         case E_SImode:
    3138              :           return 3;
    3139              : 
    3140              :         case E_DImode:
    3141              :           return 4;
    3142              : 
    3143              :         default:
    3144              :           return -1;
    3145              :         }
    3146              : 
    3147              :     default:
    3148              :       return -1;
    3149              :     }
    3150              : }
    3151              : 
    3152              : int
    3153         6735 : pattern839 (rtx x1, machine_mode i1)
    3154              : {
    3155         6735 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3156         6735 :   int res ATTRIBUTE_UNUSED;
    3157         6735 :   if (!register_operand (operands[0], i1)
    3158         4149 :       || GET_MODE (x1) != i1
    3159         4149 :       || !register_operand (operands[1], i1)
    3160         6758 :       || !nonmemory_operand (operands[2], i1))
    3161         6735 :     return -1;
    3162              :   return 0;
    3163              : }
    3164              : 
    3165              : int
    3166         7403 : pattern843 (rtx x1)
    3167              : {
    3168         7403 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3169         7403 :   rtx x2, x3, x4, x5;
    3170         7403 :   int res ATTRIBUTE_UNUSED;
    3171         7403 :   if (!register_operand (operands[0], E_TFmode))
    3172              :     return -1;
    3173         4228 :   x2 = XVECEXP (x1, 0, 0);
    3174         4228 :   x3 = XEXP (x2, 1);
    3175         4228 :   if (GET_MODE (x3) != E_TFmode
    3176         4228 :       || !vector_operand (operands[1], E_TFmode))
    3177            0 :     return -1;
    3178         4228 :   x4 = XVECEXP (x1, 0, 1);
    3179         4228 :   x5 = XEXP (x4, 0);
    3180         4228 :   operands[2] = x5;
    3181         4228 :   if (!vector_operand (operands[2], E_TFmode))
    3182              :     return -1;
    3183              :   return 0;
    3184              : }
    3185              : 
    3186              : int
    3187       871793 : pattern849 (rtx x1, machine_mode i1)
    3188              : {
    3189       871793 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3190       871793 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3191       871793 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    3192       871793 :   rtx x18;
    3193       871793 :   int res ATTRIBUTE_UNUSED;
    3194       871793 :   if (peep2_current_count < 4
    3195       871793 :       || peep2_current_count < 5
    3196       490109 :       || !memory_operand (operands[1], i1)
    3197      1003395 :       || !register_operand (operands[0], i1))
    3198       740380 :     return -1;
    3199       131413 :   x2 = XEXP (x1, 0);
    3200       131413 :   operands[3] = x2;
    3201       131413 :   if (!register_operand (operands[3], i1))
    3202              :     return -1;
    3203        21492 :   x3 = XEXP (x1, 1);
    3204        21492 :   if (!rtx_equal_p (x3, operands[0]))
    3205              :     return -1;
    3206         4806 :   x4 = PATTERN (peep2_next_insn (2));
    3207         4806 :   if (GET_CODE (x4) != PARALLEL
    3208         2778 :       || XVECLEN (x4, 0) != 2)
    3209              :     return -1;
    3210         2774 :   x5 = XVECEXP (x4, 0, 0);
    3211         2774 :   if (GET_CODE (x5) != SET)
    3212              :     return -1;
    3213         2774 :   x6 = XEXP (x5, 1);
    3214         2774 :   if (GET_CODE (x6) != XOR)
    3215              :     return -1;
    3216          123 :   x7 = XVECEXP (x4, 0, 1);
    3217          123 :   if (GET_CODE (x7) != CLOBBER)
    3218              :     return -1;
    3219          123 :   x8 = XEXP (x7, 0);
    3220          123 :   if (GET_CODE (x8) != REG
    3221          123 :       || REGNO (x8) != 17
    3222          246 :       || GET_MODE (x8) != E_CCmode)
    3223              :     return -1;
    3224          123 :   x9 = XEXP (x5, 0);
    3225          123 :   operands[4] = x9;
    3226          123 :   x10 = XEXP (x6, 1);
    3227          123 :   operands[2] = x10;
    3228          123 :   x11 = XEXP (x6, 0);
    3229          123 :   if (!rtx_equal_p (x11, operands[4]))
    3230              :     return -1;
    3231          121 :   x12 = PATTERN (peep2_next_insn (3));
    3232          121 :   if (GET_CODE (x12) != SET)
    3233              :     return -1;
    3234          114 :   x13 = XEXP (x12, 0);
    3235          114 :   if (!rtx_equal_p (x13, operands[1]))
    3236              :     return -1;
    3237           23 :   x14 = PATTERN (peep2_next_insn (4));
    3238           23 :   if (GET_CODE (x14) != SET)
    3239              :     return -1;
    3240           21 :   x15 = XEXP (x14, 1);
    3241           21 :   if (GET_CODE (x15) != COMPARE
    3242           17 :       || GET_MODE (x15) != E_CCZmode)
    3243              :     return -1;
    3244           17 :   x16 = XEXP (x14, 0);
    3245           17 :   if (GET_CODE (x16) != REG
    3246           17 :       || REGNO (x16) != 17
    3247           34 :       || GET_MODE (x16) != E_CCZmode)
    3248              :     return -1;
    3249           17 :   x17 = XEXP (x15, 0);
    3250           17 :   if (!register_operand (x17, i1))
    3251              :     return -1;
    3252           17 :   x18 = XEXP (x15, 1);
    3253           17 :   if (!nonmemory_operand (x18, i1))
    3254              :     return -1;
    3255              :   return 0;
    3256              : }
    3257              : 
    3258              : int
    3259        40876 : pattern867 (rtx x1, machine_mode i1)
    3260              : {
    3261        40876 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3262        40876 :   int res ATTRIBUTE_UNUSED;
    3263        40876 :   if (!register_operand (operands[0], i1)
    3264        31302 :       || !binary_fp_operator (operands[3], i1)
    3265        31302 :       || !register_operand (operands[1], i1)
    3266        71949 :       || GET_MODE (x1) != i1)
    3267         9803 :     return -1;
    3268        31073 :   switch (GET_MODE (operands[2]))
    3269              :     {
    3270           16 :     case E_HImode:
    3271           16 :       if (!nonimmediate_operand (operands[2], E_HImode))
    3272              :         return -1;
    3273              :       return 0;
    3274              : 
    3275        30072 :     case E_SImode:
    3276        30072 :       if (!nonimmediate_operand (operands[2], E_SImode))
    3277              :         return -1;
    3278              :       return 1;
    3279              : 
    3280              :     default:
    3281              :       return -1;
    3282              :     }
    3283              : }
    3284              : 
    3285              : int
    3286          847 : pattern878 (rtx x1, machine_mode i1)
    3287              : {
    3288          847 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3289          847 :   rtx x2, x3;
    3290          847 :   int res ATTRIBUTE_UNUSED;
    3291          847 :   if (!register_operand (operands[0], i1)
    3292          847 :       || GET_MODE (x1) != i1)
    3293              :     return -1;
    3294          819 :   x2 = XEXP (x1, 0);
    3295          819 :   if (GET_MODE (x2) != i1
    3296          819 :       || !bcst_vector_operand (operands[1], i1)
    3297         1625 :       || !bcst_vector_operand (operands[2], i1))
    3298           19 :     return -1;
    3299          800 :   x3 = XEXP (x1, 2);
    3300          800 :   if (GET_MODE (x3) != i1
    3301          800 :       || !bcst_vector_operand (operands[3], i1))
    3302           51 :     return -1;
    3303              :   return 0;
    3304              : }
    3305              : 
    3306              : int
    3307         1580 : pattern886 (rtx x1, machine_mode i1)
    3308              : {
    3309         1580 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3310         1580 :   rtx x2;
    3311         1580 :   int res ATTRIBUTE_UNUSED;
    3312         1580 :   if (!register_operand (operands[0], i1)
    3313         1580 :       || GET_MODE (x1) != i1)
    3314              :     return -1;
    3315         1516 :   x2 = XVECEXP (x1, 0, 0);
    3316         1516 :   if (GET_MODE (x2) != i1)
    3317              :     return -1;
    3318         1516 :   switch (GET_MODE (operands[1]))
    3319              :     {
    3320          488 :     case E_V8HFmode:
    3321          488 :       if (!register_operand (operands[1], E_V8HFmode))
    3322              :         return -1;
    3323              :       return 0;
    3324              : 
    3325          514 :     case E_V4SFmode:
    3326          514 :       if (!register_operand (operands[1], E_V4SFmode))
    3327              :         return -1;
    3328              :       return 1;
    3329              : 
    3330          514 :     case E_V2DFmode:
    3331          514 :       if (!register_operand (operands[1], E_V2DFmode))
    3332              :         return -1;
    3333              :       return 2;
    3334              : 
    3335              :     default:
    3336              :       return -1;
    3337              :     }
    3338              : }
    3339              : 
    3340              : int
    3341          264 : pattern899 (rtx x1, machine_mode i1)
    3342              : {
    3343          264 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3344          264 :   rtx x2;
    3345          264 :   int res ATTRIBUTE_UNUSED;
    3346          264 :   if (!register_operand (operands[0], i1)
    3347          264 :       || GET_MODE (x1) != i1)
    3348              :     return -1;
    3349          258 :   x2 = XEXP (x1, 0);
    3350          258 :   if (GET_MODE (x2) != i1
    3351          258 :       || !nonimmediate_operand (operands[1], i1)
    3352          490 :       || !register_operand (operands[2], i1))
    3353           46 :     return -1;
    3354              :   return 0;
    3355              : }
    3356              : 
    3357              : int
    3358         1358 : pattern905 (rtx x1)
    3359              : {
    3360         1358 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3361         1358 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3362         1358 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    3363         1358 :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
    3364         1358 :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
    3365         1358 :   int res ATTRIBUTE_UNUSED;
    3366         1358 :   x2 = XVECEXP (x1, 0, 0);
    3367         1358 :   if (GET_CODE (x2) != CONST_INT)
    3368              :     return -1;
    3369         1358 :   x3 = XVECEXP (x1, 0, 1);
    3370         1358 :   if (GET_CODE (x3) != CONST_INT)
    3371              :     return -1;
    3372         1358 :   x4 = XVECEXP (x1, 0, 2);
    3373         1358 :   if (GET_CODE (x4) != CONST_INT)
    3374              :     return -1;
    3375         1358 :   x5 = XVECEXP (x1, 0, 3);
    3376         1358 :   if (GET_CODE (x5) != CONST_INT)
    3377              :     return -1;
    3378         1358 :   x6 = XVECEXP (x1, 0, 4);
    3379         1358 :   if (GET_CODE (x6) != CONST_INT)
    3380              :     return -1;
    3381         1358 :   x7 = XVECEXP (x1, 0, 5);
    3382         1358 :   if (GET_CODE (x7) != CONST_INT)
    3383              :     return -1;
    3384         1358 :   x8 = XVECEXP (x1, 0, 6);
    3385         1358 :   if (GET_CODE (x8) != CONST_INT)
    3386              :     return -1;
    3387         1358 :   x9 = XVECEXP (x1, 0, 7);
    3388         1358 :   if (GET_CODE (x9) != CONST_INT)
    3389              :     return -1;
    3390         1358 :   x10 = XVECEXP (x1, 0, 8);
    3391         1358 :   if (GET_CODE (x10) != CONST_INT)
    3392              :     return -1;
    3393         1358 :   x11 = XVECEXP (x1, 0, 9);
    3394         1358 :   if (GET_CODE (x11) != CONST_INT)
    3395              :     return -1;
    3396         1358 :   x12 = XVECEXP (x1, 0, 10);
    3397         1358 :   if (GET_CODE (x12) != CONST_INT)
    3398              :     return -1;
    3399         1358 :   x13 = XVECEXP (x1, 0, 11);
    3400         1358 :   if (GET_CODE (x13) != CONST_INT)
    3401              :     return -1;
    3402         1358 :   x14 = XVECEXP (x1, 0, 12);
    3403         1358 :   if (GET_CODE (x14) != CONST_INT)
    3404              :     return -1;
    3405         1358 :   x15 = XVECEXP (x1, 0, 13);
    3406         1358 :   if (GET_CODE (x15) != CONST_INT)
    3407              :     return -1;
    3408         1358 :   x16 = XVECEXP (x1, 0, 14);
    3409         1358 :   if (GET_CODE (x16) != CONST_INT)
    3410              :     return -1;
    3411         1358 :   x17 = XVECEXP (x1, 0, 15);
    3412         1358 :   if (GET_CODE (x17) != CONST_INT)
    3413              :     return -1;
    3414         1358 :   x18 = XVECEXP (x1, 0, 16);
    3415         1358 :   if (GET_CODE (x18) != CONST_INT)
    3416              :     return -1;
    3417         1358 :   x19 = XVECEXP (x1, 0, 17);
    3418         1358 :   if (GET_CODE (x19) != CONST_INT)
    3419              :     return -1;
    3420         1358 :   x20 = XVECEXP (x1, 0, 18);
    3421         1358 :   if (GET_CODE (x20) != CONST_INT)
    3422              :     return -1;
    3423         1358 :   x21 = XVECEXP (x1, 0, 19);
    3424         1358 :   if (GET_CODE (x21) != CONST_INT)
    3425              :     return -1;
    3426         1358 :   x22 = XVECEXP (x1, 0, 20);
    3427         1358 :   if (GET_CODE (x22) != CONST_INT)
    3428              :     return -1;
    3429         1358 :   x23 = XVECEXP (x1, 0, 21);
    3430         1358 :   if (GET_CODE (x23) != CONST_INT)
    3431              :     return -1;
    3432         1358 :   x24 = XVECEXP (x1, 0, 22);
    3433         1358 :   if (GET_CODE (x24) != CONST_INT)
    3434              :     return -1;
    3435         1358 :   x25 = XVECEXP (x1, 0, 23);
    3436         1358 :   if (GET_CODE (x25) != CONST_INT)
    3437              :     return -1;
    3438         1358 :   x26 = XVECEXP (x1, 0, 24);
    3439         1358 :   if (GET_CODE (x26) != CONST_INT)
    3440              :     return -1;
    3441         1358 :   x27 = XVECEXP (x1, 0, 25);
    3442         1358 :   if (GET_CODE (x27) != CONST_INT)
    3443              :     return -1;
    3444         1358 :   x28 = XVECEXP (x1, 0, 26);
    3445         1358 :   if (GET_CODE (x28) != CONST_INT)
    3446              :     return -1;
    3447         1358 :   x29 = XVECEXP (x1, 0, 27);
    3448         1358 :   if (GET_CODE (x29) != CONST_INT)
    3449              :     return -1;
    3450         1358 :   x30 = XVECEXP (x1, 0, 28);
    3451         1358 :   if (GET_CODE (x30) != CONST_INT)
    3452              :     return -1;
    3453         1358 :   x31 = XVECEXP (x1, 0, 29);
    3454         1358 :   if (GET_CODE (x31) != CONST_INT)
    3455              :     return -1;
    3456         1358 :   x32 = XVECEXP (x1, 0, 30);
    3457         1358 :   if (GET_CODE (x32) != CONST_INT)
    3458              :     return -1;
    3459         1358 :   x33 = XVECEXP (x1, 0, 31);
    3460         1358 :   if (GET_CODE (x33) != CONST_INT)
    3461            0 :     return -1;
    3462              :   return 0;
    3463              : }
    3464              : 
    3465              : int
    3466          183 : pattern938 (rtx x1)
    3467              : {
    3468          183 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3469          183 :   rtx x2, x3, x4, x5, x6, x7, x8;
    3470          183 :   int res ATTRIBUTE_UNUSED;
    3471          183 :   if (!register_operand (operands[0], E_V8QImode))
    3472              :     return -1;
    3473          183 :   x2 = XVECEXP (x1, 0, 0);
    3474          183 :   x3 = XEXP (x2, 1);
    3475          183 :   x4 = XVECEXP (x3, 0, 0);
    3476          183 :   operands[1] = x4;
    3477          183 :   if (!register_operand (operands[1], E_V8QImode))
    3478              :     return -1;
    3479          146 :   x5 = XVECEXP (x3, 0, 1);
    3480          146 :   operands[2] = x5;
    3481          146 :   if (!register_mmxmem_operand (operands[2], E_V8QImode))
    3482              :     return -1;
    3483          135 :   x6 = XVECEXP (x3, 0, 2);
    3484          135 :   operands[4] = x6;
    3485          135 :   if (!reg_or_const_vector_operand (operands[4], E_V4SImode))
    3486              :     return -1;
    3487          125 :   x7 = XVECEXP (x1, 0, 1);
    3488          125 :   x8 = XEXP (x7, 0);
    3489          125 :   operands[3] = x8;
    3490          125 :   if (!scratch_operand (operands[3], E_V4SImode))
    3491              :     return -1;
    3492              :   return 0;
    3493              : }
    3494              : 
    3495              : int
    3496           55 : pattern949 (rtx x1, machine_mode i1)
    3497              : {
    3498           55 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3499           55 :   rtx x2, x3, x4, x5;
    3500           55 :   int res ATTRIBUTE_UNUSED;
    3501           55 :   if (!register_operand (operands[0], i1)
    3502           55 :       || GET_MODE (x1) != i1)
    3503              :     return -1;
    3504           55 :   x2 = XEXP (x1, 0);
    3505           55 :   if (GET_MODE (x2) != i1)
    3506              :     return -1;
    3507           55 :   x3 = XVECEXP (x2, 0, 2);
    3508           55 :   if (GET_MODE (x3) != i1)
    3509              :     return -1;
    3510           55 :   x4 = XEXP (x1, 1);
    3511           55 :   if (GET_MODE (x4) != i1)
    3512              :     return -1;
    3513           55 :   x5 = XEXP (x4, 0);
    3514           55 :   if (GET_MODE (x5) != i1)
    3515            0 :     return -1;
    3516              :   return 0;
    3517              : }
    3518              : 
    3519              : int
    3520      4261404 : pattern960 (rtx x1, machine_mode i1)
    3521              : {
    3522      4261404 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3523      4261404 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3524      4261404 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    3525      4261404 :   rtx x18, x19, x20, x21, x22, x23;
    3526      4261404 :   int res ATTRIBUTE_UNUSED;
    3527      4261404 :   if (!memory_operand (operands[0], i1)
    3528      4261404 :       || !general_reg_operand (operands[1], i1))
    3529      1100474 :     return -1;
    3530      3160930 :   switch (GET_CODE (x1))
    3531              :     {
    3532      2852431 :     case SET:
    3533      2852431 :       if (peep2_current_count < 4)
    3534              :         return -1;
    3535      2498007 :       x2 = XEXP (x1, 0);
    3536      2498007 :       operands[2] = x2;
    3537      2498007 :       if (!general_reg_operand (operands[2], i1))
    3538              :         return -1;
    3539      1188179 :       x3 = XEXP (x1, 1);
    3540      1188179 :       if (!rtx_equal_p (x3, operands[1]))
    3541              :         return -1;
    3542        16720 :       x4 = PATTERN (peep2_next_insn (2));
    3543        16720 :       if (GET_CODE (x4) != PARALLEL
    3544         8451 :           || XVECLEN (x4, 0) != 2)
    3545              :         return -1;
    3546         8434 :       x5 = XVECEXP (x4, 0, 0);
    3547         8434 :       if (GET_CODE (x5) != SET)
    3548              :         return -1;
    3549         8424 :       x6 = XEXP (x5, 1);
    3550         8424 :       if (GET_CODE (x6) != ASHIFTRT
    3551         1847 :           || GET_MODE (x6) != i1)
    3552              :         return -1;
    3553         1847 :       x7 = XVECEXP (x4, 0, 1);
    3554         1847 :       if (GET_CODE (x7) != CLOBBER)
    3555              :         return -1;
    3556         1847 :       x8 = XEXP (x7, 0);
    3557         1847 :       if (GET_CODE (x8) != REG
    3558         1847 :           || REGNO (x8) != 17
    3559         3694 :           || GET_MODE (x8) != E_CCmode)
    3560              :         return -1;
    3561         1847 :       x9 = XEXP (x6, 1);
    3562         1847 :       operands[4] = x9;
    3563         1847 :       if (!const_int_operand (operands[4], E_VOIDmode))
    3564              :         return -1;
    3565         1847 :       x10 = XEXP (x6, 0);
    3566         1847 :       if (!rtx_equal_p (x10, operands[2]))
    3567              :         return -1;
    3568         1845 :       x11 = XEXP (x5, 0);
    3569         1845 :       if (!rtx_equal_p (x11, operands[2]))
    3570              :         return -1;
    3571         1828 :       x12 = PATTERN (peep2_next_insn (3));
    3572         1828 :       if (GET_CODE (x12) != SET)
    3573              :         return -1;
    3574         1711 :       x13 = XEXP (x12, 0);
    3575         1711 :       operands[3] = x13;
    3576         1711 :       if (!memory_operand (operands[3], i1))
    3577              :         return -1;
    3578         1663 :       x14 = XEXP (x12, 1);
    3579         1663 :       if (!rtx_equal_p (x14, operands[2]))
    3580              :         return -1;
    3581              :       return 0;
    3582              : 
    3583       252945 :     case PARALLEL:
    3584       252945 :       if (XVECLEN (x1, 0) != 2)
    3585              :         return -1;
    3586       249408 :       x15 = XVECEXP (x1, 0, 0);
    3587       249408 :       if (GET_CODE (x15) != SET)
    3588              :         return -1;
    3589       248267 :       x16 = XEXP (x15, 1);
    3590       248267 :       if (GET_CODE (x16) != ASHIFTRT
    3591         4012 :           || GET_MODE (x16) != i1)
    3592              :         return -1;
    3593         3845 :       x17 = XVECEXP (x1, 0, 1);
    3594         3845 :       if (GET_CODE (x17) != CLOBBER)
    3595              :         return -1;
    3596         3845 :       x18 = XEXP (x17, 0);
    3597         3845 :       if (GET_CODE (x18) != REG
    3598         3845 :           || REGNO (x18) != 17
    3599         7690 :           || GET_MODE (x18) != E_CCmode)
    3600              :         return -1;
    3601         3845 :       x19 = XEXP (x15, 0);
    3602         3845 :       operands[2] = x19;
    3603         3845 :       if (!general_reg_operand (operands[2], i1))
    3604              :         return -1;
    3605         3367 :       x20 = XEXP (x16, 1);
    3606         3367 :       operands[4] = x20;
    3607         3367 :       if (!const_int_operand (operands[4], E_VOIDmode))
    3608              :         return -1;
    3609         3357 :       x21 = XEXP (x16, 0);
    3610         3357 :       if (!rtx_equal_p (x21, operands[1]))
    3611              :         return -1;
    3612         1685 :       x4 = PATTERN (peep2_next_insn (2));
    3613         1685 :       if (GET_CODE (x4) != SET)
    3614              :         return -1;
    3615         1572 :       x22 = XEXP (x4, 0);
    3616         1572 :       operands[3] = x22;
    3617         1572 :       if (!memory_operand (operands[3], i1))
    3618              :         return -1;
    3619         1537 :       x23 = XEXP (x4, 1);
    3620         1537 :       if (!rtx_equal_p (x23, operands[2]))
    3621              :         return -1;
    3622              :       return 1;
    3623              : 
    3624              :     default:
    3625              :       return -1;
    3626              :     }
    3627              : }
    3628              : 
    3629              : int
    3630            0 : pattern984 (rtx x1, machine_mode i1, machine_mode i2)
    3631              : {
    3632            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3633            0 :   int res ATTRIBUTE_UNUSED;
    3634            0 :   if (!vector_all_ones_operand (operands[3], i1)
    3635            0 :       || !const0_operand (operands[4], i1)
    3636            0 :       || GET_MODE (x1) != i2
    3637            0 :       || !register_operand (operands[1], i1)
    3638            0 :       || !const0_operand (operands[2], i1))
    3639            0 :     return -1;
    3640              :   return 0;
    3641              : }
    3642              : 
    3643              : int
    3644        30328 : pattern988 ()
    3645              : {
    3646        30328 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3647        30328 :   int res ATTRIBUTE_UNUSED;
    3648        30328 :   switch (GET_MODE (operands[1]))
    3649              :     {
    3650         6452 :     case E_V8QImode:
    3651         6452 :       if (!register_operand (operands[1], E_V8QImode)
    3652         6452 :           || !const_0_to_7_operand (operands[2], E_SImode))
    3653         1517 :         return -1;
    3654              :       return 0;
    3655              : 
    3656          450 :     case E_V4QImode:
    3657          450 :       if (!register_operand (operands[1], E_V4QImode)
    3658          450 :           || !const_0_to_3_operand (operands[2], E_SImode))
    3659           64 :         return -1;
    3660              :       return 1;
    3661              : 
    3662        23025 :     case E_V16QImode:
    3663        23025 :       if (!register_operand (operands[1], E_V16QImode)
    3664        23025 :           || !const_0_to_15_operand (operands[2], E_SImode))
    3665         5596 :         return -1;
    3666              :       return 2;
    3667              : 
    3668              :     default:
    3669              :       return -1;
    3670              :     }
    3671              : }
    3672              : 
    3673              : int
    3674         9587 : pattern994 (rtx x1)
    3675              : {
    3676         9587 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3677         9587 :   int res ATTRIBUTE_UNUSED;
    3678         9587 :   switch (GET_MODE (operands[0]))
    3679              :     {
    3680          197 :     case E_DImode:
    3681          197 :       if (!register_operand (operands[0], E_DImode)
    3682          190 :           || GET_MODE (x1) != E_DImode
    3683          190 :           || !nonimm_or_0_operand (operands[1], E_V64QImode)
    3684          382 :           || !nonimm_or_0_operand (operands[2], E_V64QImode))
    3685           16 :         return -1;
    3686              :       return 0;
    3687              : 
    3688          335 :     case E_SImode:
    3689          335 :       if (!register_operand (operands[0], E_SImode)
    3690          335 :           || GET_MODE (x1) != E_SImode)
    3691              :         return -1;
    3692          327 :       switch (GET_MODE (operands[1]))
    3693              :         {
    3694          136 :         case E_V32QImode:
    3695          136 :           if (!nonimm_or_0_operand (operands[1], E_V32QImode)
    3696          136 :               || !nonimm_or_0_operand (operands[2], E_V32QImode))
    3697           31 :             return -1;
    3698              :           return 1;
    3699              : 
    3700          147 :         case E_V32HImode:
    3701          147 :           if (!nonimm_or_0_operand (operands[1], E_V32HImode)
    3702          147 :               || !nonimm_or_0_operand (operands[2], E_V32HImode))
    3703           16 :             return -1;
    3704              :           return 2;
    3705              : 
    3706              :         default:
    3707              :           return -1;
    3708              :         }
    3709              : 
    3710              :     default:
    3711              :       return -1;
    3712              :     }
    3713              : }
    3714              : 
    3715              : int
    3716        12779 : pattern1003 (rtx x1, machine_mode i1, machine_mode i2)
    3717              : {
    3718        12779 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3719        12779 :   rtx x2;
    3720        12779 :   int res ATTRIBUTE_UNUSED;
    3721        12779 :   if (!register_operand (operands[0], i1)
    3722        12779 :       || GET_MODE (x1) != i1)
    3723              :     return -1;
    3724        12539 :   x2 = XEXP (x1, 0);
    3725        12539 :   if (GET_MODE (x2) != i1
    3726        12539 :       || !memory_operand (operands[1], i1)
    3727        12391 :       || !nonimm_or_0_operand (operands[2], i1)
    3728        24799 :       || !register_operand (operands[3], i2))
    3729          303 :     return -1;
    3730              :   return 0;
    3731              : }
    3732              : 
    3733              : int
    3734       104529 : pattern1011 (rtx x1, machine_mode i1, machine_mode i2)
    3735              : {
    3736       104529 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3737       104529 :   rtx x2;
    3738       104529 :   int res ATTRIBUTE_UNUSED;
    3739       104529 :   if (!nonimmediate_operand (operands[0], i1)
    3740       104529 :       || GET_MODE (x1) != i1)
    3741              :     return -1;
    3742       104522 :   x2 = XEXP (x1, 0);
    3743       104522 :   if (GET_MODE (x2) != i1
    3744       104522 :       || !general_operand (operands[2], i2)
    3745       200904 :       || !nonimm_or_0_operand (operands[1], i1))
    3746         8212 :     return -1;
    3747              :   return 0;
    3748              : }
    3749              : 
    3750              : int
    3751         2372 : pattern1018 (rtx x1, machine_mode i1)
    3752              : {
    3753         2372 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3754         2372 :   int res ATTRIBUTE_UNUSED;
    3755         2372 :   if (!register_operand (operands[0], i1)
    3756         2258 :       || GET_MODE (x1) != i1
    3757         2258 :       || !sse_comparison_operator (operands[3], i1)
    3758         2258 :       || !register_operand (operands[1], i1)
    3759         4630 :       || !nonimmediate_operand (operands[2], i1))
    3760          114 :     return -1;
    3761              :   return 0;
    3762              : }
    3763              : 
    3764              : int
    3765          221 : pattern1024 (rtx x1, machine_mode i1)
    3766              : {
    3767          221 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3768          221 :   rtx x2;
    3769          221 :   int res ATTRIBUTE_UNUSED;
    3770          221 :   if (!register_operand (operands[0], i1)
    3771          221 :       || GET_MODE (x1) != i1)
    3772              :     return -1;
    3773          213 :   x2 = XVECEXP (x1, 0, 0);
    3774          213 :   if (GET_MODE (x2) != i1
    3775          213 :       || !register_operand (operands[1], i1))
    3776            7 :     return -1;
    3777              :   return 0;
    3778              : }
    3779              : 
    3780              : int
    3781          156 : pattern1030 (rtx x1, machine_mode i1, machine_mode i2)
    3782              : {
    3783          156 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3784          156 :   rtx x2;
    3785          156 :   int res ATTRIBUTE_UNUSED;
    3786          156 :   x2 = XVECEXP (x1, 0, 0);
    3787          156 :   if (GET_MODE (x2) != i2
    3788          156 :       || !register_operand (operands[0], i2)
    3789          156 :       || GET_MODE (x1) != i2
    3790          156 :       || !register_operand (operands[1], i1)
    3791          308 :       || !const_4_or_8_to_11_operand (operands[2], E_SImode))
    3792            4 :     return -1;
    3793              :   return 0;
    3794              : }
    3795              : 
    3796              : int
    3797          227 : pattern1036 (rtx x1, machine_mode i1)
    3798              : {
    3799          227 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3800          227 :   rtx x2;
    3801          227 :   int res ATTRIBUTE_UNUSED;
    3802          227 :   if (!register_operand (operands[0], i1)
    3803          207 :       || GET_MODE (x1) != i1
    3804          207 :       || !vector_operand (operands[1], i1)
    3805          424 :       || !vector_operand (operands[2], i1))
    3806           36 :     return -1;
    3807          191 :   x2 = XVECEXP (x1, 0, 2);
    3808          191 :   if (GET_MODE (x2) != i1
    3809          191 :       || !vector_operand (operands[3], i1))
    3810            2 :     return -1;
    3811              :   return 0;
    3812              : }
    3813              : 
    3814              : int
    3815        21434 : pattern1045 (rtx x1)
    3816              : {
    3817        21434 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3818        21434 :   rtx x2, x3;
    3819        21434 :   int res ATTRIBUTE_UNUSED;
    3820        21434 :   x2 = XEXP (x1, 0);
    3821        21434 :   switch (GET_MODE (x2))
    3822              :     {
    3823        21311 :     case E_HImode:
    3824        21311 :       x3 = XEXP (x1, 1);
    3825        21311 :       if (GET_MODE (x3) != E_HImode
    3826        21311 :           || !extract_high_operator (operands[3], E_HImode))
    3827            0 :         return -1;
    3828              :       return 0;
    3829              : 
    3830           96 :     case E_SImode:
    3831           96 :       x3 = XEXP (x1, 1);
    3832           96 :       if (GET_MODE (x3) != E_SImode
    3833           96 :           || !extract_high_operator (operands[3], E_SImode))
    3834            0 :         return -1;
    3835              :       return 1;
    3836              : 
    3837           27 :     case E_DImode:
    3838           27 :       x3 = XEXP (x1, 1);
    3839           27 :       if (GET_MODE (x3) != E_DImode
    3840           27 :           || !extract_high_operator (operands[3], E_DImode))
    3841            0 :         return -1;
    3842              :       return 2;
    3843              : 
    3844              :     default:
    3845              :       return -1;
    3846              :     }
    3847              : }
    3848              : 
    3849              : int
    3850          505 : pattern1052 (rtx x1)
    3851              : {
    3852          505 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3853          505 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3854          505 :   rtx x10, x11, x12, x13;
    3855          505 :   int res ATTRIBUTE_UNUSED;
    3856          505 :   x2 = XVECEXP (x1, 0, 0);
    3857          505 :   x3 = XEXP (x2, 1);
    3858          505 :   x4 = XEXP (x3, 0);
    3859          505 :   x5 = XVECEXP (x4, 0, 0);
    3860          505 :   operands[1] = x5;
    3861          505 :   x6 = XVECEXP (x4, 0, 1);
    3862          505 :   operands[2] = x6;
    3863          505 :   x7 = XVECEXP (x4, 0, 2);
    3864          505 :   operands[3] = x7;
    3865          505 :   x8 = XVECEXP (x1, 0, 1);
    3866          505 :   x9 = XEXP (x8, 0);
    3867          505 :   operands[4] = x9;
    3868          505 :   x10 = XEXP (x8, 1);
    3869          505 :   x11 = XVECEXP (x10, 0, 0);
    3870          505 :   if (!rtx_equal_p (x11, operands[1]))
    3871              :     return -1;
    3872          505 :   x12 = XVECEXP (x10, 0, 1);
    3873          505 :   if (!rtx_equal_p (x12, operands[2]))
    3874              :     return -1;
    3875          505 :   x13 = XVECEXP (x10, 0, 2);
    3876          505 :   if (!rtx_equal_p (x13, operands[3]))
    3877              :     return -1;
    3878          505 :   switch (XINT (x4, 1))
    3879              :     {
    3880          328 :     case 60:
    3881          328 :       if (XINT (x10, 1) != 60)
    3882              :         return -1;
    3883          328 :       switch (GET_MODE (operands[0]))
    3884              :         {
    3885           79 :         case E_HImode:
    3886           79 :           return pattern1050 (x1, 
    3887           79 : E_HImode); /* [-1, 20] */
    3888              : 
    3889          114 :         case E_SImode:
    3890          114 :           res = pattern1050 (x1, 
    3891              : E_SImode);
    3892          114 :           if (res >= 0)
    3893           99 :             return res + 21; /* [21, 41] */
    3894              :           return -1;
    3895              : 
    3896          135 :         case E_DImode:
    3897          135 :           res = pattern1050 (x1, 
    3898              : E_DImode);
    3899          135 :           if (res >= 0)
    3900          117 :             return res + 42; /* [42, 62] */
    3901              :           return -1;
    3902              : 
    3903              :         default:
    3904              :           return -1;
    3905              :         }
    3906              : 
    3907          177 :     case 158:
    3908          177 :       if (XINT (x10, 1) != 158
    3909          177 :           || !const_0_to_7_operand (operands[3], E_SImode))
    3910            0 :         return -1;
    3911          177 :       switch (GET_MODE (operands[0]))
    3912              :         {
    3913           39 :         case E_HImode:
    3914           39 :           res = pattern1051 (x1, 
    3915              : E_HImode);
    3916           39 :           if (res >= 0)
    3917           34 :             return res + 63; /* [63, 74] */
    3918              :           return -1;
    3919              : 
    3920           64 :         case E_SImode:
    3921           64 :           res = pattern1051 (x1, 
    3922              : E_SImode);
    3923           64 :           if (res >= 0)
    3924           54 :             return res + 75; /* [75, 86] */
    3925              :           return -1;
    3926              : 
    3927           74 :         case E_DImode:
    3928           74 :           res = pattern1051 (x1, 
    3929              : E_DImode);
    3930           74 :           if (res >= 0)
    3931           64 :             return res + 87; /* [87, 98] */
    3932              :           return -1;
    3933              : 
    3934              :         default:
    3935              :           return -1;
    3936              :         }
    3937              : 
    3938              :     default:
    3939              :       return -1;
    3940              :     }
    3941              : }
    3942              : 
    3943              : int
    3944          515 : pattern1069 (rtx x1)
    3945              : {
    3946          515 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3947          515 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3948          515 :   rtx x10;
    3949          515 :   int res ATTRIBUTE_UNUSED;
    3950          515 :   x2 = XEXP (x1, 1);
    3951          515 :   x3 = XEXP (x2, 0);
    3952          515 :   if (GET_MODE (x3) != E_DImode)
    3953              :     return -1;
    3954          304 :   x4 = XEXP (x3, 0);
    3955          304 :   if (GET_CODE (x4) != MINUS
    3956          101 :       || GET_MODE (x4) != E_SImode)
    3957              :     return -1;
    3958          101 :   x5 = XEXP (x4, 0);
    3959          101 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 63])
    3960              :     return -1;
    3961          101 :   x6 = XEXP (x4, 1);
    3962          101 :   if (GET_CODE (x6) != SUBREG
    3963          101 :       || maybe_ne (SUBREG_BYTE (x6), 0)
    3964          202 :       || GET_MODE (x6) != E_SImode)
    3965              :     return -1;
    3966          101 :   x7 = XEXP (x6, 0);
    3967          101 :   if (GET_CODE (x7) != CLZ
    3968          101 :       || GET_MODE (x7) != E_DImode)
    3969              :     return -1;
    3970          101 :   x8 = XEXP (x2, 1);
    3971          101 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 63])
    3972              :     return -1;
    3973          101 :   x9 = XEXP (x1, 0);
    3974          101 :   operands[0] = x9;
    3975          101 :   if (!register_operand (operands[0], E_DImode)
    3976          101 :       || GET_MODE (x2) != E_DImode)
    3977              :     return -1;
    3978          101 :   x10 = XEXP (x7, 0);
    3979          101 :   operands[1] = x10;
    3980          101 :   if (!nonimmediate_operand (operands[1], E_DImode))
    3981              :     return -1;
    3982              :   return 0;
    3983              : }
    3984              : 
    3985              : int
    3986          812 : pattern1082 (rtx x1)
    3987              : {
    3988          812 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3989          812 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3990          812 :   rtx x10;
    3991          812 :   int res ATTRIBUTE_UNUSED;
    3992          812 :   x2 = XEXP (x1, 1);
    3993          812 :   x3 = XEXP (x2, 0);
    3994          812 :   x4 = XEXP (x3, 0);
    3995          812 :   x5 = XEXP (x4, 0);
    3996          812 :   operands[1] = x5;
    3997          812 :   if (!int248_register_operand (operands[1], E_VOIDmode))
    3998              :     return -1;
    3999          565 :   x6 = XEXP (x2, 1);
    4000          565 :   x7 = XEXP (x6, 0);
    4001          565 :   x8 = XEXP (x7, 0);
    4002          565 :   operands[2] = x8;
    4003          565 :   if (!int248_register_operand (operands[2], E_VOIDmode))
    4004              :     return -1;
    4005          371 :   x9 = XEXP (x1, 0);
    4006          371 :   switch (GET_CODE (x9))
    4007              :     {
    4008           43 :     case STRICT_LOW_PART:
    4009           43 :       x10 = XEXP (x9, 0);
    4010           43 :       operands[0] = x10;
    4011           43 :       if (!register_operand (operands[0], E_QImode))
    4012              :         return -1;
    4013           43 :       return pattern1081 (); /* [-1, 2] */
    4014              : 
    4015          272 :     case REG:
    4016          272 :     case SUBREG:
    4017          272 :       operands[0] = x9;
    4018          272 :       if (!register_operand (operands[0], E_QImode))
    4019              :         return -1;
    4020          272 :       res = pattern1081 ();
    4021          272 :       if (res >= 0)
    4022           53 :         return res + 3; /* [3, 5] */
    4023              :       return -1;
    4024              : 
    4025              :     default:
    4026              :       return -1;
    4027              :     }
    4028              : }
    4029              : 
    4030              : int
    4031            9 : pattern1098 (rtx x1)
    4032              : {
    4033            9 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4034            9 :   rtx x2, x3, x4, x5, x6, x7, x8;
    4035            9 :   int res ATTRIBUTE_UNUSED;
    4036            9 :   if (maybe_ne (SUBREG_BYTE (x1), 0))
    4037              :     return -1;
    4038            9 :   x2 = XEXP (x1, 0);
    4039            9 :   switch (GET_CODE (x2))
    4040              :     {
    4041            0 :     case VEC_MERGE:
    4042            0 :       x3 = XEXP (x2, 2);
    4043            0 :       if (GET_CODE (x3) != UNSPEC
    4044            0 :           || XVECLEN (x3, 0) != 3
    4045            0 :           || XINT (x3, 1) != 60
    4046            0 :           || GET_MODE (x3) != E_QImode)
    4047              :         return -1;
    4048            0 :       x4 = XVECEXP (x3, 0, 2);
    4049            0 :       if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    4050              :         return -1;
    4051            0 :       x5 = XEXP (x2, 0);
    4052            0 :       operands[3] = x5;
    4053            0 :       x6 = XEXP (x2, 1);
    4054            0 :       operands[4] = x6;
    4055            0 :       x7 = XVECEXP (x3, 0, 0);
    4056            0 :       operands[1] = x7;
    4057            0 :       x8 = XVECEXP (x3, 0, 1);
    4058            0 :       operands[2] = x8;
    4059            0 :       switch (GET_MODE (x1))
    4060              :         {
    4061            0 :         case E_V8SFmode:
    4062            0 :           return pattern1097 (x2, 
    4063            0 : E_V8SImode); /* [-1, 0] */
    4064              : 
    4065            0 :         case E_V4SFmode:
    4066            0 :           if (pattern1097 (x2, 
    4067              : E_V4SImode) != 0)
    4068              :             return -1;
    4069              :           return 1;
    4070              : 
    4071            0 :         case E_V4DFmode:
    4072            0 :           if (pattern1097 (x2, 
    4073              : E_V4DImode) != 0)
    4074              :             return -1;
    4075              :           return 2;
    4076              : 
    4077            0 :         case E_V2DFmode:
    4078            0 :           if (pattern1097 (x2, 
    4079              : E_V2DImode) != 0)
    4080              :             return -1;
    4081              :           return 3;
    4082              : 
    4083              :         default:
    4084              :           return -1;
    4085              :         }
    4086              : 
    4087            6 :     case ASHIFTRT:
    4088            6 :       x5 = XEXP (x2, 0);
    4089            6 :       operands[1] = x5;
    4090            6 :       x6 = XEXP (x2, 1);
    4091            6 :       operands[2] = x6;
    4092            6 :       if (!const_int_operand (operands[2], E_QImode))
    4093              :         return -1;
    4094            6 :       switch (GET_MODE (x1))
    4095              :         {
    4096            3 :         case E_V8SFmode:
    4097            3 :           if (GET_MODE (x2) != E_V8SImode
    4098            3 :               || !register_operand (operands[1], E_V8SImode))
    4099            0 :             return -1;
    4100              :           return 4;
    4101              : 
    4102            0 :         case E_V4SFmode:
    4103            0 :           if (GET_MODE (x2) != E_V4SImode
    4104            0 :               || !register_operand (operands[1], E_V4SImode))
    4105            0 :             return -1;
    4106              :           return 5;
    4107              : 
    4108            0 :         case E_V4DFmode:
    4109            0 :           if (GET_MODE (x2) != E_V4DImode
    4110            0 :               || !register_operand (operands[1], E_V4DImode))
    4111            0 :             return -1;
    4112              :           return 6;
    4113              : 
    4114            3 :         case E_V2DFmode:
    4115            3 :           if (GET_MODE (x2) != E_V2DImode
    4116            3 :               || !register_operand (operands[1], E_V2DImode))
    4117            0 :             return -1;
    4118              :           return 7;
    4119              : 
    4120              :         default:
    4121              :           return -1;
    4122              :         }
    4123              : 
    4124              :     default:
    4125              :       return -1;
    4126              :     }
    4127              : }
    4128              : 
    4129              : int
    4130         2760 : pattern1123 (rtx x1)
    4131              : {
    4132         2760 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4133         2760 :   rtx x2, x3, x4, x5;
    4134         2760 :   int res ATTRIBUTE_UNUSED;
    4135         2760 :   x2 = XEXP (x1, 0);
    4136         2760 :   x3 = XEXP (x2, 1);
    4137         2760 :   operands[4] = x3;
    4138         2760 :   x4 = XEXP (x2, 2);
    4139         2760 :   operands[5] = x4;
    4140         2760 :   if (!register_operand (operands[5], E_QImode))
    4141              :     return -1;
    4142         2707 :   x5 = XEXP (x1, 1);
    4143         2707 :   if (!rtx_equal_p (x5, operands[1]))
    4144              :     return -1;
    4145         2707 :   switch (GET_MODE (operands[0]))
    4146              :     {
    4147          825 :     case E_V8HFmode:
    4148          825 :       return pattern1122 (x1, 
    4149          825 : E_V8HFmode); /* [-1, 0] */
    4150              : 
    4151          935 :     case E_V4SFmode:
    4152          935 :       if (pattern1122 (x1, 
    4153              : E_V4SFmode) != 0)
    4154              :         return -1;
    4155              :       return 1;
    4156              : 
    4157          947 :     case E_V2DFmode:
    4158          947 :       if (pattern1122 (x1, 
    4159              : E_V2DFmode) != 0)
    4160              :         return -1;
    4161              :       return 2;
    4162              : 
    4163              :     default:
    4164              :       return -1;
    4165              :     }
    4166              : }
    4167              : 
    4168              : int
    4169          583 : pattern1138 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3, machine_mode i4)
    4170              : {
    4171          583 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4172          583 :   rtx x2, x3, x4;
    4173          583 :   int res ATTRIBUTE_UNUSED;
    4174          583 :   if (!register_operand (operands[0], i2)
    4175          583 :       || GET_MODE (x1) != i2)
    4176              :     return -1;
    4177          550 :   x2 = XEXP (x1, 0);
    4178          550 :   if (GET_MODE (x2) != i2)
    4179              :     return -1;
    4180          550 :   x3 = XEXP (x2, 0);
    4181          550 :   if (GET_MODE (x3) != i4
    4182          550 :       || !vector_operand (operands[2], i3))
    4183            0 :     return -1;
    4184          550 :   x4 = XEXP (x2, 1);
    4185          550 :   return pattern1136 (x4, 
    4186              : i1, 
    4187              : i2, 
    4188              : i3, 
    4189          550 : i4); /* [-1, 0] */
    4190              : }
    4191              : 
    4192              : int
    4193          630 : pattern1143 (rtx x1, machine_mode i1)
    4194              : {
    4195          630 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4196          630 :   rtx x2;
    4197          630 :   int res ATTRIBUTE_UNUSED;
    4198          630 :   if (!register_operand (operands[0], i1)
    4199          630 :       || GET_MODE (x1) != i1)
    4200              :     return -1;
    4201          594 :   x2 = XVECEXP (x1, 0, 0);
    4202          594 :   if (GET_MODE (x2) != i1
    4203          594 :       || !register_operand (operands[1], i1)
    4204         1168 :       || !register_operand (operands[2], i1))
    4205           28 :     return -1;
    4206              :   return 0;
    4207              : }
    4208              : 
    4209              : int
    4210          425 : pattern1150 (rtx x1, machine_mode i1, machine_mode i2)
    4211              : {
    4212          425 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4213          425 :   rtx x2;
    4214          425 :   int res ATTRIBUTE_UNUSED;
    4215          425 :   if (!register_operand (operands[0], i2)
    4216          425 :       || GET_MODE (x1) != i2)
    4217              :     return -1;
    4218          332 :   x2 = XEXP (x1, 0);
    4219          332 :   if (GET_MODE (x2) != i1
    4220          332 :       || !nonimmediate_operand (operands[1], i2)
    4221          629 :       || !const0_operand (operands[2], i1))
    4222           41 :     return -1;
    4223              :   return 0;
    4224              : }
    4225              : 
    4226              : int
    4227         2844 : pattern1158 (rtx x1, machine_mode i1)
    4228              : {
    4229         2844 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4230         2844 :   int res ATTRIBUTE_UNUSED;
    4231         2844 :   if (!memory_operand (operands[0], i1)
    4232         2844 :       || GET_MODE (x1) != i1
    4233         5688 :       || !memory_operand (operands[1], i1))
    4234            0 :     return -1;
    4235         2844 :   switch (GET_MODE (operands[2]))
    4236              :     {
    4237           16 :     case E_SImode:
    4238           16 :       if (!register_operand (operands[2], E_SImode))
    4239              :         return -1;
    4240              :       return 0;
    4241              : 
    4242         2828 :     case E_DImode:
    4243         2828 :       if (!register_operand (operands[2], E_DImode))
    4244              :         return -1;
    4245              :       return 1;
    4246              : 
    4247              :     default:
    4248              :       return -1;
    4249              :     }
    4250              : }
    4251              : 
    4252              : int
    4253        58307 : pattern1167 (rtx x1)
    4254              : {
    4255        58307 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4256        58307 :   rtx x2, x3, x4, x5;
    4257        58307 :   int res ATTRIBUTE_UNUSED;
    4258        58307 :   x2 = XEXP (x1, 0);
    4259        58307 :   x3 = XEXP (x2, 0);
    4260        58307 :   x4 = XEXP (x3, 0);
    4261        58307 :   if (GET_CODE (x4) != ZERO_EXTEND)
    4262              :     return -1;
    4263          110 :   x5 = XEXP (x2, 1);
    4264          110 :   if (GET_CODE (x5) != ZERO_EXTEND)
    4265              :     return -1;
    4266           67 :   return pattern358 (x1); /* [-1, 3] */
    4267              : }
    4268              : 
    4269              : int
    4270          590 : pattern1172 (rtx x1, machine_mode i1)
    4271              : {
    4272          590 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4273          590 :   rtx x2, x3;
    4274          590 :   int res ATTRIBUTE_UNUSED;
    4275          590 :   if (!nonimmediate_operand (operands[0], i1)
    4276          590 :       || GET_MODE (x1) != i1)
    4277              :     return -1;
    4278          590 :   x2 = XEXP (x1, 0);
    4279          590 :   if (GET_MODE (x2) != i1)
    4280              :     return -1;
    4281          590 :   x3 = XEXP (x2, 0);
    4282          590 :   if (GET_MODE (x3) != i1
    4283          590 :       || !nonimmediate_operand (operands[1], i1)
    4284          812 :       || !x86_64_immediate_operand (operands[2], i1))
    4285          483 :     return -1;
    4286              :   return 0;
    4287              : }
    4288              : 
    4289              : int
    4290        72311 : pattern1179 (rtx x1)
    4291              : {
    4292        72311 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4293        72311 :   rtx x2, x3, x4;
    4294        72311 :   int res ATTRIBUTE_UNUSED;
    4295        72311 :   if (!nonmemory_operand (operands[2], E_QImode))
    4296              :     return -1;
    4297        71752 :   x2 = XEXP (x1, 0);
    4298        71752 :   switch (GET_CODE (x2))
    4299              :     {
    4300        71752 :     case REG:
    4301        71752 :     case SUBREG:
    4302        71752 :     case MEM:
    4303        71752 :       operands[0] = x2;
    4304        71752 :       switch (GET_MODE (operands[0]))
    4305              :         {
    4306        46350 :         case E_SImode:
    4307        46350 :           if (!nonimmediate_operand (operands[0], E_SImode))
    4308              :             return -1;
    4309        46350 :           x3 = XEXP (x1, 1);
    4310        46350 :           if (GET_MODE (x3) != E_SImode
    4311        46350 :               || !nonimmediate_operand (operands[1], E_SImode))
    4312         7294 :             return -1;
    4313              :           return 0;
    4314              : 
    4315         8265 :         case E_DImode:
    4316         8265 :           if (!nonimmediate_operand (operands[0], E_DImode))
    4317              :             return -1;
    4318         8265 :           x3 = XEXP (x1, 1);
    4319         8265 :           if (GET_MODE (x3) != E_DImode
    4320         8265 :               || !nonimmediate_operand (operands[1], E_DImode))
    4321         1849 :             return -1;
    4322              :           return 1;
    4323              : 
    4324        10007 :         case E_QImode:
    4325        10007 :           if (!nonimmediate_operand (operands[0], E_QImode))
    4326              :             return -1;
    4327         9653 :           x3 = XEXP (x1, 1);
    4328         9653 :           if (GET_MODE (x3) != E_QImode
    4329         9653 :               || !nonimmediate_operand (operands[1], E_QImode))
    4330          157 :             return -1;
    4331              :           return 2;
    4332              : 
    4333         7124 :         case E_HImode:
    4334         7124 :           if (!nonimmediate_operand (operands[0], E_HImode))
    4335              :             return -1;
    4336         7124 :           x3 = XEXP (x1, 1);
    4337         7124 :           if (GET_MODE (x3) != E_HImode
    4338         7124 :               || !nonimmediate_operand (operands[1], E_HImode))
    4339           56 :             return -1;
    4340              :           return 3;
    4341              : 
    4342              :         default:
    4343              :           return -1;
    4344              :         }
    4345              : 
    4346            0 :     case STRICT_LOW_PART:
    4347            0 :       x4 = XEXP (x2, 0);
    4348            0 :       operands[0] = x4;
    4349            0 :       x3 = XEXP (x1, 1);
    4350            0 :       res = pattern377 (x3);
    4351            0 :       if (res >= 0)
    4352            0 :         return res + 4; /* [4, 5] */
    4353              :       return -1;
    4354              : 
    4355              :     default:
    4356              :       return -1;
    4357              :     }
    4358              : }
    4359              : 
    4360              : int
    4361      1515200 : pattern1207 (rtx x1, machine_mode i1)
    4362              : {
    4363      1515200 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4364      1515200 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4365      1515200 :   rtx x10, x11;
    4366      1515200 :   int res ATTRIBUTE_UNUSED;
    4367      1515200 :   if (!nonimmediate_gr_operand (operands[1], i1))
    4368              :     return -1;
    4369       931430 :   x2 = XVECEXP (x1, 0, 0);
    4370       931430 :   x3 = XEXP (x2, 1);
    4371       931430 :   if (GET_CODE (x3) != UNSPEC
    4372         1711 :       || XVECLEN (x3, 0) != 2
    4373         1150 :       || XINT (x3, 1) != 41
    4374         1139 :       || GET_MODE (x3) != E_CCCmode)
    4375              :     return -1;
    4376         1134 :   x4 = XVECEXP (x3, 0, 1);
    4377         1134 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4378              :     return -1;
    4379         1134 :   x5 = XEXP (x2, 0);
    4380         1134 :   if (GET_CODE (x5) != REG
    4381         1134 :       || REGNO (x5) != 17
    4382         2268 :       || GET_MODE (x5) != E_CCCmode)
    4383              :     return -1;
    4384         1134 :   x6 = XVECEXP (x1, 0, 1);
    4385         1134 :   if (GET_CODE (x6) != SET)
    4386              :     return -1;
    4387          795 :   x7 = XEXP (x6, 1);
    4388          795 :   if (GET_CODE (x7) != NEG
    4389          795 :       || GET_MODE (x7) != i1)
    4390              :     return -1;
    4391          795 :   x8 = XVECEXP (x3, 0, 0);
    4392          795 :   operands[2] = x8;
    4393          795 :   if (!general_reg_operand (operands[2], i1))
    4394              :     return -1;
    4395          795 :   x9 = XEXP (x7, 0);
    4396          795 :   if (!rtx_equal_p (x9, operands[2]))
    4397              :     return -1;
    4398          795 :   x10 = XEXP (x6, 0);
    4399          795 :   if (!rtx_equal_p (x10, operands[2]))
    4400              :     return -1;
    4401          795 :   x11 = PATTERN (peep2_next_insn (2));
    4402          795 :   return pattern1206 (x11, 
    4403          795 : i1); /* [-1, 0] */
    4404              : }
    4405              : 
    4406              : int
    4407          246 : pattern1219 (rtx x1, machine_mode i1)
    4408              : {
    4409          246 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4410          246 :   rtx x2;
    4411          246 :   int res ATTRIBUTE_UNUSED;
    4412          246 :   if (!register_operand (operands[0], i1)
    4413          246 :       || GET_MODE (x1) != i1
    4414          492 :       || !register_operand (operands[2], i1))
    4415          156 :     return -1;
    4416           90 :   x2 = XVECEXP (x1, 0, 2);
    4417           90 :   if (GET_MODE (x2) != i1)
    4418              :     return -1;
    4419              :   return 0;
    4420              : }
    4421              : 
    4422              : int
    4423          725 : pattern1227 (rtx x1, int i1, int i2, int i3, int i4)
    4424              : {
    4425          725 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4426          725 :   rtx x2, x3, x4, x5;
    4427          725 :   int res ATTRIBUTE_UNUSED;
    4428          725 :   x2 = XVECEXP (x1, 0, 0);
    4429          725 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + i4])
    4430              :     return -1;
    4431          725 :   x3 = XVECEXP (x1, 0, 1);
    4432          725 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + i3])
    4433              :     return -1;
    4434          725 :   x4 = XVECEXP (x1, 0, 2);
    4435          725 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + i2])
    4436              :     return -1;
    4437          725 :   x5 = XVECEXP (x1, 0, 3);
    4438          725 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    4439            0 :     return -1;
    4440              :   return 0;
    4441              : }
    4442              : 
    4443              : int
    4444         1912 : pattern1235 (rtx x1)
    4445              : {
    4446         1912 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4447         1912 :   rtx x2, x3, x4;
    4448         1912 :   int res ATTRIBUTE_UNUSED;
    4449         1912 :   x2 = XVECEXP (x1, 0, 2);
    4450         1912 :   x3 = XEXP (x2, 0);
    4451         1912 :   x4 = XEXP (x3, 1);
    4452         1912 :   operands[4] = x4;
    4453         1912 :   switch (GET_MODE (operands[0]))
    4454              :     {
    4455         1445 :     case E_V16QImode:
    4456         1445 :       if (!register_operand (operands[0], E_V16QImode)
    4457         1445 :           || GET_MODE (x1) != E_V16QImode
    4458         1445 :           || !vector_operand (operands[1], E_V16QImode)
    4459         1273 :           || !register_operand (operands[2], E_V16QImode)
    4460         2020 :           || GET_MODE (x2) != E_V16QImode)
    4461          870 :         return -1;
    4462          575 :       switch (GET_MODE (x3))
    4463              :         {
    4464          310 :         case E_V4SImode:
    4465          310 :           if (!register_operand (operands[3], E_V4SImode)
    4466          310 :               || !vector_all_ones_operand (operands[4], E_V4SImode))
    4467          287 :             return -1;
    4468              :           return 0;
    4469              : 
    4470          258 :         case E_V2DImode:
    4471          258 :           if (!register_operand (operands[3], E_V2DImode)
    4472          258 :               || !vector_all_ones_operand (operands[4], E_V2DImode))
    4473          230 :             return -1;
    4474              :           return 1;
    4475              : 
    4476              :         default:
    4477              :           return -1;
    4478              :         }
    4479              : 
    4480          215 :     case E_V32QImode:
    4481          215 :       if (!register_operand (operands[0], E_V32QImode)
    4482          215 :           || GET_MODE (x1) != E_V32QImode
    4483          215 :           || !vector_operand (operands[1], E_V32QImode)
    4484          183 :           || !register_operand (operands[2], E_V32QImode)
    4485          334 :           || GET_MODE (x2) != E_V32QImode)
    4486           96 :         return -1;
    4487          119 :       switch (GET_MODE (x3))
    4488              :         {
    4489           73 :         case E_V8SImode:
    4490           73 :           if (!register_operand (operands[3], E_V8SImode)
    4491           73 :               || !vector_all_ones_operand (operands[4], E_V8SImode))
    4492           65 :             return -1;
    4493              :           return 2;
    4494              : 
    4495           45 :         case E_V4DImode:
    4496           45 :           if (!register_operand (operands[3], E_V4DImode)
    4497           45 :               || !vector_all_ones_operand (operands[4], E_V4DImode))
    4498           29 :             return -1;
    4499              :           return 3;
    4500              : 
    4501              :         default:
    4502              :           return -1;
    4503              :         }
    4504              : 
    4505              :     default:
    4506              :       return -1;
    4507              :     }
    4508              : }
    4509              : 
    4510              : int
    4511           80 : pattern1254 (rtx x1, machine_mode i1)
    4512              : {
    4513           80 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4514           80 :   rtx x2, x3;
    4515           80 :   int res ATTRIBUTE_UNUSED;
    4516           80 :   if (!register_operand (operands[0], i1)
    4517           80 :       || GET_MODE (x1) != i1)
    4518              :     return -1;
    4519           80 :   x2 = XEXP (x1, 0);
    4520           80 :   if (GET_MODE (x2) != i1)
    4521              :     return -1;
    4522           80 :   x3 = XEXP (x2, 0);
    4523           80 :   if (GET_MODE (x3) != i1
    4524           80 :       || !register_operand (operands[1], i1))
    4525           10 :     return -1;
    4526              :   return 0;
    4527              : }
    4528              : 
    4529              : int
    4530          342 : pattern1258 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    4531              : {
    4532          342 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4533          342 :   rtx x2;
    4534          342 :   int res ATTRIBUTE_UNUSED;
    4535          342 :   if (!register_operand (operands[0], i1)
    4536          342 :       || GET_MODE (x1) != i1)
    4537              :     return -1;
    4538          342 :   x2 = XEXP (x1, 0);
    4539          342 :   if (GET_MODE (x2) != i3
    4540          342 :       || !register_operand (operands[1], i2))
    4541           12 :     return -1;
    4542              :   return 0;
    4543              : }
    4544              : 
    4545              : int
    4546      2874714 : pattern1262 (rtx x1)
    4547              : {
    4548      2874714 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4549      2874714 :   rtx x2;
    4550      2874714 :   int res ATTRIBUTE_UNUSED;
    4551      2874714 :   x2 = XEXP (x1, 0);
    4552      2874714 :   operands[1] = x2;
    4553      2874714 :   switch (GET_MODE (operands[0]))
    4554              :     {
    4555          479 :     case E_V4QImode:
    4556          479 :       if (GET_MODE (x1) != E_V4QImode)
    4557              :         return -1;
    4558              :       return 0;
    4559              : 
    4560          239 :     case E_V2QImode:
    4561          239 :       if (GET_MODE (x1) != E_V2QImode)
    4562              :         return -1;
    4563              :       return 1;
    4564              : 
    4565          242 :     case E_V2HImode:
    4566          242 :       if (GET_MODE (x1) != E_V2HImode)
    4567              :         return -1;
    4568              :       return 2;
    4569              : 
    4570       380396 :     case E_QImode:
    4571       380396 :       if (pattern1261 (x1, 
    4572              : E_QImode) != 0)
    4573              :         return -1;
    4574              :       return 3;
    4575              : 
    4576       133115 :     case E_HImode:
    4577       133115 :       if (pattern1261 (x1, 
    4578              : E_HImode) != 0)
    4579              :         return -1;
    4580              :       return 4;
    4581              : 
    4582      1281811 :     case E_SImode:
    4583      1281811 :       if (pattern1261 (x1, 
    4584              : E_SImode) != 0)
    4585              :         return -1;
    4586              :       return 5;
    4587              : 
    4588      1063224 :     case E_DImode:
    4589      1063224 :       if (pattern1261 (x1, 
    4590              : E_DImode) != 0)
    4591              :         return -1;
    4592              :       return 6;
    4593              : 
    4594              :     default:
    4595              :       return -1;
    4596              :     }
    4597              : }
    4598              : 
    4599              : int
    4600         5339 : pattern1277 (rtx x1, machine_mode i1)
    4601              : {
    4602         5339 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4603         5339 :   rtx x2;
    4604         5339 :   int res ATTRIBUTE_UNUSED;
    4605         5339 :   if (!nonimmediate_operand (operands[0], i1)
    4606         5339 :       || GET_MODE (x1) != i1)
    4607              :     return -1;
    4608         5339 :   x2 = XEXP (x1, 0);
    4609         5339 :   if (GET_MODE (x2) != i1
    4610         5339 :       || !ix86_carry_flag_operator (operands[4], i1)
    4611         5339 :       || !nonimmediate_operand (operands[1], i1)
    4612        10639 :       || !x86_64_general_operand (operands[2], i1))
    4613          208 :     return -1;
    4614              :   return 0;
    4615              : }
    4616              : 
    4617              : int
    4618         1404 : pattern1285 (rtx x1, machine_mode i1, machine_mode i2)
    4619              : {
    4620         1404 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4621         1404 :   rtx x2;
    4622         1404 :   int res ATTRIBUTE_UNUSED;
    4623         1404 :   if (!register_operand (operands[0], i2)
    4624         1404 :       || GET_MODE (x1) != i2)
    4625              :     return -1;
    4626         1263 :   x2 = XEXP (x1, 0);
    4627         1263 :   if (GET_MODE (x2) != i2
    4628         1263 :       || !register_operand (operands[1], i2)
    4629         1263 :       || !bcst_vector_operand (operands[2], i2)
    4630         1263 :       || !nonimm_or_0_operand (operands[4], i2)
    4631         2506 :       || !register_operand (operands[5], i1))
    4632          188 :     return -1;
    4633              :   return 0;
    4634              : }
    4635              : 
    4636              : int
    4637         3387 : pattern1294 (rtx x1)
    4638              : {
    4639         3387 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4640         3387 :   rtx x2, x3;
    4641         3387 :   int res ATTRIBUTE_UNUSED;
    4642         3387 :   x2 = XEXP (x1, 2);
    4643         3387 :   if (GET_MODE (x2) != E_QImode)
    4644              :     return -1;
    4645         2021 :   x3 = XVECEXP (x2, 0, 2);
    4646         2021 :   operands[5] = x3;
    4647         2021 :   if (!const_0_to_31_operand (operands[5], E_SImode))
    4648              :     return -1;
    4649         2021 :   switch (GET_MODE (operands[0]))
    4650              :     {
    4651          752 :     case E_V8SImode:
    4652          752 :       return pattern1293 (x1, 
    4653              : E_V8SFmode, 
    4654          752 : E_V8SImode); /* [-1, 0] */
    4655              : 
    4656          814 :     case E_V4SImode:
    4657          814 :       if (pattern1293 (x1, 
    4658              : E_V4SFmode, 
    4659              : E_V4SImode) != 0)
    4660              :         return -1;
    4661              :       return 1;
    4662              : 
    4663           97 :     case E_V4DImode:
    4664           97 :       if (pattern1293 (x1, 
    4665              : E_V4DFmode, 
    4666              : E_V4DImode) != 0)
    4667              :         return -1;
    4668              :       return 2;
    4669              : 
    4670           92 :     case E_V2DImode:
    4671           92 :       if (pattern1293 (x1, 
    4672              : E_V2DFmode, 
    4673              : E_V2DImode) != 0)
    4674              :         return -1;
    4675              :       return 3;
    4676              : 
    4677              :     default:
    4678              :       return -1;
    4679              :     }
    4680              : }
    4681              : 
    4682              : int
    4683         3662 : pattern1305 (rtx x1)
    4684              : {
    4685         3662 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4686         3662 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4687         3662 :   int res ATTRIBUTE_UNUSED;
    4688         3662 :   x2 = XVECEXP (x1, 0, 4);
    4689         3662 :   if (GET_CODE (x2) != CONST_INT)
    4690              :     return -1;
    4691         3662 :   x3 = XVECEXP (x1, 0, 5);
    4692         3662 :   if (GET_CODE (x3) != CONST_INT)
    4693              :     return -1;
    4694         3662 :   x4 = XVECEXP (x1, 0, 6);
    4695         3662 :   if (GET_CODE (x4) != CONST_INT)
    4696              :     return -1;
    4697         3662 :   x5 = XVECEXP (x1, 0, 7);
    4698         3662 :   if (GET_CODE (x5) != CONST_INT)
    4699              :     return -1;
    4700         3662 :   x6 = XVECEXP (x1, 0, 8);
    4701         3662 :   if (GET_CODE (x6) != CONST_INT)
    4702              :     return -1;
    4703         3662 :   x7 = XVECEXP (x1, 0, 9);
    4704         3662 :   if (GET_CODE (x7) != CONST_INT)
    4705              :     return -1;
    4706         3662 :   x8 = XVECEXP (x1, 0, 10);
    4707         3662 :   if (GET_CODE (x8) != CONST_INT)
    4708              :     return -1;
    4709         3662 :   x9 = XVECEXP (x1, 0, 11);
    4710         3662 :   if (GET_CODE (x9) != CONST_INT)
    4711            0 :     return -1;
    4712              :   return 0;
    4713              : }
    4714              : 
    4715              : int
    4716         1551 : pattern1317 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    4717              : {
    4718         1551 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4719         1551 :   rtx x2, x3;
    4720         1551 :   int res ATTRIBUTE_UNUSED;
    4721         1551 :   if (!register_operand (operands[0], i1)
    4722         1551 :       || GET_MODE (x1) != i1)
    4723              :     return -1;
    4724         1524 :   x2 = XVECEXP (x1, 0, 0);
    4725         1524 :   if (GET_MODE (x2) != i1)
    4726              :     return -1;
    4727         1524 :   x3 = XEXP (x2, 0);
    4728         1524 :   if (GET_MODE (x3) != i1
    4729         1524 :       || !nonimmediate_operand (operands[1], i2)
    4730         1524 :       || !nonimm_or_0_operand (operands[2], i1)
    4731         3045 :       || !register_operand (operands[3], i3))
    4732           12 :     return -1;
    4733              :   return 0;
    4734              : }
    4735              : 
    4736              : int
    4737          835 : pattern1322 (rtx x1)
    4738              : {
    4739          835 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4740          835 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4741          835 :   rtx x10, x11, x12;
    4742          835 :   int res ATTRIBUTE_UNUSED;
    4743          835 :   x2 = XEXP (x1, 0);
    4744          835 :   x3 = XEXP (x2, 0);
    4745          835 :   x4 = XEXP (x3, 0);
    4746          835 :   x5 = XEXP (x4, 1);
    4747          835 :   x6 = XVECEXP (x5, 0, 0);
    4748          835 :   if (GET_CODE (x6) != CONST_INT)
    4749              :     return -1;
    4750          835 :   x7 = XVECEXP (x5, 0, 1);
    4751          835 :   if (GET_CODE (x7) != CONST_INT)
    4752              :     return -1;
    4753          835 :   x8 = XEXP (x2, 1);
    4754          835 :   x9 = XEXP (x8, 0);
    4755          835 :   x10 = XEXP (x9, 1);
    4756          835 :   if (XVECLEN (x10, 0) != 2)
    4757              :     return -1;
    4758          835 :   x11 = XVECEXP (x10, 0, 0);
    4759          835 :   if (GET_CODE (x11) != CONST_INT)
    4760              :     return -1;
    4761          835 :   x12 = XVECEXP (x10, 0, 1);
    4762          835 :   if (GET_CODE (x12) != CONST_INT
    4763          835 :       || !register_operand (operands[0], E_V2DImode)
    4764          777 :       || GET_MODE (x1) != E_V2DImode
    4765          777 :       || GET_MODE (x2) != E_V2DImode
    4766          777 :       || GET_MODE (x3) != E_V2DImode
    4767          777 :       || GET_MODE (x4) != E_V2SImode
    4768         1612 :       || !nonimmediate_operand (operands[1], E_V4SImode))
    4769          137 :     return -1;
    4770              :   return 0;
    4771              : }
    4772              : 
    4773              : int
    4774          597 : pattern1338 (rtx x1)
    4775              : {
    4776          597 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4777          597 :   rtx x2, x3, x4, x5, x6, x7;
    4778          597 :   int res ATTRIBUTE_UNUSED;
    4779          597 :   x2 = XEXP (x1, 0);
    4780          597 :   x3 = XEXP (x2, 1);
    4781          597 :   if (maybe_ne (SUBREG_BYTE (x3), 0)
    4782          597 :       || GET_MODE (x3) != E_QImode)
    4783              :     return -1;
    4784          597 :   x4 = XEXP (x3, 0);
    4785          597 :   if (GET_CODE (x4) != AND)
    4786              :     return -1;
    4787          162 :   x5 = XEXP (x4, 0);
    4788          162 :   operands[1] = x5;
    4789          162 :   if (!int248_register_operand (operands[1], E_VOIDmode))
    4790              :     return -1;
    4791          157 :   x6 = XEXP (x4, 1);
    4792          157 :   operands[2] = x6;
    4793          157 :   if (!const_int_operand (operands[2], E_VOIDmode))
    4794              :     return -1;
    4795          157 :   x7 = XEXP (x1, 1);
    4796          157 :   operands[3] = x7;
    4797          157 :   switch (GET_MODE (operands[0]))
    4798              :     {
    4799           64 :     case E_SImode:
    4800           64 :       return pattern372 (x1, 
    4801           64 : E_SImode); /* [-1, 0] */
    4802              : 
    4803           65 :     case E_DImode:
    4804           65 :       if (pattern372 (x1, 
    4805              : E_DImode) != 0)
    4806              :         return -1;
    4807              :       return 1;
    4808              : 
    4809              :     default:
    4810              :       return -1;
    4811              :     }
    4812              : }
    4813              : 
    4814              : int
    4815        32410 : pattern1351 (rtx x1, machine_mode i1)
    4816              : {
    4817        32410 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4818        32410 :   rtx x2, x3, x4, x5, x6;
    4819        32410 :   int res ATTRIBUTE_UNUSED;
    4820        32410 :   x2 = XEXP (x1, 1);
    4821        32410 :   operands[2] = x2;
    4822        32410 :   if (!general_reg_operand (operands[2], i1))
    4823              :     return -1;
    4824         2732 :   x3 = XEXP (x1, 0);
    4825         2732 :   if (!rtx_equal_p (x3, operands[1]))
    4826              :     return -1;
    4827          198 :   x4 = PATTERN (peep2_next_insn (2));
    4828          198 :   x5 = XEXP (x4, 1);
    4829          198 :   if (!rtx_equal_p (x5, operands[0]))
    4830              :     return -1;
    4831           33 :   x6 = XEXP (x4, 0);
    4832           33 :   if (!rtx_equal_p (x6, operands[2]))
    4833              :     return -1;
    4834              :   return 0;
    4835              : }
    4836              : 
    4837              : int
    4838        28586 : pattern1359 (rtx x1, machine_mode i1)
    4839              : {
    4840        28586 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4841        28586 :   rtx x2, x3, x4, x5, x6;
    4842        28586 :   int res ATTRIBUTE_UNUSED;
    4843        28586 :   if (!plusminuslogic_operator (operands[3], i1))
    4844              :     return -1;
    4845         6524 :   x2 = XVECEXP (x1, 0, 1);
    4846         6524 :   if (GET_CODE (x2) != CLOBBER)
    4847              :     return -1;
    4848         6524 :   x3 = XEXP (x2, 0);
    4849         6524 :   if (GET_CODE (x3) != REG
    4850         6524 :       || REGNO (x3) != 17
    4851        13048 :       || GET_MODE (x3) != E_CCmode)
    4852              :     return -1;
    4853         6524 :   x4 = XVECEXP (x1, 0, 0);
    4854         6524 :   x5 = XEXP (x4, 1);
    4855         6524 :   x6 = XEXP (x5, 1);
    4856         6524 :   operands[2] = x6;
    4857         6524 :   if (!nonmemory_operand (operands[2], i1)
    4858         6524 :       || pattern1358 (x4) != 0)
    4859         6194 :     return -1;
    4860              :   return 0;
    4861              : }
    4862              : 
    4863              : int
    4864           18 : pattern1368 (rtx x1, machine_mode i1)
    4865              : {
    4866           18 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4867           18 :   rtx x2;
    4868           18 :   int res ATTRIBUTE_UNUSED;
    4869           18 :   if (!nonimmediate_operand (operands[0], i1)
    4870           18 :       || GET_MODE (x1) != i1)
    4871              :     return -1;
    4872           18 :   x2 = XEXP (x1, 0);
    4873           18 :   if (GET_MODE (x2) != i1
    4874           18 :       || !ix86_carry_flag_operator (operands[4], i1)
    4875           18 :       || !nonimmediate_operand (operands[1], i1)
    4876           36 :       || !general_operand (operands[2], i1))
    4877            0 :     return -1;
    4878              :   return 0;
    4879              : }
    4880              : 
    4881              : int
    4882           85 : pattern1374 (rtx x1)
    4883              : {
    4884           85 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4885           85 :   rtx x2, x3, x4, x5, x6, x7, x8;
    4886           85 :   int res ATTRIBUTE_UNUSED;
    4887           85 :   if (!register_operand (operands[0], E_SImode))
    4888              :     return -1;
    4889           63 :   x2 = XEXP (x1, 0);
    4890           63 :   x3 = XEXP (x2, 0);
    4891           63 :   operands[1] = x3;
    4892           63 :   if (!nonimmediate_operand (operands[1], E_SImode))
    4893              :     return -1;
    4894           63 :   x4 = XEXP (x1, 1);
    4895           63 :   if (GET_MODE (x4) != E_SImode)
    4896              :     return -1;
    4897           63 :   x5 = XEXP (x4, 0);
    4898           63 :   if (GET_MODE (x5) != E_DImode)
    4899              :     return -1;
    4900           63 :   x6 = XEXP (x5, 0);
    4901           63 :   if (GET_MODE (x6) != E_DImode)
    4902              :     return -1;
    4903           63 :   x7 = XEXP (x6, 0);
    4904           63 :   operands[2] = x7;
    4905           63 :   if (!register_operand (operands[2], E_SImode))
    4906              :     return -1;
    4907           63 :   x8 = XEXP (x5, 1);
    4908           63 :   operands[4] = x8;
    4909           63 :   if (!const_0_to_63_operand (operands[4], E_QImode))
    4910              :     return -1;
    4911              :   return 0;
    4912              : }
    4913              : 
    4914              : int
    4915          546 : pattern1385 (machine_mode i1, machine_mode i2)
    4916              : {
    4917          546 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4918          546 :   int res ATTRIBUTE_UNUSED;
    4919          546 :   if (!nonimmediate_operand (operands[2], i2)
    4920          546 :       || !nonimmediate_operand (operands[3], i2)
    4921          546 :       || !const0_operand (operands[4], i2)
    4922         1092 :       || !register_operand (operands[5], i1))
    4923            0 :     return -1;
    4924              :   return 0;
    4925              : }
    4926              : 
    4927              : int
    4928           60 : pattern1393 (rtx x1, machine_mode i1)
    4929              : {
    4930           60 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4931           60 :   int res ATTRIBUTE_UNUSED;
    4932           60 :   if (!nonimmediate_operand (operands[2], i1)
    4933           60 :       || GET_MODE (x1) != i1
    4934           60 :       || !nonimmediate_operand (operands[3], i1)
    4935          120 :       || !const0_operand (operands[4], i1))
    4936            0 :     return -1;
    4937              :   return 0;
    4938              : }
    4939              : 
    4940              : int
    4941          417 : pattern1401 (rtx x1, machine_mode i1, machine_mode i2)
    4942              : {
    4943          417 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4944          417 :   rtx x2, x3, x4;
    4945          417 :   int res ATTRIBUTE_UNUSED;
    4946          417 :   if (!register_operand (operands[0], i2)
    4947          417 :       || GET_MODE (x1) != i2)
    4948              :     return -1;
    4949          391 :   x2 = XEXP (x1, 0);
    4950          391 :   if (GET_MODE (x2) != i2)
    4951              :     return -1;
    4952          391 :   x3 = XEXP (x2, 0);
    4953          391 :   if (GET_MODE (x3) != i2
    4954          391 :       || !bcst_vector_operand (operands[1], i2))
    4955            0 :     return -1;
    4956          391 :   x4 = XEXP (x2, 2);
    4957          391 :   return pattern1389 (x4, 
    4958              : i1, 
    4959          391 : i2); /* [-1, 0] */
    4960              : }
    4961              : 
    4962              : int
    4963          971 : pattern1408 (rtx x1)
    4964              : {
    4965          971 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4966          971 :   rtx x2, x3;
    4967          971 :   int res ATTRIBUTE_UNUSED;
    4968          971 :   x2 = XVECEXP (x1, 0, 0);
    4969          971 :   x3 = XEXP (x2, 2);
    4970          971 :   if (XWINT (x3, 0) != 1L
    4971          971 :       || !const_0_to_255_operand (operands[3], E_SImode))
    4972            0 :     return -1;
    4973          971 :   return pattern1407 (x1); /* [-1, 2] */
    4974              : }
    4975              : 
    4976              : int
    4977          195 : pattern1413 (rtx x1, machine_mode i1)
    4978              : {
    4979          195 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4980          195 :   rtx x2, x3;
    4981          195 :   int res ATTRIBUTE_UNUSED;
    4982          195 :   if (!register_operand (operands[0], i1)
    4983          195 :       || GET_MODE (x1) != i1)
    4984              :     return -1;
    4985          184 :   x2 = XVECEXP (x1, 0, 0);
    4986          184 :   if (GET_MODE (x2) != i1)
    4987              :     return -1;
    4988          184 :   x3 = XEXP (x2, 0);
    4989          184 :   if (GET_MODE (x3) != i1
    4990          184 :       || !nonimmediate_operand (operands[1], i1)
    4991          366 :       || !register_operand (operands[2], i1))
    4992           27 :     return -1;
    4993              :   return 0;
    4994              : }
    4995              : 
    4996              : int
    4997          321 : pattern1420 (rtx x1, machine_mode i1)
    4998              : {
    4999          321 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5000          321 :   rtx x2;
    5001          321 :   int res ATTRIBUTE_UNUSED;
    5002          321 :   if (!register_operand (operands[0], i1)
    5003          321 :       || GET_MODE (x1) != i1)
    5004              :     return -1;
    5005          312 :   x2 = XVECEXP (x1, 0, 0);
    5006          312 :   if (GET_MODE (x2) != i1
    5007          312 :       || !register_operand (operands[1], i1)
    5008          312 :       || !register_operand (operands[2], i1)
    5009          619 :       || !register_operand (operands[3], i1))
    5010            5 :     return -1;
    5011              :   return 0;
    5012              : }
    5013              : 
    5014              : int
    5015          828 : pattern1427 (rtx x1, machine_mode i1, machine_mode i2)
    5016              : {
    5017          828 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5018          828 :   rtx x2, x3, x4, x5, x6;
    5019          828 :   int res ATTRIBUTE_UNUSED;
    5020          828 :   if (!register_operand (operands[0], i2)
    5021          828 :       || GET_MODE (x1) != i2)
    5022              :     return -1;
    5023          776 :   x2 = XEXP (x1, 0);
    5024          776 :   if (GET_MODE (x2) != i1)
    5025              :     return -1;
    5026          776 :   x3 = XEXP (x2, 0);
    5027          776 :   if (GET_MODE (x3) != i1)
    5028              :     return -1;
    5029          776 :   x4 = XEXP (x3, 0);
    5030          776 :   if (GET_MODE (x4) != i1)
    5031              :     return -1;
    5032          776 :   x5 = XEXP (x4, 0);
    5033          776 :   if (GET_MODE (x5) != i1
    5034          776 :       || !vector_operand (operands[1], i2))
    5035           31 :     return -1;
    5036          745 :   x6 = XEXP (x4, 1);
    5037          745 :   if (GET_MODE (x6) != i1
    5038          745 :       || !vector_operand (operands[2], i2)
    5039         1462 :       || !const1_operand (operands[3], i1))
    5040           28 :     return -1;
    5041              :   return 0;
    5042              : }
    5043              : 
    5044              : int
    5045       439826 : pattern1439 (rtx x1, machine_mode i1)
    5046              : {
    5047       439826 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5048       439826 :   int res ATTRIBUTE_UNUSED;
    5049       439826 :   if (!nonimmediate_operand (operands[1], i1)
    5050       439563 :       || !x86_64_general_operand (operands[2], i1)
    5051       436485 :       || !nonimmediate_operand (operands[0], i1)
    5052       876311 :       || GET_MODE (x1) != i1)
    5053         3341 :     return -1;
    5054              :   return 0;
    5055              : }
    5056              : 
    5057              : int
    5058       236997 : pattern1447 (rtx x1)
    5059              : {
    5060       236997 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5061       236997 :   rtx x2, x3, x4, x5, x6, x7;
    5062       236997 :   int res ATTRIBUTE_UNUSED;
    5063       236997 :   x2 = XEXP (x1, 0);
    5064       236997 :   operands[0] = x2;
    5065       236997 :   x3 = XEXP (x1, 1);
    5066       236997 :   x4 = XEXP (x3, 1);
    5067       236997 :   x5 = XEXP (x4, 0);
    5068       236997 :   switch (GET_CODE (x5))
    5069              :     {
    5070        27506 :     case AND:
    5071        27506 :       return pattern1446 (x3); /* [-1, 1] */
    5072              : 
    5073            0 :     case PLUS:
    5074            0 :       res = pattern1446 (x3);
    5075            0 :       if (res >= 0)
    5076            0 :         return res + 2; /* [2, 3] */
    5077              :       return -1;
    5078              : 
    5079            0 :     case MINUS:
    5080            0 :       x6 = XEXP (x5, 0);
    5081            0 :       operands[3] = x6;
    5082            0 :       if (!const_int_operand (operands[3], E_VOIDmode))
    5083              :         return -1;
    5084            0 :       x7 = XEXP (x5, 1);
    5085            0 :       operands[2] = x7;
    5086            0 :       if (!int248_register_operand (operands[2], E_VOIDmode))
    5087              :         return -1;
    5088            0 :       res = pattern340 (x3);
    5089            0 :       if (res >= 0)
    5090            0 :         return res + 4; /* [4, 5] */
    5091              :       return -1;
    5092              : 
    5093              :     default:
    5094              :       return -1;
    5095              :     }
    5096              : }
    5097              : 
    5098              : int
    5099            0 : pattern1461 (rtx x1, machine_mode i1)
    5100              : {
    5101            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5102            0 :   int res ATTRIBUTE_UNUSED;
    5103            0 :   if (!nonimmediate_operand (operands[0], i1))
    5104              :     return -1;
    5105            0 :   switch (GET_MODE (x1))
    5106              :     {
    5107            0 :     case E_HImode:
    5108            0 :       if (!register_operand (operands[1], E_HImode))
    5109              :         return -1;
    5110              :       return 0;
    5111              : 
    5112            0 :     case E_SImode:
    5113            0 :       if (!register_operand (operands[1], E_SImode))
    5114              :         return -1;
    5115              :       return 1;
    5116              : 
    5117            0 :     case E_DImode:
    5118            0 :       if (!register_operand (operands[1], E_DImode))
    5119              :         return -1;
    5120              :       return 2;
    5121              : 
    5122              :     default:
    5123              :       return -1;
    5124              :     }
    5125              : }
    5126              : 
    5127              : int
    5128          543 : pattern1471 (rtx x1, machine_mode i1)
    5129              : {
    5130          543 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5131          543 :   rtx x2, x3;
    5132          543 :   int res ATTRIBUTE_UNUSED;
    5133          543 :   if (!register_operand (operands[0], i1)
    5134          543 :       || GET_MODE (x1) != i1)
    5135              :     return -1;
    5136          516 :   x2 = XEXP (x1, 0);
    5137          516 :   if (GET_MODE (x2) != i1)
    5138              :     return -1;
    5139          516 :   x3 = XEXP (x2, 0);
    5140          516 :   if (GET_MODE (x3) != i1
    5141          516 :       || !nonimmediate_operand (operands[1], i1)
    5142          516 :       || !nonimmediate_operand (operands[2], i1)
    5143         1028 :       || !nonimmediate_operand (operands[3], i1))
    5144            4 :     return -1;
    5145              :   return 0;
    5146              : }
    5147              : 
    5148              : int
    5149            0 : pattern1480 (rtx x1, machine_mode i1, machine_mode i2)
    5150              : {
    5151            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5152            0 :   int res ATTRIBUTE_UNUSED;
    5153            0 :   if (!const0_operand (operands[2], i1)
    5154            0 :       || GET_MODE (x1) != i2
    5155            0 :       || !nonimmediate_operand (operands[3], i1)
    5156            0 :       || !const0_operand (operands[4], i1))
    5157            0 :     return -1;
    5158              :   return 0;
    5159              : }
    5160              : 
    5161              : int
    5162         1605 : pattern1485 (rtx x1, machine_mode i1)
    5163              : {
    5164         1605 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5165         1605 :   rtx x2, x3;
    5166         1605 :   int res ATTRIBUTE_UNUSED;
    5167         1605 :   if (!register_operand (operands[0], i1)
    5168         1605 :       || GET_MODE (x1) != i1)
    5169              :     return -1;
    5170         1569 :   x2 = XVECEXP (x1, 0, 0);
    5171         1569 :   if (GET_MODE (x2) != i1)
    5172              :     return -1;
    5173         1569 :   x3 = XEXP (x2, 0);
    5174         1569 :   if (GET_MODE (x3) != i1
    5175         1569 :       || !nonimm_or_0_operand (operands[2], i1)
    5176         3136 :       || !register_operand (operands[3], E_QImode))
    5177           15 :     return -1;
    5178         1554 :   switch (GET_MODE (operands[1]))
    5179              :     {
    5180          423 :     case E_V8HFmode:
    5181          423 :       if (!register_operand (operands[1], E_V8HFmode))
    5182              :         return -1;
    5183              :       return 0;
    5184              : 
    5185          368 :     case E_V8SFmode:
    5186          368 :       if (!nonimmediate_operand (operands[1], E_V8SFmode))
    5187              :         return -1;
    5188              :       return 1;
    5189              : 
    5190          763 :     case E_V8DFmode:
    5191          763 :       if (!nonimmediate_operand (operands[1], E_V8DFmode))
    5192              :         return -1;
    5193              :       return 2;
    5194              : 
    5195              :     default:
    5196              :       return -1;
    5197              :     }
    5198              : }
    5199              : 
    5200              : int
    5201           84 : pattern1497 (rtx x1)
    5202              : {
    5203           84 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5204           84 :   rtx x2, x3, x4, x5, x6;
    5205           84 :   int res ATTRIBUTE_UNUSED;
    5206           84 :   x2 = XEXP (x1, 1);
    5207           84 :   x3 = XEXP (x2, 0);
    5208           84 :   x4 = XEXP (x3, 0);
    5209           84 :   operands[1] = x4;
    5210           84 :   if (!int248_register_operand (operands[1], E_VOIDmode))
    5211              :     return -1;
    5212           84 :   x5 = XEXP (x3, 1);
    5213           84 :   operands[2] = x5;
    5214           84 :   if (!int248_register_operand (operands[2], E_VOIDmode))
    5215              :     return -1;
    5216           84 :   x6 = XEXP (x1, 0);
    5217           84 :   switch (GET_MODE (x6))
    5218              :     {
    5219           12 :     case E_HImode:
    5220           12 :       if (!extract_high_operator (operands[3], E_HImode))
    5221              :         return -1;
    5222              :       return 0;
    5223              : 
    5224           42 :     case E_SImode:
    5225           42 :       if (!extract_high_operator (operands[3], E_SImode))
    5226              :         return -1;
    5227              :       return 1;
    5228              : 
    5229           30 :     case E_DImode:
    5230           30 :       if (!extract_high_operator (operands[3], E_DImode))
    5231              :         return -1;
    5232              :       return 2;
    5233              : 
    5234              :     default:
    5235              :       return -1;
    5236              :     }
    5237              : }
    5238              : 
    5239              : int
    5240           92 : pattern1511 (rtx x1, rtx_code i1)
    5241              : {
    5242           92 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5243           92 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5244           92 :   rtx x10;
    5245           92 :   int res ATTRIBUTE_UNUSED;
    5246           92 :   x2 = XVECEXP (x1, 0, 1);
    5247           92 :   x3 = XEXP (x2, 1);
    5248           92 :   if (GET_CODE (x3) != i1)
    5249              :     return -1;
    5250           92 :   x4 = XVECEXP (x1, 0, 0);
    5251           92 :   x5 = XEXP (x4, 0);
    5252           92 :   operands[1] = x5;
    5253           92 :   x6 = XEXP (x4, 1);
    5254           92 :   x7 = XEXP (x6, 0);
    5255           92 :   x8 = XEXP (x7, 0);
    5256           92 :   operands[2] = x8;
    5257           92 :   if (!register_operand (operands[2], E_SImode))
    5258              :     return -1;
    5259           92 :   x9 = XEXP (x7, 1);
    5260           92 :   operands[3] = x9;
    5261           92 :   if (!nonimmediate_operand (operands[3], E_SImode))
    5262              :     return -1;
    5263           92 :   x10 = XEXP (x2, 0);
    5264           92 :   operands[0] = x10;
    5265           92 :   return pattern1509 (x1); /* [-1, 1] */
    5266              : }
    5267              : 
    5268              : int
    5269          228 : pattern1522 (rtx x1, machine_mode i1)
    5270              : {
    5271          228 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5272          228 :   rtx x2, x3, x4;
    5273          228 :   int res ATTRIBUTE_UNUSED;
    5274          228 :   if (GET_MODE (x1) != i1)
    5275              :     return -1;
    5276          228 :   x2 = XEXP (x1, 0);
    5277          228 :   if (GET_MODE (x2) != i1)
    5278              :     return -1;
    5279          228 :   x3 = XEXP (x2, 0);
    5280          228 :   if (GET_MODE (x3) != i1)
    5281              :     return -1;
    5282          228 :   x4 = XEXP (x3, 0);
    5283          228 :   if (GET_MODE (x4) != i1)
    5284            0 :     return -1;
    5285              :   return 0;
    5286              : }
    5287              : 
    5288              : int
    5289          146 : pattern1527 (rtx x1, machine_mode i1, machine_mode i2)
    5290              : {
    5291          146 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5292          146 :   rtx x2, x3;
    5293          146 :   int res ATTRIBUTE_UNUSED;
    5294          146 :   if (!register_operand (operands[0], i1)
    5295          146 :       || GET_MODE (x1) != i1)
    5296              :     return -1;
    5297          136 :   x2 = XEXP (x1, 0);
    5298          136 :   if (GET_MODE (x2) != i1
    5299          136 :       || !nonimmediate_operand (operands[2], i2))
    5300            0 :     return -1;
    5301          136 :   x3 = XEXP (x2, 1);
    5302          136 :   if (GET_MODE (x3) != i2
    5303          136 :       || !register_operand (operands[1], i1)
    5304          260 :       || !nonimm_or_0_operand (operands[3], i1))
    5305           27 :     return -1;
    5306              :   return 0;
    5307              : }
    5308              : 
    5309              : int
    5310          530 : pattern1538 (rtx x1, machine_mode i1)
    5311              : {
    5312          530 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5313          530 :   int res ATTRIBUTE_UNUSED;
    5314          530 :   if (!nonimmediate_operand (operands[0], i1)
    5315          530 :       || GET_MODE (x1) != i1
    5316          530 :       || !ix86_carry_flag_unset_operator (operands[2], i1)
    5317          933 :       || !nonimmediate_operand (operands[1], i1))
    5318          357 :     return -1;
    5319              :   return 0;
    5320              : }
    5321              : 
    5322              : int
    5323            0 : pattern1544 (rtx x1, machine_mode i1, machine_mode i2)
    5324              : {
    5325            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5326            0 :   rtx x2;
    5327            0 :   int res ATTRIBUTE_UNUSED;
    5328            0 :   if (!register_operand (operands[0], i1)
    5329            0 :       || GET_MODE (x1) != i1)
    5330              :     return -1;
    5331            0 :   x2 = XEXP (x1, 2);
    5332            0 :   return pattern1480 (x2, 
    5333              : i1, 
    5334            0 : i2); /* [-1, 0] */
    5335              : }
    5336              : 
    5337              : int
    5338            3 : pattern1549 (rtx x1, machine_mode i1)
    5339              : {
    5340            3 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5341            3 :   int res ATTRIBUTE_UNUSED;
    5342            3 :   if (GET_MODE (x1) != i1
    5343            3 :       || !ix86_carry_flag_operator (operands[3], i1)
    5344            3 :       || !nonimmediate_operand (operands[1], i1)
    5345            6 :       || !x86_64_general_operand (operands[2], i1))
    5346            0 :     return -1;
    5347              :   return 0;
    5348              : }
    5349              : 
    5350              : int
    5351           52 : pattern1554 (rtx x1, machine_mode i1)
    5352              : {
    5353           52 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5354           52 :   rtx x2, x3, x4;
    5355           52 :   int res ATTRIBUTE_UNUSED;
    5356           52 :   if (!register_operand (operands[0], i1)
    5357           52 :       || GET_MODE (x1) != i1)
    5358              :     return -1;
    5359           43 :   x2 = XEXP (x1, 0);
    5360           43 :   if (GET_MODE (x2) != i1)
    5361              :     return -1;
    5362           43 :   x3 = XEXP (x2, 0);
    5363           43 :   if (GET_MODE (x3) != i1)
    5364              :     return -1;
    5365           43 :   x4 = XEXP (x3, 0);
    5366           43 :   if (GET_MODE (x4) != i1
    5367           43 :       || !nonimmediate_operand (operands[2], i1)
    5368           43 :       || !nonimmediate_operand (operands[1], i1)
    5369           43 :       || !nonimmediate_operand (operands[3], i1)
    5370           86 :       || !const0_operand (operands[4], i1))
    5371            0 :     return -1;
    5372              :   return 0;
    5373              : }
    5374              : 
    5375              : int
    5376          190 : pattern1565 (rtx x1, machine_mode i1)
    5377              : {
    5378          190 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5379          190 :   rtx x2, x3, x4, x5, x6, x7;
    5380          190 :   int res ATTRIBUTE_UNUSED;
    5381          190 :   x2 = XEXP (x1, 0);
    5382          190 :   if (GET_CODE (x2) != VEC_SELECT
    5383          190 :       || GET_MODE (x2) != i1)
    5384              :     return -1;
    5385          190 :   x3 = XEXP (x2, 1);
    5386          190 :   if (GET_CODE (x3) != PARALLEL
    5387          190 :       || XVECLEN (x3, 0) != 1)
    5388              :     return -1;
    5389          190 :   x4 = XVECEXP (x3, 0, 0);
    5390          190 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    5391              :     return -1;
    5392          190 :   x5 = XEXP (x1, 1);
    5393          190 :   if (GET_CODE (x5) != VEC_SELECT
    5394          190 :       || GET_MODE (x5) != i1)
    5395              :     return -1;
    5396          190 :   x6 = XEXP (x5, 1);
    5397          190 :   if (GET_CODE (x6) != PARALLEL
    5398          190 :       || XVECLEN (x6, 0) != 1)
    5399              :     return -1;
    5400          190 :   x7 = XVECEXP (x6, 0, 0);
    5401          190 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    5402            0 :     return -1;
    5403              :   return 0;
    5404              : }
    5405              : 
    5406              : int
    5407         5043 : pattern1580 (rtx x1, machine_mode i1, machine_mode i2)
    5408              : {
    5409         5043 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5410         5043 :   rtx x2, x3, x4;
    5411         5043 :   int res ATTRIBUTE_UNUSED;
    5412         5043 :   if (!register_operand (operands[0], i2)
    5413         5043 :       || GET_MODE (x1) != i2)
    5414              :     return -1;
    5415         5043 :   x2 = XEXP (x1, 0);
    5416         5043 :   if (GET_MODE (x2) != i2)
    5417              :     return -1;
    5418         5043 :   x3 = XEXP (x2, 0);
    5419         5043 :   if (GET_MODE (x3) != i2
    5420         5043 :       || !register_operand (operands[1], i1))
    5421            0 :     return -1;
    5422         5043 :   x4 = XEXP (x1, 1);
    5423         5043 :   if (GET_MODE (x4) != i2
    5424         5043 :       || !register_operand (operands[2], i1))
    5425          160 :     return -1;
    5426              :   return 0;
    5427              : }
    5428              : 
    5429              : int
    5430           15 : pattern1589 (rtx x1, machine_mode i1)
    5431              : {
    5432           15 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5433           15 :   rtx x2, x3, x4, x5;
    5434           15 :   int res ATTRIBUTE_UNUSED;
    5435           15 :   if (!general_reg_operand (operands[0], i1))
    5436              :     return -1;
    5437           15 :   x2 = XVECEXP (x1, 0, 0);
    5438           15 :   x3 = XEXP (x2, 1);
    5439           15 :   if (GET_MODE (x3) != i1
    5440           15 :       || !register_operand (operands[2], i1)
    5441           15 :       || !nonimmediate_operand (operands[3], i1)
    5442           30 :       || !general_reg_operand (operands[1], i1))
    5443            0 :     return -1;
    5444           15 :   x4 = XVECEXP (x1, 0, 1);
    5445           15 :   x5 = XEXP (x4, 1);
    5446           15 :   if (GET_MODE (x5) != i1
    5447           15 :       || !general_reg_operand (operands[4], i1)
    5448           19 :       || !general_reg_operand (operands[5], i1))
    5449           13 :     return -1;
    5450              :   return 0;
    5451              : }
    5452              : 
    5453              : int
    5454          148 : pattern1597 (rtx x1, machine_mode i1)
    5455              : {
    5456          148 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5457          148 :   rtx x2, x3;
    5458          148 :   int res ATTRIBUTE_UNUSED;
    5459          148 :   if (!register_operand (operands[0], i1)
    5460          148 :       || GET_MODE (x1) != i1)
    5461              :     return -1;
    5462          127 :   x2 = XVECEXP (x1, 0, 0);
    5463          127 :   if (GET_MODE (x2) != i1)
    5464              :     return -1;
    5465          127 :   x3 = XEXP (x2, 0);
    5466          127 :   if (GET_MODE (x3) != i1
    5467          127 :       || !register_operand (operands[2], i1)
    5468          238 :       || !register_operand (operands[1], i1))
    5469           20 :     return -1;
    5470              :   return 0;
    5471              : }
    5472              : 
    5473              : int
    5474            0 : pattern1603 (rtx x1, machine_mode i1, machine_mode i2)
    5475              : {
    5476            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5477            0 :   rtx x2, x3, x4;
    5478            0 :   int res ATTRIBUTE_UNUSED;
    5479            0 :   if (!register_operand (operands[0], i1)
    5480            0 :       || GET_MODE (x1) != i1)
    5481              :     return -1;
    5482            0 :   x2 = XVECEXP (x1, 0, 0);
    5483            0 :   if (GET_MODE (x2) != i1)
    5484              :     return -1;
    5485            0 :   x3 = XEXP (x2, 0);
    5486            0 :   if (GET_MODE (x3) != i1
    5487            0 :       || !register_operand (operands[1], i1)
    5488            0 :       || !register_operand (operands[2], i1)
    5489            0 :       || !nonimmediate_operand (operands[3], i1)
    5490            0 :       || !register_operand (operands[4], i2))
    5491            0 :     return -1;
    5492            0 :   x4 = XEXP (x2, 1);
    5493            0 :   if (!rtx_equal_p (x4, operands[3]))
    5494              :     return -1;
    5495              :   return 0;
    5496              : }
    5497              : 
    5498              : int
    5499          701 : pattern1615 (rtx x1, machine_mode i1)
    5500              : {
    5501          701 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5502          701 :   rtx x2, x3, x4;
    5503          701 :   int res ATTRIBUTE_UNUSED;
    5504          701 :   if (!vsib_mem_operator (operands[5], i1)
    5505          701 :       || !register_operand (operands[6], E_QImode))
    5506          364 :     return -1;
    5507          337 :   x2 = XEXP (x1, 1);
    5508          337 :   if (GET_MODE (x2) != i1
    5509          337 :       || !register_operand (operands[3], i1))
    5510           50 :     return -1;
    5511          287 :   x3 = XEXP (x1, 0);
    5512          287 :   x4 = XEXP (x3, 0);
    5513          287 :   switch (GET_MODE (x4))
    5514              :     {
    5515           23 :     case E_SImode:
    5516           23 :       return pattern1614 (
    5517           23 : E_SImode); /* [-1, 1] */
    5518              : 
    5519          264 :     case E_DImode:
    5520          264 :       res = pattern1614 (
    5521              : E_DImode);
    5522          264 :       if (res >= 0)
    5523          128 :         return res + 2; /* [2, 3] */
    5524              :       return -1;
    5525              : 
    5526              :     default:
    5527              :       return -1;
    5528              :     }
    5529              : }
    5530              : 
    5531              : int
    5532           35 : pattern1627 (machine_mode i1)
    5533              : {
    5534           35 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5535           35 :   int res ATTRIBUTE_UNUSED;
    5536           35 :   if (!vsib_address_operand (operands[3], i1))
    5537              :     return -1;
    5538           27 :   switch (GET_MODE (operands[2]))
    5539              :     {
    5540            4 :     case E_V4SImode:
    5541            4 :       if (!register_operand (operands[2], E_V4SImode))
    5542              :         return -1;
    5543              :       return 0;
    5544              : 
    5545           23 :     case E_V4DImode:
    5546           23 :       if (!register_operand (operands[2], E_V4DImode))
    5547              :         return -1;
    5548              :       return 1;
    5549              : 
    5550              :     default:
    5551              :       return -1;
    5552              :     }
    5553              : }
    5554              : 
    5555              : int
    5556          682 : pattern1635 (rtx x1)
    5557              : {
    5558          682 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5559          682 :   rtx x2, x3;
    5560          682 :   int res ATTRIBUTE_UNUSED;
    5561          682 :   x2 = XEXP (x1, 0);
    5562          682 :   if (!rtx_equal_p (x2, operands[2]))
    5563              :     return -1;
    5564          682 :   x3 = XEXP (x1, 1);
    5565          682 :   if (!rtx_equal_p (x3, operands[3]))
    5566              :     return -1;
    5567          682 :   switch (GET_CODE (operands[3]))
    5568              :     {
    5569          651 :     case REG:
    5570          651 :     case SUBREG:
    5571          651 :     case MEM:
    5572          651 :       if (!nonimmediate_operand (operands[3], E_SImode))
    5573              :         return -1;
    5574              :       return 0;
    5575              : 
    5576            3 :     case CONST_INT:
    5577            3 :       if (!const_int_operand (operands[3], E_SImode))
    5578              :         return -1;
    5579              :       return 1;
    5580              : 
    5581              :     default:
    5582              :       return -1;
    5583              :     }
    5584              : }
    5585              : 
    5586              : int
    5587         1988 : pattern1644 (rtx x1)
    5588              : {
    5589         1988 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5590         1988 :   rtx x2, x3, x4, x5;
    5591         1988 :   int res ATTRIBUTE_UNUSED;
    5592         1988 :   x2 = XEXP (x1, 0);
    5593         1988 :   if (GET_CODE (x2) != STRICT_LOW_PART)
    5594              :     return -1;
    5595          125 :   x3 = XEXP (x2, 0);
    5596          125 :   operands[0] = x3;
    5597          125 :   if (!register_operand (operands[0], E_QImode))
    5598              :     return -1;
    5599          125 :   x4 = XEXP (x1, 1);
    5600          125 :   x5 = XEXP (x4, 1);
    5601          125 :   operands[1] = x5;
    5602          125 :   if (!nonimmediate_operand (operands[1], E_QImode))
    5603              :     return -1;
    5604           80 :   return pattern1534 (); /* [-1, 2] */
    5605              : }
    5606              : 
    5607              : int
    5608           29 : pattern1654 (rtx x1, machine_mode i1, machine_mode i2)
    5609              : {
    5610           29 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5611           29 :   rtx x2, x3;
    5612           29 :   int res ATTRIBUTE_UNUSED;
    5613           29 :   if (!register_operand (operands[0], i1)
    5614           29 :       || GET_MODE (x1) != i1)
    5615              :     return -1;
    5616           23 :   x2 = XEXP (x1, 0);
    5617           23 :   if (GET_MODE (x2) != i1)
    5618              :     return -1;
    5619           23 :   x3 = XEXP (x2, 0);
    5620           23 :   if (GET_MODE (x3) != i1
    5621           23 :       || !register_operand (operands[1], i1)
    5622           23 :       || !register_operand (operands[2], i1)
    5623           23 :       || !nonimmediate_operand (operands[3], i2)
    5624           46 :       || !const0_operand (operands[5], i1))
    5625            0 :     return -1;
    5626              :   return 0;
    5627              : }
    5628              : 
    5629              : int
    5630          327 : pattern1664 (rtx x1, machine_mode i1, machine_mode i2)
    5631              : {
    5632          327 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5633          327 :   rtx x2, x3, x4;
    5634          327 :   int res ATTRIBUTE_UNUSED;
    5635          327 :   if (!register_operand (operands[0], i2)
    5636          327 :       || GET_MODE (x1) != i2)
    5637              :     return -1;
    5638          311 :   x2 = XVECEXP (x1, 0, 0);
    5639          311 :   if (GET_MODE (x2) != i2)
    5640              :     return -1;
    5641          311 :   x3 = XEXP (x2, 0);
    5642          311 :   if (GET_MODE (x3) != i2
    5643          311 :       || !register_operand (operands[1], i2)
    5644          617 :       || !register_operand (operands[2], i2))
    5645            9 :     return -1;
    5646          302 :   x4 = XVECEXP (x3, 0, 2);
    5647          302 :   if (GET_MODE (x4) != i2
    5648          302 :       || !register_operand (operands[3], i2)
    5649          302 :       || !const0_operand (operands[4], i2)
    5650          604 :       || !register_operand (operands[5], i1))
    5651            8 :     return -1;
    5652              :   return 0;
    5653              : }
    5654              : 
    5655              : int
    5656          155 : pattern1674 (rtx x1, machine_mode i1, machine_mode i2)
    5657              : {
    5658          155 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5659          155 :   rtx x2, x3;
    5660          155 :   int res ATTRIBUTE_UNUSED;
    5661          155 :   if (!register_operand (operands[0], i2)
    5662          151 :       || GET_MODE (x1) != i2
    5663          151 :       || !register_operand (operands[1], i2)
    5664          151 :       || !register_operand (operands[7], E_QImode)
    5665          270 :       || !vsib_mem_operator (operands[6], i1))
    5666           40 :     return -1;
    5667          115 :   x2 = XVECEXP (x1, 0, 2);
    5668          115 :   x3 = XEXP (x2, 0);
    5669          115 :   switch (GET_MODE (x3))
    5670              :     {
    5671            0 :     case E_SImode:
    5672            0 :       return pattern1673 (
    5673            0 : E_SImode); /* [-1, 1] */
    5674              : 
    5675          115 :     case E_DImode:
    5676          115 :       res = pattern1673 (
    5677              : E_DImode);
    5678          115 :       if (res >= 0)
    5679           75 :         return res + 2; /* [2, 3] */
    5680              :       return -1;
    5681              : 
    5682              :     default:
    5683              :       return -1;
    5684              :     }
    5685              : }
    5686              : 
    5687              : int
    5688         1092 : pattern1686 (machine_mode i1)
    5689              : {
    5690         1092 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5691         1092 :   int res ATTRIBUTE_UNUSED;
    5692         1092 :   if (!general_operand (operands[2], i1)
    5693         1088 :       || !nonimmediate_operand (operands[3], i1)
    5694          813 :       || !general_operand (operands[4], i1)
    5695         1905 :       || !const_0_to_31_operand (operands[5], E_SImode))
    5696          279 :     return -1;
    5697              :   return 0;
    5698              : }
    5699              : 
    5700              : int
    5701          188 : pattern1693 (rtx x1, machine_mode i1, machine_mode i2)
    5702              : {
    5703          188 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5704          188 :   rtx x2, x3, x4;
    5705          188 :   int res ATTRIBUTE_UNUSED;
    5706          188 :   if (!register_operand (operands[0], i1)
    5707          188 :       || GET_MODE (x1) != i1)
    5708              :     return -1;
    5709          174 :   x2 = XVECEXP (x1, 0, 0);
    5710          174 :   if (GET_MODE (x2) != i1)
    5711              :     return -1;
    5712          174 :   x3 = XEXP (x2, 0);
    5713          174 :   if (GET_MODE (x3) != i1)
    5714              :     return -1;
    5715          174 :   x4 = XEXP (x3, 0);
    5716          174 :   if (GET_MODE (x4) != i2
    5717          174 :       || !register_operand (operands[2], i1))
    5718           22 :     return -1;
    5719              :   return 0;
    5720              : }
    5721              : 
    5722              : int
    5723          219 : pattern1702 (rtx x1)
    5724              : {
    5725          219 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5726          219 :   rtx x2, x3, x4, x5, x6, x7, x8;
    5727          219 :   int res ATTRIBUTE_UNUSED;
    5728          219 :   if (!nonimmediate_operand (operands[0], E_SImode))
    5729              :     return -1;
    5730          219 :   x2 = XEXP (x1, 1);
    5731          219 :   if (GET_MODE (x2) != E_SImode)
    5732              :     return -1;
    5733          219 :   x3 = XEXP (x2, 0);
    5734          219 :   if (GET_MODE (x3) != E_DImode)
    5735              :     return -1;
    5736          219 :   x4 = XEXP (x3, 0);
    5737          219 :   if (GET_MODE (x4) != E_DImode)
    5738              :     return -1;
    5739          219 :   x5 = XEXP (x4, 0);
    5740          219 :   operands[1] = x5;
    5741          219 :   if (!register_operand (operands[1], E_SImode))
    5742              :     return -1;
    5743          219 :   x6 = XEXP (x3, 1);
    5744          219 :   operands[3] = x6;
    5745          219 :   if (!const_0_to_63_operand (operands[3], E_QImode))
    5746              :     return -1;
    5747          219 :   x7 = XEXP (x1, 0);
    5748          219 :   x8 = XEXP (x7, 0);
    5749          219 :   if (!rtx_equal_p (x8, operands[0]))
    5750              :     return -1;
    5751              :   return 0;
    5752              : }
    5753              : 
    5754              : int
    5755         2382 : pattern1714 ()
    5756              : {
    5757         2382 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5758         2382 :   int res ATTRIBUTE_UNUSED;
    5759         2382 :   switch (GET_MODE (operands[1]))
    5760              :     {
    5761         1882 :     case E_V8HFmode:
    5762         1882 :       if (!register_operand (operands[1], E_V8HFmode)
    5763         1882 :           || !register_operand (operands[2], E_V8HFmode))
    5764           35 :         return -1;
    5765              :       return 0;
    5766              : 
    5767          250 :     case E_V4SFmode:
    5768          250 :       if (!register_operand (operands[1], E_V4SFmode)
    5769          250 :           || !register_operand (operands[2], E_V4SFmode))
    5770            1 :         return -1;
    5771              :       return 1;
    5772              : 
    5773          250 :     case E_V2DFmode:
    5774          250 :       if (!register_operand (operands[1], E_V2DFmode)
    5775          250 :           || !register_operand (operands[2], E_V2DFmode))
    5776            1 :         return -1;
    5777              :       return 2;
    5778              : 
    5779              :     default:
    5780              :       return -1;
    5781              :     }
    5782              : }
    5783              : 
    5784              : int
    5785          152 : pattern1724 (machine_mode i1)
    5786              : {
    5787          152 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5788          152 :   int res ATTRIBUTE_UNUSED;
    5789          152 :   if (!vsib_address_operand (operands[2], i1))
    5790              :     return -1;
    5791          130 :   switch (GET_MODE (operands[3]))
    5792              :     {
    5793           86 :     case E_V4SImode:
    5794           86 :       if (!register_operand (operands[3], E_V4SImode))
    5795              :         return -1;
    5796              :       return 0;
    5797              : 
    5798           44 :     case E_V4DImode:
    5799           44 :       if (!register_operand (operands[3], E_V4DImode))
    5800              :         return -1;
    5801              :       return 1;
    5802              : 
    5803              :     default:
    5804              :       return -1;
    5805              :     }
    5806              : }
    5807              : 
    5808              : int
    5809         1460 : pattern1730 (rtx x1, machine_mode i1)
    5810              : {
    5811         1460 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5812         1460 :   rtx x2, x3, x4;
    5813         1460 :   int res ATTRIBUTE_UNUSED;
    5814         1460 :   if (!vsib_mem_operator (operands[5], i1)
    5815         1460 :       || !register_operand (operands[6], E_QImode))
    5816          312 :     return -1;
    5817         1148 :   x2 = XEXP (x1, 1);
    5818         1148 :   if (GET_MODE (x2) != i1
    5819         1148 :       || !register_operand (operands[3], i1)
    5820         2258 :       || !scratch_operand (operands[1], E_QImode))
    5821           38 :     return -1;
    5822         1110 :   x3 = XEXP (x1, 0);
    5823         1110 :   x4 = XEXP (x3, 0);
    5824         1110 :   switch (GET_MODE (x4))
    5825              :     {
    5826           45 :     case E_SImode:
    5827           45 :       return pattern1729 (
    5828           45 : E_SImode); /* [-1, 1] */
    5829              : 
    5830         1065 :     case E_DImode:
    5831         1065 :       res = pattern1729 (
    5832              : E_DImode);
    5833         1065 :       if (res >= 0)
    5834          963 :         return res + 2; /* [2, 3] */
    5835              :       return -1;
    5836              : 
    5837              :     default:
    5838              :       return -1;
    5839              :     }
    5840              : }
    5841              : 
    5842              : int
    5843          180 : pattern1743 (rtx x1, machine_mode i1, machine_mode i2)
    5844              : {
    5845          180 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5846          180 :   rtx x2, x3;
    5847          180 :   int res ATTRIBUTE_UNUSED;
    5848          180 :   if (!register_operand (operands[0], i2)
    5849          176 :       || GET_MODE (x1) != i2
    5850          176 :       || !register_operand (operands[6], E_QImode)
    5851          123 :       || !vsib_mem_operator (operands[5], i1)
    5852          303 :       || !scratch_operand (operands[1], E_QImode))
    5853           57 :     return -1;
    5854          123 :   x2 = XVECEXP (x1, 0, 2);
    5855          123 :   x3 = XEXP (x2, 0);
    5856          123 :   switch (GET_MODE (x3))
    5857              :     {
    5858            0 :     case E_SImode:
    5859            0 :       return pattern1742 (
    5860            0 : E_SImode); /* [-1, 1] */
    5861              : 
    5862          123 :     case E_DImode:
    5863          123 :       res = pattern1742 (
    5864              : E_DImode);
    5865          123 :       if (res >= 0)
    5866          111 :         return res + 2; /* [2, 3] */
    5867              :       return -1;
    5868              : 
    5869              :     default:
    5870              :       return -1;
    5871              :     }
    5872              : }
    5873              : 
    5874              : int
    5875          303 : pattern1756 (rtx x1, machine_mode i1)
    5876              : {
    5877          303 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5878          303 :   rtx x2, x3, x4, x5;
    5879          303 :   int res ATTRIBUTE_UNUSED;
    5880          303 :   if (!register_operand (operands[0], i1)
    5881          303 :       || GET_MODE (x1) != i1)
    5882              :     return -1;
    5883          300 :   x2 = XVECEXP (x1, 0, 0);
    5884          300 :   if (GET_MODE (x2) != i1)
    5885              :     return -1;
    5886          300 :   x3 = XEXP (x2, 0);
    5887          300 :   if (GET_MODE (x3) != i1)
    5888              :     return -1;
    5889          300 :   x4 = XEXP (x3, 0);
    5890          300 :   if (GET_MODE (x4) != i1
    5891          300 :       || !nonimmediate_operand (operands[1], i1)
    5892          600 :       || !register_operand (operands[2], i1))
    5893            0 :     return -1;
    5894          300 :   x5 = XEXP (x4, 2);
    5895          300 :   if (GET_MODE (x5) != i1
    5896          300 :       || !register_operand (operands[3], i1)
    5897          600 :       || !const0_operand (operands[4], i1))
    5898            0 :     return -1;
    5899              :   return 0;
    5900              : }
    5901              : 
    5902              : int
    5903          383 : pattern1764 (rtx x1, machine_mode i1, machine_mode i2)
    5904              : {
    5905          383 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5906          383 :   rtx x2, x3;
    5907          383 :   int res ATTRIBUTE_UNUSED;
    5908          383 :   if (!register_operand (operands[0], i1)
    5909          365 :       || GET_MODE (x1) != i1
    5910          365 :       || !register_operand (operands[2], i1)
    5911          365 :       || !vsib_mem_operator (operands[7], i2)
    5912          748 :       || !register_operand (operands[5], i1))
    5913          183 :     return -1;
    5914          200 :   x2 = XVECEXP (x1, 0, 1);
    5915          200 :   x3 = XEXP (x2, 0);
    5916          200 :   switch (GET_MODE (x3))
    5917              :     {
    5918            0 :     case E_SImode:
    5919            0 :       return pattern1763 (
    5920            0 : E_SImode); /* [-1, 1] */
    5921              : 
    5922          200 :     case E_DImode:
    5923          200 :       res = pattern1763 (
    5924              : E_DImode);
    5925          200 :       if (res >= 0)
    5926           98 :         return res + 2; /* [2, 3] */
    5927              :       return -1;
    5928              : 
    5929              :     default:
    5930              :       return -1;
    5931              :     }
    5932              : }
    5933              : 
    5934              : int
    5935            4 : pattern1775 (rtx x1, machine_mode i1)
    5936              : {
    5937            4 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5938            4 :   int res ATTRIBUTE_UNUSED;
    5939            4 :   if (!nonimmediate_operand (operands[1], i1)
    5940            4 :       || !ix86_carry_flag_unset_operator (operands[2], i1)
    5941            4 :       || !nonimmediate_operand (operands[0], i1)
    5942            8 :       || GET_MODE (x1) != i1)
    5943            0 :     return -1;
    5944              :   return 0;
    5945              : }
    5946              : 
    5947              : int
    5948            0 : pattern1785 (rtx x1, machine_mode i1)
    5949              : {
    5950            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5951            0 :   rtx x2, x3, x4, x5;
    5952            0 :   int res ATTRIBUTE_UNUSED;
    5953            0 :   x2 = XVECEXP (x1, 0, 0);
    5954            0 :   x3 = XEXP (x2, 0);
    5955            0 :   if (GET_MODE (x3) != i1
    5956            0 :       || !register_operand (operands[1], i1)
    5957            0 :       || !register_operand (operands[2], i1))
    5958            0 :     return -1;
    5959            0 :   x4 = XVECEXP (x1, 0, 1);
    5960            0 :   if (GET_MODE (x4) != i1)
    5961              :     return -1;
    5962            0 :   x5 = XEXP (x4, 0);
    5963            0 :   if (GET_MODE (x5) != i1)
    5964              :     return -1;
    5965              :   return 0;
    5966              : }
    5967              : 
    5968              : int
    5969        14412 : pattern1792 (rtx x1)
    5970              : {
    5971        14412 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5972        14412 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5973        14412 :   rtx x10, x11, x12, x13, x14, x15, x16;
    5974        14412 :   int res ATTRIBUTE_UNUSED;
    5975        14412 :   x2 = XVECEXP (x1, 0, 1);
    5976        14412 :   if (XWINT (x2, 0) != 1L)
    5977              :     return -1;
    5978         9713 :   x3 = XVECEXP (x1, 0, 2);
    5979         9713 :   if (XWINT (x3, 0) != 2L)
    5980              :     return -1;
    5981         9393 :   x4 = XVECEXP (x1, 0, 3);
    5982         9393 :   if (XWINT (x4, 0) != 3L)
    5983              :     return -1;
    5984         9383 :   x5 = XVECEXP (x1, 0, 4);
    5985         9383 :   if (XWINT (x5, 0) != 4L)
    5986              :     return -1;
    5987         9268 :   x6 = XVECEXP (x1, 0, 5);
    5988         9268 :   if (XWINT (x6, 0) != 5L)
    5989              :     return -1;
    5990         9228 :   x7 = XVECEXP (x1, 0, 6);
    5991         9228 :   if (XWINT (x7, 0) != 6L)
    5992              :     return -1;
    5993         9228 :   x8 = XVECEXP (x1, 0, 7);
    5994         9228 :   if (XWINT (x8, 0) != 7L)
    5995              :     return -1;
    5996         9228 :   x9 = XVECEXP (x1, 0, 8);
    5997         9228 :   if (XWINT (x9, 0) != 8L)
    5998              :     return -1;
    5999         8924 :   x10 = XVECEXP (x1, 0, 9);
    6000         8924 :   if (XWINT (x10, 0) != 9L)
    6001              :     return -1;
    6002         8924 :   x11 = XVECEXP (x1, 0, 10);
    6003         8924 :   if (XWINT (x11, 0) != 10L)
    6004              :     return -1;
    6005         8924 :   x12 = XVECEXP (x1, 0, 11);
    6006         8924 :   if (XWINT (x12, 0) != 11L)
    6007              :     return -1;
    6008         8924 :   x13 = XVECEXP (x1, 0, 12);
    6009         8924 :   if (XWINT (x13, 0) != 12L)
    6010              :     return -1;
    6011         8923 :   x14 = XVECEXP (x1, 0, 13);
    6012         8923 :   if (XWINT (x14, 0) != 13L)
    6013              :     return -1;
    6014         8923 :   x15 = XVECEXP (x1, 0, 14);
    6015         8923 :   if (XWINT (x15, 0) != 14L)
    6016              :     return -1;
    6017         8923 :   x16 = XVECEXP (x1, 0, 15);
    6018         8923 :   if (XWINT (x16, 0) != 15L)
    6019            0 :     return -1;
    6020              :   return 0;
    6021              : }
    6022              : 
    6023              : int
    6024          376 : pattern1812 (machine_mode i1)
    6025              : {
    6026          376 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6027          376 :   int res ATTRIBUTE_UNUSED;
    6028          376 :   if (!vsib_address_operand (operands[2], i1))
    6029              :     return -1;
    6030          361 :   switch (GET_MODE (operands[3]))
    6031              :     {
    6032          230 :     case E_V8SImode:
    6033          230 :       if (!register_operand (operands[3], E_V8SImode)
    6034          230 :           || !register_operand (operands[4], E_V8SFmode))
    6035          188 :         return -1;
    6036              :       return 0;
    6037              : 
    6038          131 :     case E_V4DImode:
    6039          131 :       if (!register_operand (operands[3], E_V4DImode)
    6040          131 :           || !register_operand (operands[4], E_V4SFmode))
    6041          118 :         return -1;
    6042              :       return 1;
    6043              : 
    6044              :     default:
    6045              :       return -1;
    6046              :     }
    6047              : }
    6048              : 
    6049              : int
    6050            1 : pattern1820 (rtx x1, machine_mode i1)
    6051              : {
    6052            1 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6053            1 :   rtx x2;
    6054            1 :   int res ATTRIBUTE_UNUSED;
    6055            1 :   if (!general_operand (operands[2], i1)
    6056            1 :       || !nonimmediate_operand (operands[0], i1)
    6057            2 :       || GET_MODE (x1) != i1)
    6058            0 :     return -1;
    6059            1 :   x2 = XEXP (x1, 0);
    6060            1 :   if (GET_MODE (x2) != i1)
    6061              :     return -1;
    6062              :   return 0;
    6063              : }
    6064              : 
    6065              : int
    6066        42786 : pattern1826 (rtx x1, machine_mode i1, machine_mode i2)
    6067              : {
    6068        42786 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6069        42786 :   rtx x2, x3, x4, x5, x6, x7;
    6070        42786 :   int res ATTRIBUTE_UNUSED;
    6071        42786 :   x2 = XVECEXP (x1, 0, 0);
    6072        42786 :   x3 = XEXP (x2, 1);
    6073        42786 :   x4 = XEXP (x3, 1);
    6074        42786 :   if (GET_MODE (x4) != i2)
    6075              :     return -1;
    6076        42786 :   x5 = XEXP (x4, 0);
    6077        42786 :   if (GET_MODE (x5) != i1
    6078        42786 :       || !register_operand (operands[0], i1))
    6079            0 :     return -1;
    6080        42786 :   x6 = XVECEXP (x1, 0, 1);
    6081        42786 :   x7 = XEXP (x6, 1);
    6082        42786 :   if (GET_MODE (x7) != i1)
    6083              :     return -1;
    6084              :   return 0;
    6085              : }
    6086              : 
    6087              : int
    6088           10 : pattern1834 (rtx x1, machine_mode i1)
    6089              : {
    6090           10 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6091           10 :   rtx x2, x3, x4, x5;
    6092           10 :   int res ATTRIBUTE_UNUSED;
    6093           10 :   if (!register_operand (operands[2], i1))
    6094              :     return -1;
    6095           10 :   x2 = XVECEXP (x1, 0, 0);
    6096           10 :   x3 = XEXP (x2, 1);
    6097           10 :   if (GET_MODE (x3) != i1
    6098           10 :       || !memory_operand (operands[3], i1)
    6099           20 :       || !register_operand (operands[4], i1))
    6100            0 :     return -1;
    6101           10 :   x4 = XVECEXP (x1, 0, 1);
    6102           10 :   x5 = XEXP (x4, 1);
    6103           10 :   if (GET_MODE (x5) != i1)
    6104              :     return -1;
    6105              :   return 0;
    6106              : }
    6107              : 
    6108              : int
    6109          229 : pattern1841 (rtx x1, machine_mode i1)
    6110              : {
    6111          229 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6112          229 :   rtx x2, x3, x4, x5, x6, x7, x8;
    6113          229 :   int res ATTRIBUTE_UNUSED;
    6114          229 :   x2 = XEXP (x1, 0);
    6115          229 :   x3 = XEXP (x2, 0);
    6116          229 :   x4 = XEXP (x3, 0);
    6117          229 :   x5 = XEXP (x4, 0);
    6118          229 :   operands[2] = x5;
    6119          229 :   if (!register_operand (operands[2], i1))
    6120              :     return -1;
    6121          228 :   x6 = XEXP (x3, 2);
    6122          228 :   if (GET_MODE (x6) != i1
    6123          228 :       || !nonimmediate_operand (operands[3], i1))
    6124            0 :     return -1;
    6125          228 :   x7 = XEXP (x2, 1);
    6126          228 :   if (!rtx_equal_p (x7, operands[3]))
    6127              :     return -1;
    6128          228 :   x8 = XEXP (x1, 1);
    6129          228 :   if (!rtx_equal_p (x8, operands[3]))
    6130              :     return -1;
    6131              :   return 0;
    6132              : }
    6133              : 
    6134              : int
    6135          634 : pattern1852 (rtx x1)
    6136              : {
    6137          634 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6138          634 :   int res ATTRIBUTE_UNUSED;
    6139          634 :   switch (GET_MODE (operands[0]))
    6140              :     {
    6141          464 :     case E_V8SFmode:
    6142          464 :       if (!nonimmediate_operand (operands[0], E_V8SFmode)
    6143          464 :           || pattern1557 (x1, 
    6144              : E_V8SFmode, 
    6145              : E_V16SFmode) != 0)
    6146            8 :         return -1;
    6147              :       return 0;
    6148              : 
    6149          170 :     case E_V8SImode:
    6150          170 :       if (!nonimmediate_operand (operands[0], E_V8SImode)
    6151          170 :           || pattern1557 (x1, 
    6152              : E_V8SImode, 
    6153              : E_V16SImode) != 0)
    6154            0 :         return -1;
    6155              :       return 1;
    6156              : 
    6157              :     default:
    6158              :       return -1;
    6159              :     }
    6160              : }
    6161              : 
    6162              : int
    6163          685 : pattern1858 (rtx x1)
    6164              : {
    6165          685 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6166          685 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6167          685 :   rtx x10, x11;
    6168          685 :   int res ATTRIBUTE_UNUSED;
    6169          685 :   if (!register_operand (operands[3], E_V2DImode))
    6170              :     return -1;
    6171          636 :   x2 = XEXP (x1, 0);
    6172          636 :   x3 = XEXP (x2, 0);
    6173          636 :   x4 = XEXP (x3, 1);
    6174          636 :   x5 = XVECEXP (x4, 0, 0);
    6175          636 :   switch (XWINT (x5, 0))
    6176              :     {
    6177          287 :     case 0L:
    6178          287 :       x6 = XVECEXP (x4, 0, 1);
    6179          287 :       if (XWINT (x6, 0) != 2L)
    6180              :         return -1;
    6181          287 :       x7 = XEXP (x1, 1);
    6182          287 :       x8 = XEXP (x7, 0);
    6183          287 :       x9 = XEXP (x8, 1);
    6184          287 :       x10 = XVECEXP (x9, 0, 0);
    6185          287 :       if (XWINT (x10, 0) != 0L)
    6186              :         return -1;
    6187          287 :       x11 = XVECEXP (x9, 0, 1);
    6188          287 :       if (XWINT (x11, 0) != 2L)
    6189            0 :         return -1;
    6190              :       return 0;
    6191              : 
    6192          349 :     case 1L:
    6193          349 :       x6 = XVECEXP (x4, 0, 1);
    6194          349 :       if (XWINT (x6, 0) != 3L)
    6195              :         return -1;
    6196          349 :       x7 = XEXP (x1, 1);
    6197          349 :       x8 = XEXP (x7, 0);
    6198          349 :       x9 = XEXP (x8, 1);
    6199          349 :       x10 = XVECEXP (x9, 0, 0);
    6200          349 :       if (XWINT (x10, 0) != 1L)
    6201              :         return -1;
    6202          349 :       x11 = XVECEXP (x9, 0, 1);
    6203          349 :       if (XWINT (x11, 0) != 3L)
    6204            0 :         return -1;
    6205              :       return 1;
    6206              : 
    6207              :     default:
    6208              :       return -1;
    6209              :     }
    6210              : }
    6211              : 
    6212              : int
    6213          614 : pattern1870 (rtx x1, machine_mode i1, machine_mode i2)
    6214              : {
    6215          614 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6216          614 :   int res ATTRIBUTE_UNUSED;
    6217          614 :   if (!register_operand (operands[2], i1)
    6218          614 :       || !register_operand (operands[4], i2))
    6219           44 :     return -1;
    6220          570 :   return pattern1869 (x1, 
    6221          570 : i1); /* [-1, 1] */
    6222              : }
    6223              : 
    6224              : int
    6225         1125 : pattern1876 (rtx x1, machine_mode i1)
    6226              : {
    6227         1125 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6228         1125 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6229         1125 :   int res ATTRIBUTE_UNUSED;
    6230         1125 :   operands[5] = x1;
    6231         1125 :   if (!register_operand (operands[5], i1))
    6232              :     return -1;
    6233           69 :   x2 = PATTERN (peep2_next_insn (3));
    6234           69 :   x3 = XEXP (x2, 1);
    6235           69 :   if (!rtx_equal_p (x3, operands[5]))
    6236              :     return -1;
    6237            7 :   x4 = XEXP (x2, 0);
    6238            7 :   if (!rtx_equal_p (x4, operands[1]))
    6239              :     return -1;
    6240            5 :   x5 = PATTERN (peep2_next_insn (4));
    6241            5 :   if (GET_CODE (x5) != SET)
    6242              :     return -1;
    6243            5 :   x6 = XEXP (x5, 1);
    6244            5 :   if (GET_CODE (x6) != COMPARE)
    6245              :     return -1;
    6246            0 :   x7 = XEXP (x6, 1);
    6247            0 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6248              :     return -1;
    6249            0 :   x8 = XEXP (x5, 0);
    6250            0 :   if (GET_CODE (x8) != REG
    6251            0 :       || REGNO (x8) != 17)
    6252              :     return -1;
    6253            0 :   x9 = XEXP (x6, 0);
    6254            0 :   if (!rtx_equal_p (x9, operands[5]))
    6255              :     return -1;
    6256              :   return 0;
    6257              : }
    6258              : 
    6259              : int
    6260        17179 : pattern1885 (rtx x1, machine_mode i1, machine_mode i2)
    6261              : {
    6262        17179 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6263        17179 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6264        17179 :   rtx x10;
    6265        17179 :   int res ATTRIBUTE_UNUSED;
    6266        17179 :   x2 = XVECEXP (x1, 0, 0);
    6267        17179 :   x3 = XEXP (x2, 1);
    6268        17179 :   x4 = XEXP (x3, 0);
    6269        17179 :   x5 = XEXP (x4, 0);
    6270        17179 :   if (GET_MODE (x5) != i1)
    6271              :     return -1;
    6272        17179 :   x6 = XEXP (x5, 0);
    6273        17179 :   if (GET_MODE (x6) != i1
    6274        17179 :       || !ix86_carry_flag_operator (operands[5], i1)
    6275        17179 :       || !nonimmediate_operand (operands[1], i1)
    6276        34358 :       || !x86_64_immediate_operand (operands[2], i1))
    6277        16359 :     return -1;
    6278          820 :   x7 = XEXP (x3, 1);
    6279          820 :   if (GET_MODE (x7) != i2
    6280          820 :       || !ix86_carry_flag_operator (operands[4], i2)
    6281          820 :       || !const_scalar_int_operand (operands[6], i2)
    6282         1638 :       || !nonimmediate_operand (operands[0], i1))
    6283            2 :     return -1;
    6284          818 :   x8 = XVECEXP (x1, 0, 1);
    6285          818 :   x9 = XEXP (x8, 1);
    6286          818 :   if (GET_MODE (x9) != i1)
    6287              :     return -1;
    6288          818 :   x10 = XEXP (x9, 0);
    6289          818 :   if (GET_MODE (x10) != i1)
    6290              :     return -1;
    6291              :   return 0;
    6292              : }
    6293              : 
    6294              : int
    6295          871 : pattern1894 (rtx x1, int i1)
    6296              : {
    6297          871 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6298          871 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6299          871 :   int res ATTRIBUTE_UNUSED;
    6300          871 :   if (XVECLEN (x1, 0) != i1)
    6301              :     return -1;
    6302          871 :   x2 = XVECEXP (x1, 0, 0);
    6303          871 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    6304              :     return -1;
    6305          871 :   x3 = XVECEXP (x1, 0, 1);
    6306          871 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    6307              :     return -1;
    6308          871 :   x4 = XVECEXP (x1, 0, 2);
    6309          871 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    6310              :     return -1;
    6311          871 :   x5 = XVECEXP (x1, 0, 3);
    6312          871 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
    6313              :     return -1;
    6314          871 :   x6 = XVECEXP (x1, 0, 4);
    6315          871 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 9])
    6316              :     return -1;
    6317          871 :   x7 = XVECEXP (x1, 0, 5);
    6318          871 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 11])
    6319              :     return -1;
    6320          871 :   x8 = XVECEXP (x1, 0, 6);
    6321          871 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 13])
    6322              :     return -1;
    6323          871 :   x9 = XVECEXP (x1, 0, 7);
    6324          871 :   if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 15])
    6325            0 :     return -1;
    6326              :   return 0;
    6327              : }
    6328              : 
    6329              : int
    6330          499 : pattern1904 (rtx x1, machine_mode i1)
    6331              : {
    6332          499 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6333          499 :   rtx x2;
    6334          499 :   int res ATTRIBUTE_UNUSED;
    6335          499 :   if (!x86_64_immediate_operand (operands[2], i1)
    6336          499 :       || !nonimmediate_operand (operands[0], i1)
    6337          998 :       || GET_MODE (x1) != i1)
    6338            0 :     return -1;
    6339          499 :   x2 = XEXP (x1, 0);
    6340          499 :   if (GET_MODE (x2) != i1)
    6341              :     return -1;
    6342              :   return 0;
    6343              : }
    6344              : 
    6345              : int
    6346          968 : pattern1908 (rtx x1, machine_mode i1, machine_mode i2)
    6347              : {
    6348          968 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6349          968 :   rtx x2, x3, x4, x5, x6, x7;
    6350          968 :   int res ATTRIBUTE_UNUSED;
    6351          968 :   x2 = XVECEXP (x1, 0, 0);
    6352          968 :   x3 = XEXP (x2, 1);
    6353          968 :   x4 = XEXP (x3, 0);
    6354          968 :   x5 = XEXP (x4, 0);
    6355          968 :   if (GET_MODE (x5) != i2)
    6356              :     return -1;
    6357          968 :   x6 = XEXP (x5, 0);
    6358          968 :   if (GET_MODE (x6) != i2
    6359          968 :       || !nonimmediate_operand (operands[1], i1)
    6360         1936 :       || !ix86_carry_flag_operator (operands[4], i2))
    6361            0 :     return -1;
    6362          968 :   x7 = XEXP (x4, 1);
    6363          968 :   if (GET_MODE (x7) != i2
    6364          968 :       || !x86_64_sext_operand (operands[2], i1)
    6365         1936 :       || pattern1906 (x1, 
    6366              : i1, 
    6367              : i2) != 0)
    6368            0 :     return -1;
    6369              :   return 0;
    6370              : }
    6371              : 
    6372              : int
    6373          893 : pattern1916 (rtx x1)
    6374              : {
    6375          893 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6376          893 :   rtx x2, x3, x4, x5;
    6377          893 :   int res ATTRIBUTE_UNUSED;
    6378          893 :   x2 = XVECEXP (x1, 0, 24);
    6379          893 :   if (XWINT (x2, 0) != 24L)
    6380              :     return -1;
    6381          893 :   x3 = XVECEXP (x1, 0, 25);
    6382          893 :   if (XWINT (x3, 0) != 25L)
    6383              :     return -1;
    6384          893 :   x4 = XVECEXP (x1, 0, 26);
    6385          893 :   if (XWINT (x4, 0) != 26L)
    6386              :     return -1;
    6387          893 :   x5 = XVECEXP (x1, 0, 27);
    6388          893 :   if (XWINT (x5, 0) != 27L)
    6389            0 :     return -1;
    6390              :   return 0;
    6391              : }
    6392              : 
    6393              : int
    6394          429 : pattern1918 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    6395              : {
    6396          429 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6397          429 :   rtx x2, x3, x4, x5;
    6398          429 :   int res ATTRIBUTE_UNUSED;
    6399          429 :   if (!register_operand (operands[0], i1)
    6400          429 :       || GET_MODE (x1) != i1)
    6401              :     return -1;
    6402          411 :   x2 = XEXP (x1, 0);
    6403          411 :   if (GET_MODE (x2) != i1)
    6404              :     return -1;
    6405          411 :   x3 = XEXP (x2, 0);
    6406          411 :   if (GET_MODE (x3) != i1)
    6407              :     return -1;
    6408          411 :   x4 = XEXP (x3, 0);
    6409          411 :   if (GET_MODE (x4) != i3
    6410          411 :       || !register_operand (operands[1], i2))
    6411            0 :     return -1;
    6412          411 :   x5 = XEXP (x3, 1);
    6413          411 :   if (GET_MODE (x5) != i3
    6414          411 :       || !vector_operand (operands[2], i2)
    6415          822 :       || !nonimm_or_0_operand (operands[3], i1))
    6416           12 :     return -1;
    6417              :   return 0;
    6418              : }
    6419              : 
    6420              :  int
    6421     58794620 : recog_6 (rtx x1 ATTRIBUTE_UNUSED,
    6422              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6423              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6424              : {
    6425     58794620 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6426     58794620 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6427     58794620 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    6428     58794620 :   rtx x18, x19, x20, x21, x22, x23;
    6429     58794620 :   int res ATTRIBUTE_UNUSED;
    6430     58794620 :   x2 = XEXP (x1, 0);
    6431     58794620 :   if (GET_CODE (x2) != REG
    6432     58794620 :       || REGNO (x2) != 17)
    6433              :     return -1;
    6434     58673724 :   x3 = XEXP (x1, 1);
    6435     58673724 :   x4 = XEXP (x3, 0);
    6436     58673724 :   switch (GET_CODE (x4))
    6437              :     {
    6438     54636045 :     case REG:
    6439     54636045 :     case SUBREG:
    6440     54636045 :     case MEM:
    6441     54636045 :       return recog_4 (x1, insn, pnum_clobbers);
    6442              : 
    6443       228261 :     case MINUS:
    6444       228261 :       x5 = XEXP (x3, 1);
    6445       228261 :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6446              :         return -1;
    6447        36989 :       x6 = XEXP (x4, 0);
    6448        36989 :       operands[0] = x6;
    6449        36989 :       x7 = XEXP (x4, 1);
    6450        36989 :       operands[1] = x7;
    6451        36989 :       switch (GET_MODE (x4))
    6452              :         {
    6453           98 :         case E_QImode:
    6454           98 :           if (!nonimmediate_operand (operands[0], E_QImode)
    6455           87 :               || !general_operand (operands[1], E_QImode)
    6456          159 :               || !
    6457              : #line 1601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6458              : (ix86_match_ccmode (insn, CCGOCmode)))
    6459              :             return -1;
    6460              :           return 17; /* *cmpqi_minus_1 */
    6461              : 
    6462              :         case E_HImode:
    6463              :           if (!nonimmediate_operand (operands[0], E_HImode)
    6464              :               || !general_operand (operands[1], E_HImode)
    6465              :               || !
    6466              : #line 1601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6467              : (ix86_match_ccmode (insn, CCGOCmode)))
    6468              :             return -1;
    6469              :           return 18; /* *cmphi_minus_1 */
    6470              : 
    6471              :         case E_SImode:
    6472              :           if (!nonimmediate_operand (operands[0], E_SImode)
    6473              :               || !x86_64_general_operand (operands[1], E_SImode)
    6474              :               || !
    6475              : #line 1601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6476              : (ix86_match_ccmode (insn, CCGOCmode)))
    6477              :             return -1;
    6478              :           return 19; /* *cmpsi_minus_1 */
    6479              : 
    6480              :         case E_DImode:
    6481              :           if (!nonimmediate_operand (operands[0], E_DImode)
    6482              :               || !x86_64_general_operand (operands[1], E_DImode)
    6483              :               || !(
    6484              : #line 1601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6485              : (ix86_match_ccmode (insn, CCGOCmode)) && 
    6486              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6487              : (TARGET_64BIT)))
    6488              :             return -1;
    6489              :           return 20; /* *cmpdi_minus_1 */
    6490              : 
    6491              :         default:
    6492              :           return -1;
    6493              :         }
    6494              : 
    6495              :     case PLUS:
    6496              :       x5 = XEXP (x3, 1);
    6497              :       switch (GET_CODE (x5))
    6498              :         {
    6499              :         case CONST_INT:
    6500              :           if (XWINT (x5, 0) != 0L)
    6501              :             return -1;
    6502              :           x6 = XEXP (x4, 0);
    6503              :           operands[0] = x6;
    6504              :           x7 = XEXP (x4, 1);
    6505              :           operands[1] = x7;
    6506              :           switch (GET_MODE (x4))
    6507              :             {
    6508              :             case E_QImode:
    6509              :               if (!nonimmediate_operand (operands[0], E_QImode)
    6510              :                   || !x86_64_neg_const_int_operand (operands[1], E_QImode)
    6511              :                   || !
    6512              : #line 1612 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6513              : (ix86_match_ccmode (insn, CCGOCmode)))
    6514              :                 return -1;
    6515              :               return 21; /* *cmpqi_plus_1 */
    6516              : 
    6517              :             case E_HImode:
    6518              :               if (!nonimmediate_operand (operands[0], E_HImode)
    6519              :                   || !x86_64_neg_const_int_operand (operands[1], E_HImode)
    6520              :                   || !
    6521              : #line 1612 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6522              : (ix86_match_ccmode (insn, CCGOCmode)))
    6523              :                 return -1;
    6524              :               return 22; /* *cmphi_plus_1 */
    6525              : 
    6526              :             case E_SImode:
    6527              :               if (!nonimmediate_operand (operands[0], E_SImode)
    6528              :                   || !x86_64_neg_const_int_operand (operands[1], E_SImode)
    6529              :                   || !
    6530              : #line 1612 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6531              : (ix86_match_ccmode (insn, CCGOCmode)))
    6532              :                 return -1;
    6533              :               return 23; /* *cmpsi_plus_1 */
    6534              : 
    6535              :             case E_DImode:
    6536              :               if (!nonimmediate_operand (operands[0], E_DImode)
    6537              :                   || !x86_64_neg_const_int_operand (operands[1], E_DImode)
    6538              :                   || !(
    6539              : #line 1612 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6540              : (ix86_match_ccmode (insn, CCGOCmode)) && 
    6541              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6542              : (TARGET_64BIT)))
    6543              :                 return -1;
    6544              :               return 24; /* *cmpdi_plus_1 */
    6545              : 
    6546              :             default:
    6547              :               return -1;
    6548              :             }
    6549              : 
    6550              :         case REG:
    6551              :         case SUBREG:
    6552              :         case MEM:
    6553              :           if (pnum_clobbers == NULL
    6554              :               || GET_MODE (x2) != E_CCCmode
    6555              :               || GET_MODE (x3) != E_CCCmode)
    6556              :             return -1;
    6557              :           x6 = XEXP (x4, 0);
    6558              :           operands[1] = x6;
    6559              :           x7 = XEXP (x4, 1);
    6560              :           operands[2] = x7;
    6561              :           if (!rtx_equal_p (x5, operands[1]))
    6562              :             return -1;
    6563              :           switch (pattern49 (x4))
    6564              :             {
    6565              :             case 0:
    6566              :               if (!
    6567              : #line 10274 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6568              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    6569              :                 return -1;
    6570              :               *pnum_clobbers = 1;
    6571              :               return 562; /* *addqi3_cconly_overflow_1 */
    6572              : 
    6573              :             case 1:
    6574              :               if (!
    6575              : #line 10274 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6576              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    6577              :                 return -1;
    6578              :               *pnum_clobbers = 1;
    6579              :               return 563; /* *addhi3_cconly_overflow_1 */
    6580              : 
    6581              :             case 2:
    6582              :               if (!
    6583              : #line 10274 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6584              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    6585              :                 return -1;
    6586              :               *pnum_clobbers = 1;
    6587              :               return 564; /* *addsi3_cconly_overflow_1 */
    6588              : 
    6589              :             case 3:
    6590              :               if (!(
    6591              : #line 10274 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6592              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    6593              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6594              : (TARGET_64BIT)))
    6595              :                 return -1;
    6596              :               *pnum_clobbers = 1;
    6597              :               return 565; /* *adddi3_cconly_overflow_1 */
    6598              : 
    6599              :             default:
    6600              :               return -1;
    6601              :             }
    6602              : 
    6603              :         default:
    6604              :           return -1;
    6605              :         }
    6606              : 
    6607              :     case NEG:
    6608              :       return recog_5 (x1, insn, pnum_clobbers);
    6609              : 
    6610              :     case ZERO_EXTEND:
    6611              :       if (pnum_clobbers == NULL)
    6612              :         return -1;
    6613              :       x5 = XEXP (x3, 1);
    6614              :       if (pattern423 (x5, 
    6615              : E_CCmode, 
    6616              : PLUS) != 0
    6617              :           || GET_MODE (x2) != E_CCCmode
    6618              :           || GET_MODE (x3) != E_CCCmode)
    6619              :         return -1;
    6620              :       x6 = XEXP (x4, 0);
    6621              :       operands[1] = x6;
    6622              :       x8 = XEXP (x5, 1);
    6623              :       switch (GET_CODE (x8))
    6624              :         {
    6625              :         case ZERO_EXTEND:
    6626              :           x9 = XEXP (x8, 0);
    6627              :           operands[2] = x9;
    6628              :           switch (GET_MODE (x4))
    6629              :             {
    6630              :             case E_DImode:
    6631              :               if (pattern1590 (x5, 
    6632              : E_SImode, 
    6633              : E_DImode) != 0
    6634              :                   || !
    6635              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6636              : (!TARGET_64BIT))
    6637              :                 return -1;
    6638              :               *pnum_clobbers = 1;
    6639              :               return 545; /* subsi3_carry_ccc */
    6640              : 
    6641              :             case E_TImode:
    6642              :               if (pattern1590 (x5, 
    6643              : E_DImode, 
    6644              : E_TImode) != 0
    6645              :                   || !
    6646              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6647              : (TARGET_64BIT))
    6648              :                 return -1;
    6649              :               *pnum_clobbers = 1;
    6650              :               return 546; /* subdi3_carry_ccc */
    6651              : 
    6652              :             default:
    6653              :               return -1;
    6654              :             }
    6655              : 
    6656              :         case CONST_INT:
    6657              :         case CONST_WIDE_INT:
    6658              :           operands[2] = x8;
    6659              :           switch (GET_MODE (x4))
    6660              :             {
    6661              :             case E_DImode:
    6662              :               if (pattern1591 (x5, 
    6663              : E_DImode, 
    6664              : E_SImode) != 0
    6665              :                   || !
    6666              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6667              : (!TARGET_64BIT))
    6668              :                 return -1;
    6669              :               *pnum_clobbers = 1;
    6670              :               return 547; /* *subsi3_carry_ccc_1 */
    6671              : 
    6672              :             case E_TImode:
    6673              :               if (pattern1591 (x5, 
    6674              : E_TImode, 
    6675              : E_DImode) != 0
    6676              :                   || !
    6677              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6678              : (TARGET_64BIT))
    6679              :                 return -1;
    6680              :               *pnum_clobbers = 1;
    6681              :               return 548; /* *subdi3_carry_ccc_1 */
    6682              : 
    6683              :             default:
    6684              :               return -1;
    6685              :             }
    6686              : 
    6687              :         default:
    6688              :           return -1;
    6689              :         }
    6690              : 
    6691              :     case AND:
    6692              :       x5 = XEXP (x3, 1);
    6693              :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    6694              :           || GET_MODE (x2) != E_CCZmode
    6695              :           || GET_MODE (x3) != E_CCZmode)
    6696              :         return -1;
    6697              :       x6 = XEXP (x4, 0);
    6698              :       switch (GET_CODE (x6))
    6699              :         {
    6700              :         case REG:
    6701              :         case SUBREG:
    6702              :           operands[0] = x6;
    6703              :           if (!register_operand (operands[0], E_TImode)
    6704              :               || GET_MODE (x4) != E_TImode)
    6705              :             return -1;
    6706              :           x7 = XEXP (x4, 1);
    6707              :           operands[1] = x7;
    6708              :           if (!general_operand (operands[1], E_TImode)
    6709              :               || !
    6710              : #line 12530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6711              : (TARGET_64BIT
    6712              :    && ix86_pre_reload_split ()))
    6713              :             return -1;
    6714              :           return 721; /* *testti_doubleword */
    6715              : 
    6716              :         case NOT:
    6717              :           switch (pattern854 (x4))
    6718              :             {
    6719              :             case 0:
    6720              :               if (!
    6721              : #line 12660 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6722              : (ix86_pre_reload_split ()
    6723              :    && (!TARGET_BMI || !REG_P (operands[1]))))
    6724              :                 return -1;
    6725              :               return 725; /* *testqi_not */
    6726              : 
    6727              :             case 1:
    6728              :               if (!
    6729              : #line 12660 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6730              : (ix86_pre_reload_split ()
    6731              :    && (!TARGET_BMI || !REG_P (operands[1]))))
    6732              :                 return -1;
    6733              :               return 726; /* *testhi_not */
    6734              : 
    6735              :             case 2:
    6736              :               if (!
    6737              : #line 12660 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6738              : (ix86_pre_reload_split ()
    6739              :    && (!TARGET_BMI || !REG_P (operands[1]))))
    6740              :                 return -1;
    6741              :               return 727; /* *testsi_not */
    6742              : 
    6743              :             case 3:
    6744              :               if (register_operand (operands[0], E_DImode)
    6745              :                   && x86_64_szext_nonmemory_operand (operands[1], E_DImode)
    6746              :                   && (
    6747              : #line 12660 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6748              : (ix86_pre_reload_split ()
    6749              :    && (!TARGET_BMI || !REG_P (operands[1]))) && 
    6750              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6751              : (TARGET_64BIT)))
    6752              :                 return 728; /* *testdi_not */
    6753              :               if (!nonimmediate_operand (operands[0], E_DImode)
    6754              :                   || !nonimmediate_operand (operands[1], E_DImode)
    6755              :                   || !(
    6756              : #line 12678 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6757              : (ix86_pre_reload_split ()) && 
    6758              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6759              : (!TARGET_64BIT)))
    6760              :                 return -1;
    6761              :               return 729; /* *testdi_not_doubleword */
    6762              : 
    6763              :             case 4:
    6764              :               if (!(
    6765              : #line 12678 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6766              : (ix86_pre_reload_split ()) && 
    6767              : #line 1197 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6768              : (TARGET_64BIT)))
    6769              :                 return -1;
    6770              :               return 730; /* *testti_not_doubleword */
    6771              : 
    6772              :             default:
    6773              :               return -1;
    6774              :             }
    6775              : 
    6776              :         case PLUS:
    6777              :           if (pnum_clobbers == NULL)
    6778              :             return -1;
    6779              :           x10 = XEXP (x6, 1);
    6780              :           if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
    6781              :             return -1;
    6782              :           switch (pattern761 (x4))
    6783              :             {
    6784              :             case 0:
    6785              :               if (!
    6786              : #line 22371 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6787              : (TARGET_BMI))
    6788              :                 return -1;
    6789              :               *pnum_clobbers = 1;
    6790              :               return 1622; /* *bmi_blsr_si_ccz */
    6791              : 
    6792              :             case 1:
    6793              :               if (!(
    6794              : #line 22371 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6795              : (TARGET_BMI) && 
    6796              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6797              : (TARGET_64BIT)))
    6798              :                 return -1;
    6799              :               *pnum_clobbers = 1;
    6800              :               return 1623; /* *bmi_blsr_di_ccz */
    6801              : 
    6802              :             default:
    6803              :               return -1;
    6804              :             }
    6805              : 
    6806              :         default:
    6807              :           return -1;
    6808              :         }
    6809              : 
    6810              :     case IOR:
    6811              :       if (pnum_clobbers == NULL)
    6812              :         return -1;
    6813              :       x5 = XEXP (x3, 1);
    6814              :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    6815              :           || GET_MODE (x2) != E_CCZmode
    6816              :           || GET_MODE (x3) != E_CCZmode)
    6817              :         return -1;
    6818              :       switch (pattern50 (x4))
    6819              :         {
    6820              :         case 0:
    6821              :           if (!(
    6822              : #line 14257 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6823              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    6824              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6825              : (TARGET_AVX512DQ)))
    6826              :             return -1;
    6827              :           *pnum_clobbers = 1;
    6828              :           return 912; /* *iorqi_ccz_1 */
    6829              : 
    6830              :         case 1:
    6831              :           if (!
    6832              : #line 14257 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6833              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    6834              :             return -1;
    6835              :           *pnum_clobbers = 1;
    6836              :           return 913; /* *iorhi_ccz_1 */
    6837              : 
    6838              :         case 2:
    6839              :           if (!(
    6840              : #line 14257 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6841              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    6842              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6843              : (TARGET_AVX512BW)))
    6844              :             return -1;
    6845              :           *pnum_clobbers = 1;
    6846              :           return 914; /* *iorsi_ccz_1 */
    6847              : 
    6848              :         case 3:
    6849              :           if (!(
    6850              : #line 14257 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6851              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    6852              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6853              : (TARGET_AVX512BW && TARGET_64BIT)))
    6854              :             return -1;
    6855              :           *pnum_clobbers = 1;
    6856              :           return 915; /* *iordi_ccz_1 */
    6857              : 
    6858              :         default:
    6859              :           return -1;
    6860              :         }
    6861              : 
    6862              :     case CONST_INT:
    6863              :       if (XWINT (x4, 0) != 0L)
    6864              :         return -1;
    6865              :       x5 = XEXP (x3, 1);
    6866              :       if (GET_CODE (x5) != ZERO_EXTRACT)
    6867              :         return -1;
    6868              :       x8 = XEXP (x5, 1);
    6869              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
    6870              :           || GET_MODE (x2) != E_CCCmode
    6871              :           || GET_MODE (x3) != E_CCCmode)
    6872              :         return -1;
    6873              :       x11 = XEXP (x5, 0);
    6874              :       operands[0] = x11;
    6875              :       x12 = XEXP (x5, 2);
    6876              :       operands[1] = x12;
    6877              :       if (nonmemory_operand (operands[1], E_QImode))
    6878              :         {
    6879              :           switch (GET_MODE (x5))
    6880              :             {
    6881              :             case E_SImode:
    6882              :               if (nonimmediate_operand (operands[0], E_SImode))
    6883              :                 return 1448; /* *btsi */
    6884              :               break;
    6885              : 
    6886              :             case E_DImode:
    6887              :               if (nonimmediate_operand (operands[0], E_DImode)
    6888              :                   && 
    6889              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6890              : (TARGET_64BIT))
    6891              :                 return 1449; /* *btdi */
    6892              :               break;
    6893              : 
    6894              :             default:
    6895              :               break;
    6896              :             }
    6897              :         }
    6898              :       if (GET_CODE (x12) != SUBREG
    6899              :           || maybe_ne (SUBREG_BYTE (x12), 0)
    6900              :           || GET_MODE (x12) != E_QImode)
    6901              :         return -1;
    6902              :       x13 = XEXP (x12, 0);
    6903              :       if (GET_CODE (x13) != AND)
    6904              :         return -1;
    6905              :       switch (pattern1462 (x5))
    6906              :         {
    6907              :         case 0:
    6908              :           if (!
    6909              : #line 19526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6910              : (TARGET_USE_BT
    6911              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
    6912              :       == GET_MODE_BITSIZE (SImode)-1
    6913              :    && ix86_pre_reload_split ()))
    6914              :             return -1;
    6915              :           return 1450; /* *btsi_mask */
    6916              : 
    6917              :         case 1:
    6918              :           if (!
    6919              : #line 19526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6920              : (TARGET_USE_BT
    6921              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
    6922              :       == GET_MODE_BITSIZE (SImode)-1
    6923              :    && ix86_pre_reload_split ()))
    6924              :             return -1;
    6925              :           return 1452; /* *btsi_mask */
    6926              : 
    6927              :         case 2:
    6928              :           if (!(
    6929              : #line 19526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6930              : (TARGET_USE_BT
    6931              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
    6932              :       == GET_MODE_BITSIZE (SImode)-1
    6933              :    && ix86_pre_reload_split ()) && 
    6934              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6935              : (TARGET_64BIT)))
    6936              :             return -1;
    6937              :           return 1454; /* *btsi_mask */
    6938              : 
    6939              :         case 3:
    6940              :           if (!(
    6941              : #line 19526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6942              : (TARGET_USE_BT
    6943              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
    6944              :       == GET_MODE_BITSIZE (DImode)-1
    6945              :    && ix86_pre_reload_split ()) && 
    6946              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6947              : (TARGET_64BIT)))
    6948              :             return -1;
    6949              :           return 1451; /* *btdi_mask */
    6950              : 
    6951              :         case 4:
    6952              :           if (!(
    6953              : #line 19526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6954              : (TARGET_USE_BT
    6955              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
    6956              :       == GET_MODE_BITSIZE (DImode)-1
    6957              :    && ix86_pre_reload_split ()) && 
    6958              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6959              : (TARGET_64BIT)))
    6960              :             return -1;
    6961              :           return 1453; /* *btdi_mask */
    6962              : 
    6963              :         case 5:
    6964              :           if (!(
    6965              : #line 19526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6966              : (TARGET_USE_BT
    6967              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
    6968              :       == GET_MODE_BITSIZE (DImode)-1
    6969              :    && ix86_pre_reload_split ()) && 
    6970              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6971              : (TARGET_64BIT)))
    6972              :             return -1;
    6973              :           return 1455; /* *btdi_mask */
    6974              : 
    6975              :         default:
    6976              :           return -1;
    6977              :         }
    6978              : 
    6979              :     case UNSPEC:
    6980              :       if (GET_MODE (x2) != E_CCZmode
    6981              :           || GET_MODE (x3) != E_CCZmode)
    6982              :         return -1;
    6983              :       switch (XVECLEN (x4, 0))
    6984              :         {
    6985              :         case 2:
    6986              :           if (pnum_clobbers == NULL
    6987              :               || XINT (x4, 1) != 99)
    6988              :             return -1;
    6989              :           x5 = XEXP (x3, 1);
    6990              :           if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6991              :             return -1;
    6992              :           x14 = XVECEXP (x4, 0, 0);
    6993              :           operands[1] = x14;
    6994              :           x15 = XVECEXP (x4, 0, 1);
    6995              :           operands[2] = x15;
    6996              :           switch (GET_MODE (x4))
    6997              :             {
    6998              :             case E_SImode:
    6999              :               if (!nonimmediate_operand (operands[1], E_SImode)
    7000              :                   || !register_operand (operands[2], E_SImode)
    7001              :                   || !
    7002              : #line 22120 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7003              : (TARGET_BMI))
    7004              :                 return -1;
    7005              :               *pnum_clobbers = 1;
    7006              :               return 1602; /* *bmi_bextr_si_ccz */
    7007              : 
    7008              :             case E_DImode:
    7009              :               if (!nonimmediate_operand (operands[1], E_DImode)
    7010              :                   || !register_operand (operands[2], E_DImode)
    7011              :                   || !(
    7012              : #line 22120 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7013              : (TARGET_BMI) && 
    7014              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7015              : (TARGET_64BIT)))
    7016              :                 return -1;
    7017              :               *pnum_clobbers = 1;
    7018              :               return 1603; /* *bmi_bextr_di_ccz */
    7019              : 
    7020              :             default:
    7021              :               return -1;
    7022              :             }
    7023              : 
    7024              :         case 1:
    7025              :           if (XINT (x4, 1) != 50
    7026              :               || GET_MODE (x4) != E_SImode)
    7027              :             return -1;
    7028              :           x14 = XVECEXP (x4, 0, 0);
    7029              :           if (GET_CODE (x14) != VEC_MERGE)
    7030              :             return -1;
    7031              :           x5 = XEXP (x3, 1);
    7032              :           operands[2] = x5;
    7033              :           if (!const_int_operand (operands[2], E_VOIDmode))
    7034              :             return -1;
    7035              :           switch (pattern1271 (x14))
    7036              :             {
    7037              :             case 0:
    7038              :               if (!(
    7039              : #line 22770 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7040              : (TARGET_AVX512VL && UINTVAL (operands[2]) <= 0xffffffff) && 
    7041              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7042              : (TARGET_AVX2)))
    7043              :                 return -1;
    7044              :               return 8620; /* *pmovsk_mask_cmp_v32qi_avx512 */
    7045              : 
    7046              :             case 1:
    7047              :               if (!
    7048              : #line 22770 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7049              : (TARGET_AVX512VL && UINTVAL (operands[2]) <= 0xffff))
    7050              :                 return -1;
    7051              :               return 8621; /* *pmovsk_mask_cmp_v16qi_avx512 */
    7052              : 
    7053              :             case 2:
    7054              :               if (!(
    7055              : #line 22793 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7056              : (TARGET_AVX512VL && (INTVAL (operands[2]) == (int) (0xffffffff))) && 
    7057              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7058              : (TARGET_AVX2)))
    7059              :                 return -1;
    7060              :               return 8622; /* *pmovsk_ptest_v32qi_avx512 */
    7061              : 
    7062              :             case 3:
    7063              :               if (!
    7064              : #line 22793 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7065              : (TARGET_AVX512VL && (INTVAL (operands[2]) == (int) (0xffff))))
    7066              :                 return -1;
    7067              :               return 8623; /* *pmovsk_ptest_v16qi_avx512 */
    7068              : 
    7069              :             default:
    7070              :               return -1;
    7071              :             }
    7072              : 
    7073              :         default:
    7074              :           return -1;
    7075              :         }
    7076              : 
    7077              :     case IF_THEN_ELSE:
    7078              :       if (pnum_clobbers == NULL)
    7079              :         return -1;
    7080              :       x6 = XEXP (x4, 0);
    7081              :       if (GET_CODE (x6) != NE
    7082              :           || GET_MODE (x6) != E_QImode)
    7083              :         return -1;
    7084              :       x10 = XEXP (x6, 1);
    7085              :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    7086              :         return -1;
    7087              :       x7 = XEXP (x4, 1);
    7088              :       if (GET_CODE (x7) != ZERO_EXTRACT)
    7089              :         return -1;
    7090              :       x16 = XEXP (x7, 1);
    7091              :       if (GET_CODE (x16) != UMIN
    7092              :           || GET_MODE (x16) != E_QImode)
    7093              :         return -1;
    7094              :       x17 = XEXP (x7, 2);
    7095              :       if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    7096              :         return -1;
    7097              :       x18 = XEXP (x4, 2);
    7098              :       if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    7099              :         return -1;
    7100              :       x5 = XEXP (x3, 1);
    7101              :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    7102              :           || GET_MODE (x2) != E_CCZmode
    7103              :           || GET_MODE (x3) != E_CCZmode)
    7104              :         return -1;
    7105              :       x19 = XEXP (x6, 0);
    7106              :       operands[2] = x19;
    7107              :       if (!register_operand (operands[2], E_QImode))
    7108              :         return -1;
    7109              :       x20 = XEXP (x7, 0);
    7110              :       operands[1] = x20;
    7111              :       x21 = XEXP (x16, 1);
    7112              :       operands[3] = x21;
    7113              :       if (!const_int_operand (operands[3], E_QImode))
    7114              :         return -1;
    7115              :       x22 = XEXP (x16, 0);
    7116              :       if (!rtx_equal_p (x22, operands[2]))
    7117              :         return -1;
    7118              :       switch (GET_MODE (x4))
    7119              :         {
    7120              :         case E_SImode:
    7121              :           if (GET_MODE (x7) != E_SImode
    7122              :               || !nonimmediate_operand (operands[1], E_SImode)
    7123              :               || !
    7124              : #line 22427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7125              : (TARGET_BMI2 && INTVAL (operands[3]) == 4 * BITS_PER_UNIT))
    7126              :             return -1;
    7127              :           *pnum_clobbers = 1;
    7128              :           return 1626; /* *bmi2_bzhi_si3_1_ccz */
    7129              : 
    7130              :         case E_DImode:
    7131              :           if (GET_MODE (x7) != E_DImode
    7132              :               || !nonimmediate_operand (operands[1], E_DImode)
    7133              :               || !(
    7134              : #line 22427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7135              : (TARGET_BMI2 && INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
    7136              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7137              : (TARGET_64BIT)))
    7138              :             return -1;
    7139              :           *pnum_clobbers = 1;
    7140              :           return 1627; /* *bmi2_bzhi_di3_1_ccz */
    7141              : 
    7142              :         default:
    7143              :           return -1;
    7144              :         }
    7145              : 
    7146              :     case VEC_SELECT:
    7147              :       x7 = XEXP (x4, 1);
    7148              :       if (GET_CODE (x7) != PARALLEL
    7149              :           || XVECLEN (x7, 0) != 1)
    7150              :         return -1;
    7151              :       x23 = XVECEXP (x7, 0, 0);
    7152              :       if (x23 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    7153              :         return -1;
    7154              :       x5 = XEXP (x3, 1);
    7155              :       if (pattern253 (x5) != 0
    7156              :           || GET_MODE (x2) != E_CCFPmode
    7157              :           || GET_MODE (x3) != E_CCFPmode)
    7158              :         return -1;
    7159              :       x6 = XEXP (x4, 0);
    7160              :       operands[0] = x6;
    7161              :       x11 = XEXP (x5, 0);
    7162              :       operands[1] = x11;
    7163              :       switch (GET_MODE (x4))
    7164              :         {
    7165              :         case E_HFmode:
    7166              :           if (!register_operand (operands[0], E_V8HFmode)
    7167              :               || GET_MODE (x5) != E_HFmode
    7168              :               || !nonimmediate_operand (operands[1], E_V8HFmode)
    7169              :               || !(
    7170              : #line 5223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7171              : (SSE_FLOAT_MODE_P (HFmode) || HFmode == E_HFmode) && 
    7172              : #line 1356 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7173              : (TARGET_AVX512FP16)))
    7174              :             return -1;
    7175              :           return 3752; /* avx512fp16_comi */
    7176              : 
    7177              :         case E_SFmode:
    7178              :           if (!register_operand (operands[0], E_V4SFmode)
    7179              :               || GET_MODE (x5) != E_SFmode
    7180              :               || !nonimmediate_operand (operands[1], E_V4SFmode)
    7181              :               || !
    7182              : #line 5223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7183              : (SSE_FLOAT_MODE_P (SFmode) || SFmode == E_HFmode))
    7184              :             return -1;
    7185              :           return 3756; /* sse_comi */
    7186              : 
    7187              :         case E_DFmode:
    7188              :           if (!register_operand (operands[0], E_V2DFmode)
    7189              :               || GET_MODE (x5) != E_DFmode
    7190              :               || !nonimmediate_operand (operands[1], E_V2DFmode)
    7191              :               || !
    7192              : #line 5223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7193              : (SSE_FLOAT_MODE_P (DFmode) || DFmode == E_HFmode))
    7194              :             return -1;
    7195              :           return 3760; /* sse2_comi */
    7196              : 
    7197              :         case E_BFmode:
    7198              :           if (!register_operand (operands[0], E_V8BFmode)
    7199              :               || GET_MODE (x5) != E_BFmode
    7200              :               || !nonimmediate_operand (operands[1], E_V8BFmode)
    7201              :               || !
    7202              : #line 5243 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7203              : (TARGET_AVX10_2))
    7204              :             return -1;
    7205              :           return 3764; /* avx10_2_comisbf16_v8bf */
    7206              : 
    7207              :         default:
    7208              :           return -1;
    7209              :         }
    7210              : 
    7211              :     default:
    7212              :       return -1;
    7213              :     }
    7214              : }
    7215              : 
    7216              :  int
    7217              : recog_29 (rtx x1 ATTRIBUTE_UNUSED,
    7218              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7219              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7220              : {
    7221              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7222              :   rtx x2, x3, x4, x5, x6;
    7223              :   int res ATTRIBUTE_UNUSED;
    7224              :   if (!register_operand (operands[0], E_HImode))
    7225              :     return -1;
    7226              :   x2 = XEXP (x1, 1);
    7227              :   if (GET_MODE (x2) != E_HImode)
    7228              :     return -1;
    7229              :   x3 = XEXP (x2, 0);
    7230              :   switch (XVECLEN (x3, 0))
    7231              :     {
    7232              :     case 3:
    7233              :       x4 = XVECEXP (x3, 0, 0);
    7234              :       operands[1] = x4;
    7235              :       x5 = XVECEXP (x3, 0, 1);
    7236              :       operands[2] = x5;
    7237              :       x6 = XVECEXP (x3, 0, 2);
    7238              :       operands[3] = x6;
    7239              :       switch (XINT (x3, 1))
    7240              :         {
    7241              :         case 60:
    7242              :           switch (pattern986 (x3))
    7243              :             {
    7244              :             case 0:
    7245              :               if (!
    7246              : #line 4638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7247              : (TARGET_AVX512F
    7248              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7249              :    && (GET_MODE_NUNITS (V16SImode)
    7250              :       < GET_MODE_PRECISION (HImode))))
    7251              :                 return -1;
    7252              :               return 3362; /* *avx512f_cmpv16si3_zero_extendhi */
    7253              : 
    7254              :             case 1:
    7255              :               if (!(
    7256              : #line 4638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7257              : (TARGET_AVX512F
    7258              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7259              :    && (GET_MODE_NUNITS (V16HFmode)
    7260              :       < GET_MODE_PRECISION (HImode))) && 
    7261              : #line 321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7262              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
    7263              :                 return -1;
    7264              :               return 3383; /* *avx512vl_cmpv16hf3_zero_extendhi */
    7265              : 
    7266              :             case 2:
    7267              :               if (!
    7268              : #line 4638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7269              : (TARGET_AVX512F
    7270              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7271              :    && (GET_MODE_NUNITS (V16SFmode)
    7272              :       < GET_MODE_PRECISION (HImode))))
    7273              :                 return -1;
    7274              :               return 3389; /* *avx512f_cmpv16sf3_zero_extendhi */
    7275              : 
    7276              :             case 3:
    7277              :               if (!(
    7278              : #line 4830 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7279              : (TARGET_AVX512BW
    7280              :    && (GET_MODE_NUNITS (V16QImode)
    7281              :        < GET_MODE_PRECISION (HImode))) && 
    7282              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7283              : (TARGET_AVX512VL)))
    7284              :                 return -1;
    7285              :               return 3497; /* *avx512vl_cmpv16qi3_zero_extendhi */
    7286              : 
    7287              :             case 4:
    7288              :               if (!(
    7289              : #line 4830 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7290              : (TARGET_AVX512BW
    7291              :    && (GET_MODE_NUNITS (V16HImode)
    7292              :        < GET_MODE_PRECISION (HImode))) && 
    7293              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7294              : (TARGET_AVX512VL)))
    7295              :                 return -1;
    7296              :               return 3506; /* *avx512vl_cmpv16hi3_zero_extendhi */
    7297              : 
    7298              :             case 5:
    7299              :               if (!(
    7300              : #line 4638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7301              : (TARGET_AVX512F
    7302              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7303              :    && (GET_MODE_NUNITS (V8SImode)
    7304              :       < GET_MODE_PRECISION (HImode))) && 
    7305              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7306              : (TARGET_AVX512VL)))
    7307              :                 return -1;
    7308              :               return 3365; /* *avx512vl_cmpv8si3_zero_extendhi */
    7309              : 
    7310              :             case 6:
    7311              :               if (!(
    7312              : #line 4638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7313              : (TARGET_AVX512F
    7314              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7315              :    && (GET_MODE_NUNITS (V4SImode)
    7316              :       < GET_MODE_PRECISION (HImode))) && 
    7317              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7318              : (TARGET_AVX512VL)))
    7319              :                 return -1;
    7320              :               return 3368; /* *avx512vl_cmpv4si3_zero_extendhi */
    7321              : 
    7322              :             case 7:
    7323              :               if (!
    7324              : #line 4638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7325              : (TARGET_AVX512F
    7326              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7327              :    && (GET_MODE_NUNITS (V8DImode)
    7328              :       < GET_MODE_PRECISION (HImode))))
    7329              :                 return -1;
    7330              :               return 3371; /* *avx512f_cmpv8di3_zero_extendhi */
    7331              : 
    7332              :             case 8:
    7333              :               if (!(
    7334              : #line 4638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7335              : (TARGET_AVX512F
    7336              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7337              :    && (GET_MODE_NUNITS (V4DImode)
    7338              :       < GET_MODE_PRECISION (HImode))) && 
    7339              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7340              : (TARGET_AVX512VL)))
    7341              :                 return -1;
    7342              :               return 3374; /* *avx512vl_cmpv4di3_zero_extendhi */
    7343              : 
    7344              :             case 9:
    7345              :               if (!(
    7346              : #line 4638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7347              : (TARGET_AVX512F
    7348              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7349              :    && (GET_MODE_NUNITS (V2DImode)
    7350              :       < GET_MODE_PRECISION (HImode))) && 
    7351              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7352              : (TARGET_AVX512VL)))
    7353              :                 return -1;
    7354              :               return 3377; /* *avx512vl_cmpv2di3_zero_extendhi */
    7355              : 
    7356              :             case 10:
    7357              :               if (!(
    7358              : #line 4638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7359              : (TARGET_AVX512F
    7360              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7361              :    && (GET_MODE_NUNITS (V8HFmode)
    7362              :       < GET_MODE_PRECISION (HImode))) && 
    7363              : #line 322 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7364              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
    7365              :                 return -1;
    7366              :               return 3386; /* *avx512fp16_cmpv8hf3_zero_extendhi */
    7367              : 
    7368              :             case 11:
    7369              :               if (!(
    7370              : #line 4638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7371              : (TARGET_AVX512F
    7372              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7373              :    && (GET_MODE_NUNITS (V8SFmode)
    7374              :       < GET_MODE_PRECISION (HImode))) && 
    7375              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7376              : (TARGET_AVX512VL)))
    7377              :                 return -1;
    7378              :               return 3392; /* *avx512vl_cmpv8sf3_zero_extendhi */
    7379              : 
    7380              :             case 12:
    7381              :               if (!(
    7382              : #line 4638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7383              : (TARGET_AVX512F
    7384              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7385              :    && (GET_MODE_NUNITS (V4SFmode)
    7386              :       < GET_MODE_PRECISION (HImode))) && 
    7387              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7388              : (TARGET_AVX512VL)))
    7389              :                 return -1;
    7390              :               return 3395; /* *avx512vl_cmpv4sf3_zero_extendhi */
    7391              : 
    7392              :             case 13:
    7393              :               if (!
    7394              : #line 4638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7395              : (TARGET_AVX512F
    7396              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7397              :    && (GET_MODE_NUNITS (V8DFmode)
    7398              :       < GET_MODE_PRECISION (HImode))))
    7399              :                 return -1;
    7400              :               return 3398; /* *avx512f_cmpv8df3_zero_extendhi */
    7401              : 
    7402              :             case 14:
    7403              :               if (!(
    7404              : #line 4638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7405              : (TARGET_AVX512F
    7406              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7407              :    && (GET_MODE_NUNITS (V4DFmode)
    7408              :       < GET_MODE_PRECISION (HImode))) && 
    7409              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7410              : (TARGET_AVX512VL)))
    7411              :                 return -1;
    7412              :               return 3401; /* *avx512vl_cmpv4df3_zero_extendhi */
    7413              : 
    7414              :             case 15:
    7415              :               if (!(
    7416              : #line 4638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7417              : (TARGET_AVX512F
    7418              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7419              :    && (GET_MODE_NUNITS (V2DFmode)
    7420              :       < GET_MODE_PRECISION (HImode))) && 
    7421              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7422              : (TARGET_AVX512VL)))
    7423              :                 return -1;
    7424              :               return 3404; /* *avx512vl_cmpv2df3_zero_extendhi */
    7425              : 
    7426              :             case 16:
    7427              :               if (!(
    7428              : #line 4830 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7429              : (TARGET_AVX512BW
    7430              :    && (GET_MODE_NUNITS (V8HImode)
    7431              :        < GET_MODE_PRECISION (HImode))) && 
    7432              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7433              : (TARGET_AVX512VL)))
    7434              :                 return -1;
    7435              :               return 3509; /* *avx512vl_cmpv8hi3_zero_extendhi */
    7436              : 
    7437              :             case 17:
    7438              :               if (!(
    7439              : #line 4638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7440              : (TARGET_AVX512F
    7441              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7442              :    && (GET_MODE_NUNITS (V32HFmode)
    7443              :       < GET_MODE_PRECISION (HImode))) && 
    7444              : #line 320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7445              : (TARGET_AVX512FP16)))
    7446              :                 return -1;
    7447              :               return 3380; /* *avx512bw_cmpv32hf3_zero_extendhi */
    7448              : 
    7449              :             case 18:
    7450              :               if (!(
    7451              : #line 4830 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7452              : (TARGET_AVX512BW
    7453              :    && (GET_MODE_NUNITS (V32QImode)
    7454              :        < GET_MODE_PRECISION (HImode))) && 
    7455              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7456              : (TARGET_AVX512VL)))
    7457              :                 return -1;
    7458              :               return 3500; /* *avx512vl_cmpv32qi3_zero_extendhi */
    7459              : 
    7460              :             case 19:
    7461              :               if (!
    7462              : #line 4830 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7463              : (TARGET_AVX512BW
    7464              :    && (GET_MODE_NUNITS (V32HImode)
    7465              :        < GET_MODE_PRECISION (HImode))))
    7466              :                 return -1;
    7467              :               return 3503; /* *avx512bw_cmpv32hi3_zero_extendhi */
    7468              : 
    7469              :             case 20:
    7470              :               if (!
    7471              : #line 4830 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7472              : (TARGET_AVX512BW
    7473              :    && (GET_MODE_NUNITS (V64QImode)
    7474              :        < GET_MODE_PRECISION (HImode))))
    7475              :                 return -1;
    7476              :               return 3494; /* *avx512bw_cmpv64qi3_zero_extendhi */
    7477              : 
    7478              :             default:
    7479              :               return -1;
    7480              :             }
    7481              : 
    7482              :         case 158:
    7483              :           if (!const_0_to_7_operand (operands[3], E_SImode))
    7484              :             return -1;
    7485              :           switch (pattern1099 (x3))
    7486              :             {
    7487              :             case 0:
    7488              :               if (!
    7489              : #line 4965 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7490              : (TARGET_AVX512BW
    7491              :   && (GET_MODE_NUNITS (V64QImode)
    7492              :       < GET_MODE_PRECISION (HImode))))
    7493              :                 return -1;
    7494              :               return 3602; /* *avx512bw_ucmpv64qi3_zero_extendhi */
    7495              : 
    7496              :             case 1:
    7497              :               if (!(
    7498              : #line 4965 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7499              : (TARGET_AVX512BW
    7500              :   && (GET_MODE_NUNITS (V16QImode)
    7501              :       < GET_MODE_PRECISION (HImode))) && 
    7502              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7503              : (TARGET_AVX512VL)))
    7504              :                 return -1;
    7505              :               return 3605; /* *avx512vl_ucmpv16qi3_zero_extendhi */
    7506              : 
    7507              :             case 2:
    7508              :               if (!(
    7509              : #line 4965 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7510              : (TARGET_AVX512BW
    7511              :   && (GET_MODE_NUNITS (V16HImode)
    7512              :       < GET_MODE_PRECISION (HImode))) && 
    7513              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7514              : (TARGET_AVX512VL)))
    7515              :                 return -1;
    7516              :               return 3614; /* *avx512vl_ucmpv16hi3_zero_extendhi */
    7517              : 
    7518              :             case 3:
    7519              :               if (!
    7520              : #line 5054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7521              : (TARGET_AVX512F
    7522              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7523              :    && (GET_MODE_NUNITS (V16SImode)
    7524              :       < GET_MODE_PRECISION (HImode))))
    7525              :                 return -1;
    7526              :               return 3674; /* *avx512f_ucmpv16si3_zero_extendhi */
    7527              : 
    7528              :             case 4:
    7529              :               if (!(
    7530              : #line 4965 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7531              : (TARGET_AVX512BW
    7532              :   && (GET_MODE_NUNITS (V32QImode)
    7533              :       < GET_MODE_PRECISION (HImode))) && 
    7534              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7535              : (TARGET_AVX512VL)))
    7536              :                 return -1;
    7537              :               return 3608; /* *avx512vl_ucmpv32qi3_zero_extendhi */
    7538              : 
    7539              :             case 5:
    7540              :               if (!
    7541              : #line 4965 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7542              : (TARGET_AVX512BW
    7543              :   && (GET_MODE_NUNITS (V32HImode)
    7544              :       < GET_MODE_PRECISION (HImode))))
    7545              :                 return -1;
    7546              :               return 3611; /* *avx512bw_ucmpv32hi3_zero_extendhi */
    7547              : 
    7548              :             case 6:
    7549              :               if (!(
    7550              : #line 4965 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7551              : (TARGET_AVX512BW
    7552              :   && (GET_MODE_NUNITS (V8HImode)
    7553              :       < GET_MODE_PRECISION (HImode))) && 
    7554              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7555              : (TARGET_AVX512VL)))
    7556              :                 return -1;
    7557              :               return 3617; /* *avx512vl_ucmpv8hi3_zero_extendhi */
    7558              : 
    7559              :             case 7:
    7560              :               if (!(
    7561              : #line 5054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7562              : (TARGET_AVX512F
    7563              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7564              :    && (GET_MODE_NUNITS (V8SImode)
    7565              :       < GET_MODE_PRECISION (HImode))) && 
    7566              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7567              : (TARGET_AVX512VL)))
    7568              :                 return -1;
    7569              :               return 3675; /* *avx512vl_ucmpv8si3_zero_extendhi */
    7570              : 
    7571              :             case 8:
    7572              :               if (!(
    7573              : #line 5054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7574              : (TARGET_AVX512F
    7575              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7576              :    && (GET_MODE_NUNITS (V4SImode)
    7577              :       < GET_MODE_PRECISION (HImode))) && 
    7578              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7579              : (TARGET_AVX512VL)))
    7580              :                 return -1;
    7581              :               return 3676; /* *avx512vl_ucmpv4si3_zero_extendhi */
    7582              : 
    7583              :             case 9:
    7584              :               if (!
    7585              : #line 5054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7586              : (TARGET_AVX512F
    7587              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7588              :    && (GET_MODE_NUNITS (V8DImode)
    7589              :       < GET_MODE_PRECISION (HImode))))
    7590              :                 return -1;
    7591              :               return 3677; /* *avx512f_ucmpv8di3_zero_extendhi */
    7592              : 
    7593              :             case 10:
    7594              :               if (!(
    7595              : #line 5054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7596              : (TARGET_AVX512F
    7597              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7598              :    && (GET_MODE_NUNITS (V4DImode)
    7599              :       < GET_MODE_PRECISION (HImode))) && 
    7600              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7601              : (TARGET_AVX512VL)))
    7602              :                 return -1;
    7603              :               return 3678; /* *avx512vl_ucmpv4di3_zero_extendhi */
    7604              : 
    7605              :             case 11:
    7606              :               if (!(
    7607              : #line 5054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7608              : (TARGET_AVX512F
    7609              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
    7610              :    && (GET_MODE_NUNITS (V2DImode)
    7611              :       < GET_MODE_PRECISION (HImode))) && 
    7612              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7613              : (TARGET_AVX512VL)))
    7614              :                 return -1;
    7615              :               return 3679; /* *avx512vl_ucmpv2di3_zero_extendhi */
    7616              : 
    7617              :             default:
    7618              :               return -1;
    7619              :             }
    7620              : 
    7621              :         default:
    7622              :           return -1;
    7623              :         }
    7624              : 
    7625              :     case 2:
    7626              :       x4 = XVECEXP (x3, 0, 0);
    7627              :       operands[1] = x4;
    7628              :       x5 = XVECEXP (x3, 0, 1);
    7629              :       operands[2] = x5;
    7630              :       switch (XINT (x3, 1))
    7631              :         {
    7632              :         case 159:
    7633              :           switch (GET_MODE (x3))
    7634              :             {
    7635              :             case E_DImode:
    7636              :               if (!register_operand (operands[1], E_V64QImode)
    7637              :                   || !nonimmediate_operand (operands[2], E_V64QImode)
    7638              :                   || !(
    7639              : #line 19413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7640              : (TARGET_AVX512BW
    7641              :    && (2
    7642              :        > GET_MODE_SIZE (DImode))) && 
    7643              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7644              : (TARGET_AVX512BW)))
    7645              :                 return -1;
    7646              :               return 8204; /* *avx512bw_testmv64qi3_zext */
    7647              : 
    7648              :             case E_SImode:
    7649              :               switch (pattern879 ())
    7650              :                 {
    7651              :                 case 0:
    7652              :                   if (!(
    7653              : #line 19413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7654              : (TARGET_AVX512BW
    7655              :    && (2
    7656              :        > GET_MODE_SIZE (SImode))) && 
    7657              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7658              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7659              :                     return -1;
    7660              :                   return 8207; /* *avx512vl_testmv32qi3_zext */
    7661              : 
    7662              :                 case 1:
    7663              :                   if (!(
    7664              : #line 19413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7665              : (TARGET_AVX512BW
    7666              :    && (2
    7667              :        > GET_MODE_SIZE (SImode))) && 
    7668              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7669              : (TARGET_AVX512BW)))
    7670              :                     return -1;
    7671              :                   return 8213; /* *avx512bw_testmv32hi3_zext */
    7672              : 
    7673              :                 default:
    7674              :                   return -1;
    7675              :                 }
    7676              : 
    7677              :             case E_HImode:
    7678              :               switch (pattern746 ())
    7679              :                 {
    7680              :                 case 0:
    7681              :                   if (!(
    7682              : #line 19413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7683              : (TARGET_AVX512BW
    7684              :    && (2
    7685              :        > GET_MODE_SIZE (HImode))) && 
    7686              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7687              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7688              :                     return -1;
    7689              :                   return 8210; /* *avx512vl_testmv16qi3_zext */
    7690              : 
    7691              :                 case 1:
    7692              :                   if (!(
    7693              : #line 19413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7694              : (TARGET_AVX512BW
    7695              :    && (2
    7696              :        > GET_MODE_SIZE (HImode))) && 
    7697              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7698              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7699              :                     return -1;
    7700              :                   return 8216; /* *avx512vl_testmv16hi3_zext */
    7701              : 
    7702              :                 case 2:
    7703              :                   if (!
    7704              : #line 19413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7705              : (TARGET_AVX512BW
    7706              :    && (2
    7707              :        > GET_MODE_SIZE (HImode))))
    7708              :                     return -1;
    7709              :                   return 8222; /* *avx512f_testmv16si3_zext */
    7710              : 
    7711              :                 default:
    7712              :                   return -1;
    7713              :                 }
    7714              : 
    7715              :             case E_QImode:
    7716              :               switch (pattern747 ())
    7717              :                 {
    7718              :                 case 0:
    7719              :                   if (!(
    7720              : #line 19413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7721              : (TARGET_AVX512BW
    7722              :    && (2
    7723              :        > GET_MODE_SIZE (QImode))) && 
    7724              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7725              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7726              :                     return -1;
    7727              :                   return 8219; /* *avx512vl_testmv8hi3_zext */
    7728              : 
    7729              :                 case 1:
    7730              :                   if (!(
    7731              : #line 19413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7732              : (TARGET_AVX512BW
    7733              :    && (2
    7734              :        > GET_MODE_SIZE (QImode))) && 
    7735              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7736              : (TARGET_AVX512VL)))
    7737              :                     return -1;
    7738              :                   return 8225; /* *avx512vl_testmv8si3_zext */
    7739              : 
    7740              :                 case 2:
    7741              :                   if (!(
    7742              : #line 19413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7743              : (TARGET_AVX512BW
    7744              :    && (2
    7745              :        > GET_MODE_SIZE (QImode))) && 
    7746              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7747              : (TARGET_AVX512VL)))
    7748              :                     return -1;
    7749              :                   return 8228; /* *avx512vl_testmv4si3_zext */
    7750              : 
    7751              :                 case 3:
    7752              :                   if (!
    7753              : #line 19413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7754              : (TARGET_AVX512BW
    7755              :    && (2
    7756              :        > GET_MODE_SIZE (QImode))))
    7757              :                     return -1;
    7758              :                   return 8231; /* *avx512f_testmv8di3_zext */
    7759              : 
    7760              :                 case 4:
    7761              :                   if (!(
    7762              : #line 19413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7763              : (TARGET_AVX512BW
    7764              :    && (2
    7765              :        > GET_MODE_SIZE (QImode))) && 
    7766              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7767              : (TARGET_AVX512VL)))
    7768              :                     return -1;
    7769              :                   return 8234; /* *avx512vl_testmv4di3_zext */
    7770              : 
    7771              :                 case 5:
    7772              :                   if (!(
    7773              : #line 19413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7774              : (TARGET_AVX512BW
    7775              :    && (2
    7776              :        > GET_MODE_SIZE (QImode))) && 
    7777              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7778              : (TARGET_AVX512VL)))
    7779              :                     return -1;
    7780              :                   return 8237; /* *avx512vl_testmv2di3_zext */
    7781              : 
    7782              :                 default:
    7783              :                   return -1;
    7784              :                 }
    7785              : 
    7786              :             default:
    7787              :               return -1;
    7788              :             }
    7789              : 
    7790              :         case 160:
    7791              :           switch (GET_MODE (x3))
    7792              :             {
    7793              :             case E_DImode:
    7794              :               if (!register_operand (operands[1], E_V64QImode)
    7795              :                   || !nonimmediate_operand (operands[2], E_V64QImode)
    7796              :                   || !(
    7797              : #line 19443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7798              : (TARGET_AVX512BW
    7799              :    && (2
    7800              :        > GET_MODE_SIZE (DImode))) && 
    7801              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7802              : (TARGET_AVX512BW)))
    7803              :                 return -1;
    7804              :               return 8276; /* *avx512bw_testnmv64qi3_zext */
    7805              : 
    7806              :             case E_SImode:
    7807              :               switch (pattern879 ())
    7808              :                 {
    7809              :                 case 0:
    7810              :                   if (!(
    7811              : #line 19443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7812              : (TARGET_AVX512BW
    7813              :    && (2
    7814              :        > GET_MODE_SIZE (SImode))) && 
    7815              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7816              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7817              :                     return -1;
    7818              :                   return 8279; /* *avx512vl_testnmv32qi3_zext */
    7819              : 
    7820              :                 case 1:
    7821              :                   if (!(
    7822              : #line 19443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7823              : (TARGET_AVX512BW
    7824              :    && (2
    7825              :        > GET_MODE_SIZE (SImode))) && 
    7826              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7827              : (TARGET_AVX512BW)))
    7828              :                     return -1;
    7829              :                   return 8285; /* *avx512bw_testnmv32hi3_zext */
    7830              : 
    7831              :                 default:
    7832              :                   return -1;
    7833              :                 }
    7834              : 
    7835              :             case E_HImode:
    7836              :               switch (pattern746 ())
    7837              :                 {
    7838              :                 case 0:
    7839              :                   if (!(
    7840              : #line 19443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7841              : (TARGET_AVX512BW
    7842              :    && (2
    7843              :        > GET_MODE_SIZE (HImode))) && 
    7844              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7845              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7846              :                     return -1;
    7847              :                   return 8282; /* *avx512vl_testnmv16qi3_zext */
    7848              : 
    7849              :                 case 1:
    7850              :                   if (!(
    7851              : #line 19443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7852              : (TARGET_AVX512BW
    7853              :    && (2
    7854              :        > GET_MODE_SIZE (HImode))) && 
    7855              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7856              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7857              :                     return -1;
    7858              :                   return 8288; /* *avx512vl_testnmv16hi3_zext */
    7859              : 
    7860              :                 case 2:
    7861              :                   if (!
    7862              : #line 19443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7863              : (TARGET_AVX512BW
    7864              :    && (2
    7865              :        > GET_MODE_SIZE (HImode))))
    7866              :                     return -1;
    7867              :                   return 8294; /* *avx512f_testnmv16si3_zext */
    7868              : 
    7869              :                 default:
    7870              :                   return -1;
    7871              :                 }
    7872              : 
    7873              :             case E_QImode:
    7874              :               switch (pattern747 ())
    7875              :                 {
    7876              :                 case 0:
    7877              :                   if (!(
    7878              : #line 19443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7879              : (TARGET_AVX512BW
    7880              :    && (2
    7881              :        > GET_MODE_SIZE (QImode))) && 
    7882              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7883              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    7884              :                     return -1;
    7885              :                   return 8291; /* *avx512vl_testnmv8hi3_zext */
    7886              : 
    7887              :                 case 1:
    7888              :                   if (!(
    7889              : #line 19443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7890              : (TARGET_AVX512BW
    7891              :    && (2
    7892              :        > GET_MODE_SIZE (QImode))) && 
    7893              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7894              : (TARGET_AVX512VL)))
    7895              :                     return -1;
    7896              :                   return 8297; /* *avx512vl_testnmv8si3_zext */
    7897              : 
    7898              :                 case 2:
    7899              :                   if (!(
    7900              : #line 19443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7901              : (TARGET_AVX512BW
    7902              :    && (2
    7903              :        > GET_MODE_SIZE (QImode))) && 
    7904              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7905              : (TARGET_AVX512VL)))
    7906              :                     return -1;
    7907              :                   return 8300; /* *avx512vl_testnmv4si3_zext */
    7908              : 
    7909              :                 case 3:
    7910              :                   if (!
    7911              : #line 19443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7912              : (TARGET_AVX512BW
    7913              :    && (2
    7914              :        > GET_MODE_SIZE (QImode))))
    7915              :                     return -1;
    7916              :                   return 8303; /* *avx512f_testnmv8di3_zext */
    7917              : 
    7918              :                 case 4:
    7919              :                   if (!(
    7920              : #line 19443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7921              : (TARGET_AVX512BW
    7922              :    && (2
    7923              :        > GET_MODE_SIZE (QImode))) && 
    7924              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7925              : (TARGET_AVX512VL)))
    7926              :                     return -1;
    7927              :                   return 8306; /* *avx512vl_testnmv4di3_zext */
    7928              : 
    7929              :                 case 5:
    7930              :                   if (!(
    7931              : #line 19443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7932              : (TARGET_AVX512BW
    7933              :    && (2
    7934              :        > GET_MODE_SIZE (QImode))) && 
    7935              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7936              : (TARGET_AVX512VL)))
    7937              :                     return -1;
    7938              :                   return 8309; /* *avx512vl_testnmv2di3_zext */
    7939              : 
    7940              :                 default:
    7941              :                   return -1;
    7942              :                 }
    7943              : 
    7944              :             default:
    7945              :               return -1;
    7946              :             }
    7947              : 
    7948              :         default:
    7949              :           return -1;
    7950              :         }
    7951              : 
    7952              :     default:
    7953              :       return -1;
    7954              :     }
    7955              : }
    7956              : 
    7957              :  int
    7958              : recog_54 (rtx x1 ATTRIBUTE_UNUSED,
    7959              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7960              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7961              : {
    7962              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7963              :   rtx x2, x3, x4, x5;
    7964              :   int res ATTRIBUTE_UNUSED;
    7965              :   x2 = XEXP (x1, 1);
    7966              :   switch (GET_CODE (x2))
    7967              :     {
    7968              :     case LTU:
    7969              :       switch (pattern45 (x1))
    7970              :         {
    7971              :         case 0:
    7972              :           if (
    7973              : #line 10236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7974              : (ix86_pre_reload_split ()))
    7975              :             return 558; /* *setcc_qi_negqi_ccc_1_cc */
    7976              :           break;
    7977              : 
    7978              :         case 1:
    7979              :           if (
    7980              : #line 10236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7981              : (ix86_pre_reload_split ()))
    7982              :             return 559; /* *setcc_qi_negqi_ccc_1_ccc */
    7983              :           break;
    7984              : 
    7985              :         default:
    7986              :           break;
    7987              :         }
    7988              :       break;
    7989              : 
    7990              :     case NE:
    7991              :     case EQ:
    7992              :     case GE:
    7993              :     case GT:
    7994              :     case LE:
    7995              :     case LT:
    7996              :     case LTGT:
    7997              :     case UNORDERED:
    7998              :     case ORDERED:
    7999              :     case UNEQ:
    8000              :     case UNGE:
    8001              :     case UNGT:
    8002              :     case UNLE:
    8003              :     case UNLT:
    8004              :       res = recog_52 (x1, insn, pnum_clobbers);
    8005              :       if (res >= 0)
    8006              :         return res;
    8007              :       break;
    8008              : 
    8009              :     default:
    8010              :       break;
    8011              :     }
    8012              :   operands[1] = x2;
    8013              :   x3 = XEXP (x2, 0);
    8014              :   if (GET_CODE (x3) == REG
    8015              :       && REGNO (x3) == 17)
    8016              :     {
    8017              :       res = recog_53 (x1, insn, pnum_clobbers);
    8018              :       if (res >= 0)
    8019              :         return res;
    8020              :     }
    8021              :   switch (GET_CODE (operands[1]))
    8022              :     {
    8023              :     case NE:
    8024              :     case EQ:
    8025              :     case GEU:
    8026              :     case GTU:
    8027              :     case LEU:
    8028              :     case LTU:
    8029              :       x4 = XEXP (x1, 0);
    8030              :       operands[0] = x4;
    8031              :       operands[2] = x3;
    8032              :       x5 = XEXP (x2, 1);
    8033              :       operands[3] = x5;
    8034              :       switch (GET_MODE (operands[0]))
    8035              :         {
    8036              :         case E_V8QImode:
    8037              :           if (pattern751 (
    8038              : E_V8QImode) != 0
    8039              :               || !
    8040              : #line 4246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8041              : (TARGET_XOP))
    8042              :             return -1;
    8043              :           return 2292; /* *xop_maskcmp_unsv8qi3 */
    8044              : 
    8045              :         case E_V4HImode:
    8046              :           if (pattern751 (
    8047              : E_V4HImode) != 0
    8048              :               || !
    8049              : #line 4246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8050              : (TARGET_XOP))
    8051              :             return -1;
    8052              :           return 2293; /* *xop_maskcmp_unsv4hi3 */
    8053              : 
    8054              :         case E_V2SImode:
    8055              :           if (pattern751 (
    8056              : E_V2SImode) != 0
    8057              :               || !
    8058              : #line 4246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8059              : (TARGET_XOP))
    8060              :             return -1;
    8061              :           return 2294; /* *xop_maskcmp_unsv2si3 */
    8062              : 
    8063              :         case E_V4QImode:
    8064              :           if (pattern751 (
    8065              : E_V4QImode) != 0
    8066              :               || !
    8067              : #line 4256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8068              : (TARGET_XOP))
    8069              :             return -1;
    8070              :           return 2295; /* *xop_maskcmp_unsv4qi3 */
    8071              : 
    8072              :         case E_V2QImode:
    8073              :           if (pattern751 (
    8074              : E_V2QImode) != 0
    8075              :               || !
    8076              : #line 4256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8077              : (TARGET_XOP))
    8078              :             return -1;
    8079              :           return 2296; /* *xop_maskcmp_unsv2qi3 */
    8080              : 
    8081              :         case E_V2HImode:
    8082              :           if (pattern751 (
    8083              : E_V2HImode) != 0
    8084              :               || !
    8085              : #line 4256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8086              : (TARGET_XOP))
    8087              :             return -1;
    8088              :           return 2297; /* *xop_maskcmp_unsv2hi3 */
    8089              : 
    8090              :         default:
    8091              :           return -1;
    8092              :         }
    8093              : 
    8094              :     default:
    8095              :       return -1;
    8096              :     }
    8097              : }
    8098              : 
    8099              :  int
    8100              : recog_58 (rtx x1 ATTRIBUTE_UNUSED,
    8101              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8102              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8103              : {
    8104              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8105              :   rtx x2, x3, x4;
    8106              :   int res ATTRIBUTE_UNUSED;
    8107              :   x2 = XEXP (x1, 0);
    8108              :   switch (GET_CODE (x2))
    8109              :     {
    8110              :     case REG:
    8111              :     case SUBREG:
    8112              :     case MEM:
    8113              :       operands[0] = x2;
    8114              :       switch (GET_MODE (operands[0]))
    8115              :         {
    8116              :         case E_TImode:
    8117              :           x3 = XEXP (x1, 1);
    8118              :           if (pattern79 (x3, pnum_clobbers) != 0
    8119              :               || !(
    8120              : #line 8102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8121              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)) && 
    8122              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8123              : (TARGET_64BIT)))
    8124              :             return -1;
    8125              :           *pnum_clobbers = 1;
    8126              :           return 385; /* *subti3_doubleword */
    8127              : 
    8128              :         case E_QImode:
    8129              :           x3 = XEXP (x1, 1);
    8130              :           if (pattern80 (x3, 
    8131              : E_QImode) != 0)
    8132              :             return -1;
    8133              :           if (
    8134              : #line 8158 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8135              : (ix86_binary_operator_ok (MINUS, QImode, operands, TARGET_APX_NDD)
    8136              :   && TARGET_APX_NF))
    8137              :             return 388; /* *subqi_1_nf */
    8138              :           if (pnum_clobbers == NULL
    8139              :               || !
    8140              : #line 8158 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8141              : (ix86_binary_operator_ok (MINUS, QImode, operands, TARGET_APX_NDD)
    8142              :   && true))
    8143              :             return -1;
    8144              :           *pnum_clobbers = 1;
    8145              :           return 389; /* *subqi_1 */
    8146              : 
    8147              :         case E_HImode:
    8148              :           x3 = XEXP (x1, 1);
    8149              :           if (pattern80 (x3, 
    8150              : E_HImode) != 0)
    8151              :             return -1;
    8152              :           if (
    8153              : #line 8158 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8154              : (ix86_binary_operator_ok (MINUS, HImode, operands, TARGET_APX_NDD)
    8155              :   && TARGET_APX_NF))
    8156              :             return 390; /* *subhi_1_nf */
    8157              :           if (pnum_clobbers == NULL
    8158              :               || !
    8159              : #line 8158 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8160              : (ix86_binary_operator_ok (MINUS, HImode, operands, TARGET_APX_NDD)
    8161              :   && true))
    8162              :             return -1;
    8163              :           *pnum_clobbers = 1;
    8164              :           return 391; /* *subhi_1 */
    8165              : 
    8166              :         case E_HFmode:
    8167              :           x3 = XEXP (x1, 1);
    8168              :           if (pattern3 (x3, 
    8169              : E_HFmode) != 0
    8170              :               || !
    8171              : #line 23830 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8172              : (TARGET_AVX512FP16
    8173              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8174              :             return -1;
    8175              :           return 1711; /* *subhf */
    8176              : 
    8177              :         case E_V8QImode:
    8178              :           x3 = XEXP (x1, 1);
    8179              :           if (pattern6 (x3, 
    8180              : E_V8QImode) != 0
    8181              :               || !
    8182              : #line 3239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8183              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8184              :    && ix86_binary_operator_ok (MINUS, V8QImode, operands)))
    8185              :             return -1;
    8186              :           return 2182; /* *mmx_subv8qi3 */
    8187              : 
    8188              :         case E_V4HImode:
    8189              :           x3 = XEXP (x1, 1);
    8190              :           if (pattern6 (x3, 
    8191              : E_V4HImode) != 0
    8192              :               || !
    8193              : #line 3239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8194              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8195              :    && ix86_binary_operator_ok (MINUS, V4HImode, operands)))
    8196              :             return -1;
    8197              :           return 2184; /* *mmx_subv4hi3 */
    8198              : 
    8199              :         case E_V2SImode:
    8200              :           x3 = XEXP (x1, 1);
    8201              :           if (pattern6 (x3, 
    8202              : E_V2SImode) != 0
    8203              :               || !
    8204              : #line 3239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8205              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8206              :    && ix86_binary_operator_ok (MINUS, V2SImode, operands)))
    8207              :             return -1;
    8208              :           return 2186; /* *mmx_subv2si3 */
    8209              : 
    8210              :         case E_V1DImode:
    8211              :           x3 = XEXP (x1, 1);
    8212              :           if (pattern6 (x3, 
    8213              : E_V1DImode) != 0
    8214              :               || !(
    8215              : #line 3239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8216              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8217              :    && ix86_binary_operator_ok (MINUS, V1DImode, operands)) && 
    8218              : #line 50 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8219              : (TARGET_SSE2)))
    8220              :             return -1;
    8221              :           return 2188; /* *mmx_subv1di3 */
    8222              : 
    8223              :         case E_V4QImode:
    8224              :           x3 = XEXP (x1, 1);
    8225              :           if (pattern5 (x3, 
    8226              : E_V4QImode) != 0
    8227              :               || !
    8228              : #line 3255 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8229              : (TARGET_SSE2))
    8230              :             return -1;
    8231              :           return 2190; /* subv4qi3 */
    8232              : 
    8233              :         case E_V2HImode:
    8234              :           x3 = XEXP (x1, 1);
    8235              :           if (pattern5 (x3, 
    8236              : E_V2HImode) != 0
    8237              :               || !
    8238              : #line 3255 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8239              : (TARGET_SSE2))
    8240              :             return -1;
    8241              :           return 2192; /* subv2hi3 */
    8242              : 
    8243              :         case E_V2QImode:
    8244              :           if (pnum_clobbers == NULL)
    8245              :             return -1;
    8246              :           x3 = XEXP (x1, 1);
    8247              :           if (pattern5 (x3, 
    8248              : E_V2QImode) != 0
    8249              :               || !
    8250              : #line 3269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8251              : (!TARGET_PARTIAL_REG_STALL || optimize_size || TARGET_SSE2))
    8252              :             return -1;
    8253              :           *pnum_clobbers = 1;
    8254              :           return 2194; /* subv2qi3 */
    8255              : 
    8256              :         default:
    8257              :           return -1;
    8258              :         }
    8259              : 
    8260              :     case STRICT_LOW_PART:
    8261              :       if (pnum_clobbers == NULL)
    8262              :         return -1;
    8263              :       x4 = XEXP (x2, 0);
    8264              :       operands[0] = x4;
    8265              :       switch (GET_MODE (operands[0]))
    8266              :         {
    8267              :         case E_QImode:
    8268              :           x3 = XEXP (x1, 1);
    8269              :           if (pattern1091 (x3, 
    8270              : E_QImode) != 0
    8271              :               || !
    8272              : #line 8222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8273              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    8274              :             return -1;
    8275              :           *pnum_clobbers = 1;
    8276              :           return 407; /* *subqi_1_slp */
    8277              : 
    8278              :         case E_HImode:
    8279              :           x3 = XEXP (x1, 1);
    8280              :           if (pattern1091 (x3, 
    8281              : E_HImode) != 0
    8282              :               || !
    8283              : #line 8222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8284              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    8285              :             return -1;
    8286              :           *pnum_clobbers = 1;
    8287              :           return 408; /* *subhi_1_slp */
    8288              : 
    8289              :         default:
    8290              :           return -1;
    8291              :         }
    8292              : 
    8293              :     default:
    8294              :       return -1;
    8295              :     }
    8296              : }
    8297              : 
    8298              :  int
    8299              : recog_66 (rtx x1 ATTRIBUTE_UNUSED,
    8300              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8301              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8302              : {
    8303              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8304              :   rtx x2, x3, x4, x5, x6;
    8305              :   int res ATTRIBUTE_UNUSED;
    8306              :   x2 = XEXP (x1, 1);
    8307              :   x3 = XEXP (x2, 0);
    8308              :   operands[1] = x3;
    8309              :   x4 = XEXP (x2, 1);
    8310              :   switch (XVECLEN (x4, 0))
    8311              :     {
    8312              :     case 2:
    8313              :       x5 = XVECEXP (x4, 0, 0);
    8314              :       if (GET_CODE (x5) != CONST_INT)
    8315              :         return -1;
    8316              :       x6 = XVECEXP (x4, 0, 1);
    8317              :       if (GET_CODE (x6) == CONST_INT
    8318              :           && GET_MODE (x2) == E_V2SFmode)
    8319              :         {
    8320              :           switch (XWINT (x5, 0))
    8321              :             {
    8322              :             case 1L:
    8323              :               if (register_operand (operands[0], E_V2SFmode))
    8324              :                 {
    8325              :                   switch (XWINT (x6, 0))
    8326              :                     {
    8327              :                     case 0L:
    8328              :                       if (register_mmxmem_operand (operands[1], E_V2SFmode)
    8329              :                           && 
    8330              : #line 1664 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8331              : (TARGET_3DNOW_A || TARGET_MMX_WITH_SSE))
    8332              :                         return 2141; /* mmx_pswapdv2sf2 */
    8333              :                       break;
    8334              : 
    8335              :                     case 1L:
    8336              :                       if (register_operand (operands[1], E_V2SFmode)
    8337              :                           && 
    8338              : #line 1680 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8339              : (TARGET_MMX_WITH_SSE))
    8340              :                         return 2142; /* *mmx_movshdup */
    8341              :                       break;
    8342              : 
    8343              :                     default:
    8344              :                       break;
    8345              :                     }
    8346              :                 }
    8347              :               break;
    8348              : 
    8349              :             case 0L:
    8350              :               switch (XWINT (x6, 0))
    8351              :                 {
    8352              :                 case 0L:
    8353              :                   if (register_operand (operands[0], E_V2SFmode)
    8354              :                       && register_operand (operands[1], E_V2SFmode)
    8355              :                       && 
    8356              : #line 1696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8357              : (TARGET_MMX_WITH_SSE))
    8358              :                     return 2143; /* *mmx_movsldup */
    8359              :                   break;
    8360              : 
    8361              :                 case 1L:
    8362              :                   if (nonimmediate_operand (operands[0], E_V2SFmode)
    8363              :                       && nonimmediate_operand (operands[1], E_V4SFmode)
    8364              :                       && 
    8365              : #line 11968 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8366              : (TARGET_SSE && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    8367              :                     return 5291; /* sse_storelps */
    8368              :                   break;
    8369              : 
    8370              :                 default:
    8371              :                   break;
    8372              :                 }
    8373              :               break;
    8374              : 
    8375              :             case 2L:
    8376              :               if (XWINT (x6, 0) == 3L
    8377              :                   && nonimmediate_operand (operands[0], E_V2SFmode)
    8378              :                   && nonimmediate_operand (operands[1], E_V4SFmode)
    8379              :                   && 
    8380              : #line 11915 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8381              : (TARGET_SSE && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    8382              :                 return 5289; /* sse_storehps */
    8383              :               break;
    8384              : 
    8385              :             default:
    8386              :               break;
    8387              :             }
    8388              :         }
    8389              :       operands[2] = x5;
    8390              :       if (const_0_to_1_operand (operands[2], E_VOIDmode))
    8391              :         {
    8392              :           operands[3] = x6;
    8393              :           if (const_0_to_1_operand (operands[3], E_VOIDmode))
    8394              :             {
    8395              :               switch (GET_MODE (operands[0]))
    8396              :                 {
    8397              :                 case E_V2SImode:
    8398              :                   if (register_operand (operands[0], E_V2SImode)
    8399              :                       && GET_MODE (x2) == E_V2SImode
    8400              :                       && register_operand (operands[1], E_V2SImode)
    8401              :                       && 
    8402              : #line 5603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8403              : (TARGET_MMX_WITH_SSE))
    8404              :                     return 2392; /* *mmx_pshufd_1 */
    8405              :                   break;
    8406              : 
    8407              :                 case E_V2HFmode:
    8408              :                   if (register_operand (operands[0], E_V2HFmode)
    8409              :                       && GET_MODE (x2) == E_V2HFmode
    8410              :                       && register_operand (operands[1], E_V2HFmode)
    8411              :                       && 
    8412              : #line 6264 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8413              : (TARGET_SSE2))
    8414              :                     return 2428; /* *pshufwv2hf_1 */
    8415              :                   break;
    8416              : 
    8417              :                 case E_V2BFmode:
    8418              :                   if (register_operand (operands[0], E_V2BFmode)
    8419              :                       && GET_MODE (x2) == E_V2BFmode
    8420              :                       && register_operand (operands[1], E_V2BFmode)
    8421              :                       && 
    8422              : #line 6264 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8423              : (TARGET_SSE2))
    8424              :                     return 2429; /* *pshufwv2bf_1 */
    8425              :                   break;
    8426              : 
    8427              :                 case E_V2HImode:
    8428              :                   if (register_operand (operands[0], E_V2HImode)
    8429              :                       && GET_MODE (x2) == E_V2HImode
    8430              :                       && register_operand (operands[1], E_V2HImode)
    8431              :                       && 
    8432              : #line 6264 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8433              : (TARGET_SSE2))
    8434              :                     return 2430; /* *pshufwv2hi_1 */
    8435              :                   break;
    8436              : 
    8437              :                 default:
    8438              :                   break;
    8439              :                 }
    8440              :             }
    8441              :         }
    8442              :       if (XWINT (x5, 0) != 1L
    8443              :           || x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    8444              :           || !register_operand (operands[0], E_V2SImode)
    8445              :           || GET_MODE (x2) != E_V2SImode
    8446              :           || !register_mmxmem_operand (operands[1], E_V2SImode)
    8447              :           || !
    8448              : #line 5671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8449              : (TARGET_3DNOW_A))
    8450              :         return -1;
    8451              :       return 2399; /* mmx_pswapdv2si2 */
    8452              : 
    8453              :     case 1:
    8454              :       x5 = XVECEXP (x4, 0, 0);
    8455              :       if (GET_CODE (x5) != CONST_INT)
    8456              :         return -1;
    8457              :       switch (XWINT (x5, 0))
    8458              :         {
    8459              :         case 0L:
    8460              :           switch (GET_MODE (operands[0]))
    8461              :             {
    8462              :             case E_SFmode:
    8463              :               switch (pattern977 (x2))
    8464              :                 {
    8465              :                 case 0:
    8466              :                   if (
    8467              : #line 1806 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8468              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8469              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    8470              :                     return 2150; /* *vec_extractv2sf_0 */
    8471              :                   break;
    8472              : 
    8473              :                 case 1:
    8474              :                   if (
    8475              : #line 12652 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8476              : (TARGET_SSE && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    8477              :                     return 5347; /* *vec_extractv4sf_0 */
    8478              :                   break;
    8479              : 
    8480              :                 default:
    8481              :                   break;
    8482              :                 }
    8483              :               break;
    8484              : 
    8485              :             case E_HFmode:
    8486              :               switch (pattern978 (x2))
    8487              :                 {
    8488              :                 case 0:
    8489              :                   if (
    8490              : #line 13557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8491              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    8492              :                     return 5406; /* *vec_extractv32hf_0 */
    8493              :                   break;
    8494              : 
    8495              :                 case 1:
    8496              :                   if (
    8497              : #line 13557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8498              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    8499              :                     return 5407; /* *vec_extractv16hf_0 */
    8500              :                   break;
    8501              : 
    8502              :                 case 2:
    8503              :                   if (
    8504              : #line 13557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8505              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    8506              :                     return 5408; /* *vec_extractv8hf_0 */
    8507              :                   break;
    8508              : 
    8509              :                 default:
    8510              :                   break;
    8511              :                 }
    8512              :               break;
    8513              : 
    8514              :             case E_BFmode:
    8515              :               switch (pattern979 (x2))
    8516              :                 {
    8517              :                 case 0:
    8518              :                   if (
    8519              : #line 13557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8520              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    8521              :                     return 5409; /* *vec_extractv32bf_0 */
    8522              :                   break;
    8523              : 
    8524              :                 case 1:
    8525              :                   if (
    8526              : #line 13557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8527              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    8528              :                     return 5410; /* *vec_extractv16bf_0 */
    8529              :                   break;
    8530              : 
    8531              :                 case 2:
    8532              :                   if (
    8533              : #line 13557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8534              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    8535              :                     return 5411; /* *vec_extractv8bf_0 */
    8536              :                   break;
    8537              : 
    8538              :                 default:
    8539              :                   break;
    8540              :                 }
    8541              :               break;
    8542              : 
    8543              :             case E_DFmode:
    8544              :               if (nonimmediate_operand (operands[0], E_DFmode)
    8545              :                   && GET_MODE (x2) == E_DFmode
    8546              :                   && nonimmediate_operand (operands[1], E_V2DFmode))
    8547              :                 {
    8548              :                   if (
    8549              : #line 14975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8550              : (TARGET_SSE2 && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    8551              :                     return 7249; /* sse2_storelpd */
    8552              :                   if (
    8553              : #line 15004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8554              : (!TARGET_SSE2 && TARGET_SSE
    8555              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    8556              :                     return 7250; /* *vec_extractv2df_0_sse */
    8557              :                 }
    8558              :               break;
    8559              : 
    8560              :             case E_QImode:
    8561              :               if (memory_operand (operands[0], E_QImode)
    8562              :                   && GET_MODE (x2) == E_QImode
    8563              :                   && register_operand (operands[1], E_V16QImode)
    8564              :                   && (
    8565              : #line 21404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8566              : (TARGET_SSE2
    8567              :    && !TARGET_SSE4_1
    8568              :    && (TARGET_INTER_UNIT_MOVES_FROM_VEC
    8569              :        || optimize_function_for_speed_p (cfun))
    8570              :    && ix86_pre_reload_split ()) && 
    8571              : #line 21397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8572              : (TARGET_SSE4_1)))
    8573              :                 return 8501; /* *vec_extractv16qi_0_mem */
    8574              :               break;
    8575              : 
    8576              :             case E_HImode:
    8577              :               if (memory_operand (operands[0], E_HImode)
    8578              :                   && GET_MODE (x2) == E_HImode
    8579              :                   && register_operand (operands[1], E_V8HImode)
    8580              :                   && 
    8581              : #line 21404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8582              : (TARGET_SSE2
    8583              :    && !TARGET_SSE4_1
    8584              :    && (TARGET_INTER_UNIT_MOVES_FROM_VEC
    8585              :        || optimize_function_for_speed_p (cfun))
    8586              :    && ix86_pre_reload_split ()))
    8587              :                 return 8502; /* *vec_extractv8hi_0_mem */
    8588              :               break;
    8589              : 
    8590              :             default:
    8591              :               break;
    8592              :             }
    8593              :           break;
    8594              : 
    8595              :         case 1L:
    8596              :           switch (GET_MODE (operands[0]))
    8597              :             {
    8598              :             case E_SFmode:
    8599              :               if (nonimmediate_operand (operands[0], E_SFmode)
    8600              :                   && GET_MODE (x2) == E_SFmode
    8601              :                   && nonimmediate_operand (operands[1], E_V2SFmode)
    8602              :                   && 
    8603              : #line 1821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8604              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8605              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    8606              :                 return 2151; /* *vec_extractv2sf_1 */
    8607              :               break;
    8608              : 
    8609              :             case E_DFmode:
    8610              :               if (nonimmediate_operand (operands[0], E_DFmode)
    8611              :                   && GET_MODE (x2) == E_DFmode
    8612              :                   && nonimmediate_operand (operands[1], E_V2DFmode))
    8613              :                 {
    8614              :                   if (
    8615              : #line 14918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8616              : (TARGET_SSE2 && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    8617              :                     return 7247; /* sse2_storehpd */
    8618              :                   if (
    8619              : #line 14951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8620              : (!TARGET_SSE2 && TARGET_SSE
    8621              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    8622              :                     return 7248; /* *vec_extractv2df_1_sse */
    8623              :                 }
    8624              :               break;
    8625              : 
    8626              :             default:
    8627              :               break;
    8628              :             }
    8629              :           break;
    8630              : 
    8631              :         default:
    8632              :           break;
    8633              :         }
    8634              :       operands[2] = x5;
    8635              :       switch (GET_MODE (operands[0]))
    8636              :         {
    8637              :         case E_HImode:
    8638              :           if (GET_MODE (x2) != E_HImode)
    8639              :             return -1;
    8640              :           if (register_sse4nonimm_operand (operands[0], E_HImode))
    8641              :             {
    8642              :               switch (GET_MODE (operands[1]))
    8643              :                 {
    8644              :                 case E_V4HImode:
    8645              :                   if (register_operand (operands[1], E_V4HImode)
    8646              :                       && const_0_to_3_operand (operands[2], E_SImode)
    8647              :                       && 
    8648              : #line 5409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8649              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8650              :    && (TARGET_SSE || TARGET_3DNOW_A)))
    8651              :                     return 2378; /* *mmx_pextrw */
    8652              :                   break;
    8653              : 
    8654              :                 case E_V2HImode:
    8655              :                   if (register_operand (operands[1], E_V2HImode)
    8656              :                       && const_0_to_1_operand (operands[2], E_SImode)
    8657              :                       && 
    8658              : #line 6075 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8659              : (TARGET_SSE2))
    8660              :                     return 2416; /* *pextrw */
    8661              :                   break;
    8662              : 
    8663              :                 case E_V8HImode:
    8664              :                   if (register_operand (operands[1], E_V8HImode)
    8665              :                       && const_0_to_7_operand (operands[2], E_SImode)
    8666              :                       && 
    8667              : #line 21428 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8668              : (TARGET_SSE2))
    8669              :                     return 8504; /* *vec_extractv8hi */
    8670              :                   break;
    8671              : 
    8672              :                 default:
    8673              :                   break;
    8674              :                 }
    8675              :             }
    8676              :           if (!register_operand (operands[0], E_HImode)
    8677              :               || !memory_operand (operands[1], E_V8HImode)
    8678              :               || !const_0_to_7_operand (operands[2], E_VOIDmode)
    8679              :               || !
    8680              : #line 21489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8681              : (TARGET_SSE))
    8682              :             return -1;
    8683              :           return 8511; /* *vec_extractv8hi_mem */
    8684              : 
    8685              :         case E_HFmode:
    8686              :           if (!register_sse4nonimm_operand (operands[0], E_HFmode)
    8687              :               || GET_MODE (x2) != E_HFmode)
    8688              :             return -1;
    8689              :           switch (GET_MODE (operands[1]))
    8690              :             {
    8691              :             case E_V4HFmode:
    8692              :               if (!register_operand (operands[1], E_V4HFmode)
    8693              :                   || !const_0_to_3_operand (operands[2], E_SImode)
    8694              :                   || !
    8695              : #line 5429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8696              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8697              :    && (TARGET_SSE || TARGET_3DNOW_A)))
    8698              :                 return -1;
    8699              :               return 2379; /* *mmx_pextrwv4hf */
    8700              : 
    8701              :             case E_V2HFmode:
    8702              :               if (!register_operand (operands[1], E_V2HFmode)
    8703              :                   || !const_0_to_1_operand (operands[2], E_SImode)
    8704              :                   || !
    8705              : #line 6092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8706              : (TARGET_SSE2))
    8707              :                 return -1;
    8708              :               return 2417; /* *pextrwv2hf */
    8709              : 
    8710              :             case E_V8HFmode:
    8711              :               if (!register_operand (operands[1], E_V8HFmode)
    8712              :                   || !const_0_to_7_operand (operands[2], E_SImode)
    8713              :                   || !
    8714              : #line 13569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8715              : (TARGET_SSE2))
    8716              :                 return -1;
    8717              :               return 5412; /* *vec_extracthf */
    8718              : 
    8719              :             default:
    8720              :               return -1;
    8721              :             }
    8722              : 
    8723              :         case E_BFmode:
    8724              :           if (!register_sse4nonimm_operand (operands[0], E_BFmode)
    8725              :               || GET_MODE (x2) != E_BFmode)
    8726              :             return -1;
    8727              :           switch (GET_MODE (operands[1]))
    8728              :             {
    8729              :             case E_V4BFmode:
    8730              :               if (!register_operand (operands[1], E_V4BFmode)
    8731              :                   || !const_0_to_3_operand (operands[2], E_SImode)
    8732              :                   || !
    8733              : #line 5429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8734              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8735              :    && (TARGET_SSE || TARGET_3DNOW_A)))
    8736              :                 return -1;
    8737              :               return 2380; /* *mmx_pextrwv4bf */
    8738              : 
    8739              :             case E_V2BFmode:
    8740              :               if (!register_operand (operands[1], E_V2BFmode)
    8741              :                   || !const_0_to_1_operand (operands[2], E_SImode)
    8742              :                   || !
    8743              : #line 6092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8744              : (TARGET_SSE2))
    8745              :                 return -1;
    8746              :               return 2418; /* *pextrwv2bf */
    8747              : 
    8748              :             case E_V8BFmode:
    8749              :               if (!register_operand (operands[1], E_V8BFmode)
    8750              :                   || !const_0_to_7_operand (operands[2], E_SImode)
    8751              :                   || !
    8752              : #line 13569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8753              : (TARGET_SSE2))
    8754              :                 return -1;
    8755              :               return 5413; /* *vec_extractbf */
    8756              : 
    8757              :             default:
    8758              :               return -1;
    8759              :             }
    8760              : 
    8761              :         case E_QImode:
    8762              :           if (GET_MODE (x2) != E_QImode)
    8763              :             return -1;
    8764              :           if (nonimmediate_operand (operands[0], E_QImode))
    8765              :             {
    8766              :               switch (GET_MODE (operands[1]))
    8767              :                 {
    8768              :                 case E_V8QImode:
    8769              :                   if (register_operand (operands[1], E_V8QImode)
    8770              :                       && const_0_to_7_operand (operands[2], E_SImode)
    8771              :                       && 
    8772              : #line 5482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8773              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8774              :                     return 2383; /* *mmx_pextrb */
    8775              :                   break;
    8776              : 
    8777              :                 case E_V4QImode:
    8778              :                   if (register_operand (operands[1], E_V4QImode)
    8779              :                       && const_0_to_3_operand (operands[2], E_SImode)
    8780              :                       && 
    8781              : #line 6138 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8782              : (TARGET_SSE4_1))
    8783              :                     return 2421; /* *pextrb */
    8784              :                   break;
    8785              : 
    8786              :                 default:
    8787              :                   break;
    8788              :                 }
    8789              :             }
    8790              :           if (register_sse4nonimm_operand (operands[0], E_QImode)
    8791              :               && register_operand (operands[1], E_V16QImode)
    8792              :               && const_0_to_15_operand (operands[2], E_SImode)
    8793              :               && (
    8794              : #line 21428 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8795              : (TARGET_SSE2) && 
    8796              : #line 21397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8797              : (TARGET_SSE4_1)))
    8798              :             return 8503; /* *vec_extractv16qi */
    8799              :           if (!register_operand (operands[0], E_QImode)
    8800              :               || !memory_operand (operands[1], E_V16QImode)
    8801              :               || !const_0_to_15_operand (operands[2], E_VOIDmode)
    8802              :               || !
    8803              : #line 21489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8804              : (TARGET_SSE))
    8805              :             return -1;
    8806              :           return 8510; /* *vec_extractv16qi_mem */
    8807              : 
    8808              :         case E_SFmode:
    8809              :           if (GET_MODE (x2) != E_SFmode)
    8810              :             return -1;
    8811              :           if (nonimmediate_operand (operands[0], E_SFmode)
    8812              :               && register_operand (operands[1], E_V4SFmode)
    8813              :               && const_0_to_3_operand (operands[2], E_SImode)
    8814              :               && 
    8815              : #line 12663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8816              : (TARGET_SSE4_1))
    8817              :             return 5348; /* *sse4_1_extractps */
    8818              :           if (!register_operand (operands[0], E_SFmode))
    8819              :             return -1;
    8820              :           switch (GET_MODE (operands[1]))
    8821              :             {
    8822              :             case E_V4SFmode:
    8823              :               if (!memory_operand (operands[1], E_V4SFmode)
    8824              :                   || !const_0_to_3_operand (operands[2], E_VOIDmode)
    8825              :                   || !
    8826              : #line 12706 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8827              : (TARGET_SSE))
    8828              :                 return -1;
    8829              :               return 5349; /* *vec_extractv4sf_mem */
    8830              : 
    8831              :             case E_V16SFmode:
    8832              :               if (!register_operand (operands[1], E_V16SFmode)
    8833              :                   || !const_0_to_15_operand (operands[2], E_VOIDmode)
    8834              :                   || !
    8835              : #line 14397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8836              : (TARGET_AVX512F
    8837              :    && INTVAL(operands[2]) * GET_MODE_SIZE (SFmode) >= 16))
    8838              :                 return -1;
    8839              :               return 7120; /* *vec_extractv16sfsf_valign */
    8840              : 
    8841              :             case E_V8SFmode:
    8842              :               if (!register_operand (operands[1], E_V8SFmode)
    8843              :                   || !const_0_to_7_operand (operands[2], E_VOIDmode)
    8844              :                   || !(
    8845              : #line 14397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8846              : (TARGET_AVX512F
    8847              :    && INTVAL(operands[2]) * GET_MODE_SIZE (SFmode) >= 16) && 
    8848              : #line 307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8849              : (TARGET_AVX512VL)))
    8850              :                 return -1;
    8851              :               return 7121; /* *vec_extractv8sfsf_valign */
    8852              : 
    8853              :             default:
    8854              :               return -1;
    8855              :             }
    8856              : 
    8857              :         case E_DFmode:
    8858              :           if (!register_operand (operands[0], E_DFmode)
    8859              :               || GET_MODE (x2) != E_DFmode)
    8860              :             return -1;
    8861              :           switch (GET_MODE (operands[1]))
    8862              :             {
    8863              :             case E_V8DFmode:
    8864              :               if (!register_operand (operands[1], E_V8DFmode)
    8865              :                   || !const_0_to_7_operand (operands[2], E_VOIDmode)
    8866              :                   || !
    8867              : #line 14397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8868              : (TARGET_AVX512F
    8869              :    && INTVAL(operands[2]) * GET_MODE_SIZE (DFmode) >= 16))
    8870              :                 return -1;
    8871              :               return 7122; /* *vec_extractv8dfdf_valign */
    8872              : 
    8873              :             case E_V4DFmode:
    8874              :               if (!register_operand (operands[1], E_V4DFmode)
    8875              :                   || !const_0_to_3_operand (operands[2], E_VOIDmode)
    8876              :                   || !(
    8877              : #line 14397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8878              : (TARGET_AVX512F
    8879              :    && INTVAL(operands[2]) * GET_MODE_SIZE (DFmode) >= 16) && 
    8880              : #line 308 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8881              : (TARGET_AVX512VL)))
    8882              :                 return -1;
    8883              :               return 7123; /* *vec_extractv4dfdf_valign */
    8884              : 
    8885              :             default:
    8886              :               return -1;
    8887              :             }
    8888              : 
    8889              :         case E_TImode:
    8890              :           if (!nonimmediate_operand (operands[0], E_TImode)
    8891              :               || GET_MODE (x2) != E_TImode)
    8892              :             return -1;
    8893              :           switch (GET_MODE (operands[1]))
    8894              :             {
    8895              :             case E_V2TImode:
    8896              :               if (!register_operand (operands[1], E_V2TImode)
    8897              :                   || !const_0_to_1_operand (operands[2], E_SImode)
    8898              :                   || !
    8899              : #line 21745 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8900              : (TARGET_AVX))
    8901              :                 return -1;
    8902              :               return 8522; /* *vec_extractv2ti */
    8903              : 
    8904              :             case E_V4TImode:
    8905              :               if (!register_operand (operands[1], E_V4TImode)
    8906              :                   || !const_0_to_3_operand (operands[2], E_SImode)
    8907              :                   || !
    8908              : #line 21763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8909              : (TARGET_AVX512F))
    8910              :                 return -1;
    8911              :               return 8523; /* *vec_extractv4ti */
    8912              : 
    8913              :             default:
    8914              :               return -1;
    8915              :             }
    8916              : 
    8917              :         default:
    8918              :           return -1;
    8919              :         }
    8920              : 
    8921              :     case 4:
    8922              :       x5 = XVECEXP (x4, 0, 0);
    8923              :       operands[2] = x5;
    8924              :       if (pattern754 (x4) != 0)
    8925              :         return -1;
    8926              :       switch (GET_MODE (operands[0]))
    8927              :         {
    8928              :         case E_V4HFmode:
    8929              :           if (!register_operand (operands[0], E_V4HFmode)
    8930              :               || GET_MODE (x2) != E_V4HFmode
    8931              :               || !register_mmxmem_operand (operands[1], E_V4HFmode)
    8932              :               || !
    8933              : #line 5571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8934              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8935              :    && (TARGET_SSE || TARGET_3DNOW_A)))
    8936              :             return -1;
    8937              :           return 2389; /* mmx_pshufwv4hf_1 */
    8938              : 
    8939              :         case E_V4BFmode:
    8940              :           if (!register_operand (operands[0], E_V4BFmode)
    8941              :               || GET_MODE (x2) != E_V4BFmode
    8942              :               || !register_mmxmem_operand (operands[1], E_V4BFmode)
    8943              :               || !
    8944              : #line 5571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8945              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8946              :    && (TARGET_SSE || TARGET_3DNOW_A)))
    8947              :             return -1;
    8948              :           return 2390; /* mmx_pshufwv4bf_1 */
    8949              : 
    8950              :         case E_V4HImode:
    8951              :           if (!register_operand (operands[0], E_V4HImode)
    8952              :               || GET_MODE (x2) != E_V4HImode
    8953              :               || !register_mmxmem_operand (operands[1], E_V4HImode)
    8954              :               || !
    8955              : #line 5571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8956              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8957              :    && (TARGET_SSE || TARGET_3DNOW_A)))
    8958              :             return -1;
    8959              :           return 2391; /* mmx_pshufwv4hi_1 */
    8960              : 
    8961              :         default:
    8962              :           return -1;
    8963              :         }
    8964              : 
    8965              :     default:
    8966              :       return -1;
    8967              :     }
    8968              : }
    8969              : 
    8970              :  int
    8971              : recog_85 (rtx x1 ATTRIBUTE_UNUSED,
    8972              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8973              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8974              : {
    8975              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8976              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    8977              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    8978              :   rtx x18;
    8979              :   int res ATTRIBUTE_UNUSED;
    8980              :   x2 = XEXP (x1, 0);
    8981              :   operands[0] = x2;
    8982              :   x3 = XEXP (x1, 1);
    8983              :   x4 = XEXP (x3, 0);
    8984              :   switch (GET_CODE (x4))
    8985              :     {
    8986              :     case ASHIFT:
    8987              :       return recog_84 (x1, insn, pnum_clobbers);
    8988              : 
    8989              :     case REG:
    8990              :     case SUBREG:
    8991              :     case MEM:
    8992              :       operands[1] = x4;
    8993              :       x5 = XEXP (x3, 1);
    8994              :       operands[2] = x5;
    8995              :       switch (pattern439 (x3))
    8996              :         {
    8997              :         case 0:
    8998              :           if (pnum_clobbers != NULL
    8999              :               && x86_64_hilo_general_operand (operands[2], E_DImode)
    9000              :               && (
    9001              : #line 13847 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9002              : (ix86_binary_operator_ok (IOR, DImode, operands, TARGET_APX_NDD)) && 
    9003              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9004              : (!TARGET_64BIT)))
    9005              :             {
    9006              :               *pnum_clobbers = 1;
    9007              :               return 847; /* *iordi3_doubleword */
    9008              :             }
    9009              :           if (x86_64_general_operand (operands[2], E_DImode))
    9010              :             {
    9011              :               if ((
    9012              : #line 13905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9013              : (ix86_binary_operator_ok (IOR, DImode, operands, TARGET_APX_NDD)
    9014              :    && TARGET_APX_NF) && 
    9015              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9016              : (TARGET_64BIT)))
    9017              :                 return 859; /* *iordi_1_nf */
    9018              :               if (pnum_clobbers != NULL
    9019              :                   && (
    9020              : #line 13905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9021              : (ix86_binary_operator_ok (IOR, DImode, operands, TARGET_APX_NDD)
    9022              :    && true) && 
    9023              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9024              : (TARGET_64BIT)))
    9025              :                 {
    9026              :                   *pnum_clobbers = 1;
    9027              :                   return 860; /* *iordi_1 */
    9028              :                 }
    9029              :             }
    9030              :           if (pnum_clobbers == NULL
    9031              :               || !const_int_operand (operands[2], E_DImode)
    9032              :               || !
    9033              : #line 13953 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9034              : (TARGET_64BIT && TARGET_USE_BT
    9035              :    && ix86_binary_operator_ok (IOR, DImode, operands)
    9036              :    && IN_RANGE (exact_log2 (INTVAL (operands[2])), 31, 63)))
    9037              :             return -1;
    9038              :           *pnum_clobbers = 1;
    9039              :           return 866; /* *iordi_1_bts */
    9040              : 
    9041              :         case 1:
    9042              :           if (
    9043              : #line 13905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9044              : (ix86_binary_operator_ok (IOR, SImode, operands, TARGET_APX_NDD)
    9045              :    && TARGET_APX_NF))
    9046              :             return 855; /* *iorsi_1_nf */
    9047              :           if (pnum_clobbers == NULL
    9048              :               || !
    9049              : #line 13905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9050              : (ix86_binary_operator_ok (IOR, SImode, operands, TARGET_APX_NDD)
    9051              :    && true))
    9052              :             return -1;
    9053              :           *pnum_clobbers = 1;
    9054              :           return 856; /* *iorsi_1 */
    9055              : 
    9056              :         default:
    9057              :           return -1;
    9058              :         }
    9059              : 
    9060              :     case ZERO_EXTEND:
    9061              :       if (GET_MODE (x4) != E_DImode
    9062              :           || GET_MODE (x3) != E_DImode)
    9063              :         return -1;
    9064              :       switch (pattern443 (x3))
    9065              :         {
    9066              :         case 0:
    9067              :           if (pnum_clobbers != NULL)
    9068              :             {
    9069              :               x5 = XEXP (x3, 1);
    9070              :               operands[2] = x5;
    9071              :               if (x86_64_zext_immediate_operand (operands[2], E_DImode)
    9072              :                   && register_operand (operands[0], E_DImode)
    9073              :                   && 
    9074              : #line 14082 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9075              : (TARGET_64BIT
    9076              :    && ix86_binary_operator_ok (IOR, SImode, operands, TARGET_APX_NDD)))
    9077              :                 {
    9078              :                   *pnum_clobbers = 1;
    9079              :                   return 893; /* *iorsi_1_zext_imm */
    9080              :                 }
    9081              :             }
    9082              :           x5 = XEXP (x3, 1);
    9083              :           operands[2] = x5;
    9084              :           if (!const_scalar_int_operand (operands[2], E_DImode)
    9085              :               || !nonimmediate_operand (operands[0], E_DImode)
    9086              :               || !(
    9087              : #line 14534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9088              : (DImode == DImode
    9089              :    ? CONST_INT_P (operands[2])
    9090              :      && (UINTVAL (operands[2]) & GET_MODE_MASK (SImode)) == 0
    9091              :      && !ix86_endbr_immediate_operand (operands[2], VOIDmode)
    9092              :    : CONST_WIDE_INT_P (operands[2])
    9093              :      && CONST_WIDE_INT_NUNITS (operands[2]) == 2
    9094              :      && CONST_WIDE_INT_ELT (operands[2], 0) == 0
    9095              :      && !ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[2],
    9096              :                                                                     1)),
    9097              :                                        VOIDmode)) && 
    9098              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9099              : (!TARGET_64BIT)))
    9100              :             return -1;
    9101              :           return 979; /* *concatsidi3_7 */
    9102              : 
    9103              :         case 1:
    9104              :           if (!(
    9105              : #line 14413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9106              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
    9107              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9108              : (!TARGET_64BIT)))
    9109              :             return -1;
    9110              :           return 931; /* *concatsidi3_2 */
    9111              : 
    9112              :         case 2:
    9113              :           if (!(
    9114              : #line 14457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9115              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
    9116              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9117              : (!TARGET_64BIT)))
    9118              :             return -1;
    9119              :           return 949; /* *concatsidi3_4 */
    9120              : 
    9121              :         case 3:
    9122              :           if (!(
    9123              : #line 14457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9124              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
    9125              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9126              : (!TARGET_64BIT)))
    9127              :             return -1;
    9128              :           return 952; /* *concatsidi3_4 */
    9129              : 
    9130              :         default:
    9131              :           return -1;
    9132              :         }
    9133              : 
    9134              :     case LSHIFTRT:
    9135              :       x6 = XEXP (x4, 1);
    9136              :       switch (GET_CODE (x6))
    9137              :         {
    9138              :         case AND:
    9139              :           switch (pattern289 (x3, 
    9140              : ASHIFT))
    9141              :             {
    9142              :             case 0:
    9143              :               x5 = XEXP (x3, 1);
    9144              :               x7 = XEXP (x5, 0);
    9145              :               x8 = XEXP (x7, 0);
    9146              :               x9 = XEXP (x8, 0);
    9147              :               operands[1] = x9;
    9148              :               if (nonimmediate_operand (operands[0], E_DImode))
    9149              :                 {
    9150              :                   res = recog_83 (x1, insn, pnum_clobbers);
    9151              :                   if (res >= 0)
    9152              :                     return res;
    9153              :                 }
    9154              :               operands[2] = x9;
    9155              :               if (!register_operand (operands[0], E_DImode))
    9156              :                 return -1;
    9157              :               x10 = XEXP (x4, 0);
    9158              :               operands[1] = x10;
    9159              :               if (!nonimmediate_operand (operands[1], E_DImode))
    9160              :                 return -1;
    9161              :               x11 = XEXP (x6, 0);
    9162              :               operands[3] = x11;
    9163              :               x12 = XEXP (x7, 1);
    9164              :               x13 = XEXP (x12, 1);
    9165              :               x14 = XEXP (x13, 0);
    9166              :               if (!rtx_equal_p (x14, operands[3]))
    9167              :                 return -1;
    9168              :               if (
    9169              : #line 17143 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9170              : (TARGET_APX_NDD && TARGET_APX_NF))
    9171              :                 return 1176; /* x86_64_shrd_ndd_nf */
    9172              :               if (pnum_clobbers == NULL
    9173              :                   || !
    9174              : #line 17143 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9175              : (TARGET_APX_NDD && true))
    9176              :                 return -1;
    9177              :               *pnum_clobbers = 1;
    9178              :               return 1177; /* x86_64_shrd_ndd */
    9179              : 
    9180              :             case 1:
    9181              :               if (pattern288 (x3, 
    9182              : E_SImode, 
    9183              : E_DImode) != 0)
    9184              :                 return -1;
    9185              :               x5 = XEXP (x3, 1);
    9186              :               x7 = XEXP (x5, 0);
    9187              :               x8 = XEXP (x7, 0);
    9188              :               x9 = XEXP (x8, 0);
    9189              :               operands[1] = x9;
    9190              :               if (nonimmediate_operand (operands[0], E_SImode))
    9191              :                 {
    9192              :                   x11 = XEXP (x6, 0);
    9193              :                   operands[2] = x11;
    9194              :                   x10 = XEXP (x4, 0);
    9195              :                   if (rtx_equal_p (x10, operands[0]))
    9196              :                     {
    9197              :                       x12 = XEXP (x7, 1);
    9198              :                       x13 = XEXP (x12, 1);
    9199              :                       x14 = XEXP (x13, 0);
    9200              :                       if (rtx_equal_p (x14, operands[2]))
    9201              :                         {
    9202              :                           if (
    9203              : #line 17352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9204              : (TARGET_APX_NF))
    9205              :                             return 1186; /* x86_shrd_nf */
    9206              :                           if (pnum_clobbers != NULL)
    9207              :                             {
    9208              :                               *pnum_clobbers = 1;
    9209              :                               return 1187; /* x86_shrd */
    9210              :                             }
    9211              :                         }
    9212              :                     }
    9213              :                 }
    9214              :               operands[2] = x9;
    9215              :               if (!register_operand (operands[0], E_SImode))
    9216              :                 return -1;
    9217              :               x10 = XEXP (x4, 0);
    9218              :               operands[1] = x10;
    9219              :               if (!nonimmediate_operand (operands[1], E_SImode))
    9220              :                 return -1;
    9221              :               x11 = XEXP (x6, 0);
    9222              :               operands[3] = x11;
    9223              :               x12 = XEXP (x7, 1);
    9224              :               x13 = XEXP (x12, 1);
    9225              :               x14 = XEXP (x13, 0);
    9226              :               if (!rtx_equal_p (x14, operands[3]))
    9227              :                 return -1;
    9228              :               if (
    9229              : #line 17374 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9230              : (TARGET_APX_NDD && TARGET_APX_NF))
    9231              :                 return 1188; /* x86_shrd_ndd_nf */
    9232              :               if (pnum_clobbers == NULL
    9233              :                   || !
    9234              : #line 17374 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9235              : (TARGET_APX_NDD && true))
    9236              :                 return -1;
    9237              :               *pnum_clobbers = 1;
    9238              :               return 1189; /* x86_shrd_ndd */
    9239              : 
    9240              :             default:
    9241              :               return -1;
    9242              :             }
    9243              : 
    9244              :         case CONST_INT:
    9245              :         case CONST_WIDE_INT:
    9246              :         case CONST_POLY_INT:
    9247              :         case CONST_FIXED:
    9248              :         case CONST_DOUBLE:
    9249              :         case CONST_VECTOR:
    9250              :         case CONST:
    9251              :         case REG:
    9252              :         case SUBREG:
    9253              :         case LABEL_REF:
    9254              :         case SYMBOL_REF:
    9255              :         case HIGH:
    9256              :           x5 = XEXP (x3, 1);
    9257              :           switch (GET_CODE (x5))
    9258              :             {
    9259              :             case SUBREG:
    9260              :               switch (pattern444 (x3, 
    9261              : ASHIFT))
    9262              :                 {
    9263              :                 case 0:
    9264              :                   operands[2] = x6;
    9265              :                   if (pattern1371 (x3) == 0)
    9266              :                     {
    9267              :                       if (
    9268              : #line 17158 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9269              : (TARGET_64BIT
    9270              :    && INTVAL (operands[3]) == 64 - INTVAL (operands[2])
    9271              :    && TARGET_APX_NF))
    9272              :                         return 1178; /* x86_64_shrd_1_nf */
    9273              :                       if (pnum_clobbers != NULL
    9274              :                           && 
    9275              : #line 17158 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9276              : (TARGET_64BIT
    9277              :    && INTVAL (operands[3]) == 64 - INTVAL (operands[2])
    9278              :    && true))
    9279              :                         {
    9280              :                           *pnum_clobbers = 1;
    9281              :                           return 1179; /* x86_64_shrd_1 */
    9282              :                         }
    9283              :                     }
    9284              :                   operands[3] = x6;
    9285              :                   if (pattern1372 (x3) != 0)
    9286              :                     return -1;
    9287              :                   if (
    9288              : #line 17180 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9289              : (TARGET_APX_NDD
    9290              :    && INTVAL (operands[4]) == 64 - INTVAL (operands[3])
    9291              :    && TARGET_APX_NF))
    9292              :                     return 1180; /* x86_64_shrd_ndd_1_nf */
    9293              :                   if (pnum_clobbers == NULL
    9294              :                       || !
    9295              : #line 17180 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9296              : (TARGET_APX_NDD
    9297              :    && INTVAL (operands[4]) == 64 - INTVAL (operands[3])
    9298              :    && true))
    9299              :                     return -1;
    9300              :                   *pnum_clobbers = 1;
    9301              :                   return 1181; /* x86_64_shrd_ndd_1 */
    9302              : 
    9303              :                 case 1:
    9304              :                   operands[2] = x6;
    9305              :                   if (pattern1373 (x3) == 0)
    9306              :                     {
    9307              :                       if (
    9308              : #line 17389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9309              : (INTVAL (operands[3]) == 32 - INTVAL (operands[2])
    9310              :    && TARGET_APX_NF))
    9311              :                         return 1190; /* x86_shrd_1_nf */
    9312              :                       if (pnum_clobbers != NULL
    9313              :                           && 
    9314              : #line 17389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9315              : (INTVAL (operands[3]) == 32 - INTVAL (operands[2])
    9316              :    && true))
    9317              :                         {
    9318              :                           *pnum_clobbers = 1;
    9319              :                           return 1191; /* x86_shrd_1 */
    9320              :                         }
    9321              :                     }
    9322              :                   operands[3] = x6;
    9323              :                   if (pattern1374 (x3) != 0)
    9324              :                     return -1;
    9325              :                   if (
    9326              : #line 17411 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9327              : (TARGET_APX_NDD
    9328              :    && (INTVAL (operands[4]) == 32 - INTVAL (operands[3]))
    9329              :    && TARGET_APX_NF))
    9330              :                     return 1192; /* x86_shrd_ndd_1_nf */
    9331              :                   if (pnum_clobbers == NULL
    9332              :                       || !
    9333              : #line 17411 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9334              : (TARGET_APX_NDD
    9335              :    && (INTVAL (operands[4]) == 32 - INTVAL (operands[3]))
    9336              :    && true))
    9337              :                     return -1;
    9338              :                   *pnum_clobbers = 1;
    9339              :                   return 1193; /* x86_shrd_ndd_1 */
    9340              : 
    9341              :                 default:
    9342              :                   return -1;
    9343              :                 }
    9344              : 
    9345              :             case ASHIFT:
    9346              :               switch (pattern447 (x3, pnum_clobbers))
    9347              :                 {
    9348              :                 case 0:
    9349              :                   if (
    9350              : #line 17196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9351              : (TARGET_64BIT && TARGET_APX_NF
    9352              :    && INTVAL (operands[3]) == 64 - INTVAL (operands[2])
    9353              :    && ix86_pre_reload_split ()))
    9354              :                     return 1182; /* *x86_64_shrd_shld_1_nozext_nf */
    9355              :                   if (pnum_clobbers == NULL
    9356              :                       || !
    9357              : #line 17252 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9358              : (TARGET_64BIT
    9359              :    && INTVAL (operands[3]) == 64 - INTVAL (operands[2])
    9360              :    && ix86_pre_reload_split ()))
    9361              :                     return -1;
    9362              :                   *pnum_clobbers = 1;
    9363              :                   return 1183; /* *x86_64_shrd_shld_1_nozext */
    9364              : 
    9365              :                 case 1:
    9366              :                   if (
    9367              : #line 17427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9368              : (TARGET_APX_NF
    9369              :    && INTVAL (operands[3]) == 32 - INTVAL (operands[2])
    9370              :    && ix86_pre_reload_split ()))
    9371              :                     return 1194; /* *x86_shrd_shld_1_nozext_nf */
    9372              :                   if (pnum_clobbers == NULL
    9373              :                       || !
    9374              : #line 17483 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9375              : (INTVAL (operands[3]) == 32 - INTVAL (operands[2])
    9376              :    && ix86_pre_reload_split ()))
    9377              :                     return -1;
    9378              :                   *pnum_clobbers = 1;
    9379              :                   return 1195; /* *x86_shrd_shld_1_nozext */
    9380              : 
    9381              :                 case 2:
    9382              :                   x7 = XEXP (x5, 0);
    9383              :                   operands[1] = x7;
    9384              :                   if (nonimmediate_operand (operands[0], E_DImode))
    9385              :                     {
    9386              :                       operands[2] = x6;
    9387              :                       x10 = XEXP (x4, 0);
    9388              :                       if (rtx_equal_p (x10, operands[0]))
    9389              :                         {
    9390              :                           x15 = XEXP (x5, 1);
    9391              :                           x16 = XEXP (x15, 1);
    9392              :                           if (rtx_equal_p (x16, operands[2])
    9393              :                               && 
    9394              : #line 17305 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9395              : (TARGET_64BIT && ix86_pre_reload_split ()))
    9396              :                             {
    9397              :                               *pnum_clobbers = 1;
    9398              :                               return 1184; /* *x86_64_shrd_2 */
    9399              :                             }
    9400              :                         }
    9401              :                     }
    9402              :                   operands[2] = x7;
    9403              :                   if (!register_operand (operands[0], E_DImode))
    9404              :                     return -1;
    9405              :                   x10 = XEXP (x4, 0);
    9406              :                   operands[1] = x10;
    9407              :                   if (!nonimmediate_operand (operands[1], E_DImode))
    9408              :                     return -1;
    9409              :                   operands[3] = x6;
    9410              :                   x15 = XEXP (x5, 1);
    9411              :                   x16 = XEXP (x15, 1);
    9412              :                   if (!rtx_equal_p (x16, operands[2])
    9413              :                       || !
    9414              : #line 17326 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9415              : (TARGET_APX_NDD
    9416              :   && ix86_pre_reload_split ()))
    9417              :                     return -1;
    9418              :                   *pnum_clobbers = 1;
    9419              :                   return 1185; /* *x86_64_shrd_ndd_2 */
    9420              : 
    9421              :                 case 3:
    9422              :                   x7 = XEXP (x5, 0);
    9423              :                   operands[1] = x7;
    9424              :                   if (nonimmediate_operand (operands[0], E_SImode))
    9425              :                     {
    9426              :                       operands[2] = x6;
    9427              :                       x10 = XEXP (x4, 0);
    9428              :                       if (rtx_equal_p (x10, operands[0]))
    9429              :                         {
    9430              :                           x15 = XEXP (x5, 1);
    9431              :                           x16 = XEXP (x15, 1);
    9432              :                           if (rtx_equal_p (x16, operands[2])
    9433              :                               && 
    9434              : #line 17535 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9435              : (TARGET_64BIT && ix86_pre_reload_split ()))
    9436              :                             {
    9437              :                               *pnum_clobbers = 1;
    9438              :                               return 1196; /* *x86_shrd_2 */
    9439              :                             }
    9440              :                         }
    9441              :                     }
    9442              :                   operands[2] = x7;
    9443              :                   if (!register_operand (operands[0], E_SImode))
    9444              :                     return -1;
    9445              :                   x10 = XEXP (x4, 0);
    9446              :                   operands[1] = x10;
    9447              :                   if (!nonimmediate_operand (operands[1], E_SImode))
    9448              :                     return -1;
    9449              :                   operands[3] = x6;
    9450              :                   x15 = XEXP (x5, 1);
    9451              :                   x16 = XEXP (x15, 1);
    9452              :                   if (!rtx_equal_p (x16, operands[3])
    9453              :                       || !
    9454              : #line 17556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9455              : (TARGET_APX_NDD
    9456              :    && ix86_pre_reload_split ()))
    9457              :                     return -1;
    9458              :                   *pnum_clobbers = 1;
    9459              :                   return 1197; /* *x86_shrd_ndd_2 */
    9460              : 
    9461              :                 default:
    9462              :                   return -1;
    9463              :                 }
    9464              : 
    9465              :             default:
    9466              :               return -1;
    9467              :             }
    9468              : 
    9469              :         default:
    9470              :           return -1;
    9471              :         }
    9472              : 
    9473              :     case NOT:
    9474              :       if (pnum_clobbers == NULL)
    9475              :         return -1;
    9476              :       x10 = XEXP (x4, 0);
    9477              :       if (GET_CODE (x10) != PLUS)
    9478              :         return -1;
    9479              :       x17 = XEXP (x10, 1);
    9480              :       if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    9481              :         return -1;
    9482              :       x18 = XEXP (x10, 0);
    9483              :       operands[1] = x18;
    9484              :       x5 = XEXP (x3, 1);
    9485              :       if (!rtx_equal_p (x5, operands[1]))
    9486              :         return -1;
    9487              :       switch (GET_MODE (operands[0]))
    9488              :         {
    9489              :         case E_SImode:
    9490              :           if (pattern990 (x3, 
    9491              : E_SImode) != 0
    9492              :               || !
    9493              : #line 22554 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9494              : (TARGET_TBM))
    9495              :             return -1;
    9496              :           *pnum_clobbers = 1;
    9497              :           return 1642; /* *tbm_blci_si */
    9498              : 
    9499              :         case E_DImode:
    9500              :           if (pattern990 (x3, 
    9501              : E_DImode) != 0
    9502              :               || !(
    9503              : #line 22554 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9504              : (TARGET_TBM) && 
    9505              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9506              : (TARGET_64BIT)))
    9507              :             return -1;
    9508              :           *pnum_clobbers = 1;
    9509              :           return 1643; /* *tbm_blci_di */
    9510              : 
    9511              :         default:
    9512              :           return -1;
    9513              :         }
    9514              : 
    9515              :     case PLUS:
    9516              :       if (pnum_clobbers == NULL)
    9517              :         return -1;
    9518              :       x6 = XEXP (x4, 1);
    9519              :       if (GET_CODE (x6) != CONST_INT)
    9520              :         return -1;
    9521              :       x10 = XEXP (x4, 0);
    9522              :       operands[1] = x10;
    9523              :       switch (XWINT (x6, 0))
    9524              :         {
    9525              :         case 1L:
    9526              :           switch (pattern764 (x3))
    9527              :             {
    9528              :             case 0:
    9529              :               if (!
    9530              : #line 22594 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9531              : (TARGET_TBM))
    9532              :                 return -1;
    9533              :               *pnum_clobbers = 1;
    9534              :               return 1648; /* *tbm_blcs_si */
    9535              : 
    9536              :             case 1:
    9537              :               if (!(
    9538              : #line 22594 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9539              : (TARGET_TBM) && 
    9540              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9541              : (TARGET_64BIT)))
    9542              :                 return -1;
    9543              :               *pnum_clobbers = 1;
    9544              :               return 1649; /* *tbm_blcs_di */
    9545              : 
    9546              :             case 2:
    9547              :               if (!
    9548              : #line 22635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9549              : (TARGET_TBM))
    9550              :                 return -1;
    9551              :               *pnum_clobbers = 1;
    9552              :               return 1654; /* *tbm_t1mskc_si */
    9553              : 
    9554              :             case 3:
    9555              :               if (!(
    9556              : #line 22635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9557              : (TARGET_TBM) && 
    9558              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9559              : (TARGET_64BIT)))
    9560              :                 return -1;
    9561              :               *pnum_clobbers = 1;
    9562              :               return 1655; /* *tbm_t1mskc_di */
    9563              : 
    9564              :             default:
    9565              :               return -1;
    9566              :             }
    9567              : 
    9568              :         case -1L:
    9569              :           switch (pattern764 (x3))
    9570              :             {
    9571              :             case 0:
    9572              :               if (!
    9573              : #line 22607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9574              : (TARGET_TBM))
    9575              :                 return -1;
    9576              :               *pnum_clobbers = 1;
    9577              :               return 1650; /* *tbm_blsfill_si */
    9578              : 
    9579              :             case 1:
    9580              :               if (!(
    9581              : #line 22607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9582              : (TARGET_TBM) && 
    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 1651; /* *tbm_blsfill_di */
    9588              : 
    9589              :             case 2:
    9590              :               if (!
    9591              : #line 22621 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9592              : (TARGET_TBM))
    9593              :                 return -1;
    9594              :               *pnum_clobbers = 1;
    9595              :               return 1652; /* *tbm_blsic_si */
    9596              : 
    9597              :             case 3:
    9598              :               if (!(
    9599              : #line 22621 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9600              : (TARGET_TBM) && 
    9601              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9602              : (TARGET_64BIT)))
    9603              :                 return -1;
    9604              :               *pnum_clobbers = 1;
    9605              :               return 1653; /* *tbm_blsic_di */
    9606              : 
    9607              :             default:
    9608              :               return -1;
    9609              :             }
    9610              : 
    9611              :         default:
    9612              :           return -1;
    9613              :         }
    9614              : 
    9615              :     case AND:
    9616              :       if (pattern119 (x3) != 0
    9617              :           || !register_operand (operands[0], E_SImode)
    9618              :           || GET_MODE (x3) != E_SImode)
    9619              :         return -1;
    9620              :       x10 = XEXP (x4, 0);
    9621              :       operands[1] = x10;
    9622              :       if (!register_operand (operands[1], E_SImode))
    9623              :         return -1;
    9624              :       x5 = XEXP (x3, 1);
    9625              :       x7 = XEXP (x5, 0);
    9626              :       x8 = XEXP (x7, 0);
    9627              :       if (!rtx_equal_p (x8, operands[1]))
    9628              :         return -1;
    9629              :       return 1680; /* bswaphisi2_lowpart */
    9630              : 
    9631              :     default:
    9632              :       return -1;
    9633              :     }
    9634              : }
    9635              : 
    9636              :  int
    9637              : recog_104 (rtx x1 ATTRIBUTE_UNUSED,
    9638              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9639              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9640              : {
    9641              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9642              :   rtx x2, x3, x4, x5;
    9643              :   int res ATTRIBUTE_UNUSED;
    9644              :   x2 = XEXP (x1, 0);
    9645              :   operands[0] = x2;
    9646              :   x3 = XEXP (x1, 1);
    9647              :   x4 = XEXP (x3, 0);
    9648              :   switch (GET_CODE (x4))
    9649              :     {
    9650              :     case REG:
    9651              :     case SUBREG:
    9652              :     case MEM:
    9653              :       switch (pattern124 (x3, pnum_clobbers))
    9654              :         {
    9655              :         case 0:
    9656              :           x5 = XEXP (x3, 1);
    9657              :           switch (GET_CODE (x5))
    9658              :             {
    9659              :             case REG:
    9660              :             case SUBREG:
    9661              :               if (pnum_clobbers != NULL
    9662              :                   && pattern633 (x3) == 0
    9663              :                   && (
    9664              : #line 16918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9665              : (((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) == 0
    9666              :     || ((INTVAL (operands[3]) & (2 * 4 * BITS_PER_UNIT - 1))
    9667              :          == (2 * 4 * BITS_PER_UNIT - 1)))
    9668              :    && ix86_pre_reload_split ()) && 
    9669              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9670              : (!TARGET_64BIT)))
    9671              :                 {
    9672              :                   *pnum_clobbers = 1;
    9673              :                   return 1155; /* *ashrdi3_doubleword_mask */
    9674              :                 }
    9675              :               operands[2] = x5;
    9676              :               if (register_operand (operands[2], E_SImode)
    9677              :                   && register_operand (operands[0], E_SImode)
    9678              :                   && GET_MODE (x3) == E_SImode
    9679              :                   && nonimmediate_operand (operands[1], E_SImode)
    9680              :                   && 
    9681              : #line 17649 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9682              : (TARGET_BMI2))
    9683              :                 return 1204; /* *bmi2_ashrsi3_1 */
    9684              :               break;
    9685              : 
    9686              :             case CONST_INT:
    9687              :               operands[2] = x5;
    9688              :               if (const_int_operand (operands[2], E_QImode)
    9689              :                   && nonimmediate_operand (operands[0], E_SImode)
    9690              :                   && GET_MODE (x3) == E_SImode
    9691              :                   && nonimmediate_operand (operands[1], E_SImode))
    9692              :                 {
    9693              :                   if (
    9694              : #line 17580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9695              : (INTVAL (operands[2]) == GET_MODE_BITSIZE (SImode)-1
    9696              :    && (TARGET_USE_CLTD || optimize_function_for_size_p (cfun))
    9697              :    && ix86_binary_operator_ok (ASHIFTRT, SImode, operands, TARGET_APX_NDD)
    9698              :    && TARGET_APX_NF))
    9699              :                     return 1198; /* ashrsi3_cvt_nf */
    9700              :                   if (pnum_clobbers != NULL
    9701              :                       && 
    9702              : #line 17580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9703              : (INTVAL (operands[2]) == GET_MODE_BITSIZE (SImode)-1
    9704              :    && (TARGET_USE_CLTD || optimize_function_for_size_p (cfun))
    9705              :    && ix86_binary_operator_ok (ASHIFTRT, SImode, operands, TARGET_APX_NDD)
    9706              :    && true))
    9707              :                     {
    9708              :                       *pnum_clobbers = 1;
    9709              :                       return 1199; /* ashrsi3_cvt */
    9710              :                     }
    9711              :                 }
    9712              :               break;
    9713              : 
    9714              :             default:
    9715              :               break;
    9716              :             }
    9717              :           operands[2] = x5;
    9718              :           res = recog_103 (x1, insn, pnum_clobbers);
    9719              :           if (res >= 0)
    9720              :             return res;
    9721              :           if (pnum_clobbers == NULL)
    9722              :             return -1;
    9723              :           switch (pattern634 (x3))
    9724              :             {
    9725              :             case 0:
    9726              :               if (!
    9727              : #line 18174 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9728              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
    9729              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
    9730              :       == 4 * BITS_PER_UNIT - 1
    9731              :    && ix86_pre_reload_split ()))
    9732              :                 return -1;
    9733              :               *pnum_clobbers = 1;
    9734              :               return 1278; /* *ashrsi3_mask */
    9735              : 
    9736              :             case 1:
    9737              :               if (!(
    9738              : #line 18174 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9739              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
    9740              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
    9741              :       == 8 * BITS_PER_UNIT - 1
    9742              :    && ix86_pre_reload_split ()) && 
    9743              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9744              : (TARGET_64BIT)))
    9745              :                 return -1;
    9746              :               *pnum_clobbers = 1;
    9747              :               return 1281; /* *ashrdi3_mask */
    9748              : 
    9749              :             case 2:
    9750              :               if (!
    9751              : #line 18222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9752              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
    9753              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
    9754              :    && ix86_pre_reload_split ()))
    9755              :                 return -1;
    9756              :               *pnum_clobbers = 1;
    9757              :               return 1290; /* *ashrsi3_add */
    9758              : 
    9759              :             case 3:
    9760              :               if (!(
    9761              : #line 18222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9762              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
    9763              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
    9764              :    && ix86_pre_reload_split ()) && 
    9765              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9766              : (TARGET_64BIT)))
    9767              :                 return -1;
    9768              :               *pnum_clobbers = 1;
    9769              :               return 1293; /* *ashrdi3_add */
    9770              : 
    9771              :             case 4:
    9772              :               if (!
    9773              : #line 18268 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9774              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
    9775              :    && ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
    9776              :        || (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
    9777              :           == 4 * BITS_PER_UNIT - 1)
    9778              :    && ix86_pre_reload_split ()))
    9779              :                 return -1;
    9780              :               *pnum_clobbers = 1;
    9781              :               return 1302; /* *ashrsi3_sub */
    9782              : 
    9783              :             case 5:
    9784              :               if (!(
    9785              : #line 18268 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9786              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
    9787              :    && ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
    9788              :        || (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
    9789              :           == 8 * BITS_PER_UNIT - 1)
    9790              :    && ix86_pre_reload_split ()) && 
    9791              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9792              : (TARGET_64BIT)))
    9793              :                 return -1;
    9794              :               *pnum_clobbers = 1;
    9795              :               return 1305; /* *ashrdi3_sub */
    9796              : 
    9797              :             default:
    9798              :               return -1;
    9799              :             }
    9800              : 
    9801              :         case 1:
    9802              :           if (register_operand (operands[0], E_DImode)
    9803              :               && register_operand (operands[1], E_DImode)
    9804              :               && (
    9805              : #line 16979 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9806              : (((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) == 0
    9807              :     || ((INTVAL (operands[3]) & (2 * 4 * BITS_PER_UNIT - 1))
    9808              :          == (2 * 4 * BITS_PER_UNIT - 1)))
    9809              :    && ix86_pre_reload_split ()) && 
    9810              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9811              : (!TARGET_64BIT)))
    9812              :             {
    9813              :               *pnum_clobbers = 1;
    9814              :               return 1159; /* *ashrdi3_doubleword_mask_1 */
    9815              :             }
    9816              :           if (!nonimmediate_operand (operands[0], E_DImode)
    9817              :               || !nonimmediate_operand (operands[1], E_DImode)
    9818              :               || !(
    9819              : #line 18199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9820              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
    9821              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
    9822              :       == 8 * BITS_PER_UNIT - 1
    9823              :    && ix86_pre_reload_split ()) && 
    9824              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9825              : (TARGET_64BIT)))
    9826              :             return -1;
    9827              :           *pnum_clobbers = 1;
    9828              :           return 1287; /* *ashrdi3_mask_1 */
    9829              : 
    9830              :         case 2:
    9831              :           if (!
    9832              : #line 18199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9833              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
    9834              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
    9835              :       == 4 * BITS_PER_UNIT - 1
    9836              :    && ix86_pre_reload_split ()))
    9837              :             return -1;
    9838              :           *pnum_clobbers = 1;
    9839              :           return 1284; /* *ashrsi3_mask_1 */
    9840              : 
    9841              :         case 3:
    9842              :           if (!
    9843              : #line 18246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9844              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
    9845              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
    9846              :    && ix86_pre_reload_split ()))
    9847              :             return -1;
    9848              :           *pnum_clobbers = 1;
    9849              :           return 1296; /* *ashrsi3_add_1 */
    9850              : 
    9851              :         case 4:
    9852              :           if (!(
    9853              : #line 18246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9854              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
    9855              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
    9856              :    && ix86_pre_reload_split ()) && 
    9857              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9858              : (TARGET_64BIT)))
    9859              :             return -1;
    9860              :           *pnum_clobbers = 1;
    9861              :           return 1299; /* *ashrdi3_add_1 */
    9862              : 
    9863              :         case 5:
    9864              :           if (!
    9865              : #line 18301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9866              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
    9867              :    && ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
    9868              :        || (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
    9869              :           == 4 * BITS_PER_UNIT - 1)
    9870              :    && ix86_pre_reload_split ()))
    9871              :             return -1;
    9872              :           *pnum_clobbers = 1;
    9873              :           return 1308; /* *ashrsi3_sub_1 */
    9874              : 
    9875              :         case 6:
    9876              :           if (!(
    9877              : #line 18301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9878              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
    9879              :    && ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
    9880              :        || (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
    9881              :           == 8 * BITS_PER_UNIT - 1)
    9882              :    && ix86_pre_reload_split ()) && 
    9883              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9884              : (TARGET_64BIT)))
    9885              :             return -1;
    9886              :           *pnum_clobbers = 1;
    9887              :           return 1311; /* *ashrdi3_sub_1 */
    9888              : 
    9889              :         default:
    9890              :           return -1;
    9891              :         }
    9892              : 
    9893              :     case ASHIFT:
    9894              :       if (pnum_clobbers == NULL
    9895              :           || pattern293 (x3, 
    9896              : E_DImode) != 0
    9897              :           || !(
    9898              : #line 18330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9899              : (INTVAL (operands[2]) == INTVAL (operands[3])
    9900              :    && UINTVAL (operands[2]) < 4 * BITS_PER_UNIT) && 
    9901              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9902              : (!TARGET_64BIT)))
    9903              :         return -1;
    9904              :       *pnum_clobbers = 1;
    9905              :       return 1312; /* *extenddi2_doubleword_highpart */
    9906              : 
    9907              :     default:
    9908              :       return -1;
    9909              :     }
    9910              : }
    9911              : 
    9912              :  int
    9913              : recog_116 (rtx x1 ATTRIBUTE_UNUSED,
    9914              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9915              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9916              : {
    9917              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9918              :   rtx x2, x3, x4;
    9919              :   int res ATTRIBUTE_UNUSED;
    9920              :   if (pnum_clobbers == NULL)
    9921              :     return -1;
    9922              :   x2 = XEXP (x1, 0);
    9923              :   operands[0] = x2;
    9924              :   x3 = XEXP (x1, 1);
    9925              :   x4 = XEXP (x3, 0);
    9926              :   operands[1] = x4;
    9927              :   switch (pattern132 (x3))
    9928              :     {
    9929              :     case 0:
    9930              :       *pnum_clobbers = 1;
    9931              :       return 1546; /* ctzsi2 */
    9932              : 
    9933              :     case 1:
    9934              :       if (!
    9935              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9936              : (TARGET_64BIT))
    9937              :         return -1;
    9938              :       *pnum_clobbers = 1;
    9939              :       return 1547; /* ctzdi2 */
    9940              : 
    9941              :     default:
    9942              :       return -1;
    9943              :     }
    9944              : }
    9945              : 
    9946              :  int
    9947              : recog_117 (rtx x1 ATTRIBUTE_UNUSED,
    9948              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9949              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9950              : {
    9951              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9952              :   rtx x2, x3, x4, x5, x6, x7, x8;
    9953              :   int res ATTRIBUTE_UNUSED;
    9954              :   x2 = XEXP (x1, 1);
    9955              :   if (GET_MODE (x2) != E_DImode)
    9956              :     return -1;
    9957              :   x3 = XEXP (x1, 0);
    9958              :   operands[0] = x3;
    9959              :   if (!register_operand (operands[0], E_DImode))
    9960              :     return -1;
    9961              :   x4 = XEXP (x2, 0);
    9962              :   if (GET_MODE (x4) != E_SImode)
    9963              :     return -1;
    9964              :   switch (GET_CODE (x4))
    9965              :     {
    9966              :     case CTZ:
    9967              :       if (pnum_clobbers == NULL)
    9968              :         return -1;
    9969              :       x5 = XEXP (x4, 0);
    9970              :       operands[1] = x5;
    9971              :       if (!nonimmediate_operand (operands[1], E_SImode)
    9972              :           || !
    9973              : #line 21532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9974              : (TARGET_64BIT))
    9975              :         return -1;
    9976              :       *pnum_clobbers = 1;
    9977              :       return 1552; /* *ctzsidi2_sext */
    9978              : 
    9979              :     case XOR:
    9980              :       if (pnum_clobbers == NULL)
    9981              :         return -1;
    9982              :       x5 = XEXP (x4, 0);
    9983              :       if (GET_CODE (x5) != MINUS
    9984              :           || pattern442 (x4) != 0)
    9985              :         return -1;
    9986              :       x6 = XEXP (x5, 1);
    9987              :       x7 = XEXP (x6, 0);
    9988              :       operands[1] = x7;
    9989              :       if (!nonimmediate_operand (operands[1], E_SImode)
    9990              :           || !
    9991              : #line 21705 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9992              : (!TARGET_LZCNT && TARGET_64BIT && ix86_pre_reload_split ()))
    9993              :         return -1;
    9994              :       *pnum_clobbers = 1;
    9995              :       return 1564; /* *bsr_2 */
    9996              : 
    9997              :     case UNSPEC:
    9998              :       if (XVECLEN (x4, 0) != 1
    9999              :           || XINT (x4, 1) != 50)
   10000              :         return -1;
   10001              :       x8 = XVECEXP (x4, 0, 0);
   10002              :       switch (GET_CODE (x8))
   10003              :         {
   10004              :         case REG:
   10005              :         case SUBREG:
   10006              :           operands[1] = x8;
   10007              :           switch (GET_MODE (operands[1]))
   10008              :             {
   10009              :             case E_V8SFmode:
   10010              :               if (register_operand (operands[1], E_V8SFmode)
   10011              :                   && (
   10012              : #line 22299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10013              : (TARGET_64BIT && TARGET_SSE) && 
   10014              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10015              : (TARGET_AVX)))
   10016              :                 return 8557; /* *avx_movmskps256_ext */
   10017              :               break;
   10018              : 
   10019              :             case E_V4SFmode:
   10020              :               if (register_operand (operands[1], E_V4SFmode)
   10021              :                   && 
   10022              : #line 22299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10023              : (TARGET_64BIT && TARGET_SSE))
   10024              :                 return 8559; /* *sse_movmskps_ext */
   10025              :               break;
   10026              : 
   10027              :             case E_V4DFmode:
   10028              :               if (register_operand (operands[1], E_V4DFmode)
   10029              :                   && (
   10030              : #line 22299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10031              : (TARGET_64BIT && TARGET_SSE) && 
   10032              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10033              : (TARGET_AVX)))
   10034              :                 return 8561; /* *avx_movmskpd256_ext */
   10035              :               break;
   10036              : 
   10037              :             case E_V2DFmode:
   10038              :               if (register_operand (operands[1], E_V2DFmode)
   10039              :                   && (
   10040              : #line 22299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10041              : (TARGET_64BIT && TARGET_SSE) && 
   10042              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10043              : (TARGET_SSE2)))
   10044              :                 return 8563; /* *sse2_movmskpd_ext */
   10045              :               break;
   10046              : 
   10047              :             case E_V16QImode:
   10048              :               if (register_operand (operands[1], E_V16QImode)
   10049              :                   && 
   10050              : #line 22472 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10051              : (TARGET_64BIT && TARGET_SSE2))
   10052              :                 return 8605; /* *sse2_pmovmskb_ext */
   10053              :               break;
   10054              : 
   10055              :             default:
   10056              :               break;
   10057              :             }
   10058              :           if (GET_CODE (x8) != SUBREG)
   10059              :             return -1;
   10060              :           switch (pattern1098 (x8))
   10061              :             {
   10062              :             case 0:
   10063              :               if (!(
   10064              : #line 22381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10065              : (TARGET_64BIT && TARGET_SSE) && 
   10066              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10067              : (TARGET_AVX)))
   10068              :                 return -1;
   10069              :               return 8581; /* *avx_movmskps256_ext_lt_avx512 */
   10070              : 
   10071              :             case 1:
   10072              :               if (!
   10073              : #line 22381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10074              : (TARGET_64BIT && TARGET_SSE))
   10075              :                 return -1;
   10076              :               return 8583; /* *sse_movmskps_ext_lt_avx512 */
   10077              : 
   10078              :             case 2:
   10079              :               if (!(
   10080              : #line 22381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10081              : (TARGET_64BIT && TARGET_SSE) && 
   10082              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10083              : (TARGET_AVX)))
   10084              :                 return -1;
   10085              :               return 8585; /* *avx_movmskpd256_ext_lt_avx512 */
   10086              : 
   10087              :             case 3:
   10088              :               if (!(
   10089              : #line 22381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10090              : (TARGET_64BIT && TARGET_SSE) && 
   10091              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10092              : (TARGET_SSE2)))
   10093              :                 return -1;
   10094              :               return 8587; /* *sse2_movmskpd_ext_lt_avx512 */
   10095              : 
   10096              :             case 4:
   10097              :               if (!(
   10098              : #line 22420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10099              : (TARGET_64BIT && TARGET_SSE) && 
   10100              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10101              : (TARGET_AVX)))
   10102              :                 return -1;
   10103              :               return 8593; /* *avx_movmskps256_ext_shift */
   10104              : 
   10105              :             case 5:
   10106              :               if (!
   10107              : #line 22420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10108              : (TARGET_64BIT && TARGET_SSE))
   10109              :                 return -1;
   10110              :               return 8595; /* *sse_movmskps_ext_shift */
   10111              : 
   10112              :             case 6:
   10113              :               if (!(
   10114              : #line 22420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10115              : (TARGET_64BIT && TARGET_SSE) && 
   10116              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10117              : (TARGET_AVX)))
   10118              :                 return -1;
   10119              :               return 8597; /* *avx_movmskpd256_ext_shift */
   10120              : 
   10121              :             case 7:
   10122              :               if (!(
   10123              : #line 22420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10124              : (TARGET_64BIT && TARGET_SSE) && 
   10125              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10126              : (TARGET_SSE2)))
   10127              :                 return -1;
   10128              :               return 8599; /* *sse2_movmskpd_ext_shift */
   10129              : 
   10130              :             default:
   10131              :               return -1;
   10132              :             }
   10133              : 
   10134              :         case LT:
   10135              :           switch (pattern995 (x8))
   10136              :             {
   10137              :             case 0:
   10138              :               if (!(
   10139              : #line 22356 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10140              : (TARGET_64BIT && TARGET_SSE) && 
   10141              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10142              : (TARGET_AVX)))
   10143              :                 return -1;
   10144              :               return 8573; /* *avx_movmskps256_ext_lt */
   10145              : 
   10146              :             case 1:
   10147              :               if (!
   10148              : #line 22356 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10149              : (TARGET_64BIT && TARGET_SSE))
   10150              :                 return -1;
   10151              :               return 8575; /* *sse_movmskps_ext_lt */
   10152              : 
   10153              :             case 2:
   10154              :               if (!(
   10155              : #line 22356 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10156              : (TARGET_64BIT && TARGET_SSE) && 
   10157              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10158              : (TARGET_AVX)))
   10159              :                 return -1;
   10160              :               return 8577; /* *avx_movmskpd256_ext_lt */
   10161              : 
   10162              :             case 3:
   10163              :               if (!(
   10164              : #line 22356 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10165              : (TARGET_64BIT && TARGET_SSE) && 
   10166              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10167              : (TARGET_SSE2)))
   10168              :                 return -1;
   10169              :               return 8579; /* *sse2_movmskpd_ext_lt */
   10170              : 
   10171              :             case 4:
   10172              :               if (!
   10173              : #line 22668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10174              : (TARGET_64BIT && TARGET_SSE2))
   10175              :                 return -1;
   10176              :               return 8615; /* *sse2_pmovmskb_ext_lt */
   10177              : 
   10178              :             default:
   10179              :               return -1;
   10180              :             }
   10181              : 
   10182              :         case VEC_MERGE:
   10183              :           switch (pattern985 (x8))
   10184              :             {
   10185              :             case 0:
   10186              :               if (!(
   10187              : #line 22697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10188              : (TARGET_64BIT && TARGET_SSE2) && 
   10189              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10190              : (TARGET_AVX2)))
   10191              :                 return -1;
   10192              :               return 8616; /* *sse2_pmovmskb_ext_lt_avx512 */
   10193              : 
   10194              :             case 1:
   10195              :               if (!
   10196              : #line 22697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10197              : (TARGET_64BIT && TARGET_SSE2))
   10198              :                 return -1;
   10199              :               return 8617; /* *sse2_pmovmskb_ext_lt_avx512 */
   10200              : 
   10201              :             default:
   10202              :               return -1;
   10203              :             }
   10204              : 
   10205              :         default:
   10206              :           return -1;
   10207              :         }
   10208              : 
   10209              :     default:
   10210              :       return -1;
   10211              :     }
   10212              : }
   10213              : 
   10214              :  int
   10215              : recog_128 (rtx x1 ATTRIBUTE_UNUSED,
   10216              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10217              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10218              : {
   10219              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10220              :   rtx x2, x3, x4, x5;
   10221              :   int res ATTRIBUTE_UNUSED;
   10222              :   x2 = XEXP (x1, 1);
   10223              :   x3 = XEXP (x2, 0);
   10224              :   x4 = XVECEXP (x3, 0, 0);
   10225              :   operands[1] = x4;
   10226              :   x5 = XEXP (x2, 2);
   10227              :   operands[3] = x5;
   10228              :   switch (GET_MODE (operands[0]))
   10229              :     {
   10230              :     case E_V8HImode:
   10231              :       if (pattern644 (x2, 
   10232              : E_V8HImode, 
   10233              : E_QImode, 
   10234              : E_V8HFmode) != 0
   10235              :           || !(
   10236              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10237              : (TARGET_AVX512F) && (
   10238              : #line 8202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10239              : (TARGET_AVX512FP16) && 
   10240              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10241              : (TARGET_AVX512VL))))
   10242              :         return -1;
   10243              :       return 4606; /* unspec_avx512fp16_fix_truncv8hi2_mask */
   10244              : 
   10245              :     case E_V16HImode:
   10246              :       if (pattern644 (x2, 
   10247              : E_V16HImode, 
   10248              : E_HImode, 
   10249              : E_V16HFmode) != 0
   10250              :           || !(
   10251              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10252              : (TARGET_AVX512F) && (
   10253              : #line 8202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10254              : (TARGET_AVX512FP16) && 
   10255              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10256              : (TARGET_AVX512VL))))
   10257              :         return -1;
   10258              :       return 4614; /* unspec_avx512fp16_fix_truncv16hi2_mask */
   10259              : 
   10260              :     case E_V32HImode:
   10261              :       if (pattern644 (x2, 
   10262              : E_V32HImode, 
   10263              : E_SImode, 
   10264              : E_V32HFmode) != 0
   10265              :           || !(
   10266              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10267              : (TARGET_AVX512F) && 
   10268              : #line 8202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10269              : (TARGET_AVX512FP16)))
   10270              :         return -1;
   10271              :       return 4622; /* unspec_avx512fp16_fix_truncv32hi2_mask */
   10272              : 
   10273              :     case E_V8SImode:
   10274              :       switch (pattern996 (x2, 
   10275              : E_V8SImode))
   10276              :         {
   10277              :         case 0:
   10278              :           if (!(
   10279              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10280              : (TARGET_AVX512F) && (
   10281              : #line 8202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10282              : (TARGET_AVX512FP16) && 
   10283              : #line 688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10284              : (TARGET_AVX512VL))))
   10285              :             return -1;
   10286              :           return 4630; /* unspec_avx512fp16_fix_truncv8si2_mask */
   10287              : 
   10288              :         case 1:
   10289              :           if (!(
   10290              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10291              : (TARGET_AVX512F) && 
   10292              : #line 9117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10293              : (TARGET_AVX && TARGET_AVX512VL)))
   10294              :             return -1;
   10295              :           return 4927; /* unspec_fix_truncv8sfv8si2_mask */
   10296              : 
   10297              :         case 2:
   10298              :           if (!
   10299              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10300              : (TARGET_AVX512F))
   10301              :             return -1;
   10302              :           return 5061; /* unspec_fix_truncv8dfv8si2_mask */
   10303              : 
   10304              :         default:
   10305              :           return -1;
   10306              :         }
   10307              : 
   10308              :     case E_V16SImode:
   10309              :       switch (pattern997 (x2))
   10310              :         {
   10311              :         case 0:
   10312              :           if (!(
   10313              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10314              : (TARGET_AVX512F) && 
   10315              : #line 8202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10316              : (TARGET_AVX512FP16)))
   10317              :             return -1;
   10318              :           return 4638; /* unspec_avx512fp16_fix_truncv16si2_mask */
   10319              : 
   10320              :         case 1:
   10321              :           if (!
   10322              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10323              : (TARGET_AVX512F))
   10324              :             return -1;
   10325              :           return 4912; /* unspec_fix_truncv16sfv16si2_mask */
   10326              : 
   10327              :         default:
   10328              :           return -1;
   10329              :         }
   10330              : 
   10331              :     case E_V8DImode:
   10332              :       switch (pattern998 (x2))
   10333              :         {
   10334              :         case 0:
   10335              :           if (!(
   10336              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10337              : (TARGET_AVX512F) && 
   10338              : #line 8202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10339              : (TARGET_AVX512FP16)))
   10340              :             return -1;
   10341              :           return 4646; /* unspec_avx512fp16_fix_truncv8di2_mask */
   10342              : 
   10343              :         case 1:
   10344              :           if (!(
   10345              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10346              : (TARGET_AVX512F) && 
   10347              : #line 10019 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10348              : (TARGET_AVX512DQ && 1)))
   10349              :             return -1;
   10350              :           return 5090; /* unspec_fix_truncv8dfv8di2_mask */
   10351              : 
   10352              :         case 2:
   10353              :           if (!(
   10354              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10355              : (TARGET_AVX512F) && 
   10356              : #line 10062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10357              : (TARGET_AVX512DQ && 1)))
   10358              :             return -1;
   10359              :           return 5138; /* unspec_fix_truncv8sfv8di2_mask */
   10360              : 
   10361              :         default:
   10362              :           return -1;
   10363              :         }
   10364              : 
   10365              :     case E_V4SImode:
   10366              :       if (pattern142 (x2, 
   10367              : E_V4SImode, 
   10368              : E_QImode) != 0)
   10369              :         return -1;
   10370              :       switch (GET_MODE (operands[1]))
   10371              :         {
   10372              :         case E_V8HFmode:
   10373              :           if (!register_operand (operands[1], E_V8HFmode)
   10374              :               || !(
   10375              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10376              : (TARGET_AVX512F) && 
   10377              : #line 8240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10378              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   10379              :             return -1;
   10380              :           return 4701; /* unspec_avx512fp16_fix_truncv4si2_mask */
   10381              : 
   10382              :         case E_V4SFmode:
   10383              :           if (!vector_operand (operands[1], E_V4SFmode)
   10384              :               || !(
   10385              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10386              : (TARGET_AVX512F) && 
   10387              : #line 9136 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10388              : (TARGET_SSE2 && TARGET_AVX512VL)))
   10389              :             return -1;
   10390              :           return 4931; /* unspec_fix_truncv4sfv4si2_mask */
   10391              : 
   10392              :         case E_V4DFmode:
   10393              :           if (!nonimmediate_operand (operands[1], E_V4DFmode)
   10394              :               || !(
   10395              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10396              : (TARGET_AVX512F) && 
   10397              : #line 9980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10398              : (TARGET_AVX || (TARGET_AVX512VL && TARGET_AVX512F))))
   10399              :             return -1;
   10400              :           return 5081; /* unspec_fix_truncv4dfv4si2_mask */
   10401              : 
   10402              :         case E_V2DFmode:
   10403              :           if (!vector_operand (operands[1], E_V2DFmode)
   10404              :               || !(
   10405              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10406              : (TARGET_AVX512F) && 
   10407              : #line 10262 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10408              : (TARGET_SSE2 && TARGET_AVX512VL)))
   10409              :             return -1;
   10410              :           return 5177; /* unspec_sse2_cvttpd2dq_mask */
   10411              : 
   10412              :         default:
   10413              :           return -1;
   10414              :         }
   10415              : 
   10416              :     case E_V4DImode:
   10417              :       switch (pattern999 (x2))
   10418              :         {
   10419              :         case 0:
   10420              :           if (!(
   10421              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10422              : (TARGET_AVX512F) && 
   10423              : #line 8240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10424              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   10425              :             return -1;
   10426              :           return 4705; /* unspec_avx512fp16_fix_truncv4di2_mask */
   10427              : 
   10428              :         case 1:
   10429              :           if (!(
   10430              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10431              : (TARGET_AVX512F) && (
   10432              : #line 10019 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10433              : (TARGET_AVX512DQ && 1) && 
   10434              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10435              : (TARGET_AVX512VL))))
   10436              :             return -1;
   10437              :           return 5097; /* unspec_fix_truncv4dfv4di2_mask */
   10438              : 
   10439              :         case 2:
   10440              :           if (!(
   10441              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10442              : (TARGET_AVX512F) && (
   10443              : #line 10062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10444              : (TARGET_AVX512DQ && 1) && 
   10445              : #line 620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10446              : (TARGET_AVX512VL))))
   10447              :             return -1;
   10448              :           return 5145; /* unspec_fix_truncv4sfv4di2_mask */
   10449              : 
   10450              :         default:
   10451              :           return -1;
   10452              :         }
   10453              : 
   10454              :     case E_V2DImode:
   10455              :       switch (pattern1000 (x2))
   10456              :         {
   10457              :         case 0:
   10458              :           if (!(
   10459              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10460              : (TARGET_AVX512F) && 
   10461              : #line 8290 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10462              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   10463              :             return -1;
   10464              :           return 4725; /* unspec_avx512fp16_fix_truncv2di2_mask */
   10465              : 
   10466              :         case 1:
   10467              :           if (!(
   10468              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10469              : (TARGET_AVX512F) && (
   10470              : #line 10019 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10471              : (TARGET_AVX512DQ && 1) && 
   10472              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10473              : (TARGET_AVX512VL))))
   10474              :             return -1;
   10475              :           return 5101; /* unspec_fix_truncv2dfv2di2_mask */
   10476              : 
   10477              :         case 2:
   10478              :           if (!(
   10479              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10480              : (TARGET_AVX512F) && 
   10481              : #line 10083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10482              : (TARGET_AVX512DQ && TARGET_AVX512VL)))
   10483              :             return -1;
   10484              :           return 5161; /* unspec_avx512dq_fix_truncv2sfv2di2_mask */
   10485              : 
   10486              :         default:
   10487              :           return -1;
   10488              :         }
   10489              : 
   10490              :     default:
   10491              :       return -1;
   10492              :     }
   10493              : }
   10494              : 
   10495              :  int
   10496              : recog_136 (rtx x1 ATTRIBUTE_UNUSED,
   10497              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10498              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10499              : {
   10500              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10501              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   10502              :   int res ATTRIBUTE_UNUSED;
   10503              :   x2 = XEXP (x1, 1);
   10504              :   x3 = XEXP (x2, 0);
   10505              :   x4 = XVECEXP (x3, 0, 2);
   10506              :   operands[3] = x4;
   10507              :   x5 = XEXP (x2, 1);
   10508              :   switch (GET_CODE (x5))
   10509              :     {
   10510              :     case REG:
   10511              :     case SUBREG:
   10512              :       x6 = XEXP (x2, 2);
   10513              :       operands[4] = x6;
   10514              :       switch (GET_MODE (operands[0]))
   10515              :         {
   10516              :         case E_V16SImode:
   10517              :           if (pattern1006 (x2, 
   10518              : E_V16SImode) == 0)
   10519              :             {
   10520              :               x7 = XVECEXP (x3, 0, 1);
   10521              :               operands[1] = x7;
   10522              :               x8 = XVECEXP (x3, 0, 0);
   10523              :               operands[2] = x8;
   10524              :               if (nonimmediate_operand (operands[3], E_V16SImode)
   10525              :                   && register_operand (operands[4], E_HImode)
   10526              :                   && rtx_equal_p (x5, operands[2])
   10527              :                   && 
   10528              : #line 28883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10529              : (TARGET_AVX512F))
   10530              :                 return 9438; /* *avx512f_vpermi2varv16si3_mask */
   10531              :               operands[2] = x7;
   10532              :               operands[1] = x8;
   10533              :               if (nonimmediate_operand (operands[3], E_V16SImode)
   10534              :                   && register_operand (operands[4], E_HImode)
   10535              :                   && rtx_equal_p (x5, operands[2])
   10536              :                   && 
   10537              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10538              : (TARGET_AVX512F))
   10539              :                 return 9504; /* avx512f_vpermt2varv16si3_mask */
   10540              :             }
   10541              :           break;
   10542              : 
   10543              :         case E_V8DImode:
   10544              :           if (pattern1006 (x2, 
   10545              : E_V8DImode) == 0)
   10546              :             {
   10547              :               x7 = XVECEXP (x3, 0, 1);
   10548              :               operands[1] = x7;
   10549              :               x8 = XVECEXP (x3, 0, 0);
   10550              :               operands[2] = x8;
   10551              :               if (nonimmediate_operand (operands[3], E_V8DImode)
   10552              :                   && register_operand (operands[4], E_QImode)
   10553              :                   && rtx_equal_p (x5, operands[2])
   10554              :                   && 
   10555              : #line 28883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10556              : (TARGET_AVX512F))
   10557              :                 return 9439; /* *avx512f_vpermi2varv8di3_mask */
   10558              :               operands[2] = x7;
   10559              :               operands[1] = x8;
   10560              :               if (nonimmediate_operand (operands[3], E_V8DImode)
   10561              :                   && register_operand (operands[4], E_QImode)
   10562              :                   && rtx_equal_p (x5, operands[2])
   10563              :                   && 
   10564              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10565              : (TARGET_AVX512F))
   10566              :                 return 9506; /* avx512f_vpermt2varv8di3_mask */
   10567              :             }
   10568              :           break;
   10569              : 
   10570              :         case E_V8SImode:
   10571              :           if (pattern1006 (x2, 
   10572              : E_V8SImode) == 0)
   10573              :             {
   10574              :               x7 = XVECEXP (x3, 0, 1);
   10575              :               operands[1] = x7;
   10576              :               x8 = XVECEXP (x3, 0, 0);
   10577              :               operands[2] = x8;
   10578              :               if (nonimmediate_operand (operands[3], E_V8SImode)
   10579              :                   && register_operand (operands[4], E_QImode)
   10580              :                   && rtx_equal_p (x5, operands[2])
   10581              :                   && (
   10582              : #line 28883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10583              : (TARGET_AVX512F) && 
   10584              : #line 28848 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10585              : (TARGET_AVX512VL)))
   10586              :                 return 9440; /* *avx512vl_vpermi2varv8si3_mask */
   10587              :               operands[2] = x7;
   10588              :               operands[1] = x8;
   10589              :               if (nonimmediate_operand (operands[3], E_V8SImode)
   10590              :                   && register_operand (operands[4], E_QImode)
   10591              :                   && rtx_equal_p (x5, operands[2])
   10592              :                   && (
   10593              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10594              : (TARGET_AVX512F) && 
   10595              : #line 28835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10596              : (TARGET_AVX512VL)))
   10597              :                 return 9508; /* avx512vl_vpermt2varv8si3_mask */
   10598              :             }
   10599              :           break;
   10600              : 
   10601              :         case E_V4SImode:
   10602              :           if (pattern1006 (x2, 
   10603              : E_V4SImode) == 0)
   10604              :             {
   10605              :               x7 = XVECEXP (x3, 0, 1);
   10606              :               operands[1] = x7;
   10607              :               x8 = XVECEXP (x3, 0, 0);
   10608              :               operands[2] = x8;
   10609              :               if (nonimmediate_operand (operands[3], E_V4SImode)
   10610              :                   && register_operand (operands[4], E_QImode)
   10611              :                   && rtx_equal_p (x5, operands[2])
   10612              :                   && (
   10613              : #line 28883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10614              : (TARGET_AVX512F) && 
   10615              : #line 28848 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10616              : (TARGET_AVX512VL)))
   10617              :                 return 9441; /* *avx512vl_vpermi2varv4si3_mask */
   10618              :               operands[2] = x7;
   10619              :               operands[1] = x8;
   10620              :               if (nonimmediate_operand (operands[3], E_V4SImode)
   10621              :                   && register_operand (operands[4], E_QImode)
   10622              :                   && rtx_equal_p (x5, operands[2])
   10623              :                   && (
   10624              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10625              : (TARGET_AVX512F) && 
   10626              : #line 28837 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10627              : (TARGET_AVX512VL)))
   10628              :                 return 9512; /* avx512vl_vpermt2varv4si3_mask */
   10629              :             }
   10630              :           break;
   10631              : 
   10632              :         case E_V4DImode:
   10633              :           if (pattern1006 (x2, 
   10634              : E_V4DImode) == 0)
   10635              :             {
   10636              :               x7 = XVECEXP (x3, 0, 1);
   10637              :               operands[1] = x7;
   10638              :               x8 = XVECEXP (x3, 0, 0);
   10639              :               operands[2] = x8;
   10640              :               if (nonimmediate_operand (operands[3], E_V4DImode)
   10641              :                   && register_operand (operands[4], E_QImode)
   10642              :                   && rtx_equal_p (x5, operands[2])
   10643              :                   && (
   10644              : #line 28883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10645              : (TARGET_AVX512F) && 
   10646              : #line 28849 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10647              : (TARGET_AVX512VL)))
   10648              :                 return 9442; /* *avx512vl_vpermi2varv4di3_mask */
   10649              :               operands[2] = x7;
   10650              :               operands[1] = x8;
   10651              :               if (nonimmediate_operand (operands[3], E_V4DImode)
   10652              :                   && register_operand (operands[4], E_QImode)
   10653              :                   && rtx_equal_p (x5, operands[2])
   10654              :                   && (
   10655              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10656              : (TARGET_AVX512F) && 
   10657              : #line 28836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10658              : (TARGET_AVX512VL)))
   10659              :                 return 9510; /* avx512vl_vpermt2varv4di3_mask */
   10660              :             }
   10661              :           break;
   10662              : 
   10663              :         case E_V2DImode:
   10664              :           if (pattern1006 (x2, 
   10665              : E_V2DImode) == 0)
   10666              :             {
   10667              :               x7 = XVECEXP (x3, 0, 1);
   10668              :               operands[1] = x7;
   10669              :               x8 = XVECEXP (x3, 0, 0);
   10670              :               operands[2] = x8;
   10671              :               if (nonimmediate_operand (operands[3], E_V2DImode)
   10672              :                   && register_operand (operands[4], E_QImode)
   10673              :                   && rtx_equal_p (x5, operands[2])
   10674              :                   && (
   10675              : #line 28883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10676              : (TARGET_AVX512F) && 
   10677              : #line 28849 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10678              : (TARGET_AVX512VL)))
   10679              :                 return 9443; /* *avx512vl_vpermi2varv2di3_mask */
   10680              :               operands[2] = x7;
   10681              :               operands[1] = x8;
   10682              :               if (nonimmediate_operand (operands[3], E_V2DImode)
   10683              :                   && register_operand (operands[4], E_QImode)
   10684              :                   && rtx_equal_p (x5, operands[2])
   10685              :                   && (
   10686              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10687              : (TARGET_AVX512F) && 
   10688              : #line 28838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10689              : (TARGET_AVX512VL)))
   10690              :                 return 9514; /* avx512vl_vpermt2varv2di3_mask */
   10691              :             }
   10692              :           break;
   10693              : 
   10694              :         case E_V32HImode:
   10695              :           if (pattern1006 (x2, 
   10696              : E_V32HImode) == 0)
   10697              :             {
   10698              :               x7 = XVECEXP (x3, 0, 1);
   10699              :               operands[1] = x7;
   10700              :               x8 = XVECEXP (x3, 0, 0);
   10701              :               operands[2] = x8;
   10702              :               if (nonimmediate_operand (operands[3], E_V32HImode)
   10703              :                   && register_operand (operands[4], E_SImode)
   10704              :                   && rtx_equal_p (x5, operands[2])
   10705              :                   && (
   10706              : #line 28883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10707              : (TARGET_AVX512F) && 
   10708              : #line 28850 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10709              : (TARGET_AVX512BW)))
   10710              :                 return 9444; /* *avx512bw_vpermi2varv32hi3_mask */
   10711              :               operands[2] = x7;
   10712              :               operands[1] = x8;
   10713              :               if (nonimmediate_operand (operands[3], E_V32HImode)
   10714              :                   && register_operand (operands[4], E_SImode)
   10715              :                   && rtx_equal_p (x5, operands[2])
   10716              :                   && (
   10717              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10718              : (TARGET_AVX512F) && 
   10719              : #line 28839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10720              : (TARGET_AVX512BW)))
   10721              :                 return 9516; /* avx512bw_vpermt2varv32hi3_mask */
   10722              :             }
   10723              :           break;
   10724              : 
   10725              :         case E_V16HImode:
   10726              :           if (pattern1006 (x2, 
   10727              : E_V16HImode) == 0)
   10728              :             {
   10729              :               x7 = XVECEXP (x3, 0, 1);
   10730              :               operands[1] = x7;
   10731              :               x8 = XVECEXP (x3, 0, 0);
   10732              :               operands[2] = x8;
   10733              :               if (nonimmediate_operand (operands[3], E_V16HImode)
   10734              :                   && register_operand (operands[4], E_HImode)
   10735              :                   && rtx_equal_p (x5, operands[2])
   10736              :                   && (
   10737              : #line 28883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10738              : (TARGET_AVX512F) && 
   10739              : #line 28851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10740              : (TARGET_AVX512BW && TARGET_AVX512VL)))
   10741              :                 return 9445; /* *avx512vl_vpermi2varv16hi3_mask */
   10742              :               operands[2] = x7;
   10743              :               operands[1] = x8;
   10744              :               if (nonimmediate_operand (operands[3], E_V16HImode)
   10745              :                   && register_operand (operands[4], E_HImode)
   10746              :                   && rtx_equal_p (x5, operands[2])
   10747              :                   && (
   10748              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10749              : (TARGET_AVX512F) && 
   10750              : #line 28840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10751              : (TARGET_AVX512BW && TARGET_AVX512VL)))
   10752              :                 return 9517; /* avx512vl_vpermt2varv16hi3_mask */
   10753              :             }
   10754              :           break;
   10755              : 
   10756              :         case E_V8HImode:
   10757              :           if (pattern1006 (x2, 
   10758              : E_V8HImode) == 0)
   10759              :             {
   10760              :               x7 = XVECEXP (x3, 0, 1);
   10761              :               operands[1] = x7;
   10762              :               x8 = XVECEXP (x3, 0, 0);
   10763              :               operands[2] = x8;
   10764              :               if (nonimmediate_operand (operands[3], E_V8HImode)
   10765              :                   && register_operand (operands[4], E_QImode)
   10766              :                   && rtx_equal_p (x5, operands[2])
   10767              :                   && (
   10768              : #line 28883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10769              : (TARGET_AVX512F) && 
   10770              : #line 28852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10771              : (TARGET_AVX512BW && TARGET_AVX512VL)))
   10772              :                 return 9446; /* *avx512vl_vpermi2varv8hi3_mask */
   10773              :               operands[2] = x7;
   10774              :               operands[1] = x8;
   10775              :               if (nonimmediate_operand (operands[3], E_V8HImode)
   10776              :                   && register_operand (operands[4], E_QImode)
   10777              :                   && rtx_equal_p (x5, operands[2])
   10778              :                   && (
   10779              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10780              : (TARGET_AVX512F) && 
   10781              : #line 28841 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10782              : (TARGET_AVX512BW && TARGET_AVX512VL)))
   10783              :                 return 9518; /* avx512vl_vpermt2varv8hi3_mask */
   10784              :             }
   10785              :           break;
   10786              : 
   10787              :         case E_V64QImode:
   10788              :           if (pattern1006 (x2, 
   10789              : E_V64QImode) == 0)
   10790              :             {
   10791              :               x7 = XVECEXP (x3, 0, 1);
   10792              :               operands[1] = x7;
   10793              :               x8 = XVECEXP (x3, 0, 0);
   10794              :               operands[2] = x8;
   10795              :               if (nonimmediate_operand (operands[3], E_V64QImode)
   10796              :                   && register_operand (operands[4], E_DImode)
   10797              :                   && rtx_equal_p (x5, operands[2])
   10798              :                   && (
   10799              : #line 28883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10800              : (TARGET_AVX512F) && 
   10801              : #line 28853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10802              : (TARGET_AVX512VBMI)))
   10803              :                 return 9447; /* *avx512bw_vpermi2varv64qi3_mask */
   10804              :               operands[2] = x7;
   10805              :               operands[1] = x8;
   10806              :               if (nonimmediate_operand (operands[3], E_V64QImode)
   10807              :                   && register_operand (operands[4], E_DImode)
   10808              :                   && rtx_equal_p (x5, operands[2])
   10809              :                   && (
   10810              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10811              : (TARGET_AVX512F) && 
   10812              : #line 28842 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10813              : (TARGET_AVX512VBMI)))
   10814              :                 return 9519; /* avx512bw_vpermt2varv64qi3_mask */
   10815              :             }
   10816              :           break;
   10817              : 
   10818              :         case E_V32QImode:
   10819              :           if (pattern1006 (x2, 
   10820              : E_V32QImode) == 0)
   10821              :             {
   10822              :               x7 = XVECEXP (x3, 0, 1);
   10823              :               operands[1] = x7;
   10824              :               x8 = XVECEXP (x3, 0, 0);
   10825              :               operands[2] = x8;
   10826              :               if (nonimmediate_operand (operands[3], E_V32QImode)
   10827              :                   && register_operand (operands[4], E_SImode)
   10828              :                   && rtx_equal_p (x5, operands[2])
   10829              :                   && (
   10830              : #line 28883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10831              : (TARGET_AVX512F) && 
   10832              : #line 28854 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10833              : (TARGET_AVX512VBMI && TARGET_AVX512VL)))
   10834              :                 return 9448; /* *avx512vl_vpermi2varv32qi3_mask */
   10835              :               operands[2] = x7;
   10836              :               operands[1] = x8;
   10837              :               if (nonimmediate_operand (operands[3], E_V32QImode)
   10838              :                   && register_operand (operands[4], E_SImode)
   10839              :                   && rtx_equal_p (x5, operands[2])
   10840              :                   && (
   10841              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10842              : (TARGET_AVX512F) && 
   10843              : #line 28843 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10844              : (TARGET_AVX512VBMI && TARGET_AVX512VL)))
   10845              :                 return 9520; /* avx512vl_vpermt2varv32qi3_mask */
   10846              :             }
   10847              :           break;
   10848              : 
   10849              :         case E_V16QImode:
   10850              :           if (pattern1006 (x2, 
   10851              : E_V16QImode) == 0)
   10852              :             {
   10853              :               x7 = XVECEXP (x3, 0, 1);
   10854              :               operands[1] = x7;
   10855              :               x8 = XVECEXP (x3, 0, 0);
   10856              :               operands[2] = x8;
   10857              :               if (nonimmediate_operand (operands[3], E_V16QImode)
   10858              :                   && register_operand (operands[4], E_HImode)
   10859              :                   && rtx_equal_p (x5, operands[2])
   10860              :                   && (
   10861              : #line 28883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10862              : (TARGET_AVX512F) && 
   10863              : #line 28855 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10864              : (TARGET_AVX512VBMI && TARGET_AVX512VL)))
   10865              :                 return 9449; /* *avx512vl_vpermi2varv16qi3_mask */
   10866              :               operands[2] = x7;
   10867              :               operands[1] = x8;
   10868              :               if (nonimmediate_operand (operands[3], E_V16QImode)
   10869              :                   && register_operand (operands[4], E_HImode)
   10870              :                   && rtx_equal_p (x5, operands[2])
   10871              :                   && (
   10872              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10873              : (TARGET_AVX512F) && 
   10874              : #line 28844 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10875              : (TARGET_AVX512VBMI && TARGET_AVX512VL)))
   10876              :                 return 9521; /* avx512vl_vpermt2varv16qi3_mask */
   10877              :             }
   10878              :           break;
   10879              : 
   10880              :         default:
   10881              :           break;
   10882              :         }
   10883              :       if (GET_CODE (x5) == SUBREG
   10884              :           && known_eq (SUBREG_BYTE (x5), 0))
   10885              :         {
   10886              :           x8 = XVECEXP (x3, 0, 0);
   10887              :           operands[2] = x8;
   10888              :           x7 = XVECEXP (x3, 0, 1);
   10889              :           operands[1] = x7;
   10890              :           x9 = XEXP (x5, 0);
   10891              :           if (rtx_equal_p (x9, operands[2]))
   10892              :             {
   10893              :               switch (GET_MODE (operands[0]))
   10894              :                 {
   10895              :                 case E_V16SFmode:
   10896              :                   if (pattern1466 (x2, 
   10897              : E_V16SFmode, 
   10898              : E_V16SImode, 
   10899              : E_HImode) == 0
   10900              :                       && 
   10901              : #line 28899 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10902              : (TARGET_AVX512F))
   10903              :                     return 9450; /* *avx512f_vpermi2varv16sf3_mask */
   10904              :                   break;
   10905              : 
   10906              :                 case E_V8SFmode:
   10907              :                   if (pattern1466 (x2, 
   10908              : E_V8SFmode, 
   10909              : E_V8SImode, 
   10910              : E_QImode) == 0
   10911              :                       && (
   10912              : #line 28899 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10913              : (TARGET_AVX512F) && 
   10914              : #line 510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10915              : (TARGET_AVX512VL)))
   10916              :                     return 9451; /* *avx512vl_vpermi2varv8sf3_mask */
   10917              :                   break;
   10918              : 
   10919              :                 case E_V4SFmode:
   10920              :                   if (pattern1466 (x2, 
   10921              : E_V4SFmode, 
   10922              : E_V4SImode, 
   10923              : E_QImode) == 0
   10924              :                       && (
   10925              : #line 28899 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10926              : (TARGET_AVX512F) && 
   10927              : #line 510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10928              : (TARGET_AVX512VL)))
   10929              :                     return 9452; /* *avx512vl_vpermi2varv4sf3_mask */
   10930              :                   break;
   10931              : 
   10932              :                 case E_V8DFmode:
   10933              :                   if (pattern1466 (x2, 
   10934              : E_V8DFmode, 
   10935              : E_V8DImode, 
   10936              : E_QImode) == 0
   10937              :                       && 
   10938              : #line 28899 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10939              : (TARGET_AVX512F))
   10940              :                     return 9453; /* *avx512f_vpermi2varv8df3_mask */
   10941              :                   break;
   10942              : 
   10943              :                 case E_V4DFmode:
   10944              :                   if (pattern1466 (x2, 
   10945              : E_V4DFmode, 
   10946              : E_V4DImode, 
   10947              : E_QImode) == 0
   10948              :                       && (
   10949              : #line 28899 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10950              : (TARGET_AVX512F) && 
   10951              : #line 511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10952              : (TARGET_AVX512VL)))
   10953              :                     return 9454; /* *avx512vl_vpermi2varv4df3_mask */
   10954              :                   break;
   10955              : 
   10956              :                 case E_V2DFmode:
   10957              :                   if (pattern1466 (x2, 
   10958              : E_V2DFmode, 
   10959              : E_V2DImode, 
   10960              : E_QImode) == 0
   10961              :                       && (
   10962              : #line 28899 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10963              : (TARGET_AVX512F) && 
   10964              : #line 511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10965              : (TARGET_AVX512VL)))
   10966              :                     return 9455; /* *avx512vl_vpermi2varv2df3_mask */
   10967              :                   break;
   10968              : 
   10969              :                 default:
   10970              :                   break;
   10971              :                 }
   10972              :             }
   10973              :         }
   10974              :       x8 = XVECEXP (x3, 0, 0);
   10975              :       operands[1] = x8;
   10976              :       x7 = XVECEXP (x3, 0, 1);
   10977              :       operands[2] = x7;
   10978              :       if (!rtx_equal_p (x5, operands[2]))
   10979              :         return -1;
   10980              :       switch (GET_MODE (operands[0]))
   10981              :         {
   10982              :         case E_V16SFmode:
   10983              :           if (pattern1282 (x2, 
   10984              : E_V16SFmode, 
   10985              : E_V16SImode, 
   10986              : E_HImode) != 0
   10987              :               || !
   10988              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10989              : (TARGET_AVX512F))
   10990              :             return -1;
   10991              :           return 9505; /* avx512f_vpermt2varv16sf3_mask */
   10992              : 
   10993              :         case E_V8DFmode:
   10994              :           if (pattern1282 (x2, 
   10995              : E_V8DFmode, 
   10996              : E_V8DImode, 
   10997              : E_QImode) != 0
   10998              :               || !
   10999              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11000              : (TARGET_AVX512F))
   11001              :             return -1;
   11002              :           return 9507; /* avx512f_vpermt2varv8df3_mask */
   11003              : 
   11004              :         case E_V8SFmode:
   11005              :           if (pattern1282 (x2, 
   11006              : E_V8SFmode, 
   11007              : E_V8SImode, 
   11008              : E_QImode) != 0
   11009              :               || !(
   11010              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11011              : (TARGET_AVX512F) && 
   11012              : #line 28835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11013              : (TARGET_AVX512VL)))
   11014              :             return -1;
   11015              :           return 9509; /* avx512vl_vpermt2varv8sf3_mask */
   11016              : 
   11017              :         case E_V4DFmode:
   11018              :           if (pattern1282 (x2, 
   11019              : E_V4DFmode, 
   11020              : E_V4DImode, 
   11021              : E_QImode) != 0
   11022              :               || !(
   11023              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11024              : (TARGET_AVX512F) && 
   11025              : #line 28836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11026              : (TARGET_AVX512VL)))
   11027              :             return -1;
   11028              :           return 9511; /* avx512vl_vpermt2varv4df3_mask */
   11029              : 
   11030              :         case E_V4SFmode:
   11031              :           if (pattern1282 (x2, 
   11032              : E_V4SFmode, 
   11033              : E_V4SImode, 
   11034              : E_QImode) != 0
   11035              :               || !(
   11036              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11037              : (TARGET_AVX512F) && 
   11038              : #line 28837 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11039              : (TARGET_AVX512VL)))
   11040              :             return -1;
   11041              :           return 9513; /* avx512vl_vpermt2varv4sf3_mask */
   11042              : 
   11043              :         case E_V2DFmode:
   11044              :           if (pattern1282 (x2, 
   11045              : E_V2DFmode, 
   11046              : E_V2DImode, 
   11047              : E_QImode) != 0
   11048              :               || !(
   11049              : #line 28959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11050              : (TARGET_AVX512F) && 
   11051              : #line 28838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11052              : (TARGET_AVX512VL)))
   11053              :             return -1;
   11054              :           return 9515; /* avx512vl_vpermt2varv2df3_mask */
   11055              : 
   11056              :         default:
   11057              :           return -1;
   11058              :         }
   11059              : 
   11060              :     case CONST_INT:
   11061              :     case CONST_DOUBLE:
   11062              :     case CONST_VECTOR:
   11063              :       operands[4] = x5;
   11064              :       x8 = XVECEXP (x3, 0, 0);
   11065              :       operands[1] = x8;
   11066              :       x7 = XVECEXP (x3, 0, 1);
   11067              :       operands[2] = x7;
   11068              :       x6 = XEXP (x2, 2);
   11069              :       operands[5] = x6;
   11070              :       switch (GET_MODE (operands[0]))
   11071              :         {
   11072              :         case E_V16SImode:
   11073              :           if (pattern484 (x2, 
   11074              : E_V16SImode, 
   11075              : E_HImode) != 0
   11076              :               || !
   11077              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11078              : (TARGET_AVX512F))
   11079              :             return -1;
   11080              :           return 9457; /* avx512f_vpermt2varv16si3_maskz_1 */
   11081              : 
   11082              :         case E_V16SFmode:
   11083              :           if (pattern1283 (x2, 
   11084              : E_V16SFmode, 
   11085              : E_HImode, 
   11086              : E_V16SImode) != 0
   11087              :               || !
   11088              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11089              : (TARGET_AVX512F))
   11090              :             return -1;
   11091              :           return 9459; /* avx512f_vpermt2varv16sf3_maskz_1 */
   11092              : 
   11093              :         case E_V8DImode:
   11094              :           if (pattern484 (x2, 
   11095              : E_V8DImode, 
   11096              : E_QImode) != 0
   11097              :               || !
   11098              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11099              : (TARGET_AVX512F))
   11100              :             return -1;
   11101              :           return 9461; /* avx512f_vpermt2varv8di3_maskz_1 */
   11102              : 
   11103              :         case E_V8DFmode:
   11104              :           if (pattern1283 (x2, 
   11105              : E_V8DFmode, 
   11106              : E_QImode, 
   11107              : E_V8DImode) != 0
   11108              :               || !
   11109              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11110              : (TARGET_AVX512F))
   11111              :             return -1;
   11112              :           return 9463; /* avx512f_vpermt2varv8df3_maskz_1 */
   11113              : 
   11114              :         case E_V8SImode:
   11115              :           if (pattern484 (x2, 
   11116              : E_V8SImode, 
   11117              : E_QImode) != 0
   11118              :               || !(
   11119              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11120              : (TARGET_AVX512F) && 
   11121              : #line 28835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11122              : (TARGET_AVX512VL)))
   11123              :             return -1;
   11124              :           return 9465; /* avx512vl_vpermt2varv8si3_maskz_1 */
   11125              : 
   11126              :         case E_V8SFmode:
   11127              :           if (pattern1283 (x2, 
   11128              : E_V8SFmode, 
   11129              : E_QImode, 
   11130              : E_V8SImode) != 0
   11131              :               || !(
   11132              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11133              : (TARGET_AVX512F) && 
   11134              : #line 28835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11135              : (TARGET_AVX512VL)))
   11136              :             return -1;
   11137              :           return 9467; /* avx512vl_vpermt2varv8sf3_maskz_1 */
   11138              : 
   11139              :         case E_V4DImode:
   11140              :           if (pattern484 (x2, 
   11141              : E_V4DImode, 
   11142              : E_QImode) != 0
   11143              :               || !(
   11144              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11145              : (TARGET_AVX512F) && 
   11146              : #line 28836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11147              : (TARGET_AVX512VL)))
   11148              :             return -1;
   11149              :           return 9469; /* avx512vl_vpermt2varv4di3_maskz_1 */
   11150              : 
   11151              :         case E_V4DFmode:
   11152              :           if (pattern1283 (x2, 
   11153              : E_V4DFmode, 
   11154              : E_QImode, 
   11155              : E_V4DImode) != 0
   11156              :               || !(
   11157              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11158              : (TARGET_AVX512F) && 
   11159              : #line 28836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11160              : (TARGET_AVX512VL)))
   11161              :             return -1;
   11162              :           return 9471; /* avx512vl_vpermt2varv4df3_maskz_1 */
   11163              : 
   11164              :         case E_V4SImode:
   11165              :           if (pattern484 (x2, 
   11166              : E_V4SImode, 
   11167              : E_QImode) != 0
   11168              :               || !(
   11169              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11170              : (TARGET_AVX512F) && 
   11171              : #line 28837 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11172              : (TARGET_AVX512VL)))
   11173              :             return -1;
   11174              :           return 9473; /* avx512vl_vpermt2varv4si3_maskz_1 */
   11175              : 
   11176              :         case E_V4SFmode:
   11177              :           if (pattern1283 (x2, 
   11178              : E_V4SFmode, 
   11179              : E_QImode, 
   11180              : E_V4SImode) != 0
   11181              :               || !(
   11182              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11183              : (TARGET_AVX512F) && 
   11184              : #line 28837 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11185              : (TARGET_AVX512VL)))
   11186              :             return -1;
   11187              :           return 9475; /* avx512vl_vpermt2varv4sf3_maskz_1 */
   11188              : 
   11189              :         case E_V2DImode:
   11190              :           if (pattern484 (x2, 
   11191              : E_V2DImode, 
   11192              : E_QImode) != 0
   11193              :               || !(
   11194              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11195              : (TARGET_AVX512F) && 
   11196              : #line 28838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11197              : (TARGET_AVX512VL)))
   11198              :             return -1;
   11199              :           return 9477; /* avx512vl_vpermt2varv2di3_maskz_1 */
   11200              : 
   11201              :         case E_V2DFmode:
   11202              :           if (pattern1283 (x2, 
   11203              : E_V2DFmode, 
   11204              : E_QImode, 
   11205              : E_V2DImode) != 0
   11206              :               || !(
   11207              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11208              : (TARGET_AVX512F) && 
   11209              : #line 28838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11210              : (TARGET_AVX512VL)))
   11211              :             return -1;
   11212              :           return 9479; /* avx512vl_vpermt2varv2df3_maskz_1 */
   11213              : 
   11214              :         case E_V32HImode:
   11215              :           if (pattern484 (x2, 
   11216              : E_V32HImode, 
   11217              : E_SImode) != 0
   11218              :               || !(
   11219              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11220              : (TARGET_AVX512F) && 
   11221              : #line 28839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11222              : (TARGET_AVX512BW)))
   11223              :             return -1;
   11224              :           return 9481; /* avx512bw_vpermt2varv32hi3_maskz_1 */
   11225              : 
   11226              :         case E_V16HImode:
   11227              :           if (pattern484 (x2, 
   11228              : E_V16HImode, 
   11229              : E_HImode) != 0
   11230              :               || !(
   11231              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11232              : (TARGET_AVX512F) && 
   11233              : #line 28840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11234              : (TARGET_AVX512BW && TARGET_AVX512VL)))
   11235              :             return -1;
   11236              :           return 9483; /* avx512vl_vpermt2varv16hi3_maskz_1 */
   11237              : 
   11238              :         case E_V8HImode:
   11239              :           if (pattern484 (x2, 
   11240              : E_V8HImode, 
   11241              : E_QImode) != 0
   11242              :               || !(
   11243              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11244              : (TARGET_AVX512F) && 
   11245              : #line 28841 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11246              : (TARGET_AVX512BW && TARGET_AVX512VL)))
   11247              :             return -1;
   11248              :           return 9485; /* avx512vl_vpermt2varv8hi3_maskz_1 */
   11249              : 
   11250              :         case E_V64QImode:
   11251              :           if (pattern484 (x2, 
   11252              : E_V64QImode, 
   11253              : E_DImode) != 0
   11254              :               || !(
   11255              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11256              : (TARGET_AVX512F) && 
   11257              : #line 28842 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11258              : (TARGET_AVX512VBMI)))
   11259              :             return -1;
   11260              :           return 9487; /* avx512bw_vpermt2varv64qi3_maskz_1 */
   11261              : 
   11262              :         case E_V32QImode:
   11263              :           if (pattern484 (x2, 
   11264              : E_V32QImode, 
   11265              : E_SImode) != 0
   11266              :               || !(
   11267              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11268              : (TARGET_AVX512F) && 
   11269              : #line 28843 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11270              : (TARGET_AVX512VBMI && TARGET_AVX512VL)))
   11271              :             return -1;
   11272              :           return 9489; /* avx512vl_vpermt2varv32qi3_maskz_1 */
   11273              : 
   11274              :         case E_V16QImode:
   11275              :           if (pattern484 (x2, 
   11276              : E_V16QImode, 
   11277              : E_HImode) != 0
   11278              :               || !(
   11279              : #line 28926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11280              : (TARGET_AVX512F) && 
   11281              : #line 28844 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11282              : (TARGET_AVX512VBMI && TARGET_AVX512VL)))
   11283              :             return -1;
   11284              :           return 9491; /* avx512vl_vpermt2varv16qi3_maskz_1 */
   11285              : 
   11286              :         case E_V32HFmode:
   11287              :           if (pattern1283 (x2, 
   11288              : E_V32HFmode, 
   11289              : E_SImode, 
   11290              : E_V32HImode) != 0
   11291              :               || !
   11292              : #line 28941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11293              : (TARGET_AVX512BW))
   11294              :             return -1;
   11295              :           return 9493; /* avx512bw_vpermt2varv32hf3_maskz_1 */
   11296              : 
   11297              :         case E_V16HFmode:
   11298              :           if (pattern1283 (x2, 
   11299              : E_V16HFmode, 
   11300              : E_HImode, 
   11301              : E_V16HImode) != 0
   11302              :               || !(
   11303              : #line 28941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11304              : (TARGET_AVX512BW) && 
   11305              : #line 548 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11306              : (TARGET_AVX512VL)))
   11307              :             return -1;
   11308              :           return 9495; /* avx512vl_vpermt2varv16hf3_maskz_1 */
   11309              : 
   11310              :         case E_V8HFmode:
   11311              :           if (pattern1283 (x2, 
   11312              : E_V8HFmode, 
   11313              : E_QImode, 
   11314              : E_V8HImode) != 0
   11315              :               || !(
   11316              : #line 28941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11317              : (TARGET_AVX512BW) && 
   11318              : #line 548 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11319              : (TARGET_AVX512VL)))
   11320              :             return -1;
   11321              :           return 9497; /* avx512fp16_vpermt2varv8hf3_maskz_1 */
   11322              : 
   11323              :         case E_V32BFmode:
   11324              :           if (pattern1283 (x2, 
   11325              : E_V32BFmode, 
   11326              : E_SImode, 
   11327              : E_V32HImode) != 0
   11328              :               || !
   11329              : #line 28941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11330              : (TARGET_AVX512BW))
   11331              :             return -1;
   11332              :           return 9499; /* avx512bw_vpermt2varv32bf3_maskz_1 */
   11333              : 
   11334              :         case E_V16BFmode:
   11335              :           if (pattern1283 (x2, 
   11336              : E_V16BFmode, 
   11337              : E_HImode, 
   11338              : E_V16HImode) != 0
   11339              :               || !(
   11340              : #line 28941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11341              : (TARGET_AVX512BW) && 
   11342              : #line 549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11343              : (TARGET_AVX512VL)))
   11344              :             return -1;
   11345              :           return 9501; /* avx512vl_vpermt2varv16bf3_maskz_1 */
   11346              : 
   11347              :         case E_V8BFmode:
   11348              :           if (pattern1283 (x2, 
   11349              : E_V8BFmode, 
   11350              : E_QImode, 
   11351              : E_V8HImode) != 0
   11352              :               || !(
   11353              : #line 28941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11354              : (TARGET_AVX512BW) && 
   11355              : #line 549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11356              : (TARGET_AVX512VL)))
   11357              :             return -1;
   11358              :           return 9503; /* avx512vl_vpermt2varv8bf3_maskz_1 */
   11359              : 
   11360              :         default:
   11361              :           return -1;
   11362              :         }
   11363              : 
   11364              :     default:
   11365              :       return -1;
   11366              :     }
   11367              : }
   11368              : 
   11369              :  int
   11370              : recog_163 (rtx x1 ATTRIBUTE_UNUSED,
   11371              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   11372              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   11373              : {
   11374              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   11375              :   rtx x2, x3, x4;
   11376              :   int res ATTRIBUTE_UNUSED;
   11377              :   x2 = XEXP (x1, 1);
   11378              :   x3 = XEXP (x2, 1);
   11379              :   switch (GET_CODE (x3))
   11380              :     {
   11381              :     case CONST_INT:
   11382              :     case CONST_DOUBLE:
   11383              :     case CONST_VECTOR:
   11384              :       operands[4] = x3;
   11385              :       x4 = XEXP (x2, 2);
   11386              :       switch (GET_CODE (x4))
   11387              :         {
   11388              :         case REG:
   11389              :         case SUBREG:
   11390              :           operands[5] = x4;
   11391              :           switch (GET_MODE (operands[0]))
   11392              :             {
   11393              :             case E_V4SFmode:
   11394              :               if (pattern1400 (x2, 
   11395              : E_V4SFmode) != 0)
   11396              :                 return -1;
   11397              :               if (nonimmediate_operand (operands[1], E_V4SFmode)
   11398              :                   && nonimmediate_operand (operands[2], E_V4SFmode)
   11399              :                   && nonimmediate_operand (operands[3], E_V4SFmode)
   11400              :                   && 
   11401              : #line 6573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11402              : (TARGET_FMA || TARGET_FMA4))
   11403              :                 return 4058; /* *fma_fnmsub_v4sf */
   11404              :               if (!bcst_vector_operand (operands[1], E_V4SFmode)
   11405              :                   || !bcst_vector_operand (operands[2], E_V4SFmode)
   11406              :                   || !bcst_vector_operand (operands[3], E_V4SFmode)
   11407              :                   || !(
   11408              : #line 6606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11409              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   11410              : #line 6280 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11411              : (TARGET_AVX512VL)))
   11412              :                 return -1;
   11413              :               return 4090; /* fma_fnmsub_v4sf_maskz_1 */
   11414              : 
   11415              :             case E_V2DFmode:
   11416              :               if (pattern1400 (x2, 
   11417              : E_V2DFmode) != 0)
   11418              :                 return -1;
   11419              :               if (nonimmediate_operand (operands[1], E_V2DFmode)
   11420              :                   && nonimmediate_operand (operands[2], E_V2DFmode)
   11421              :                   && nonimmediate_operand (operands[3], E_V2DFmode)
   11422              :                   && 
   11423              : #line 6573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11424              : (TARGET_FMA || TARGET_FMA4))
   11425              :                 return 4062; /* *fma_fnmsub_v2df */
   11426              :               if (!bcst_vector_operand (operands[1], E_V2DFmode)
   11427              :                   || !bcst_vector_operand (operands[2], E_V2DFmode)
   11428              :                   || !bcst_vector_operand (operands[3], E_V2DFmode)
   11429              :                   || !(
   11430              : #line 6606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11431              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   11432              : #line 6281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11433              : (TARGET_AVX512VL)))
   11434              :                 return -1;
   11435              :               return 4099; /* fma_fnmsub_v2df_maskz_1 */
   11436              : 
   11437              :             case E_V8SFmode:
   11438              :               if (pattern1400 (x2, 
   11439              : E_V8SFmode) != 0)
   11440              :                 return -1;
   11441              :               if (nonimmediate_operand (operands[1], E_V8SFmode)
   11442              :                   && nonimmediate_operand (operands[2], E_V8SFmode)
   11443              :                   && nonimmediate_operand (operands[3], E_V8SFmode)
   11444              :                   && 
   11445              : #line 6573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11446              : (TARGET_FMA || TARGET_FMA4))
   11447              :                 return 4066; /* *fma_fnmsub_v8sf */
   11448              :               if (!bcst_vector_operand (operands[1], E_V8SFmode)
   11449              :                   || !bcst_vector_operand (operands[2], E_V8SFmode)
   11450              :                   || !bcst_vector_operand (operands[3], E_V8SFmode)
   11451              :                   || !(
   11452              : #line 6606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11453              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   11454              : #line 6280 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11455              : (TARGET_AVX512VL)))
   11456              :                 return -1;
   11457              :               return 4088; /* fma_fnmsub_v8sf_maskz_1 */
   11458              : 
   11459              :             case E_V4DFmode:
   11460              :               if (pattern1400 (x2, 
   11461              : E_V4DFmode) != 0)
   11462              :                 return -1;
   11463              :               if (nonimmediate_operand (operands[1], E_V4DFmode)
   11464              :                   && nonimmediate_operand (operands[2], E_V4DFmode)
   11465              :                   && nonimmediate_operand (operands[3], E_V4DFmode)
   11466              :                   && 
   11467              : #line 6573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11468              : (TARGET_FMA || TARGET_FMA4))
   11469              :                 return 4070; /* *fma_fnmsub_v4df */
   11470              :               if (!bcst_vector_operand (operands[1], E_V4DFmode)
   11471              :                   || !bcst_vector_operand (operands[2], E_V4DFmode)
   11472              :                   || !bcst_vector_operand (operands[3], E_V4DFmode)
   11473              :                   || !(
   11474              : #line 6606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11475              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   11476              : #line 6281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11477              : (TARGET_AVX512VL)))
   11478              :                 return -1;
   11479              :               return 4097; /* fma_fnmsub_v4df_maskz_1 */
   11480              : 
   11481              :             case E_V32HFmode:
   11482              :               if (pattern1401 (x2, 
   11483              : E_SImode, 
   11484              : E_V32HFmode) != 0
   11485              :                   || !(
   11486              : #line 6606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11487              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1) && 
   11488              : #line 6276 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11489              : (TARGET_AVX512FP16)))
   11490              :                 return -1;
   11491              :               return 4074; /* fma_fnmsub_v32hf_maskz_1 */
   11492              : 
   11493              :             case E_V16HFmode:
   11494              :               if (pattern1401 (x2, 
   11495              : E_HImode, 
   11496              : E_V16HFmode) != 0
   11497              :                   || !(
   11498              : #line 6606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11499              : (TARGET_AVX512F && (32 == 64 || TARGET_AVX512VL) && 1) && 
   11500              : #line 6277 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11501              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11502              :                 return -1;
   11503              :               return 4078; /* fma_fnmsub_v16hf_maskz_1 */
   11504              : 
   11505              :             case E_V8HFmode:
   11506              :               if (pattern1401 (x2, 
   11507              : E_QImode, 
   11508              : E_V8HFmode) != 0
   11509              :                   || !(
   11510              : #line 6606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11511              : (TARGET_AVX512F && (16 == 64 || TARGET_AVX512VL) && 1) && 
   11512              : #line 6278 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11513              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11514              :                 return -1;
   11515              :               return 4080; /* fma_fnmsub_v8hf_maskz_1 */
   11516              : 
   11517              :             case E_V16SFmode:
   11518              :               if (pattern1401 (x2, 
   11519              : E_HImode, 
   11520              : E_V16SFmode) != 0
   11521              :                   || !
   11522              : #line 6606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11523              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
   11524              :                 return -1;
   11525              :               return 4084; /* fma_fnmsub_v16sf_maskz_1 */
   11526              : 
   11527              :             case E_V8DFmode:
   11528              :               if (pattern1401 (x2, 
   11529              : E_QImode, 
   11530              : E_V8DFmode) != 0
   11531              :                   || !
   11532              : #line 6606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11533              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && 1))
   11534              :                 return -1;
   11535              :               return 4093; /* fma_fnmsub_v8df_maskz_1 */
   11536              : 
   11537              :             case E_V32BFmode:
   11538              :               if (pattern1402 (x2, 
   11539              : E_SImode, 
   11540              : E_V32BFmode) != 0
   11541              :                   || !
   11542              : #line 33047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11543              : (TARGET_AVX10_2))
   11544              :                 return -1;
   11545              :               return 10739; /* avx10_2_fnmsubbf16_v32bf_maskz_1 */
   11546              : 
   11547              :             case E_V16BFmode:
   11548              :               if (pattern1402 (x2, 
   11549              : E_HImode, 
   11550              : E_V16BFmode) != 0
   11551              :                   || !
   11552              : #line 33047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11553              : (TARGET_AVX10_2))
   11554              :                 return -1;
   11555              :               return 10741; /* avx10_2_fnmsubbf16_v16bf_maskz_1 */
   11556              : 
   11557              :             case E_V8BFmode:
   11558              :               if (pattern1402 (x2, 
   11559              : E_QImode, 
   11560              : E_V8BFmode) != 0
   11561              :                   || !
   11562              : #line 33047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11563              : (TARGET_AVX10_2))
   11564              :                 return -1;
   11565              :               return 10743; /* avx10_2_fnmsubbf16_v8bf_maskz_1 */
   11566              : 
   11567              :             default:
   11568              :               return -1;
   11569              :             }
   11570              : 
   11571              :         case CONST_INT:
   11572              :           if (XWINT (x4, 0) != 1L)
   11573              :             return -1;
   11574              :           switch (GET_MODE (operands[0]))
   11575              :             {
   11576              :             case E_V4SFmode:
   11577              :               if (pattern1403 (x2, 
   11578              : E_V4SFmode) != 0
   11579              :                   || !
   11580              : #line 7351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11581              : (TARGET_FMA4))
   11582              :                 return -1;
   11583              :               return 4360; /* *fma4i_vmfnmsub_v4sf */
   11584              : 
   11585              :             case E_V2DFmode:
   11586              :               if (pattern1403 (x2, 
   11587              : E_V2DFmode) != 0
   11588              :                   || !(
   11589              : #line 7351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11590              : (TARGET_FMA4) && 
   11591              : #line 473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11592              : (TARGET_SSE2)))
   11593              :                 return -1;
   11594              :               return 4361; /* *fma4i_vmfnmsub_v2df */
   11595              : 
   11596              :             default:
   11597              :               return -1;
   11598              :             }
   11599              : 
   11600              :         default:
   11601              :           return -1;
   11602              :         }
   11603              : 
   11604              :     case REG:
   11605              :     case SUBREG:
   11606              :     case MEM:
   11607              :       switch (pattern648 (x2))
   11608              :         {
   11609              :         case 0:
   11610              :           if (pattern1303 (x2, 
   11611              : E_V32HFmode, 
   11612              : E_SImode) != 0)
   11613              :             return -1;
   11614              :           if (nonimmediate_operand (operands[1], E_V32HFmode)
   11615              :               && vector_operand (operands[3], E_V32HFmode)
   11616              :               && rtx_equal_p (x3, operands[1])
   11617              :               && (
   11618              : #line 6651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11619              : (TARGET_AVX512F && 1) && 
   11620              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11621              : (TARGET_AVX512FP16)))
   11622              :             return 4100; /* avx512bw_fnmsub_v32hf_mask */
   11623              :           if (!vector_operand (operands[1], E_V32HFmode)
   11624              :               || !nonimmediate_operand (operands[3], E_V32HFmode)
   11625              :               || !rtx_equal_p (x3, operands[3])
   11626              :               || !(
   11627              : #line 6670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11628              : (TARGET_AVX512F) && 
   11629              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11630              : (TARGET_AVX512FP16)))
   11631              :             return -1;
   11632              :           return 4112; /* avx512bw_fnmsub_v32hf_mask3 */
   11633              : 
   11634              :         case 1:
   11635              :           if (pattern1303 (x2, 
   11636              : E_V16HFmode, 
   11637              : E_HImode) != 0)
   11638              :             return -1;
   11639              :           if (nonimmediate_operand (operands[1], E_V16HFmode)
   11640              :               && vector_operand (operands[3], E_V16HFmode)
   11641              :               && rtx_equal_p (x3, operands[1])
   11642              :               && (
   11643              : #line 6651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11644              : (TARGET_AVX512F && 1) && 
   11645              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11646              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11647              :             return 4102; /* avx512vl_fnmsub_v16hf_mask */
   11648              :           if (!vector_operand (operands[1], E_V16HFmode)
   11649              :               || !nonimmediate_operand (operands[3], E_V16HFmode)
   11650              :               || !rtx_equal_p (x3, operands[3])
   11651              :               || !(
   11652              : #line 6670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11653              : (TARGET_AVX512F) && 
   11654              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11655              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11656              :             return -1;
   11657              :           return 4114; /* avx512vl_fnmsub_v16hf_mask3 */
   11658              : 
   11659              :         case 2:
   11660              :           if (pattern1303 (x2, 
   11661              : E_V8HFmode, 
   11662              : E_QImode) != 0)
   11663              :             return -1;
   11664              :           if (nonimmediate_operand (operands[1], E_V8HFmode)
   11665              :               && vector_operand (operands[3], E_V8HFmode)
   11666              :               && rtx_equal_p (x3, operands[1])
   11667              :               && (
   11668              : #line 6651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11669              : (TARGET_AVX512F && 1) && 
   11670              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11671              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11672              :             return 4103; /* avx512fp16_fnmsub_v8hf_mask */
   11673              :           if (!vector_operand (operands[1], E_V8HFmode)
   11674              :               || !nonimmediate_operand (operands[3], E_V8HFmode)
   11675              :               || !rtx_equal_p (x3, operands[3])
   11676              :               || !(
   11677              : #line 6670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11678              : (TARGET_AVX512F) && 
   11679              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11680              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   11681              :             return -1;
   11682              :           return 4116; /* avx512fp16_fnmsub_v8hf_mask3 */
   11683              : 
   11684              :         case 3:
   11685              :           if (pattern1303 (x2, 
   11686              : E_V16SFmode, 
   11687              : E_HImode) != 0)
   11688              :             return -1;
   11689              :           if (nonimmediate_operand (operands[1], E_V16SFmode)
   11690              :               && vector_operand (operands[3], E_V16SFmode)
   11691              :               && rtx_equal_p (x3, operands[1])
   11692              :               && 
   11693              : #line 6651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11694              : (TARGET_AVX512F && 1))
   11695              :             return 4104; /* avx512f_fnmsub_v16sf_mask */
   11696              :           if (!vector_operand (operands[1], E_V16SFmode)
   11697              :               || !nonimmediate_operand (operands[3], E_V16SFmode)
   11698              :               || !rtx_equal_p (x3, operands[3])
   11699              :               || !
   11700              : #line 6670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11701              : (TARGET_AVX512F))
   11702              :             return -1;
   11703              :           return 4118; /* avx512f_fnmsub_v16sf_mask3 */
   11704              : 
   11705              :         case 4:
   11706              :           if (pattern1303 (x2, 
   11707              : E_V8SFmode, 
   11708              : E_QImode) != 0)
   11709              :             return -1;
   11710              :           if (nonimmediate_operand (operands[1], E_V8SFmode)
   11711              :               && vector_operand (operands[3], E_V8SFmode)
   11712              :               && rtx_equal_p (x3, operands[1])
   11713              :               && (
   11714              : #line 6651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11715              : (TARGET_AVX512F && 1) && 
   11716              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11717              : (TARGET_AVX512VL)))
   11718              :             return 4106; /* avx512vl_fnmsub_v8sf_mask */
   11719              :           if (!vector_operand (operands[1], E_V8SFmode)
   11720              :               || !nonimmediate_operand (operands[3], E_V8SFmode)
   11721              :               || !rtx_equal_p (x3, operands[3])
   11722              :               || !(
   11723              : #line 6670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11724              : (TARGET_AVX512F) && 
   11725              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11726              : (TARGET_AVX512VL)))
   11727              :             return -1;
   11728              :           return 4120; /* avx512vl_fnmsub_v8sf_mask3 */
   11729              : 
   11730              :         case 5:
   11731              :           if (pattern1303 (x2, 
   11732              : E_V4SFmode, 
   11733              : E_QImode) != 0)
   11734              :             return -1;
   11735              :           if (nonimmediate_operand (operands[1], E_V4SFmode)
   11736              :               && vector_operand (operands[3], E_V4SFmode)
   11737              :               && rtx_equal_p (x3, operands[1])
   11738              :               && (
   11739              : #line 6651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11740              : (TARGET_AVX512F && 1) && 
   11741              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11742              : (TARGET_AVX512VL)))
   11743              :             return 4107; /* avx512vl_fnmsub_v4sf_mask */
   11744              :           if (!vector_operand (operands[1], E_V4SFmode)
   11745              :               || !nonimmediate_operand (operands[3], E_V4SFmode)
   11746              :               || !rtx_equal_p (x3, operands[3])
   11747              :               || !(
   11748              : #line 6670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11749              : (TARGET_AVX512F) && 
   11750              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11751              : (TARGET_AVX512VL)))
   11752              :             return -1;
   11753              :           return 4122; /* avx512vl_fnmsub_v4sf_mask3 */
   11754              : 
   11755              :         case 6:
   11756              :           if (pattern1303 (x2, 
   11757              : E_V8DFmode, 
   11758              : E_QImode) != 0)
   11759              :             return -1;
   11760              :           if (nonimmediate_operand (operands[1], E_V8DFmode)
   11761              :               && vector_operand (operands[3], E_V8DFmode)
   11762              :               && rtx_equal_p (x3, operands[1])
   11763              :               && 
   11764              : #line 6651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11765              : (TARGET_AVX512F && 1))
   11766              :             return 4108; /* avx512f_fnmsub_v8df_mask */
   11767              :           if (!vector_operand (operands[1], E_V8DFmode)
   11768              :               || !nonimmediate_operand (operands[3], E_V8DFmode)
   11769              :               || !rtx_equal_p (x3, operands[3])
   11770              :               || !
   11771              : #line 6670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11772              : (TARGET_AVX512F))
   11773              :             return -1;
   11774              :           return 4124; /* avx512f_fnmsub_v8df_mask3 */
   11775              : 
   11776              :         case 7:
   11777              :           if (pattern1303 (x2, 
   11778              : E_V4DFmode, 
   11779              : E_QImode) != 0)
   11780              :             return -1;
   11781              :           if (nonimmediate_operand (operands[1], E_V4DFmode)
   11782              :               && vector_operand (operands[3], E_V4DFmode)
   11783              :               && rtx_equal_p (x3, operands[1])
   11784              :               && (
   11785              : #line 6651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11786              : (TARGET_AVX512F && 1) && 
   11787              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11788              : (TARGET_AVX512VL)))
   11789              :             return 4110; /* avx512vl_fnmsub_v4df_mask */
   11790              :           if (!vector_operand (operands[1], E_V4DFmode)
   11791              :               || !nonimmediate_operand (operands[3], E_V4DFmode)
   11792              :               || !rtx_equal_p (x3, operands[3])
   11793              :               || !(
   11794              : #line 6670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11795              : (TARGET_AVX512F) && 
   11796              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11797              : (TARGET_AVX512VL)))
   11798              :             return -1;
   11799              :           return 4126; /* avx512vl_fnmsub_v4df_mask3 */
   11800              : 
   11801              :         case 8:
   11802              :           if (pattern1303 (x2, 
   11803              : E_V2DFmode, 
   11804              : E_QImode) != 0)
   11805              :             return -1;
   11806              :           if (nonimmediate_operand (operands[1], E_V2DFmode)
   11807              :               && vector_operand (operands[3], E_V2DFmode)
   11808              :               && rtx_equal_p (x3, operands[1])
   11809              :               && (
   11810              : #line 6651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11811              : (TARGET_AVX512F && 1) && 
   11812              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11813              : (TARGET_AVX512VL)))
   11814              :             return 4111; /* avx512vl_fnmsub_v2df_mask */
   11815              :           if (!vector_operand (operands[1], E_V2DFmode)
   11816              :               || !nonimmediate_operand (operands[3], E_V2DFmode)
   11817              :               || !rtx_equal_p (x3, operands[3])
   11818              :               || !(
   11819              : #line 6670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11820              : (TARGET_AVX512F) && 
   11821              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11822              : (TARGET_AVX512VL)))
   11823              :             return -1;
   11824              :           return 4128; /* avx512vl_fnmsub_v2df_mask3 */
   11825              : 
   11826              :         case 9:
   11827              :           if (pattern1304 (x2, 
   11828              : E_SImode, 
   11829              : E_V32BFmode) != 0)
   11830              :             return -1;
   11831              :           if (rtx_equal_p (x3, operands[1])
   11832              :               && 
   11833              : #line 33067 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11834              : (TARGET_AVX10_2))
   11835              :             return 10744; /* avx10_2_fnmsubbf16_v32bf_mask */
   11836              :           if (!rtx_equal_p (x3, operands[3])
   11837              :               || !
   11838              : #line 33086 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11839              : (TARGET_AVX10_2))
   11840              :             return -1;
   11841              :           return 10747; /* avx10_2_fnmsubbf16_v32bf_mask3 */
   11842              : 
   11843              :         case 10:
   11844              :           if (pattern1304 (x2, 
   11845              : E_HImode, 
   11846              : E_V16BFmode) != 0)
   11847              :             return -1;
   11848              :           if (rtx_equal_p (x3, operands[1])
   11849              :               && 
   11850              : #line 33067 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11851              : (TARGET_AVX10_2))
   11852              :             return 10745; /* avx10_2_fnmsubbf16_v16bf_mask */
   11853              :           if (!rtx_equal_p (x3, operands[3])
   11854              :               || !
   11855              : #line 33086 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11856              : (TARGET_AVX10_2))
   11857              :             return -1;
   11858              :           return 10748; /* avx10_2_fnmsubbf16_v16bf_mask3 */
   11859              : 
   11860              :         case 11:
   11861              :           if (pattern1304 (x2, 
   11862              : E_QImode, 
   11863              : E_V8BFmode) != 0)
   11864              :             return -1;
   11865              :           if (rtx_equal_p (x3, operands[1])
   11866              :               && 
   11867              : #line 33067 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11868              : (TARGET_AVX10_2))
   11869              :             return 10746; /* avx10_2_fnmsubbf16_v8bf_mask */
   11870              :           if (!rtx_equal_p (x3, operands[3])
   11871              :               || !
   11872              : #line 33086 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11873              : (TARGET_AVX10_2))
   11874              :             return -1;
   11875              :           return 10749; /* avx10_2_fnmsubbf16_v8bf_mask3 */
   11876              : 
   11877              :         case 12:
   11878              :           if (pattern1404 (x2, 
   11879              : E_V8HFmode) != 0
   11880              :               || !(
   11881              : #line 6998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11882              : (TARGET_FMA || TARGET_AVX512F) && 
   11883              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11884              : (TARGET_AVX512FP16)))
   11885              :             return -1;
   11886              :           return 4276; /* *fmai_fnmsub_v8hf */
   11887              : 
   11888              :         case 13:
   11889              :           if (pattern1404 (x2, 
   11890              : E_V4SFmode) != 0
   11891              :               || !
   11892              : #line 6998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11893              : (TARGET_FMA || TARGET_AVX512F))
   11894              :             return -1;
   11895              :           return 4278; /* *fmai_fnmsub_v4sf */
   11896              : 
   11897              :         case 14:
   11898              :           if (pattern1404 (x2, 
   11899              : E_V2DFmode) != 0
   11900              :               || !(
   11901              : #line 6998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11902              : (TARGET_FMA || TARGET_AVX512F) && 
   11903              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11904              : (TARGET_SSE2)))
   11905              :             return -1;
   11906              :           return 4280; /* *fmai_fnmsub_v2df */
   11907              : 
   11908              :         default:
   11909              :           return -1;
   11910              :         }
   11911              : 
   11912              :     default:
   11913              :       return -1;
   11914              :     }
   11915              : }
   11916              : 
   11917              :  int
   11918              : recog_170 (rtx x1 ATTRIBUTE_UNUSED,
   11919              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   11920              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   11921              : {
   11922              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   11923              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   11924              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   11925              :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
   11926              :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
   11927              :   rtx x34, x35, x36, x37, x38, x39, x40, x41;
   11928              :   int res ATTRIBUTE_UNUSED;
   11929              :   x2 = XEXP (x1, 1);
   11930              :   x3 = XEXP (x2, 0);
   11931              :   x4 = XEXP (x3, 0);
   11932              :   x5 = XEXP (x4, 0);
   11933              :   operands[1] = x5;
   11934              :   x6 = XEXP (x3, 1);
   11935              :   switch (XVECLEN (x6, 0))
   11936              :     {
   11937              :     case 16:
   11938              :       x7 = XVECEXP (x6, 0, 0);
   11939              :       if (GET_CODE (x7) != CONST_INT)
   11940              :         return -1;
   11941              :       x8 = XVECEXP (x6, 0, 1);
   11942              :       if (GET_CODE (x8) == CONST_INT)
   11943              :         {
   11944              :           res = recog_165 (x1, insn, pnum_clobbers);
   11945              :           if (res >= 0)
   11946              :             return res;
   11947              :         }
   11948              :       operands[3] = x7;
   11949              :       x9 = XEXP (x4, 1);
   11950              :       operands[2] = x9;
   11951              :       operands[4] = x8;
   11952              :       x10 = XVECEXP (x6, 0, 2);
   11953              :       operands[5] = x10;
   11954              :       x11 = XVECEXP (x6, 0, 3);
   11955              :       operands[6] = x11;
   11956              :       x12 = XVECEXP (x6, 0, 4);
   11957              :       operands[7] = x12;
   11958              :       x13 = XVECEXP (x6, 0, 5);
   11959              :       operands[8] = x13;
   11960              :       x14 = XVECEXP (x6, 0, 6);
   11961              :       operands[9] = x14;
   11962              :       x15 = XVECEXP (x6, 0, 7);
   11963              :       operands[10] = x15;
   11964              :       x16 = XVECEXP (x6, 0, 8);
   11965              :       operands[11] = x16;
   11966              :       x17 = XVECEXP (x6, 0, 9);
   11967              :       operands[12] = x17;
   11968              :       x18 = XVECEXP (x6, 0, 10);
   11969              :       operands[13] = x18;
   11970              :       x19 = XVECEXP (x6, 0, 11);
   11971              :       operands[14] = x19;
   11972              :       x20 = XVECEXP (x6, 0, 12);
   11973              :       operands[15] = x20;
   11974              :       x21 = XVECEXP (x6, 0, 13);
   11975              :       operands[16] = x21;
   11976              :       x22 = XVECEXP (x6, 0, 14);
   11977              :       operands[17] = x22;
   11978              :       x23 = XVECEXP (x6, 0, 15);
   11979              :       operands[18] = x23;
   11980              :       x24 = XEXP (x2, 1);
   11981              :       operands[19] = x24;
   11982              :       x25 = XEXP (x2, 2);
   11983              :       operands[20] = x25;
   11984              :       if (!register_operand (operands[20], E_HImode))
   11985              :         return -1;
   11986              :       switch (GET_MODE (operands[0]))
   11987              :         {
   11988              :         case E_V16SFmode:
   11989              :           if (pattern1659 (x2, 
   11990              : E_V16SFmode, 
   11991              : E_V32SFmode) != 0
   11992              :               || !nonimm_or_0_operand (operands[19], E_V16SFmode))
   11993              :             return -1;
   11994              :           if (const_0_to_3_operand (operands[3], E_VOIDmode)
   11995              :               && const_0_to_3_operand (operands[4], E_VOIDmode)
   11996              :               && const_16_to_19_operand (operands[5], E_VOIDmode)
   11997              :               && const_16_to_19_operand (operands[6], E_VOIDmode)
   11998              :               && const_4_to_7_operand (operands[7], E_VOIDmode)
   11999              :               && const_4_to_7_operand (operands[8], E_VOIDmode)
   12000              :               && const_20_to_23_operand (operands[9], E_VOIDmode)
   12001              :               && const_20_to_23_operand (operands[10], E_VOIDmode)
   12002              :               && const_8_to_11_operand (operands[11], E_VOIDmode)
   12003              :               && const_8_to_11_operand (operands[12], E_VOIDmode)
   12004              :               && const_24_to_27_operand (operands[13], E_VOIDmode)
   12005              :               && const_24_to_27_operand (operands[14], E_VOIDmode)
   12006              :               && const_12_to_15_operand (operands[15], E_VOIDmode)
   12007              :               && const_12_to_15_operand (operands[16], E_VOIDmode)
   12008              :               && const_28_to_31_operand (operands[17], E_VOIDmode)
   12009              :               && const_28_to_31_operand (operands[18], E_VOIDmode)
   12010              :               && (
   12011              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12012              : (TARGET_AVX512F) && 
   12013              : #line 14609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12014              : (TARGET_AVX512F
   12015              :    && (INTVAL (operands[3]) == (INTVAL (operands[7]) - 4)
   12016              :        && INTVAL (operands[4]) == (INTVAL (operands[8]) - 4)
   12017              :        && INTVAL (operands[5]) == (INTVAL (operands[9]) - 4)
   12018              :        && INTVAL (operands[6]) == (INTVAL (operands[10]) - 4)
   12019              :        && INTVAL (operands[3]) == (INTVAL (operands[11]) - 8)
   12020              :        && INTVAL (operands[4]) == (INTVAL (operands[12]) - 8)
   12021              :        && INTVAL (operands[5]) == (INTVAL (operands[13]) - 8)
   12022              :        && INTVAL (operands[6]) == (INTVAL (operands[14]) - 8)
   12023              :        && INTVAL (operands[3]) == (INTVAL (operands[15]) - 12)
   12024              :        && INTVAL (operands[4]) == (INTVAL (operands[16]) - 12)
   12025              :        && INTVAL (operands[5]) == (INTVAL (operands[17]) - 12)
   12026              :        && INTVAL (operands[6]) == (INTVAL (operands[18]) - 12)))))
   12027              :             return 7227; /* avx512f_shufps512_1_mask */
   12028              :           if (!const_0_to_15_operand (operands[3], E_VOIDmode)
   12029              :               || pattern1900 () != 0
   12030              :               || !(
   12031              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12032              : (TARGET_AVX512F) && 
   12033              : #line 20753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12034              : (TARGET_AVX512F
   12035              :    && (INTVAL (operands[3]) & 3) == 0
   12036              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   12037              :    && INTVAL (operands[3]) == INTVAL (operands[5]) - 2
   12038              :    && INTVAL (operands[3]) == INTVAL (operands[6]) - 3
   12039              :    && (INTVAL (operands[7]) & 3) == 0
   12040              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   12041              :    && INTVAL (operands[7]) == INTVAL (operands[9]) - 2
   12042              :    && INTVAL (operands[7]) == INTVAL (operands[10]) - 3
   12043              :    && (INTVAL (operands[11]) & 3) == 0
   12044              :    && INTVAL (operands[11]) == INTVAL (operands[12]) - 1
   12045              :    && INTVAL (operands[11]) == INTVAL (operands[13]) - 2
   12046              :    && INTVAL (operands[11]) == INTVAL (operands[14]) - 3
   12047              :    && (INTVAL (operands[15]) & 3) == 0
   12048              :    && INTVAL (operands[15]) == INTVAL (operands[16]) - 1
   12049              :    && INTVAL (operands[15]) == INTVAL (operands[17]) - 2
   12050              :    && INTVAL (operands[15]) == INTVAL (operands[18]) - 3)))
   12051              :             return -1;
   12052              :           return 8475; /* avx512f_shuf_f32x4_1_mask */
   12053              : 
   12054              :         case E_V16SImode:
   12055              :           if (pattern1659 (x2, 
   12056              : E_V16SImode, 
   12057              : E_V32SImode) != 0
   12058              :               || !const_0_to_15_operand (operands[3], E_VOIDmode)
   12059              :               || pattern1900 () != 0
   12060              :               || !nonimm_or_0_operand (operands[19], E_V16SImode)
   12061              :               || !(
   12062              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12063              : (TARGET_AVX512F) && 
   12064              : #line 20753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12065              : (TARGET_AVX512F
   12066              :    && (INTVAL (operands[3]) & 3) == 0
   12067              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   12068              :    && INTVAL (operands[3]) == INTVAL (operands[5]) - 2
   12069              :    && INTVAL (operands[3]) == INTVAL (operands[6]) - 3
   12070              :    && (INTVAL (operands[7]) & 3) == 0
   12071              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   12072              :    && INTVAL (operands[7]) == INTVAL (operands[9]) - 2
   12073              :    && INTVAL (operands[7]) == INTVAL (operands[10]) - 3
   12074              :    && (INTVAL (operands[11]) & 3) == 0
   12075              :    && INTVAL (operands[11]) == INTVAL (operands[12]) - 1
   12076              :    && INTVAL (operands[11]) == INTVAL (operands[13]) - 2
   12077              :    && INTVAL (operands[11]) == INTVAL (operands[14]) - 3
   12078              :    && (INTVAL (operands[15]) & 3) == 0
   12079              :    && INTVAL (operands[15]) == INTVAL (operands[16]) - 1
   12080              :    && INTVAL (operands[15]) == INTVAL (operands[17]) - 2
   12081              :    && INTVAL (operands[15]) == INTVAL (operands[18]) - 3)))
   12082              :             return -1;
   12083              :           return 8477; /* avx512f_shuf_i32x4_1_mask */
   12084              : 
   12085              :         default:
   12086              :           return -1;
   12087              :         }
   12088              : 
   12089              :     case 8:
   12090              :       x7 = XVECEXP (x6, 0, 0);
   12091              :       if (GET_CODE (x7) != CONST_INT)
   12092              :         return -1;
   12093              :       x8 = XVECEXP (x6, 0, 1);
   12094              :       if (GET_CODE (x8) == CONST_INT)
   12095              :         {
   12096              :           res = recog_166 (x1, insn, pnum_clobbers);
   12097              :           if (res >= 0)
   12098              :             return res;
   12099              :         }
   12100              :       operands[3] = x7;
   12101              :       x9 = XEXP (x4, 1);
   12102              :       operands[2] = x9;
   12103              :       operands[4] = x8;
   12104              :       x10 = XVECEXP (x6, 0, 2);
   12105              :       operands[5] = x10;
   12106              :       x11 = XVECEXP (x6, 0, 3);
   12107              :       operands[6] = x11;
   12108              :       x12 = XVECEXP (x6, 0, 4);
   12109              :       operands[7] = x12;
   12110              :       x13 = XVECEXP (x6, 0, 5);
   12111              :       operands[8] = x13;
   12112              :       x14 = XVECEXP (x6, 0, 6);
   12113              :       operands[9] = x14;
   12114              :       x15 = XVECEXP (x6, 0, 7);
   12115              :       operands[10] = x15;
   12116              :       x24 = XEXP (x2, 1);
   12117              :       operands[11] = x24;
   12118              :       x25 = XEXP (x2, 2);
   12119              :       operands[12] = x25;
   12120              :       if (!register_operand (operands[12], E_QImode))
   12121              :         return -1;
   12122              :       switch (GET_MODE (operands[0]))
   12123              :         {
   12124              :         case E_V8SFmode:
   12125              :           if (pattern1778 (x2, 
   12126              : E_V8SFmode, 
   12127              : E_V16SFmode) != 0)
   12128              :             return -1;
   12129              :           if (const_0_to_3_operand (operands[3], E_VOIDmode)
   12130              :               && const_0_to_3_operand (operands[4], E_VOIDmode)
   12131              :               && const_8_to_11_operand (operands[5], E_VOIDmode)
   12132              :               && const_8_to_11_operand (operands[6], E_VOIDmode)
   12133              :               && const_4_to_7_operand (operands[7], E_VOIDmode)
   12134              :               && const_4_to_7_operand (operands[8], E_VOIDmode)
   12135              :               && const_12_to_15_operand (operands[9], E_VOIDmode)
   12136              :               && const_12_to_15_operand (operands[10], E_VOIDmode)
   12137              :               && (
   12138              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12139              : (TARGET_AVX512F) && 
   12140              : #line 11806 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12141              : (TARGET_AVX
   12142              :    && TARGET_AVX512VL
   12143              :    && (INTVAL (operands[3]) == (INTVAL (operands[7]) - 4)
   12144              :        && INTVAL (operands[4]) == (INTVAL (operands[8]) - 4)
   12145              :        && INTVAL (operands[5]) == (INTVAL (operands[9]) - 4)
   12146              :        && INTVAL (operands[6]) == (INTVAL (operands[10]) - 4)))))
   12147              :             return 5285; /* avx_shufps256_1_mask */
   12148              :           if (!const_0_to_7_operand (operands[3], E_VOIDmode)
   12149              :               || pattern1875 () != 0
   12150              :               || !(
   12151              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12152              : (TARGET_AVX512F) && 
   12153              : #line 20673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12154              : (TARGET_AVX512VL
   12155              :    && (INTVAL (operands[3]) & 3) == 0
   12156              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   12157              :    && INTVAL (operands[3]) == INTVAL (operands[5]) - 2
   12158              :    && INTVAL (operands[3]) == INTVAL (operands[6]) - 3
   12159              :    && (INTVAL (operands[7]) & 3) == 0
   12160              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   12161              :    && INTVAL (operands[7]) == INTVAL (operands[9]) - 2
   12162              :    && INTVAL (operands[7]) == INTVAL (operands[10]) - 3)))
   12163              :             return -1;
   12164              :           return 8473; /* avx512vl_shuf_f32x4_1_mask */
   12165              : 
   12166              :         case E_V8DFmode:
   12167              :           if (pattern1778 (x2, 
   12168              : E_V8DFmode, 
   12169              : E_V16DFmode) != 0)
   12170              :             return -1;
   12171              :           if (const_0_to_1_operand (operands[3], E_VOIDmode)
   12172              :               && const_8_to_9_operand (operands[4], E_VOIDmode)
   12173              :               && const_2_to_3_operand (operands[5], E_VOIDmode)
   12174              :               && const_10_to_11_operand (operands[6], E_VOIDmode)
   12175              :               && const_4_to_5_operand (operands[7], E_VOIDmode)
   12176              :               && const_12_to_13_operand (operands[8], E_VOIDmode)
   12177              :               && const_6_to_7_operand (operands[9], E_VOIDmode)
   12178              :               && const_14_to_15_operand (operands[10], E_VOIDmode)
   12179              :               && 
   12180              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12181              : (TARGET_AVX512F))
   12182              :             return 7229; /* avx512f_shufpd512_1_mask */
   12183              :           if (!const_0_to_7_operand (operands[3], E_VOIDmode)
   12184              :               || pattern1875 () != 0
   12185              :               || !(
   12186              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12187              : (TARGET_AVX512F) && 
   12188              : #line 20575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12189              : (TARGET_AVX512F
   12190              :    && (INTVAL (operands[3]) & 1) == 0
   12191              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   12192              :    && (INTVAL (operands[5]) & 1) == 0
   12193              :    && INTVAL (operands[5]) == INTVAL (operands[6]) - 1
   12194              :    && (INTVAL (operands[7]) & 1) == 0
   12195              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   12196              :    && (INTVAL (operands[9]) & 1) == 0
   12197              :    && INTVAL (operands[9]) == INTVAL (operands[10]) - 1)))
   12198              :             return -1;
   12199              :           return 8463; /* avx512f_shuf_f64x2_1_mask */
   12200              : 
   12201              :         case E_V8DImode:
   12202              :           if (pattern1779 (x2, 
   12203              : E_V8DImode, 
   12204              : E_V16DImode) != 0
   12205              :               || !(
   12206              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12207              : (TARGET_AVX512F) && 
   12208              : #line 20575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12209              : (TARGET_AVX512F
   12210              :    && (INTVAL (operands[3]) & 1) == 0
   12211              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   12212              :    && (INTVAL (operands[5]) & 1) == 0
   12213              :    && INTVAL (operands[5]) == INTVAL (operands[6]) - 1
   12214              :    && (INTVAL (operands[7]) & 1) == 0
   12215              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   12216              :    && (INTVAL (operands[9]) & 1) == 0
   12217              :    && INTVAL (operands[9]) == INTVAL (operands[10]) - 1)))
   12218              :             return -1;
   12219              :           return 8465; /* avx512f_shuf_i64x2_1_mask */
   12220              : 
   12221              :         case E_V8SImode:
   12222              :           if (pattern1779 (x2, 
   12223              : E_V8SImode, 
   12224              : E_V16SImode) != 0
   12225              :               || !(
   12226              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12227              : (TARGET_AVX512F) && 
   12228              : #line 20673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12229              : (TARGET_AVX512VL
   12230              :    && (INTVAL (operands[3]) & 3) == 0
   12231              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   12232              :    && INTVAL (operands[3]) == INTVAL (operands[5]) - 2
   12233              :    && INTVAL (operands[3]) == INTVAL (operands[6]) - 3
   12234              :    && (INTVAL (operands[7]) & 3) == 0
   12235              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   12236              :    && INTVAL (operands[7]) == INTVAL (operands[9]) - 2
   12237              :    && INTVAL (operands[7]) == INTVAL (operands[10]) - 3)))
   12238              :             return -1;
   12239              :           return 8471; /* avx512vl_shuf_i32x4_1_mask */
   12240              : 
   12241              :         default:
   12242              :           return -1;
   12243              :         }
   12244              : 
   12245              :     case 4:
   12246              :       x7 = XVECEXP (x6, 0, 0);
   12247              :       if (GET_CODE (x7) != CONST_INT)
   12248              :         return -1;
   12249              :       x8 = XVECEXP (x6, 0, 1);
   12250              :       if (GET_CODE (x8) == CONST_INT)
   12251              :         {
   12252              :           res = recog_167 (x1, insn, pnum_clobbers);
   12253              :           if (res >= 0)
   12254              :             return res;
   12255              :         }
   12256              :       operands[3] = x7;
   12257              :       x9 = XEXP (x4, 1);
   12258              :       operands[2] = x9;
   12259              :       operands[4] = x8;
   12260              :       x10 = XVECEXP (x6, 0, 2);
   12261              :       operands[5] = x10;
   12262              :       x11 = XVECEXP (x6, 0, 3);
   12263              :       operands[6] = x11;
   12264              :       x24 = XEXP (x2, 1);
   12265              :       operands[7] = x24;
   12266              :       x25 = XEXP (x2, 2);
   12267              :       operands[8] = x25;
   12268              :       if (!register_operand (operands[8], E_QImode))
   12269              :         return -1;
   12270              :       switch (GET_MODE (operands[0]))
   12271              :         {
   12272              :         case E_V4SFmode:
   12273              :           if (pattern1658 (x2, 
   12274              : E_V4SFmode, 
   12275              : E_V8SFmode) != 0
   12276              :               || !
   12277              : #line 11859 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12278              : (TARGET_AVX512VL))
   12279              :             return -1;
   12280              :           return 5286; /* sse_shufps_v4sf_mask */
   12281              : 
   12282              :         case E_V4DFmode:
   12283              :           if (pattern1659 (x2, 
   12284              : E_V4DFmode, 
   12285              : E_V8DFmode) != 0
   12286              :               || !nonimm_or_0_operand (operands[7], E_V4DFmode))
   12287              :             return -1;
   12288              :           if (const_0_to_1_operand (operands[3], E_VOIDmode)
   12289              :               && const_4_to_5_operand (operands[4], E_VOIDmode)
   12290              :               && const_2_to_3_operand (operands[5], E_VOIDmode)
   12291              :               && const_6_to_7_operand (operands[6], E_VOIDmode)
   12292              :               && (
   12293              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12294              : (TARGET_AVX512F) && 
   12295              : #line 14723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12296              : (TARGET_AVX && TARGET_AVX512VL)))
   12297              :             return 7231; /* avx_shufpd256_1_mask */
   12298              :           if (!const_0_to_3_operand (operands[3], E_VOIDmode)
   12299              :               || !const_0_to_3_operand (operands[4], E_VOIDmode)
   12300              :               || !const_4_to_7_operand (operands[5], E_VOIDmode)
   12301              :               || !const_4_to_7_operand (operands[6], E_VOIDmode)
   12302              :               || !(
   12303              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12304              : (TARGET_AVX512F) && 
   12305              : #line 20517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12306              : (TARGET_AVX512VL
   12307              :    && (INTVAL (operands[3]) & 1) == 0
   12308              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   12309              :    && (INTVAL (operands[5]) & 1) == 0
   12310              :    && INTVAL (operands[5]) == INTVAL (operands[6]) - 1)))
   12311              :             return -1;
   12312              :           return 8461; /* avx512dq_shuf_f64x2_1_mask */
   12313              : 
   12314              :         case E_V4DImode:
   12315              :           if (pattern1658 (x2, 
   12316              : E_V4DImode, 
   12317              : E_V8DImode) != 0
   12318              :               || !(
   12319              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12320              : (TARGET_AVX512F) && 
   12321              : #line 20517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12322              : (TARGET_AVX512VL
   12323              :    && (INTVAL (operands[3]) & 1) == 0
   12324              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   12325              :    && (INTVAL (operands[5]) & 1) == 0
   12326              :    && INTVAL (operands[5]) == INTVAL (operands[6]) - 1)))
   12327              :             return -1;
   12328              :           return 8459; /* avx512dq_shuf_i64x2_1_mask */
   12329              : 
   12330              :         default:
   12331              :           return -1;
   12332              :         }
   12333              : 
   12334              :     case 2:
   12335              :       x7 = XVECEXP (x6, 0, 0);
   12336              :       if (GET_CODE (x7) != CONST_INT)
   12337              :         return -1;
   12338              :       x8 = XVECEXP (x6, 0, 1);
   12339              :       if (GET_CODE (x8) == CONST_INT)
   12340              :         {
   12341              :           res = recog_168 (x1, insn, pnum_clobbers);
   12342              :           if (res >= 0)
   12343              :             return res;
   12344              :         }
   12345              :       operands[3] = x7;
   12346              :       if (!const_0_to_1_operand (operands[3], E_VOIDmode)
   12347              :           || pattern1226 (x2, 
   12348              : E_V2DFmode, 
   12349              : E_V4DFmode) != 0)
   12350              :         return -1;
   12351              :       operands[4] = x8;
   12352              :       if (!const_2_to_3_operand (operands[4], E_VOIDmode))
   12353              :         return -1;
   12354              :       x24 = XEXP (x2, 1);
   12355              :       operands[5] = x24;
   12356              :       if (!nonimm_or_0_operand (operands[5], E_V2DFmode))
   12357              :         return -1;
   12358              :       x25 = XEXP (x2, 2);
   12359              :       operands[6] = x25;
   12360              :       if (!register_operand (operands[6], E_QImode)
   12361              :           || !
   12362              : #line 14765 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12363              : (TARGET_AVX512VL))
   12364              :         return -1;
   12365              :       return 7232; /* sse2_shufpd_v2df_mask */
   12366              : 
   12367              :     case 64:
   12368              :       return recog_169 (x1, insn, pnum_clobbers);
   12369              : 
   12370              :     case 32:
   12371              :       if (pattern905 (x6) != 0)
   12372              :         return -1;
   12373              :       x9 = XEXP (x4, 1);
   12374              :       operands[2] = x9;
   12375              :       x24 = XEXP (x2, 1);
   12376              :       operands[3] = x24;
   12377              :       x25 = XEXP (x2, 2);
   12378              :       operands[4] = x25;
   12379              :       if (!register_operand (operands[4], E_SImode))
   12380              :         return -1;
   12381              :       x7 = XVECEXP (x6, 0, 0);
   12382              :       switch (XWINT (x7, 0))
   12383              :         {
   12384              :         case 8L:
   12385              :           x8 = XVECEXP (x6, 0, 1);
   12386              :           if (XWINT (x8, 0) != 40L)
   12387              :             return -1;
   12388              :           x10 = XVECEXP (x6, 0, 2);
   12389              :           if (XWINT (x10, 0) != 9L)
   12390              :             return -1;
   12391              :           x11 = XVECEXP (x6, 0, 3);
   12392              :           if (XWINT (x11, 0) != 41L)
   12393              :             return -1;
   12394              :           x12 = XVECEXP (x6, 0, 4);
   12395              :           if (XWINT (x12, 0) != 10L)
   12396              :             return -1;
   12397              :           x13 = XVECEXP (x6, 0, 5);
   12398              :           if (XWINT (x13, 0) != 42L)
   12399              :             return -1;
   12400              :           x14 = XVECEXP (x6, 0, 6);
   12401              :           if (XWINT (x14, 0) != 11L)
   12402              :             return -1;
   12403              :           x15 = XVECEXP (x6, 0, 7);
   12404              :           if (XWINT (x15, 0) != 43L
   12405              :               || pattern1915 (x6) != 0)
   12406              :             return -1;
   12407              :           x26 = XVECEXP (x6, 0, 16);
   12408              :           if (XWINT (x26, 0) != 24L)
   12409              :             return -1;
   12410              :           x27 = XVECEXP (x6, 0, 17);
   12411              :           if (XWINT (x27, 0) != 56L)
   12412              :             return -1;
   12413              :           x28 = XVECEXP (x6, 0, 18);
   12414              :           if (XWINT (x28, 0) != 25L)
   12415              :             return -1;
   12416              :           x29 = XVECEXP (x6, 0, 19);
   12417              :           if (XWINT (x29, 0) != 57L)
   12418              :             return -1;
   12419              :           x30 = XVECEXP (x6, 0, 20);
   12420              :           if (XWINT (x30, 0) != 26L)
   12421              :             return -1;
   12422              :           x31 = XVECEXP (x6, 0, 21);
   12423              :           if (XWINT (x31, 0) != 58L)
   12424              :             return -1;
   12425              :           x32 = XVECEXP (x6, 0, 22);
   12426              :           if (XWINT (x32, 0) != 27L)
   12427              :             return -1;
   12428              :           x33 = XVECEXP (x6, 0, 23);
   12429              :           if (XWINT (x33, 0) != 59L
   12430              :               || pattern1920 (x6) != 0
   12431              :               || pattern1593 (x2, 
   12432              : E_V32QImode, 
   12433              : E_V64QImode) != 0
   12434              :               || !(
   12435              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12436              : (TARGET_AVX512F) && 
   12437              : #line 19790 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12438              : (TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12439              :             return -1;
   12440              :           return 8367; /* avx2_interleave_highv32qi_mask */
   12441              : 
   12442              :         case 0L:
   12443              :           x8 = XVECEXP (x6, 0, 1);
   12444              :           if (XWINT (x8, 0) != 32L)
   12445              :             return -1;
   12446              :           x10 = XVECEXP (x6, 0, 2);
   12447              :           if (XWINT (x10, 0) != 1L)
   12448              :             return -1;
   12449              :           x11 = XVECEXP (x6, 0, 3);
   12450              :           if (XWINT (x11, 0) != 33L)
   12451              :             return -1;
   12452              :           x12 = XVECEXP (x6, 0, 4);
   12453              :           if (XWINT (x12, 0) != 2L)
   12454              :             return -1;
   12455              :           x13 = XVECEXP (x6, 0, 5);
   12456              :           if (XWINT (x13, 0) != 34L)
   12457              :             return -1;
   12458              :           x14 = XVECEXP (x6, 0, 6);
   12459              :           if (XWINT (x14, 0) != 3L)
   12460              :             return -1;
   12461              :           x15 = XVECEXP (x6, 0, 7);
   12462              :           if (XWINT (x15, 0) != 35L)
   12463              :             return -1;
   12464              :           x26 = XVECEXP (x6, 0, 16);
   12465              :           if (XWINT (x26, 0) != 16L)
   12466              :             return -1;
   12467              :           x27 = XVECEXP (x6, 0, 17);
   12468              :           if (XWINT (x27, 0) != 48L)
   12469              :             return -1;
   12470              :           x28 = XVECEXP (x6, 0, 18);
   12471              :           if (XWINT (x28, 0) != 17L)
   12472              :             return -1;
   12473              :           x29 = XVECEXP (x6, 0, 19);
   12474              :           if (XWINT (x29, 0) != 49L)
   12475              :             return -1;
   12476              :           x30 = XVECEXP (x6, 0, 20);
   12477              :           if (XWINT (x30, 0) != 18L)
   12478              :             return -1;
   12479              :           x31 = XVECEXP (x6, 0, 21);
   12480              :           if (XWINT (x31, 0) != 50L)
   12481              :             return -1;
   12482              :           x32 = XVECEXP (x6, 0, 22);
   12483              :           if (XWINT (x32, 0) != 19L)
   12484              :             return -1;
   12485              :           x33 = XVECEXP (x6, 0, 23);
   12486              :           if (XWINT (x33, 0) != 51L)
   12487              :             return -1;
   12488              :           x16 = XVECEXP (x6, 0, 8);
   12489              :           switch (XWINT (x16, 0))
   12490              :             {
   12491              :             case 4L:
   12492              :               x17 = XVECEXP (x6, 0, 9);
   12493              :               if (XWINT (x17, 0) != 36L)
   12494              :                 return -1;
   12495              :               x18 = XVECEXP (x6, 0, 10);
   12496              :               if (XWINT (x18, 0) != 5L)
   12497              :                 return -1;
   12498              :               x19 = XVECEXP (x6, 0, 11);
   12499              :               if (XWINT (x19, 0) != 37L)
   12500              :                 return -1;
   12501              :               x20 = XVECEXP (x6, 0, 12);
   12502              :               if (XWINT (x20, 0) != 6L)
   12503              :                 return -1;
   12504              :               x21 = XVECEXP (x6, 0, 13);
   12505              :               if (XWINT (x21, 0) != 38L)
   12506              :                 return -1;
   12507              :               x22 = XVECEXP (x6, 0, 14);
   12508              :               if (XWINT (x22, 0) != 7L)
   12509              :                 return -1;
   12510              :               x23 = XVECEXP (x6, 0, 15);
   12511              :               if (XWINT (x23, 0) != 39L)
   12512              :                 return -1;
   12513              :               x34 = XVECEXP (x6, 0, 24);
   12514              :               if (XWINT (x34, 0) != 20L)
   12515              :                 return -1;
   12516              :               x35 = XVECEXP (x6, 0, 25);
   12517              :               if (XWINT (x35, 0) != 52L)
   12518              :                 return -1;
   12519              :               x36 = XVECEXP (x6, 0, 26);
   12520              :               if (XWINT (x36, 0) != 21L)
   12521              :                 return -1;
   12522              :               x37 = XVECEXP (x6, 0, 27);
   12523              :               if (XWINT (x37, 0) != 53L)
   12524              :                 return -1;
   12525              :               x38 = XVECEXP (x6, 0, 28);
   12526              :               if (XWINT (x38, 0) != 22L)
   12527              :                 return -1;
   12528              :               x39 = XVECEXP (x6, 0, 29);
   12529              :               if (XWINT (x39, 0) != 54L)
   12530              :                 return -1;
   12531              :               x40 = XVECEXP (x6, 0, 30);
   12532              :               if (XWINT (x40, 0) != 23L)
   12533              :                 return -1;
   12534              :               x41 = XVECEXP (x6, 0, 31);
   12535              :               if (XWINT (x41, 0) != 55L
   12536              :                   || pattern1593 (x2, 
   12537              : E_V32QImode, 
   12538              : E_V64QImode) != 0
   12539              :                   || !(
   12540              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12541              : (TARGET_AVX512F) && 
   12542              : #line 19886 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12543              : (TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12544              :                 return -1;
   12545              :               return 8373; /* avx2_interleave_lowv32qi_mask */
   12546              : 
   12547              :             case 8L:
   12548              :               x17 = XVECEXP (x6, 0, 9);
   12549              :               if (XWINT (x17, 0) != 40L)
   12550              :                 return -1;
   12551              :               x18 = XVECEXP (x6, 0, 10);
   12552              :               if (XWINT (x18, 0) != 9L)
   12553              :                 return -1;
   12554              :               x19 = XVECEXP (x6, 0, 11);
   12555              :               if (XWINT (x19, 0) != 41L)
   12556              :                 return -1;
   12557              :               x20 = XVECEXP (x6, 0, 12);
   12558              :               if (XWINT (x20, 0) != 10L)
   12559              :                 return -1;
   12560              :               x21 = XVECEXP (x6, 0, 13);
   12561              :               if (XWINT (x21, 0) != 42L)
   12562              :                 return -1;
   12563              :               x22 = XVECEXP (x6, 0, 14);
   12564              :               if (XWINT (x22, 0) != 11L)
   12565              :                 return -1;
   12566              :               x23 = XVECEXP (x6, 0, 15);
   12567              :               if (XWINT (x23, 0) != 43L)
   12568              :                 return -1;
   12569              :               x34 = XVECEXP (x6, 0, 24);
   12570              :               if (XWINT (x34, 0) != 24L)
   12571              :                 return -1;
   12572              :               x35 = XVECEXP (x6, 0, 25);
   12573              :               if (XWINT (x35, 0) != 56L)
   12574              :                 return -1;
   12575              :               x36 = XVECEXP (x6, 0, 26);
   12576              :               if (XWINT (x36, 0) != 25L)
   12577              :                 return -1;
   12578              :               x37 = XVECEXP (x6, 0, 27);
   12579              :               if (XWINT (x37, 0) != 57L)
   12580              :                 return -1;
   12581              :               x38 = XVECEXP (x6, 0, 28);
   12582              :               if (XWINT (x38, 0) != 26L)
   12583              :                 return -1;
   12584              :               x39 = XVECEXP (x6, 0, 29);
   12585              :               if (XWINT (x39, 0) != 58L)
   12586              :                 return -1;
   12587              :               x40 = XVECEXP (x6, 0, 30);
   12588              :               if (XWINT (x40, 0) != 27L)
   12589              :                 return -1;
   12590              :               x41 = XVECEXP (x6, 0, 31);
   12591              :               if (XWINT (x41, 0) != 59L)
   12592              :                 return -1;
   12593              :               switch (GET_MODE (operands[0]))
   12594              :                 {
   12595              :                 case E_V32HImode:
   12596              :                   if (pattern1593 (x2, 
   12597              : E_V32HImode, 
   12598              : E_V64HImode) != 0
   12599              :                       || !(
   12600              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12601              : (TARGET_AVX512F) && 
   12602              : #line 20006 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12603              : (TARGET_AVX512BW)))
   12604              :                     return -1;
   12605              :                   return 8395; /* avx512bw_interleave_lowv32hi_mask */
   12606              : 
   12607              :                 case E_V32HFmode:
   12608              :                   if (pattern1593 (x2, 
   12609              : E_V32HFmode, 
   12610              : E_V64HFmode) != 0
   12611              :                       || !(
   12612              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12613              : (TARGET_AVX512F) && 
   12614              : #line 20006 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12615              : (TARGET_AVX512BW)))
   12616              :                     return -1;
   12617              :                   return 8397; /* avx512bw_interleave_lowv32hf_mask */
   12618              : 
   12619              :                 case E_V32BFmode:
   12620              :                   if (pattern1593 (x2, 
   12621              : E_V32BFmode, 
   12622              : E_V64BFmode) != 0
   12623              :                       || !(
   12624              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12625              : (TARGET_AVX512F) && 
   12626              : #line 20006 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12627              : (TARGET_AVX512BW)))
   12628              :                     return -1;
   12629              :                   return 8399; /* avx512bw_interleave_lowv32bf_mask */
   12630              : 
   12631              :                 default:
   12632              :                   return -1;
   12633              :                 }
   12634              : 
   12635              :             default:
   12636              :               return -1;
   12637              :             }
   12638              : 
   12639              :         case 4L:
   12640              :           x8 = XVECEXP (x6, 0, 1);
   12641              :           if (XWINT (x8, 0) != 36L)
   12642              :             return -1;
   12643              :           x10 = XVECEXP (x6, 0, 2);
   12644              :           if (XWINT (x10, 0) != 5L)
   12645              :             return -1;
   12646              :           x11 = XVECEXP (x6, 0, 3);
   12647              :           if (XWINT (x11, 0) != 37L)
   12648              :             return -1;
   12649              :           x12 = XVECEXP (x6, 0, 4);
   12650              :           if (XWINT (x12, 0) != 6L)
   12651              :             return -1;
   12652              :           x13 = XVECEXP (x6, 0, 5);
   12653              :           if (XWINT (x13, 0) != 38L)
   12654              :             return -1;
   12655              :           x14 = XVECEXP (x6, 0, 6);
   12656              :           if (XWINT (x14, 0) != 7L)
   12657              :             return -1;
   12658              :           x15 = XVECEXP (x6, 0, 7);
   12659              :           if (XWINT (x15, 0) != 39L
   12660              :               || pattern1915 (x6) != 0)
   12661              :             return -1;
   12662              :           x26 = XVECEXP (x6, 0, 16);
   12663              :           if (XWINT (x26, 0) != 20L)
   12664              :             return -1;
   12665              :           x27 = XVECEXP (x6, 0, 17);
   12666              :           if (XWINT (x27, 0) != 52L)
   12667              :             return -1;
   12668              :           x28 = XVECEXP (x6, 0, 18);
   12669              :           if (XWINT (x28, 0) != 21L)
   12670              :             return -1;
   12671              :           x29 = XVECEXP (x6, 0, 19);
   12672              :           if (XWINT (x29, 0) != 53L)
   12673              :             return -1;
   12674              :           x30 = XVECEXP (x6, 0, 20);
   12675              :           if (XWINT (x30, 0) != 22L)
   12676              :             return -1;
   12677              :           x31 = XVECEXP (x6, 0, 21);
   12678              :           if (XWINT (x31, 0) != 54L)
   12679              :             return -1;
   12680              :           x32 = XVECEXP (x6, 0, 22);
   12681              :           if (XWINT (x32, 0) != 23L)
   12682              :             return -1;
   12683              :           x33 = XVECEXP (x6, 0, 23);
   12684              :           if (XWINT (x33, 0) != 55L
   12685              :               || pattern1920 (x6) != 0)
   12686              :             return -1;
   12687              :           switch (GET_MODE (operands[0]))
   12688              :             {
   12689              :             case E_V32HImode:
   12690              :               if (pattern1593 (x2, 
   12691              : E_V32HImode, 
   12692              : E_V64HImode) != 0
   12693              :                   || !(
   12694              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12695              : (TARGET_AVX512F) && 
   12696              : #line 19938 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12697              : (TARGET_AVX512BW)))
   12698              :                 return -1;
   12699              :               return 8377; /* avx512bw_interleave_highv32hi_mask */
   12700              : 
   12701              :             case E_V32HFmode:
   12702              :               if (pattern1593 (x2, 
   12703              : E_V32HFmode, 
   12704              : E_V64HFmode) != 0
   12705              :                   || !(
   12706              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12707              : (TARGET_AVX512F) && 
   12708              : #line 19938 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12709              : (TARGET_AVX512BW)))
   12710              :                 return -1;
   12711              :               return 8379; /* avx512bw_interleave_highv32hf_mask */
   12712              : 
   12713              :             case E_V32BFmode:
   12714              :               if (pattern1593 (x2, 
   12715              : E_V32BFmode, 
   12716              : E_V64BFmode) != 0
   12717              :                   || !(
   12718              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12719              : (TARGET_AVX512F) && 
   12720              : #line 19938 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12721              : (TARGET_AVX512BW)))
   12722              :                 return -1;
   12723              :               return 8381; /* avx512bw_interleave_highv32bf_mask */
   12724              : 
   12725              :             default:
   12726              :               return -1;
   12727              :             }
   12728              : 
   12729              :         default:
   12730              :           return -1;
   12731              :         }
   12732              : 
   12733              :     default:
   12734              :       return -1;
   12735              :     }
   12736              : }
   12737              : 
   12738              :  int
   12739              : recog_196 (rtx x1 ATTRIBUTE_UNUSED,
   12740              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12741              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12742              : {
   12743              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12744              :   rtx x2, x3, x4, x5;
   12745              :   int res ATTRIBUTE_UNUSED;
   12746              :   x2 = XEXP (x1, 1);
   12747              :   switch (pattern157 (x2))
   12748              :     {
   12749              :     case 0:
   12750              :       if (!(
   12751              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12752              : (TARGET_AVX512F) && 
   12753              : #line 24466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12754              : (TARGET_AVX2 && TARGET_AVX512BW && TARGET_AVX512VL)))
   12755              :         return -1;
   12756              :       return 8801; /* avx2_zero_extendv16qiv16hi2_mask */
   12757              : 
   12758              :     case 1:
   12759              :       if (!(
   12760              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12761              : (TARGET_AVX512F) && 
   12762              : #line 24520 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12763              : (TARGET_AVX512BW)))
   12764              :         return -1;
   12765              :       return 8809; /* avx512bw_zero_extendv32qiv32hi2_mask */
   12766              : 
   12767              :     case 2:
   12768              :       if (!(
   12769              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12770              : (TARGET_AVX512F) && 
   12771              : #line 24590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12772              : (TARGET_SSE4_1 && TARGET_AVX512BW && TARGET_AVX512VL)))
   12773              :         return -1;
   12774              :       return 8821; /* *sse4_1_zero_extendv8qiv8hi2_mask_1 */
   12775              : 
   12776              :     case 3:
   12777              :       if (!
   12778              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12779              : (TARGET_AVX512F))
   12780              :         return -1;
   12781              :       return 8833; /* avx512f_zero_extendv16qiv16si2_mask */
   12782              : 
   12783              :     case 4:
   12784              :       if (!
   12785              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12786              : (TARGET_AVX512F))
   12787              :         return -1;
   12788              :       return 8863; /* avx512f_zero_extendv16hiv16si2_mask */
   12789              : 
   12790              :     case 5:
   12791              :       if (!(
   12792              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12793              : (TARGET_AVX512F) && 
   12794              : #line 24773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12795              : (TARGET_AVX2 && TARGET_AVX512VL)))
   12796              :         return -1;
   12797              :       return 8841; /* *avx2_zero_extendv8qiv8si2_mask_1 */
   12798              : 
   12799              :     case 6:
   12800              :       if (!(
   12801              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12802              : (TARGET_AVX512F) && 
   12803              : #line 24993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12804              : (TARGET_AVX2 && TARGET_AVX512VL)))
   12805              :         return -1;
   12806              :       return 8871; /* avx2_zero_extendv8hiv8si2_mask */
   12807              : 
   12808              :     case 7:
   12809              :       if (!(
   12810              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12811              : (TARGET_AVX512F) && 
   12812              : #line 24861 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12813              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   12814              :         return -1;
   12815              :       return 8853; /* *sse4_1_zero_extendv4qiv4si2_mask_1 */
   12816              : 
   12817              :     case 8:
   12818              :       if (!(
   12819              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12820              : (TARGET_AVX512F) && 
   12821              : #line 25063 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12822              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   12823              :         return -1;
   12824              :       return 8883; /* *sse4_1_zero_extendv4hiv4si2_mask_1 */
   12825              : 
   12826              :     case 9:
   12827              :       if (!
   12828              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12829              : (TARGET_AVX512F))
   12830              :         return -1;
   12831              :       return 8899; /* *avx512f_zero_extendv8qiv8di2_mask_1 */
   12832              : 
   12833              :     case 10:
   12834              :       if (!
   12835              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12836              : (TARGET_AVX512F))
   12837              :         return -1;
   12838              :       return 8930; /* avx512f_zero_extendv8hiv8di2_mask */
   12839              : 
   12840              :     case 11:
   12841              :       if (!
   12842              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12843              : (TARGET_AVX512F))
   12844              :         return -1;
   12845              :       return 8958; /* avx512f_zero_extendv8siv8di2_mask */
   12846              : 
   12847              :     case 12:
   12848              :       if (!(
   12849              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12850              : (TARGET_AVX512F) && 
   12851              : #line 25303 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12852              : (TARGET_AVX2 && TARGET_AVX512VL)))
   12853              :         return -1;
   12854              :       return 8911; /* *avx2_zero_extendv4qiv4di2_mask_1 */
   12855              : 
   12856              :     case 13:
   12857              :       if (!(
   12858              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12859              : (TARGET_AVX512F) && 
   12860              : #line 25475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12861              : (TARGET_AVX2 && TARGET_AVX512VL)))
   12862              :         return -1;
   12863              :       return 8938; /* *avx2_zero_extendv4hiv4di2_mask_1 */
   12864              : 
   12865              :     case 14:
   12866              :       if (!(
   12867              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12868              : (TARGET_AVX512F) && 
   12869              : #line 25686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12870              : (TARGET_AVX2 && TARGET_AVX512VL)))
   12871              :         return -1;
   12872              :       return 8964; /* avx2_zero_extendv4siv4di2_mask */
   12873              : 
   12874              :     case 15:
   12875              :       if (!(
   12876              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12877              : (TARGET_AVX512F) && 
   12878              : #line 25394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12879              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   12880              :         return -1;
   12881              :       return 8923; /* *sse4_1_zero_extendv2qiv2di2_mask_1 */
   12882              : 
   12883              :     case 16:
   12884              :       if (!(
   12885              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12886              : (TARGET_AVX512F) && 
   12887              : #line 25558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12888              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   12889              :         return -1;
   12890              :       return 8950; /* *sse4_1_zero_extendv2hiv2di2_mask_1 */
   12891              : 
   12892              :     case 17:
   12893              :       if (!(
   12894              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12895              : (TARGET_AVX512F) && 
   12896              : #line 25752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12897              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   12898              :         return -1;
   12899              :       return 8974; /* *sse4_1_zero_extendv2siv2di2_mask_1 */
   12900              : 
   12901              :     case 18:
   12902              :       x3 = XEXP (x2, 0);
   12903              :       x4 = XEXP (x3, 0);
   12904              :       x5 = XEXP (x4, 0);
   12905              :       operands[1] = x5;
   12906              :       switch (pattern907 (x2))
   12907              :         {
   12908              :         case 0:
   12909              :           if ((
   12910              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12911              : (TARGET_AVX512F) && 
   12912              : #line 24578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12913              : (TARGET_SSE4_1 && TARGET_AVX512BW && TARGET_AVX512VL)))
   12914              :             return 8817; /* sse4_1_zero_extendv8qiv8hi2_mask */
   12915              :           break;
   12916              : 
   12917              :         case 1:
   12918              :           if ((
   12919              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12920              : (TARGET_AVX512F) && 
   12921              : #line 24762 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12922              : (TARGET_AVX2 && TARGET_AVX512VL)))
   12923              :             return 8837; /* avx2_zero_extendv8qiv8si2_mask */
   12924              :           break;
   12925              : 
   12926              :         case 2:
   12927              :           if (
   12928              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12929              : (TARGET_AVX512F))
   12930              :             return 8895; /* avx512f_zero_extendv8qiv8di2_mask */
   12931              :           break;
   12932              : 
   12933              :         case 3:
   12934              :           if ((
   12935              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12936              : (TARGET_AVX512F) && 
   12937              : #line 24849 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12938              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   12939              :             return 8849; /* sse4_1_zero_extendv4qiv4si2_mask */
   12940              :           break;
   12941              : 
   12942              :         case 4:
   12943              :           if ((
   12944              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12945              : (TARGET_AVX512F) && 
   12946              : #line 25051 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12947              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   12948              :             return 8879; /* sse4_1_zero_extendv4hiv4si2_mask */
   12949              :           break;
   12950              : 
   12951              :         case 5:
   12952              :           if ((
   12953              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12954              : (TARGET_AVX512F) && 
   12955              : #line 25292 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12956              : (TARGET_AVX2 && TARGET_AVX512VL)))
   12957              :             return 8907; /* avx2_zero_extendv4qiv4di2_mask */
   12958              :           break;
   12959              : 
   12960              :         case 6:
   12961              :           if ((
   12962              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12963              : (TARGET_AVX512F) && 
   12964              : #line 25464 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12965              : (TARGET_AVX2 && TARGET_AVX512VL)))
   12966              :             return 8934; /* avx2_zero_extendv4hiv4di2_mask */
   12967              :           break;
   12968              : 
   12969              :         case 7:
   12970              :           if ((
   12971              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12972              : (TARGET_AVX512F) && 
   12973              : #line 25382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12974              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   12975              :             return 8919; /* sse4_1_zero_extendv2qiv2di2_mask */
   12976              :           break;
   12977              : 
   12978              :         case 8:
   12979              :           if ((
   12980              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12981              : (TARGET_AVX512F) && 
   12982              : #line 25546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12983              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   12984              :             return 8946; /* sse4_1_zero_extendv2hiv2di2_mask */
   12985              :           break;
   12986              : 
   12987              :         case 9:
   12988              :           if ((
   12989              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12990              : (TARGET_AVX512F) && 
   12991              : #line 25740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12992              : (TARGET_SSE4_1 && TARGET_AVX512VL)))
   12993              :             return 8970; /* sse4_1_zero_extendv2siv2di2_mask */
   12994              :           break;
   12995              : 
   12996              :         default:
   12997              :           break;
   12998              :         }
   12999              :       if (GET_CODE (x5) != SUBREG
   13000              :           || maybe_ne (SUBREG_BYTE (x5), 0))
   13001              :         return -1;
   13002              :       switch (pattern414 (x2))
   13003              :         {
   13004              :         case 0:
   13005              :           if (!
   13006              : #line 24637 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13007              : (TARGET_AVX512VL && TARGET_AVX512BW
   13008              :    && ix86_pre_reload_split ()))
   13009              :             return -1;
   13010              :           return 8825; /* *avx512vl_zero_extendv8qiv8hi2_mask_2 */
   13011              : 
   13012              :         case 1:
   13013              :           if (!
   13014              : #line 24815 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13015              : (TARGET_AVX512VL
   13016              :    && ix86_pre_reload_split ()))
   13017              :             return -1;
   13018              :           return 8845; /* *avx512vl_zero_extendv8qiv8si2_mask_2 */
   13019              : 
   13020              :         case 2:
   13021              :           if (!
   13022              : #line 25259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13023              : (TARGET_AVX512F && ix86_pre_reload_split ()))
   13024              :             return -1;
   13025              :           return 8903; /* *avx512f_zero_extendv8qiv8di2_mask_2 */
   13026              : 
   13027              :         case 3:
   13028              :           if (!
   13029              : #line 25103 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13030              : (TARGET_AVX512VL
   13031              :    && ix86_pre_reload_split ()))
   13032              :             return -1;
   13033              :           return 8887; /* *avx512vl_zero_extendv4hiv4si2_mask_2 */
   13034              : 
   13035              :         case 4:
   13036              :           if (!
   13037              : #line 25513 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13038              : (TARGET_AVX512VL
   13039              :    && ix86_pre_reload_split ()))
   13040              :             return -1;
   13041              :           return 8942; /* *avx512vl_zero_extendv4hiv4di2_mask_2 */
   13042              : 
   13043              :         case 5:
   13044              :           if (!
   13045              : #line 25790 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13046              : (TARGET_AVX512VL
   13047              :    && ix86_pre_reload_split ()))
   13048              :             return -1;
   13049              :           return 8978; /* *avx512vl_zero_extendv2siv2di2_mask_2 */
   13050              : 
   13051              :         case 6:
   13052              :           if ((
   13053              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13054              : (TARGET_AVX512F) && 
   13055              : #line 24884 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13056              : (TARGET_SSE4_1 && TARGET_AVX512VL
   13057              :    && ix86_pre_reload_split ())))
   13058              :             return 8857; /* *sse4_1_zero_extendv4qiv4si2_2 */
   13059              :           if (!
   13060              : #line 24909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13061              : (TARGET_AVX512VL
   13062              :    && ix86_pre_reload_split ()))
   13063              :             return -1;
   13064              :           return 8859; /* *avx512vl_zero_extendv4qiv4si2_mask_2 */
   13065              : 
   13066              :         case 7:
   13067              :           if (!
   13068              : #line 25349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13069              : (TARGET_AVX512VL
   13070              :    && ix86_pre_reload_split ()))
   13071              :             return -1;
   13072              :           return 8915; /* *avx512vl_zero_extendv4qiv4di2_mask_2 */
   13073              : 
   13074              :         case 8:
   13075              :           if (!
   13076              : #line 25604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13077              : (TARGET_AVX512VL
   13078              :    && ix86_pre_reload_split ()))
   13079              :             return -1;
   13080              :           return 8954; /* *avx512vl_zero_extendv2hiv2di2_mask_2 */
   13081              : 
   13082              :         default:
   13083              :           return -1;
   13084              :         }
   13085              : 
   13086              :     default:
   13087              :       return -1;
   13088              :     }
   13089              : }
   13090              : 
   13091              :  int
   13092              : recog_205 (rtx x1 ATTRIBUTE_UNUSED,
   13093              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13094              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13095              : {
   13096              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13097              :   rtx x2;
   13098              :   int res ATTRIBUTE_UNUSED;
   13099              :   x2 = XEXP (x1, 1);
   13100              :   switch (pattern144 (x2))
   13101              :     {
   13102              :     case 0:
   13103              :       if (!(
   13104              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13105              : (TARGET_AVX512F) && (
   13106              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13107              : (TARGET_AVX512FP16) && 
   13108              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13109              : (TARGET_AVX512VL))))
   13110              :         return -1;
   13111              :       return 4658; /* avx512fp16_fixuns_truncv8hi2_mask */
   13112              : 
   13113              :     case 1:
   13114              :       if (!(
   13115              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13116              : (TARGET_AVX512F) && (
   13117              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13118              : (TARGET_AVX512FP16) && 
   13119              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13120              : (TARGET_AVX512VL))))
   13121              :         return -1;
   13122              :       return 4666; /* avx512fp16_fixuns_truncv16hi2_mask */
   13123              : 
   13124              :     case 2:
   13125              :       if (!(
   13126              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13127              : (TARGET_AVX512F) && 
   13128              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13129              : (TARGET_AVX512FP16)))
   13130              :         return -1;
   13131              :       return 4674; /* avx512fp16_fixuns_truncv32hi2_mask */
   13132              : 
   13133              :     case 3:
   13134              :       switch (GET_MODE (operands[1]))
   13135              :         {
   13136              :         case E_V8HFmode:
   13137              :           if (!vector_operand (operands[1], E_V8HFmode)
   13138              :               || !(
   13139              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13140              : (TARGET_AVX512F) && (
   13141              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13142              : (TARGET_AVX512FP16) && 
   13143              : #line 688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13144              : (TARGET_AVX512VL))))
   13145              :             return -1;
   13146              :           return 4682; /* avx512fp16_fixuns_truncv8si2_mask */
   13147              : 
   13148              :         case E_V8DFmode:
   13149              :           if (!vector_operand (operands[1], E_V8DFmode)
   13150              :               || !
   13151              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13152              : (TARGET_AVX512F))
   13153              :             return -1;
   13154              :           return 5073; /* fixuns_truncv8dfv8si2_mask */
   13155              : 
   13156              :         case E_V8SFmode:
   13157              :           if (!nonimmediate_operand (operands[1], E_V8SFmode)
   13158              :               || !(
   13159              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13160              : (TARGET_AVX512F) && (
   13161              : #line 10243 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13162              : (TARGET_AVX512VL) && 
   13163              : #line 444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13164              : (TARGET_AVX))))
   13165              :             return -1;
   13166              :           return 5173; /* fixuns_truncv8sfv8si2_mask */
   13167              : 
   13168              :         default:
   13169              :           return -1;
   13170              :         }
   13171              : 
   13172              :     case 4:
   13173              :       if (!(
   13174              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13175              : (TARGET_AVX512F) && 
   13176              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13177              : (TARGET_AVX512FP16)))
   13178              :         return -1;
   13179              :       return 4690; /* avx512fp16_fixuns_truncv16si2_mask */
   13180              : 
   13181              :     case 5:
   13182              :       if (!
   13183              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13184              : (TARGET_AVX512F))
   13185              :         return -1;
   13186              :       return 4924; /* fixuns_truncv16sfv16si2_mask */
   13187              : 
   13188              :     case 6:
   13189              :       if (!(
   13190              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13191              : (TARGET_AVX512F) && 
   13192              : #line 8212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13193              : (TARGET_AVX512FP16)))
   13194              :         return -1;
   13195              :       return 4698; /* avx512fp16_fixuns_truncv8di2_mask */
   13196              : 
   13197              :     case 7:
   13198              :       if (!(
   13199              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13200              : (TARGET_AVX512F) && 
   13201              : #line 10029 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13202              : (TARGET_AVX512DQ && 1)))
   13203              :         return -1;
   13204              :       return 5110; /* fixuns_truncv8dfv8di2_mask */
   13205              : 
   13206              :     case 8:
   13207              :       if (!(
   13208              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13209              : (TARGET_AVX512F) && 
   13210              : #line 10072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13211              : (TARGET_AVX512DQ && 1)))
   13212              :         return -1;
   13213              :       return 5154; /* fixuns_truncv8sfv8di2_mask */
   13214              : 
   13215              :     case 9:
   13216              :       switch (GET_MODE (operands[1]))
   13217              :         {
   13218              :         case E_V4HFmode:
   13219              :           if (!memory_operand (operands[1], E_V4HFmode)
   13220              :               || !(
   13221              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13222              : (TARGET_AVX512F) && 
   13223              : #line 8262 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13224              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13225              :             return -1;
   13226              :           return 4719; /* *avx512fp16_fixuns_truncv4si2_load_mask */
   13227              : 
   13228              :         case E_V4DFmode:
   13229              :           if (!nonimmediate_operand (operands[1], E_V4DFmode)
   13230              :               || !(
   13231              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13232              : (TARGET_AVX512F) && 
   13233              : #line 10008 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13234              : (TARGET_AVX512VL && TARGET_AVX512F)))
   13235              :             return -1;
   13236              :           return 5087; /* fixuns_truncv4dfv4si2_mask */
   13237              : 
   13238              :         case E_V4SFmode:
   13239              :           if (!nonimmediate_operand (operands[1], E_V4SFmode)
   13240              :               || !(
   13241              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13242              : (TARGET_AVX512F) && 
   13243              : #line 10243 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13244              : (TARGET_AVX512VL)))
   13245              :             return -1;
   13246              :           return 5175; /* fixuns_truncv4sfv4si2_mask */
   13247              : 
   13248              :         default:
   13249              :           return -1;
   13250              :         }
   13251              : 
   13252              :     case 10:
   13253              :       if (!(
   13254              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13255              : (TARGET_AVX512F) && 
   13256              : #line 8262 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13257              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13258              :         return -1;
   13259              :       return 4723; /* *avx512fp16_fixuns_truncv4di2_load_mask */
   13260              : 
   13261              :     case 11:
   13262              :       if (!(
   13263              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13264              : (TARGET_AVX512F) && (
   13265              : #line 10029 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13266              : (TARGET_AVX512DQ && 1) && 
   13267              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13268              : (TARGET_AVX512VL))))
   13269              :         return -1;
   13270              :       return 5115; /* fixuns_truncv4dfv4di2_mask */
   13271              : 
   13272              :     case 12:
   13273              :       if (!(
   13274              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13275              : (TARGET_AVX512F) && (
   13276              : #line 10072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13277              : (TARGET_AVX512DQ && 1) && 
   13278              : #line 620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13279              : (TARGET_AVX512VL))))
   13280              :         return -1;
   13281              :       return 5159; /* fixuns_truncv4sfv4di2_mask */
   13282              : 
   13283              :     case 13:
   13284              :       if (!(
   13285              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13286              : (TARGET_AVX512F) && 
   13287              : #line 8312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13288              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13289              :         return -1;
   13290              :       return 4735; /* *avx512fp16_fixuns_truncv2di2_load_mask */
   13291              : 
   13292              :     case 14:
   13293              :       if (!(
   13294              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13295              : (TARGET_AVX512F) && (
   13296              : #line 10029 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13297              : (TARGET_AVX512DQ && 1) && 
   13298              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13299              : (TARGET_AVX512VL))))
   13300              :         return -1;
   13301              :       return 5119; /* fixuns_truncv2dfv2di2_mask */
   13302              : 
   13303              :     case 15:
   13304              :       if (!(
   13305              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13306              : (TARGET_AVX512F) && 
   13307              : #line 8252 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13308              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13309              :         return -1;
   13310              :       return 4711; /* avx512fp16_fixuns_truncv4si2_mask */
   13311              : 
   13312              :     case 16:
   13313              :       if (!(
   13314              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13315              : (TARGET_AVX512F) && 
   13316              : #line 8252 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13317              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13318              :         return -1;
   13319              :       return 4715; /* avx512fp16_fixuns_truncv4di2_mask */
   13320              : 
   13321              :     case 17:
   13322              :       if (!(
   13323              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13324              : (TARGET_AVX512F) && 
   13325              : #line 8302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13326              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   13327              :         return -1;
   13328              :       return 4731; /* avx512fp16_fixuns_truncv2di2_mask */
   13329              : 
   13330              :     case 18:
   13331              :       if (!(
   13332              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13333              : (TARGET_AVX512F) && 
   13334              : #line 10095 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13335              : (TARGET_AVX512DQ && TARGET_AVX512VL)))
   13336              :         return -1;
   13337              :       return 5167; /* avx512dq_fixuns_truncv2sfv2di2_mask */
   13338              : 
   13339              :     default:
   13340              :       return -1;
   13341              :     }
   13342              : }
   13343              : 
   13344              :  int
   13345              : recog_216 (rtx x1 ATTRIBUTE_UNUSED,
   13346              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13347              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13348              : {
   13349              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13350              :   rtx x2, x3;
   13351              :   int res ATTRIBUTE_UNUSED;
   13352              :   x2 = XEXP (x1, 1);
   13353              :   x3 = XVECEXP (x2, 0, 0);
   13354              :   operands[1] = x3;
   13355              :   switch (GET_MODE (operands[0]))
   13356              :     {
   13357              :     case E_V16SFmode:
   13358              :       if (!memory_operand (operands[0], E_V16SFmode)
   13359              :           || GET_MODE (x2) != E_V16SFmode
   13360              :           || !register_operand (operands[1], E_V16SFmode)
   13361              :           || !(
   13362              : #line 2045 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13363              : (TARGET_SSE) && 
   13364              : #line 382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13365              : (TARGET_AVX512F)))
   13366              :         return -1;
   13367              :       return 2626; /* avx512f_movntv16sf */
   13368              : 
   13369              :     case E_V8SFmode:
   13370              :       if (!memory_operand (operands[0], E_V8SFmode)
   13371              :           || GET_MODE (x2) != E_V8SFmode
   13372              :           || !register_operand (operands[1], E_V8SFmode)
   13373              :           || !(
   13374              : #line 2045 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13375              : (TARGET_SSE) && 
   13376              : #line 382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13377              : (TARGET_AVX)))
   13378              :         return -1;
   13379              :       return 2627; /* avx_movntv8sf */
   13380              : 
   13381              :     case E_V4SFmode:
   13382              :       if (!memory_operand (operands[0], E_V4SFmode)
   13383              :           || GET_MODE (x2) != E_V4SFmode
   13384              :           || !register_operand (operands[1], E_V4SFmode)
   13385              :           || !
   13386              : #line 2045 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13387              : (TARGET_SSE))
   13388              :         return -1;
   13389              :       return 2628; /* sse_movntv4sf */
   13390              : 
   13391              :     case E_V8DFmode:
   13392              :       if (!memory_operand (operands[0], E_V8DFmode)
   13393              :           || GET_MODE (x2) != E_V8DFmode
   13394              :           || !register_operand (operands[1], E_V8DFmode)
   13395              :           || !(
   13396              : #line 2045 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13397              : (TARGET_SSE) && 
   13398              : #line 383 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13399              : (TARGET_AVX512F)))
   13400              :         return -1;
   13401              :       return 2629; /* avx512f_movntv8df */
   13402              : 
   13403              :     case E_V4DFmode:
   13404              :       if (!memory_operand (operands[0], E_V4DFmode)
   13405              :           || GET_MODE (x2) != E_V4DFmode
   13406              :           || !register_operand (operands[1], E_V4DFmode)
   13407              :           || !(
   13408              : #line 2045 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13409              : (TARGET_SSE) && 
   13410              : #line 383 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13411              : (TARGET_AVX)))
   13412              :         return -1;
   13413              :       return 2630; /* avx_movntv4df */
   13414              : 
   13415              :     case E_V2DFmode:
   13416              :       if (!memory_operand (operands[0], E_V2DFmode)
   13417              :           || GET_MODE (x2) != E_V2DFmode
   13418              :           || !register_operand (operands[1], E_V2DFmode)
   13419              :           || !(
   13420              : #line 2045 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13421              : (TARGET_SSE) && 
   13422              : #line 384 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13423              : (TARGET_SSE2)))
   13424              :         return -1;
   13425              :       return 2631; /* sse2_movntv2df */
   13426              : 
   13427              :     case E_V8DImode:
   13428              :       if (!memory_operand (operands[0], E_V8DImode)
   13429              :           || GET_MODE (x2) != E_V8DImode
   13430              :           || !register_operand (operands[1], E_V8DImode)
   13431              :           || !(
   13432              : #line 2055 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13433              : (TARGET_SSE2) && 
   13434              : #line 611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13435              : (TARGET_AVX512F)))
   13436              :         return -1;
   13437              :       return 2632; /* avx512f_movntv8di */
   13438              : 
   13439              :     case E_V4DImode:
   13440              :       if (!memory_operand (operands[0], E_V4DImode)
   13441              :           || GET_MODE (x2) != E_V4DImode
   13442              :           || !register_operand (operands[1], E_V4DImode)
   13443              :           || !(
   13444              : #line 2055 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13445              : (TARGET_SSE2) && 
   13446              : #line 611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13447              : (TARGET_AVX)))
   13448              :         return -1;
   13449              :       return 2633; /* avx_movntv4di */
   13450              : 
   13451              :     case E_V2DImode:
   13452              :       if (!memory_operand (operands[0], E_V2DImode)
   13453              :           || GET_MODE (x2) != E_V2DImode
   13454              :           || !register_operand (operands[1], E_V2DImode)
   13455              :           || !
   13456              : #line 2055 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13457              : (TARGET_SSE2))
   13458              :         return -1;
   13459              :       return 2634; /* sse2_movntv2di */
   13460              : 
   13461              :     default:
   13462              :       return -1;
   13463              :     }
   13464              : }
   13465              : 
   13466              :  int
   13467              : recog_223 (rtx x1 ATTRIBUTE_UNUSED,
   13468              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13469              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13470              : {
   13471              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13472              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   13473              :   int res ATTRIBUTE_UNUSED;
   13474              :   x2 = XEXP (x1, 1);
   13475              :   x3 = XVECEXP (x2, 0, 1);
   13476              :   if (!const_4_or_8_to_11_operand (x3, E_SImode))
   13477              :     return -1;
   13478              :   x4 = XVECEXP (x2, 0, 0);
   13479              :   x5 = XEXP (x4, 0);
   13480              :   x6 = XVECEXP (x5, 0, 2);
   13481              :   switch (GET_CODE (x6))
   13482              :     {
   13483              :     case REG:
   13484              :     case SUBREG:
   13485              :     case MEM:
   13486              :       operands[3] = x6;
   13487              :       x7 = XEXP (x4, 1);
   13488              :       switch (GET_CODE (x7))
   13489              :         {
   13490              :         case CONST_INT:
   13491              :         case CONST_DOUBLE:
   13492              :         case CONST_VECTOR:
   13493              :           operands[4] = x7;
   13494              :           x8 = XEXP (x4, 2);
   13495              :           operands[5] = x8;
   13496              :           operands[6] = x3;
   13497              :           switch (GET_MODE (operands[0]))
   13498              :             {
   13499              :             case E_V32HFmode:
   13500              :               if (pattern1663 (x2, 
   13501              : E_SImode, 
   13502              : E_V32HFmode) != 0
   13503              :                   || !(
   13504              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13505              : (TARGET_AVX512F) && (
   13506              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13507              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   13508              :                                                               || V32HFmode == V8DFmode
   13509              :                                                               || V32HFmode == V8DImode
   13510              :                                                               || V32HFmode == V16SImode
   13511              :                                                               || V32HFmode == V32HFmode)) && 
   13512              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13513              : (TARGET_AVX512FP16))))
   13514              :                 return -1;
   13515              :               return 4137; /* fma_fmaddsub_v32hf_maskz_1_round */
   13516              : 
   13517              :             case E_V16SFmode:
   13518              :               if (pattern1663 (x2, 
   13519              : E_HImode, 
   13520              : E_V16SFmode) != 0
   13521              :                   || !(
   13522              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13523              : (TARGET_AVX512F) && 
   13524              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13525              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   13526              :                                                               || V16SFmode == V8DFmode
   13527              :                                                               || V16SFmode == V8DImode
   13528              :                                                               || V16SFmode == V16SImode
   13529              :                                                               || V16SFmode == V32HFmode))))
   13530              :                 return -1;
   13531              :               return 4145; /* fma_fmaddsub_v16sf_maskz_1_round */
   13532              : 
   13533              :             case E_V8DFmode:
   13534              :               if (pattern1663 (x2, 
   13535              : E_QImode, 
   13536              : E_V8DFmode) != 0
   13537              :                   || !(
   13538              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13539              : (TARGET_AVX512F) && 
   13540              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13541              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   13542              :                                                               || V8DFmode == V8DFmode
   13543              :                                                               || V8DFmode == V8DImode
   13544              :                                                               || V8DFmode == V16SImode
   13545              :                                                               || V8DFmode == V32HFmode))))
   13546              :                 return -1;
   13547              :               return 4153; /* fma_fmaddsub_v8df_maskz_1_round */
   13548              : 
   13549              :             default:
   13550              :               return -1;
   13551              :             }
   13552              : 
   13553              :         case REG:
   13554              :         case SUBREG:
   13555              :         case MEM:
   13556              :           x8 = XEXP (x4, 2);
   13557              :           operands[4] = x8;
   13558              :           operands[5] = x3;
   13559              :           switch (GET_MODE (operands[0]))
   13560              :             {
   13561              :             case E_V32HFmode:
   13562              :               if (pattern1598 (x2, 
   13563              : E_V32HFmode, 
   13564              : E_SImode) != 0)
   13565              :                 return -1;
   13566              :               if (register_operand (operands[1], E_V32HFmode)
   13567              :                   && register_operand (operands[3], E_V32HFmode)
   13568              :                   && rtx_equal_p (x7, operands[1])
   13569              :                   && (
   13570              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13571              : (TARGET_AVX512F) && (
   13572              : #line 6787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13573              : (TARGET_AVX512F) && 
   13574              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13575              : (TARGET_AVX512FP16))))
   13576              :                 return 4159; /* avx512bw_fmaddsub_v32hf_mask_round */
   13577              :               if (!nonimmediate_operand (operands[1], E_V32HFmode)
   13578              :                   || !nonimmediate_operand (operands[3], E_V32HFmode)
   13579              :                   || !rtx_equal_p (x7, operands[3])
   13580              :                   || !(
   13581              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13582              : (TARGET_AVX512F) && (
   13583              : #line 6805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13584              : (TARGET_AVX512F) && 
   13585              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13586              : (TARGET_AVX512FP16))))
   13587              :                 return -1;
   13588              :               return 4177; /* avx512bw_fmaddsub_v32hf_mask3_round */
   13589              : 
   13590              :             case E_V16HFmode:
   13591              :               if (pattern1598 (x2, 
   13592              : E_V16HFmode, 
   13593              : E_HImode) != 0)
   13594              :                 return -1;
   13595              :               if (register_operand (operands[1], E_V16HFmode)
   13596              :                   && register_operand (operands[3], E_V16HFmode)
   13597              :                   && rtx_equal_p (x7, operands[1])
   13598              :                   && (
   13599              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13600              : (TARGET_AVX512F) && (
   13601              : #line 6787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13602              : (TARGET_AVX512F) && 
   13603              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13604              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13605              :                 return 4161; /* avx512vl_fmaddsub_v16hf_mask_round */
   13606              :               if (!nonimmediate_operand (operands[1], E_V16HFmode)
   13607              :                   || !nonimmediate_operand (operands[3], E_V16HFmode)
   13608              :                   || !rtx_equal_p (x7, operands[3])
   13609              :                   || !(
   13610              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13611              : (TARGET_AVX512F) && (
   13612              : #line 6805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13613              : (TARGET_AVX512F) && 
   13614              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13615              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13616              :                 return -1;
   13617              :               return 4179; /* avx512vl_fmaddsub_v16hf_mask3_round */
   13618              : 
   13619              :             case E_V8HFmode:
   13620              :               if (pattern1598 (x2, 
   13621              : E_V8HFmode, 
   13622              : E_QImode) != 0)
   13623              :                 return -1;
   13624              :               if (register_operand (operands[1], E_V8HFmode)
   13625              :                   && register_operand (operands[3], E_V8HFmode)
   13626              :                   && rtx_equal_p (x7, operands[1])
   13627              :                   && (
   13628              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13629              : (TARGET_AVX512F) && (
   13630              : #line 6787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13631              : (TARGET_AVX512F) && 
   13632              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13633              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13634              :                 return 4163; /* avx512fp16_fmaddsub_v8hf_mask_round */
   13635              :               if (!nonimmediate_operand (operands[1], E_V8HFmode)
   13636              :                   || !nonimmediate_operand (operands[3], E_V8HFmode)
   13637              :                   || !rtx_equal_p (x7, operands[3])
   13638              :                   || !(
   13639              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13640              : (TARGET_AVX512F) && (
   13641              : #line 6805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13642              : (TARGET_AVX512F) && 
   13643              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13644              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13645              :                 return -1;
   13646              :               return 4181; /* avx512fp16_fmaddsub_v8hf_mask3_round */
   13647              : 
   13648              :             case E_V16SFmode:
   13649              :               if (pattern1598 (x2, 
   13650              : E_V16SFmode, 
   13651              : E_HImode) != 0)
   13652              :                 return -1;
   13653              :               if (register_operand (operands[1], E_V16SFmode)
   13654              :                   && register_operand (operands[3], E_V16SFmode)
   13655              :                   && rtx_equal_p (x7, operands[1])
   13656              :                   && 
   13657              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13658              : (TARGET_AVX512F))
   13659              :                 return 4165; /* avx512f_fmaddsub_v16sf_mask_round */
   13660              :               if (!nonimmediate_operand (operands[1], E_V16SFmode)
   13661              :                   || !nonimmediate_operand (operands[3], E_V16SFmode)
   13662              :                   || !rtx_equal_p (x7, operands[3])
   13663              :                   || !
   13664              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13665              : (TARGET_AVX512F))
   13666              :                 return -1;
   13667              :               return 4183; /* avx512f_fmaddsub_v16sf_mask3_round */
   13668              : 
   13669              :             case E_V8SFmode:
   13670              :               if (pattern1598 (x2, 
   13671              : E_V8SFmode, 
   13672              : E_QImode) != 0)
   13673              :                 return -1;
   13674              :               if (register_operand (operands[1], E_V8SFmode)
   13675              :                   && register_operand (operands[3], E_V8SFmode)
   13676              :                   && rtx_equal_p (x7, operands[1])
   13677              :                   && (
   13678              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13679              : (TARGET_AVX512F) && (
   13680              : #line 6787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13681              : (TARGET_AVX512F) && 
   13682              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13683              : (TARGET_AVX512VL))))
   13684              :                 return 4167; /* avx512vl_fmaddsub_v8sf_mask_round */
   13685              :               if (!nonimmediate_operand (operands[1], E_V8SFmode)
   13686              :                   || !nonimmediate_operand (operands[3], E_V8SFmode)
   13687              :                   || !rtx_equal_p (x7, operands[3])
   13688              :                   || !(
   13689              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13690              : (TARGET_AVX512F) && (
   13691              : #line 6805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13692              : (TARGET_AVX512F) && 
   13693              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13694              : (TARGET_AVX512VL))))
   13695              :                 return -1;
   13696              :               return 4185; /* avx512vl_fmaddsub_v8sf_mask3_round */
   13697              : 
   13698              :             case E_V4SFmode:
   13699              :               if (pattern1598 (x2, 
   13700              : E_V4SFmode, 
   13701              : E_QImode) != 0)
   13702              :                 return -1;
   13703              :               if (register_operand (operands[1], E_V4SFmode)
   13704              :                   && register_operand (operands[3], E_V4SFmode)
   13705              :                   && rtx_equal_p (x7, operands[1])
   13706              :                   && (
   13707              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13708              : (TARGET_AVX512F) && (
   13709              : #line 6787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13710              : (TARGET_AVX512F) && 
   13711              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13712              : (TARGET_AVX512VL))))
   13713              :                 return 4169; /* avx512vl_fmaddsub_v4sf_mask_round */
   13714              :               if (!nonimmediate_operand (operands[1], E_V4SFmode)
   13715              :                   || !nonimmediate_operand (operands[3], E_V4SFmode)
   13716              :                   || !rtx_equal_p (x7, operands[3])
   13717              :                   || !(
   13718              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13719              : (TARGET_AVX512F) && (
   13720              : #line 6805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13721              : (TARGET_AVX512F) && 
   13722              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13723              : (TARGET_AVX512VL))))
   13724              :                 return -1;
   13725              :               return 4187; /* avx512vl_fmaddsub_v4sf_mask3_round */
   13726              : 
   13727              :             case E_V8DFmode:
   13728              :               if (pattern1598 (x2, 
   13729              : E_V8DFmode, 
   13730              : E_QImode) != 0)
   13731              :                 return -1;
   13732              :               if (register_operand (operands[1], E_V8DFmode)
   13733              :                   && register_operand (operands[3], E_V8DFmode)
   13734              :                   && rtx_equal_p (x7, operands[1])
   13735              :                   && 
   13736              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13737              : (TARGET_AVX512F))
   13738              :                 return 4171; /* avx512f_fmaddsub_v8df_mask_round */
   13739              :               if (!nonimmediate_operand (operands[1], E_V8DFmode)
   13740              :                   || !nonimmediate_operand (operands[3], E_V8DFmode)
   13741              :                   || !rtx_equal_p (x7, operands[3])
   13742              :                   || !
   13743              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13744              : (TARGET_AVX512F))
   13745              :                 return -1;
   13746              :               return 4189; /* avx512f_fmaddsub_v8df_mask3_round */
   13747              : 
   13748              :             case E_V4DFmode:
   13749              :               if (pattern1598 (x2, 
   13750              : E_V4DFmode, 
   13751              : E_QImode) != 0)
   13752              :                 return -1;
   13753              :               if (register_operand (operands[1], E_V4DFmode)
   13754              :                   && register_operand (operands[3], E_V4DFmode)
   13755              :                   && rtx_equal_p (x7, operands[1])
   13756              :                   && (
   13757              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13758              : (TARGET_AVX512F) && (
   13759              : #line 6787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13760              : (TARGET_AVX512F) && 
   13761              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13762              : (TARGET_AVX512VL))))
   13763              :                 return 4173; /* avx512vl_fmaddsub_v4df_mask_round */
   13764              :               if (!nonimmediate_operand (operands[1], E_V4DFmode)
   13765              :                   || !nonimmediate_operand (operands[3], E_V4DFmode)
   13766              :                   || !rtx_equal_p (x7, operands[3])
   13767              :                   || !(
   13768              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13769              : (TARGET_AVX512F) && (
   13770              : #line 6805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13771              : (TARGET_AVX512F) && 
   13772              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13773              : (TARGET_AVX512VL))))
   13774              :                 return -1;
   13775              :               return 4191; /* avx512vl_fmaddsub_v4df_mask3_round */
   13776              : 
   13777              :             case E_V2DFmode:
   13778              :               if (pattern1598 (x2, 
   13779              : E_V2DFmode, 
   13780              : E_QImode) != 0)
   13781              :                 return -1;
   13782              :               if (register_operand (operands[1], E_V2DFmode)
   13783              :                   && register_operand (operands[3], E_V2DFmode)
   13784              :                   && rtx_equal_p (x7, operands[1])
   13785              :                   && (
   13786              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13787              : (TARGET_AVX512F) && (
   13788              : #line 6787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13789              : (TARGET_AVX512F) && 
   13790              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13791              : (TARGET_AVX512VL))))
   13792              :                 return 4175; /* avx512vl_fmaddsub_v2df_mask_round */
   13793              :               if (!nonimmediate_operand (operands[1], E_V2DFmode)
   13794              :                   || !nonimmediate_operand (operands[3], E_V2DFmode)
   13795              :                   || !rtx_equal_p (x7, operands[3])
   13796              :                   || !(
   13797              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13798              : (TARGET_AVX512F) && (
   13799              : #line 6805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13800              : (TARGET_AVX512F) && 
   13801              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13802              : (TARGET_AVX512VL))))
   13803              :                 return -1;
   13804              :               return 4193; /* avx512vl_fmaddsub_v2df_mask3_round */
   13805              : 
   13806              :             default:
   13807              :               return -1;
   13808              :             }
   13809              : 
   13810              :         default:
   13811              :           return -1;
   13812              :         }
   13813              : 
   13814              :     case NEG:
   13815              :       x9 = XEXP (x6, 0);
   13816              :       operands[3] = x9;
   13817              :       x7 = XEXP (x4, 1);
   13818              :       switch (GET_CODE (x7))
   13819              :         {
   13820              :         case CONST_INT:
   13821              :         case CONST_DOUBLE:
   13822              :         case CONST_VECTOR:
   13823              :           operands[4] = x7;
   13824              :           x8 = XEXP (x4, 2);
   13825              :           operands[5] = x8;
   13826              :           operands[6] = x3;
   13827              :           switch (GET_MODE (operands[0]))
   13828              :             {
   13829              :             case E_V32HFmode:
   13830              :               if (pattern1664 (x2, 
   13831              : E_SImode, 
   13832              : E_V32HFmode) != 0
   13833              :                   || !(
   13834              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13835              : (TARGET_AVX512F) && (
   13836              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13837              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   13838              :                                                               || V32HFmode == V8DFmode
   13839              :                                                               || V32HFmode == V8DImode
   13840              :                                                               || V32HFmode == V16SImode
   13841              :                                                               || V32HFmode == V32HFmode)) && 
   13842              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13843              : (TARGET_AVX512FP16))))
   13844              :                 return -1;
   13845              :               return 4201; /* fma_fmsubadd_v32hf_maskz_1_round */
   13846              : 
   13847              :             case E_V16SFmode:
   13848              :               if (pattern1664 (x2, 
   13849              : E_HImode, 
   13850              : E_V16SFmode) != 0
   13851              :                   || !(
   13852              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13853              : (TARGET_AVX512F) && 
   13854              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13855              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   13856              :                                                               || V16SFmode == V8DFmode
   13857              :                                                               || V16SFmode == V8DImode
   13858              :                                                               || V16SFmode == V16SImode
   13859              :                                                               || V16SFmode == V32HFmode))))
   13860              :                 return -1;
   13861              :               return 4209; /* fma_fmsubadd_v16sf_maskz_1_round */
   13862              : 
   13863              :             case E_V8DFmode:
   13864              :               if (pattern1664 (x2, 
   13865              : E_QImode, 
   13866              : E_V8DFmode) != 0
   13867              :                   || !(
   13868              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13869              : (TARGET_AVX512F) && 
   13870              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13871              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   13872              :                                                               || V8DFmode == V8DFmode
   13873              :                                                               || V8DFmode == V8DImode
   13874              :                                                               || V8DFmode == V16SImode
   13875              :                                                               || V8DFmode == V32HFmode))))
   13876              :                 return -1;
   13877              :               return 4217; /* fma_fmsubadd_v8df_maskz_1_round */
   13878              : 
   13879              :             default:
   13880              :               return -1;
   13881              :             }
   13882              : 
   13883              :         case REG:
   13884              :         case SUBREG:
   13885              :         case MEM:
   13886              :           x8 = XEXP (x4, 2);
   13887              :           operands[4] = x8;
   13888              :           operands[5] = x3;
   13889              :           switch (GET_MODE (operands[0]))
   13890              :             {
   13891              :             case E_V32HFmode:
   13892              :               if (pattern1599 (x2, 
   13893              : E_V32HFmode, 
   13894              : E_SImode) != 0)
   13895              :                 return -1;
   13896              :               if (register_operand (operands[3], E_V32HFmode)
   13897              :                   && rtx_equal_p (x7, operands[1])
   13898              :                   && (
   13899              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13900              : (TARGET_AVX512F) && (
   13901              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13902              : (TARGET_AVX512F) && 
   13903              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13904              : (TARGET_AVX512FP16))))
   13905              :                 return 4223; /* avx512bw_fmsubadd_v32hf_mask_round */
   13906              :               if (!nonimmediate_operand (operands[3], E_V32HFmode)
   13907              :                   || !rtx_equal_p (x7, operands[3])
   13908              :                   || !(
   13909              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13910              : (TARGET_AVX512F) && (
   13911              : #line 6877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13912              : (TARGET_AVX512F) && 
   13913              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13914              : (TARGET_AVX512FP16))))
   13915              :                 return -1;
   13916              :               return 4241; /* avx512bw_fmsubadd_v32hf_mask3_round */
   13917              : 
   13918              :             case E_V16HFmode:
   13919              :               if (pattern1599 (x2, 
   13920              : E_V16HFmode, 
   13921              : E_HImode) != 0)
   13922              :                 return -1;
   13923              :               if (register_operand (operands[3], E_V16HFmode)
   13924              :                   && rtx_equal_p (x7, operands[1])
   13925              :                   && (
   13926              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13927              : (TARGET_AVX512F) && (
   13928              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13929              : (TARGET_AVX512F) && 
   13930              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13931              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13932              :                 return 4225; /* avx512vl_fmsubadd_v16hf_mask_round */
   13933              :               if (!nonimmediate_operand (operands[3], E_V16HFmode)
   13934              :                   || !rtx_equal_p (x7, operands[3])
   13935              :                   || !(
   13936              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13937              : (TARGET_AVX512F) && (
   13938              : #line 6877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13939              : (TARGET_AVX512F) && 
   13940              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13941              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13942              :                 return -1;
   13943              :               return 4243; /* avx512vl_fmsubadd_v16hf_mask3_round */
   13944              : 
   13945              :             case E_V8HFmode:
   13946              :               if (pattern1599 (x2, 
   13947              : E_V8HFmode, 
   13948              : E_QImode) != 0)
   13949              :                 return -1;
   13950              :               if (register_operand (operands[3], E_V8HFmode)
   13951              :                   && rtx_equal_p (x7, operands[1])
   13952              :                   && (
   13953              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13954              : (TARGET_AVX512F) && (
   13955              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13956              : (TARGET_AVX512F) && 
   13957              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13958              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13959              :                 return 4227; /* avx512fp16_fmsubadd_v8hf_mask_round */
   13960              :               if (!nonimmediate_operand (operands[3], E_V8HFmode)
   13961              :                   || !rtx_equal_p (x7, operands[3])
   13962              :                   || !(
   13963              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13964              : (TARGET_AVX512F) && (
   13965              : #line 6877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13966              : (TARGET_AVX512F) && 
   13967              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13968              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13969              :                 return -1;
   13970              :               return 4245; /* avx512fp16_fmsubadd_v8hf_mask3_round */
   13971              : 
   13972              :             case E_V16SFmode:
   13973              :               if (pattern1599 (x2, 
   13974              : E_V16SFmode, 
   13975              : E_HImode) != 0)
   13976              :                 return -1;
   13977              :               if (register_operand (operands[3], E_V16SFmode)
   13978              :                   && rtx_equal_p (x7, operands[1])
   13979              :                   && 
   13980              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13981              : (TARGET_AVX512F))
   13982              :                 return 4229; /* avx512f_fmsubadd_v16sf_mask_round */
   13983              :               if (!nonimmediate_operand (operands[3], E_V16SFmode)
   13984              :                   || !rtx_equal_p (x7, operands[3])
   13985              :                   || !
   13986              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13987              : (TARGET_AVX512F))
   13988              :                 return -1;
   13989              :               return 4247; /* avx512f_fmsubadd_v16sf_mask3_round */
   13990              : 
   13991              :             case E_V8SFmode:
   13992              :               if (pattern1599 (x2, 
   13993              : E_V8SFmode, 
   13994              : E_QImode) != 0)
   13995              :                 return -1;
   13996              :               if (register_operand (operands[3], E_V8SFmode)
   13997              :                   && rtx_equal_p (x7, operands[1])
   13998              :                   && (
   13999              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14000              : (TARGET_AVX512F) && (
   14001              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14002              : (TARGET_AVX512F) && 
   14003              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14004              : (TARGET_AVX512VL))))
   14005              :                 return 4231; /* avx512vl_fmsubadd_v8sf_mask_round */
   14006              :               if (!nonimmediate_operand (operands[3], E_V8SFmode)
   14007              :                   || !rtx_equal_p (x7, operands[3])
   14008              :                   || !(
   14009              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14010              : (TARGET_AVX512F) && (
   14011              : #line 6877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14012              : (TARGET_AVX512F) && 
   14013              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14014              : (TARGET_AVX512VL))))
   14015              :                 return -1;
   14016              :               return 4249; /* avx512vl_fmsubadd_v8sf_mask3_round */
   14017              : 
   14018              :             case E_V4SFmode:
   14019              :               if (pattern1599 (x2, 
   14020              : E_V4SFmode, 
   14021              : E_QImode) != 0)
   14022              :                 return -1;
   14023              :               if (register_operand (operands[3], E_V4SFmode)
   14024              :                   && rtx_equal_p (x7, operands[1])
   14025              :                   && (
   14026              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14027              : (TARGET_AVX512F) && (
   14028              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14029              : (TARGET_AVX512F) && 
   14030              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14031              : (TARGET_AVX512VL))))
   14032              :                 return 4233; /* avx512vl_fmsubadd_v4sf_mask_round */
   14033              :               if (!nonimmediate_operand (operands[3], E_V4SFmode)
   14034              :                   || !rtx_equal_p (x7, operands[3])
   14035              :                   || !(
   14036              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14037              : (TARGET_AVX512F) && (
   14038              : #line 6877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14039              : (TARGET_AVX512F) && 
   14040              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14041              : (TARGET_AVX512VL))))
   14042              :                 return -1;
   14043              :               return 4251; /* avx512vl_fmsubadd_v4sf_mask3_round */
   14044              : 
   14045              :             case E_V8DFmode:
   14046              :               if (pattern1599 (x2, 
   14047              : E_V8DFmode, 
   14048              : E_QImode) != 0)
   14049              :                 return -1;
   14050              :               if (register_operand (operands[3], E_V8DFmode)
   14051              :                   && rtx_equal_p (x7, operands[1])
   14052              :                   && 
   14053              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14054              : (TARGET_AVX512F))
   14055              :                 return 4235; /* avx512f_fmsubadd_v8df_mask_round */
   14056              :               if (!nonimmediate_operand (operands[3], E_V8DFmode)
   14057              :                   || !rtx_equal_p (x7, operands[3])
   14058              :                   || !
   14059              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14060              : (TARGET_AVX512F))
   14061              :                 return -1;
   14062              :               return 4253; /* avx512f_fmsubadd_v8df_mask3_round */
   14063              : 
   14064              :             case E_V4DFmode:
   14065              :               if (pattern1599 (x2, 
   14066              : E_V4DFmode, 
   14067              : E_QImode) != 0)
   14068              :                 return -1;
   14069              :               if (register_operand (operands[3], E_V4DFmode)
   14070              :                   && rtx_equal_p (x7, operands[1])
   14071              :                   && (
   14072              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14073              : (TARGET_AVX512F) && (
   14074              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14075              : (TARGET_AVX512F) && 
   14076              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14077              : (TARGET_AVX512VL))))
   14078              :                 return 4237; /* avx512vl_fmsubadd_v4df_mask_round */
   14079              :               if (!nonimmediate_operand (operands[3], E_V4DFmode)
   14080              :                   || !rtx_equal_p (x7, operands[3])
   14081              :                   || !(
   14082              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14083              : (TARGET_AVX512F) && (
   14084              : #line 6877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14085              : (TARGET_AVX512F) && 
   14086              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14087              : (TARGET_AVX512VL))))
   14088              :                 return -1;
   14089              :               return 4255; /* avx512vl_fmsubadd_v4df_mask3_round */
   14090              : 
   14091              :             case E_V2DFmode:
   14092              :               if (pattern1599 (x2, 
   14093              : E_V2DFmode, 
   14094              : E_QImode) != 0)
   14095              :                 return -1;
   14096              :               if (register_operand (operands[3], E_V2DFmode)
   14097              :                   && rtx_equal_p (x7, operands[1])
   14098              :                   && (
   14099              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14100              : (TARGET_AVX512F) && (
   14101              : #line 6858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14102              : (TARGET_AVX512F) && 
   14103              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14104              : (TARGET_AVX512VL))))
   14105              :                 return 4239; /* avx512vl_fmsubadd_v2df_mask_round */
   14106              :               if (!nonimmediate_operand (operands[3], E_V2DFmode)
   14107              :                   || !rtx_equal_p (x7, operands[3])
   14108              :                   || !(
   14109              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14110              : (TARGET_AVX512F) && (
   14111              : #line 6877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14112              : (TARGET_AVX512F) && 
   14113              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14114              : (TARGET_AVX512VL))))
   14115              :                 return -1;
   14116              :               return 4257; /* avx512vl_fmsubadd_v2df_mask3_round */
   14117              : 
   14118              :             default:
   14119              :               return -1;
   14120              :             }
   14121              : 
   14122              :         default:
   14123              :           return -1;
   14124              :         }
   14125              : 
   14126              :     default:
   14127              :       return -1;
   14128              :     }
   14129              : }
   14130              : 
   14131              :  int
   14132              : recog_236 (rtx x1 ATTRIBUTE_UNUSED,
   14133              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   14134              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   14135              : {
   14136              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   14137              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   14138              :   rtx x10;
   14139              :   int res ATTRIBUTE_UNUSED;
   14140              :   if (pnum_clobbers == NULL)
   14141              :     return -1;
   14142              :   x2 = XEXP (x1, 0);
   14143              :   if (GET_CODE (x2) != MEM)
   14144              :     return -1;
   14145              :   operands[5] = x2;
   14146              :   x3 = XEXP (x2, 0);
   14147              :   if (GET_CODE (x3) != UNSPEC
   14148              :       || XVECLEN (x3, 0) != 4
   14149              :       || XINT (x3, 1) != 155)
   14150              :     return -1;
   14151              :   x4 = XVECEXP (x3, 0, 0);
   14152              :   operands[0] = x4;
   14153              :   x5 = XVECEXP (x3, 0, 1);
   14154              :   operands[2] = x5;
   14155              :   x6 = XVECEXP (x3, 0, 2);
   14156              :   operands[4] = x6;
   14157              :   if (!const1248_operand (operands[4], E_SImode))
   14158              :     return -1;
   14159              :   x7 = XVECEXP (x3, 0, 3);
   14160              :   operands[6] = x7;
   14161              :   x8 = XEXP (x1, 1);
   14162              :   x9 = XVECEXP (x8, 0, 1);
   14163              :   operands[3] = x9;
   14164              :   x10 = XVECEXP (x8, 0, 0);
   14165              :   if (!rtx_equal_p (x10, operands[6]))
   14166              :     return -1;
   14167              :   switch (GET_MODE (operands[5]))
   14168              :     {
   14169              :     case E_V16SImode:
   14170              :       if (!vsib_mem_operator (operands[5], E_V16SImode)
   14171              :           || GET_MODE (x8) != E_V16SImode)
   14172              :         return -1;
   14173              :       switch (GET_MODE (x3))
   14174              :         {
   14175              :         case E_SImode:
   14176              :           switch (pattern1720 (
   14177              : E_SImode))
   14178              :             {
   14179              :             case 0:
   14180              :               if (!(
   14181              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14182              : (TARGET_AVX512F) && 
   14183              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14184              : (Pmode == SImode)))
   14185              :                 return -1;
   14186              :               *pnum_clobbers = 1;
   14187              :               return 9912; /* *avx512f_scattersiv16si */
   14188              : 
   14189              :             case 1:
   14190              :               if (!(
   14191              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14192              : (TARGET_AVX512F) && 
   14193              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14194              : (Pmode == SImode)))
   14195              :                 return -1;
   14196              :               *pnum_clobbers = 1;
   14197              :               return 9936; /* *avx512f_scatterdiv16si */
   14198              : 
   14199              :             default:
   14200              :               return -1;
   14201              :             }
   14202              : 
   14203              :         case E_DImode:
   14204              :           switch (pattern1720 (
   14205              : E_DImode))
   14206              :             {
   14207              :             case 0:
   14208              :               if (!(
   14209              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14210              : (TARGET_AVX512F) && 
   14211              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14212              : (Pmode == DImode)))
   14213              :                 return -1;
   14214              :               *pnum_clobbers = 1;
   14215              :               return 9924; /* *avx512f_scattersiv16si */
   14216              : 
   14217              :             case 1:
   14218              :               if (!(
   14219              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14220              : (TARGET_AVX512F) && 
   14221              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14222              : (Pmode == DImode)))
   14223              :                 return -1;
   14224              :               *pnum_clobbers = 1;
   14225              :               return 9948; /* *avx512f_scatterdiv16si */
   14226              : 
   14227              :             default:
   14228              :               return -1;
   14229              :             }
   14230              : 
   14231              :         default:
   14232              :           return -1;
   14233              :         }
   14234              : 
   14235              :     case E_V16SFmode:
   14236              :       if (!vsib_mem_operator (operands[5], E_V16SFmode)
   14237              :           || GET_MODE (x8) != E_V16SFmode)
   14238              :         return -1;
   14239              :       switch (GET_MODE (x3))
   14240              :         {
   14241              :         case E_SImode:
   14242              :           switch (pattern1721 (
   14243              : E_SImode))
   14244              :             {
   14245              :             case 0:
   14246              :               if (!(
   14247              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14248              : (TARGET_AVX512F) && 
   14249              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14250              : (Pmode == SImode)))
   14251              :                 return -1;
   14252              :               *pnum_clobbers = 1;
   14253              :               return 9913; /* *avx512f_scattersiv16sf */
   14254              : 
   14255              :             case 1:
   14256              :               if (!(
   14257              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14258              : (TARGET_AVX512F) && 
   14259              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14260              : (Pmode == SImode)))
   14261              :                 return -1;
   14262              :               *pnum_clobbers = 1;
   14263              :               return 9937; /* *avx512f_scatterdiv16sf */
   14264              : 
   14265              :             default:
   14266              :               return -1;
   14267              :             }
   14268              : 
   14269              :         case E_DImode:
   14270              :           switch (pattern1721 (
   14271              : E_DImode))
   14272              :             {
   14273              :             case 0:
   14274              :               if (!(
   14275              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14276              : (TARGET_AVX512F) && 
   14277              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14278              : (Pmode == DImode)))
   14279              :                 return -1;
   14280              :               *pnum_clobbers = 1;
   14281              :               return 9925; /* *avx512f_scattersiv16sf */
   14282              : 
   14283              :             case 1:
   14284              :               if (!(
   14285              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14286              : (TARGET_AVX512F) && 
   14287              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14288              : (Pmode == DImode)))
   14289              :                 return -1;
   14290              :               *pnum_clobbers = 1;
   14291              :               return 9949; /* *avx512f_scatterdiv16sf */
   14292              : 
   14293              :             default:
   14294              :               return -1;
   14295              :             }
   14296              : 
   14297              :         default:
   14298              :           return -1;
   14299              :         }
   14300              : 
   14301              :     case E_V8DImode:
   14302              :       switch (pattern1615 (x1, 
   14303              : E_V8DImode))
   14304              :         {
   14305              :         case 0:
   14306              :           if (!(
   14307              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14308              : (TARGET_AVX512F) && 
   14309              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14310              : (Pmode == SImode)))
   14311              :             return -1;
   14312              :           *pnum_clobbers = 1;
   14313              :           return 9914; /* *avx512f_scattersiv8di */
   14314              : 
   14315              :         case 1:
   14316              :           if (!(
   14317              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14318              : (TARGET_AVX512F) && 
   14319              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14320              : (Pmode == SImode)))
   14321              :             return -1;
   14322              :           *pnum_clobbers = 1;
   14323              :           return 9938; /* *avx512f_scatterdiv8di */
   14324              : 
   14325              :         case 2:
   14326              :           if (!(
   14327              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14328              : (TARGET_AVX512F) && 
   14329              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14330              : (Pmode == DImode)))
   14331              :             return -1;
   14332              :           *pnum_clobbers = 1;
   14333              :           return 9926; /* *avx512f_scattersiv8di */
   14334              : 
   14335              :         case 3:
   14336              :           if (!(
   14337              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14338              : (TARGET_AVX512F) && 
   14339              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14340              : (Pmode == DImode)))
   14341              :             return -1;
   14342              :           *pnum_clobbers = 1;
   14343              :           return 9950; /* *avx512f_scatterdiv8di */
   14344              : 
   14345              :         default:
   14346              :           return -1;
   14347              :         }
   14348              : 
   14349              :     case E_V8DFmode:
   14350              :       switch (pattern1615 (x1, 
   14351              : E_V8DFmode))
   14352              :         {
   14353              :         case 0:
   14354              :           if (!(
   14355              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14356              : (TARGET_AVX512F) && 
   14357              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14358              : (Pmode == SImode)))
   14359              :             return -1;
   14360              :           *pnum_clobbers = 1;
   14361              :           return 9915; /* *avx512f_scattersiv8df */
   14362              : 
   14363              :         case 1:
   14364              :           if (!(
   14365              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14366              : (TARGET_AVX512F) && 
   14367              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14368              : (Pmode == SImode)))
   14369              :             return -1;
   14370              :           *pnum_clobbers = 1;
   14371              :           return 9939; /* *avx512f_scatterdiv8df */
   14372              : 
   14373              :         case 2:
   14374              :           if (!(
   14375              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14376              : (TARGET_AVX512F) && 
   14377              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14378              : (Pmode == DImode)))
   14379              :             return -1;
   14380              :           *pnum_clobbers = 1;
   14381              :           return 9927; /* *avx512f_scattersiv8df */
   14382              : 
   14383              :         case 3:
   14384              :           if (!(
   14385              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14386              : (TARGET_AVX512F) && 
   14387              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14388              : (Pmode == DImode)))
   14389              :             return -1;
   14390              :           *pnum_clobbers = 1;
   14391              :           return 9951; /* *avx512f_scatterdiv8df */
   14392              : 
   14393              :         default:
   14394              :           return -1;
   14395              :         }
   14396              : 
   14397              :     case E_V8SImode:
   14398              :       switch (pattern1616 (x1, 
   14399              : E_V8SImode))
   14400              :         {
   14401              :         case 0:
   14402              :           switch (pattern1759 (
   14403              : E_SImode))
   14404              :             {
   14405              :             case 0:
   14406              :               if (!(
   14407              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14408              : (TARGET_AVX512F) && ((((
   14409              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14410              : (TARGET_AVX512VL) && 
   14411              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14412              : (Pmode == SImode)) && 
   14413              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14414              : (Pmode == SImode)) && 
   14415              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14416              : (TARGET_AVX512VL)) && 
   14417              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14418              : (TARGET_AVX512VL))))
   14419              :                 return -1;
   14420              :               *pnum_clobbers = 1;
   14421              :               return 9916; /* *avx512f_scattersiv8si */
   14422              : 
   14423              :             case 1:
   14424              :               if (!(
   14425              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14426              : (TARGET_AVX512F) && (((
   14427              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14428              : (TARGET_AVX512VL) && 
   14429              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14430              : (Pmode == SImode)) && 
   14431              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14432              : (Pmode == SImode)) && 
   14433              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14434              : (TARGET_AVX512VL))))
   14435              :                 return -1;
   14436              :               *pnum_clobbers = 1;
   14437              :               return 9940; /* *avx512f_scatterdiv8si */
   14438              : 
   14439              :             default:
   14440              :               return -1;
   14441              :             }
   14442              : 
   14443              :         case 1:
   14444              :           switch (pattern1759 (
   14445              : E_DImode))
   14446              :             {
   14447              :             case 0:
   14448              :               if (!(
   14449              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14450              : (TARGET_AVX512F) && ((((
   14451              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14452              : (TARGET_AVX512VL) && 
   14453              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14454              : (Pmode == DImode)) && 
   14455              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14456              : (Pmode == DImode)) && 
   14457              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14458              : (TARGET_AVX512VL)) && 
   14459              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14460              : (TARGET_AVX512VL))))
   14461              :                 return -1;
   14462              :               *pnum_clobbers = 1;
   14463              :               return 9928; /* *avx512f_scattersiv8si */
   14464              : 
   14465              :             case 1:
   14466              :               if (!(
   14467              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14468              : (TARGET_AVX512F) && (((
   14469              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14470              : (TARGET_AVX512VL) && 
   14471              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14472              : (Pmode == DImode)) && 
   14473              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14474              : (Pmode == DImode)) && 
   14475              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14476              : (TARGET_AVX512VL))))
   14477              :                 return -1;
   14478              :               *pnum_clobbers = 1;
   14479              :               return 9952; /* *avx512f_scatterdiv8si */
   14480              : 
   14481              :             default:
   14482              :               return -1;
   14483              :             }
   14484              : 
   14485              :         default:
   14486              :           return -1;
   14487              :         }
   14488              : 
   14489              :     case E_V8SFmode:
   14490              :       switch (pattern1616 (x1, 
   14491              : E_V8SFmode))
   14492              :         {
   14493              :         case 0:
   14494              :           switch (pattern1760 (
   14495              : E_SImode))
   14496              :             {
   14497              :             case 0:
   14498              :               if (!(
   14499              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14500              : (TARGET_AVX512F) && ((((
   14501              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14502              : (TARGET_AVX512VL) && 
   14503              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14504              : (Pmode == SImode)) && 
   14505              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14506              : (Pmode == SImode)) && 
   14507              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14508              : (TARGET_AVX512VL)) && 
   14509              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14510              : (TARGET_AVX512VL))))
   14511              :                 return -1;
   14512              :               *pnum_clobbers = 1;
   14513              :               return 9917; /* *avx512f_scattersiv8sf */
   14514              : 
   14515              :             case 1:
   14516              :               if (!(
   14517              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14518              : (TARGET_AVX512F) && (((
   14519              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14520              : (TARGET_AVX512VL) && 
   14521              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14522              : (Pmode == SImode)) && 
   14523              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14524              : (Pmode == SImode)) && 
   14525              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14526              : (TARGET_AVX512VL))))
   14527              :                 return -1;
   14528              :               *pnum_clobbers = 1;
   14529              :               return 9941; /* *avx512f_scatterdiv8sf */
   14530              : 
   14531              :             default:
   14532              :               return -1;
   14533              :             }
   14534              : 
   14535              :         case 1:
   14536              :           switch (pattern1760 (
   14537              : E_DImode))
   14538              :             {
   14539              :             case 0:
   14540              :               if (!(
   14541              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14542              : (TARGET_AVX512F) && ((((
   14543              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14544              : (TARGET_AVX512VL) && 
   14545              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14546              : (Pmode == DImode)) && 
   14547              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14548              : (Pmode == DImode)) && 
   14549              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14550              : (TARGET_AVX512VL)) && 
   14551              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14552              : (TARGET_AVX512VL))))
   14553              :                 return -1;
   14554              :               *pnum_clobbers = 1;
   14555              :               return 9929; /* *avx512f_scattersiv8sf */
   14556              : 
   14557              :             case 1:
   14558              :               if (!(
   14559              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14560              : (TARGET_AVX512F) && (((
   14561              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14562              : (TARGET_AVX512VL) && 
   14563              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14564              : (Pmode == DImode)) && 
   14565              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14566              : (Pmode == DImode)) && 
   14567              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14568              : (TARGET_AVX512VL))))
   14569              :                 return -1;
   14570              :               *pnum_clobbers = 1;
   14571              :               return 9953; /* *avx512f_scatterdiv8sf */
   14572              : 
   14573              :             default:
   14574              :               return -1;
   14575              :             }
   14576              : 
   14577              :         default:
   14578              :           return -1;
   14579              :         }
   14580              : 
   14581              :     case E_V4DImode:
   14582              :       switch (pattern1618 (x1, 
   14583              : E_V4DImode))
   14584              :         {
   14585              :         case 0:
   14586              :           if (!(
   14587              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14588              : (TARGET_AVX512F) && ((((
   14589              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14590              : (TARGET_AVX512VL) && 
   14591              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14592              : (Pmode == SImode)) && 
   14593              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14594              : (Pmode == SImode)) && 
   14595              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14596              : (TARGET_AVX512VL)) && 
   14597              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14598              : (TARGET_AVX512VL))))
   14599              :             return -1;
   14600              :           *pnum_clobbers = 1;
   14601              :           return 9918; /* *avx512f_scattersiv4di */
   14602              : 
   14603              :         case 1:
   14604              :           if (!(
   14605              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14606              : (TARGET_AVX512F) && (((
   14607              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14608              : (TARGET_AVX512VL) && 
   14609              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14610              : (Pmode == SImode)) && 
   14611              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14612              : (Pmode == SImode)) && 
   14613              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14614              : (TARGET_AVX512VL))))
   14615              :             return -1;
   14616              :           *pnum_clobbers = 1;
   14617              :           return 9942; /* *avx512f_scatterdiv4di */
   14618              : 
   14619              :         case 2:
   14620              :           if (!(
   14621              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14622              : (TARGET_AVX512F) && ((((
   14623              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14624              : (TARGET_AVX512VL) && 
   14625              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14626              : (Pmode == DImode)) && 
   14627              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14628              : (Pmode == DImode)) && 
   14629              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14630              : (TARGET_AVX512VL)) && 
   14631              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14632              : (TARGET_AVX512VL))))
   14633              :             return -1;
   14634              :           *pnum_clobbers = 1;
   14635              :           return 9930; /* *avx512f_scattersiv4di */
   14636              : 
   14637              :         case 3:
   14638              :           if (!(
   14639              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14640              : (TARGET_AVX512F) && (((
   14641              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14642              : (TARGET_AVX512VL) && 
   14643              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14644              : (Pmode == DImode)) && 
   14645              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14646              : (Pmode == DImode)) && 
   14647              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14648              : (TARGET_AVX512VL))))
   14649              :             return -1;
   14650              :           *pnum_clobbers = 1;
   14651              :           return 9954; /* *avx512f_scatterdiv4di */
   14652              : 
   14653              :         default:
   14654              :           return -1;
   14655              :         }
   14656              : 
   14657              :     case E_V4DFmode:
   14658              :       switch (pattern1618 (x1, 
   14659              : E_V4DFmode))
   14660              :         {
   14661              :         case 0:
   14662              :           if (!(
   14663              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14664              : (TARGET_AVX512F) && ((((
   14665              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14666              : (TARGET_AVX512VL) && 
   14667              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14668              : (Pmode == SImode)) && 
   14669              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14670              : (Pmode == SImode)) && 
   14671              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14672              : (TARGET_AVX512VL)) && 
   14673              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14674              : (TARGET_AVX512VL))))
   14675              :             return -1;
   14676              :           *pnum_clobbers = 1;
   14677              :           return 9919; /* *avx512f_scattersiv4df */
   14678              : 
   14679              :         case 1:
   14680              :           if (!(
   14681              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14682              : (TARGET_AVX512F) && (((
   14683              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14684              : (TARGET_AVX512VL) && 
   14685              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14686              : (Pmode == SImode)) && 
   14687              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14688              : (Pmode == SImode)) && 
   14689              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14690              : (TARGET_AVX512VL))))
   14691              :             return -1;
   14692              :           *pnum_clobbers = 1;
   14693              :           return 9943; /* *avx512f_scatterdiv4df */
   14694              : 
   14695              :         case 2:
   14696              :           if (!(
   14697              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14698              : (TARGET_AVX512F) && ((((
   14699              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14700              : (TARGET_AVX512VL) && 
   14701              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14702              : (Pmode == DImode)) && 
   14703              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14704              : (Pmode == DImode)) && 
   14705              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14706              : (TARGET_AVX512VL)) && 
   14707              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14708              : (TARGET_AVX512VL))))
   14709              :             return -1;
   14710              :           *pnum_clobbers = 1;
   14711              :           return 9931; /* *avx512f_scattersiv4df */
   14712              : 
   14713              :         case 3:
   14714              :           if (!(
   14715              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14716              : (TARGET_AVX512F) && (((
   14717              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14718              : (TARGET_AVX512VL) && 
   14719              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14720              : (Pmode == DImode)) && 
   14721              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14722              : (Pmode == DImode)) && 
   14723              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14724              : (TARGET_AVX512VL))))
   14725              :             return -1;
   14726              :           *pnum_clobbers = 1;
   14727              :           return 9955; /* *avx512f_scatterdiv4df */
   14728              : 
   14729              :         default:
   14730              :           return -1;
   14731              :         }
   14732              : 
   14733              :     case E_V4SImode:
   14734              :       switch (pattern1620 (x1, 
   14735              : E_V4SImode))
   14736              :         {
   14737              :         case 0:
   14738              :           if (!(
   14739              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14740              : (TARGET_AVX512F) && ((((
   14741              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14742              : (TARGET_AVX512VL) && 
   14743              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14744              : (Pmode == SImode)) && 
   14745              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14746              : (Pmode == SImode)) && 
   14747              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14748              : (TARGET_AVX512VL)) && 
   14749              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14750              : (TARGET_AVX512VL))))
   14751              :             return -1;
   14752              :           *pnum_clobbers = 1;
   14753              :           return 9920; /* *avx512f_scattersiv4si */
   14754              : 
   14755              :         case 1:
   14756              :           if (!(
   14757              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14758              : (TARGET_AVX512F) && (((
   14759              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14760              : (TARGET_AVX512VL) && 
   14761              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14762              : (Pmode == SImode)) && 
   14763              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14764              : (Pmode == SImode)) && 
   14765              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14766              : (TARGET_AVX512VL))))
   14767              :             return -1;
   14768              :           *pnum_clobbers = 1;
   14769              :           return 9944; /* *avx512f_scatterdiv4si */
   14770              : 
   14771              :         case 2:
   14772              :           if (!(
   14773              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14774              : (TARGET_AVX512F) && ((((
   14775              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14776              : (TARGET_AVX512VL) && 
   14777              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14778              : (Pmode == DImode)) && 
   14779              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14780              : (Pmode == DImode)) && 
   14781              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14782              : (TARGET_AVX512VL)) && 
   14783              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14784              : (TARGET_AVX512VL))))
   14785              :             return -1;
   14786              :           *pnum_clobbers = 1;
   14787              :           return 9932; /* *avx512f_scattersiv4si */
   14788              : 
   14789              :         case 3:
   14790              :           if (!(
   14791              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14792              : (TARGET_AVX512F) && (((
   14793              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14794              : (TARGET_AVX512VL) && 
   14795              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14796              : (Pmode == DImode)) && 
   14797              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14798              : (Pmode == DImode)) && 
   14799              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14800              : (TARGET_AVX512VL))))
   14801              :             return -1;
   14802              :           *pnum_clobbers = 1;
   14803              :           return 9956; /* *avx512f_scatterdiv4si */
   14804              : 
   14805              :         default:
   14806              :           return -1;
   14807              :         }
   14808              : 
   14809              :     case E_V4SFmode:
   14810              :       switch (pattern1620 (x1, 
   14811              : E_V4SFmode))
   14812              :         {
   14813              :         case 0:
   14814              :           if (!(
   14815              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14816              : (TARGET_AVX512F) && ((((
   14817              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14818              : (TARGET_AVX512VL) && 
   14819              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14820              : (Pmode == SImode)) && 
   14821              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14822              : (Pmode == SImode)) && 
   14823              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14824              : (TARGET_AVX512VL)) && 
   14825              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14826              : (TARGET_AVX512VL))))
   14827              :             return -1;
   14828              :           *pnum_clobbers = 1;
   14829              :           return 9921; /* *avx512f_scattersiv4sf */
   14830              : 
   14831              :         case 1:
   14832              :           if (!(
   14833              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14834              : (TARGET_AVX512F) && (((
   14835              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14836              : (TARGET_AVX512VL) && 
   14837              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14838              : (Pmode == SImode)) && 
   14839              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14840              : (Pmode == SImode)) && 
   14841              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14842              : (TARGET_AVX512VL))))
   14843              :             return -1;
   14844              :           *pnum_clobbers = 1;
   14845              :           return 9945; /* *avx512f_scatterdiv4sf */
   14846              : 
   14847              :         case 2:
   14848              :           if (!(
   14849              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14850              : (TARGET_AVX512F) && ((((
   14851              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14852              : (TARGET_AVX512VL) && 
   14853              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14854              : (Pmode == DImode)) && 
   14855              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14856              : (Pmode == DImode)) && 
   14857              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14858              : (TARGET_AVX512VL)) && 
   14859              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14860              : (TARGET_AVX512VL))))
   14861              :             return -1;
   14862              :           *pnum_clobbers = 1;
   14863              :           return 9933; /* *avx512f_scattersiv4sf */
   14864              : 
   14865              :         case 3:
   14866              :           if (!(
   14867              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14868              : (TARGET_AVX512F) && (((
   14869              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14870              : (TARGET_AVX512VL) && 
   14871              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14872              : (Pmode == DImode)) && 
   14873              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14874              : (Pmode == DImode)) && 
   14875              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14876              : (TARGET_AVX512VL))))
   14877              :             return -1;
   14878              :           *pnum_clobbers = 1;
   14879              :           return 9957; /* *avx512f_scatterdiv4sf */
   14880              : 
   14881              :         default:
   14882              :           return -1;
   14883              :         }
   14884              : 
   14885              :     case E_V2DImode:
   14886              :       switch (pattern1620 (x1, 
   14887              : E_V2DImode))
   14888              :         {
   14889              :         case 0:
   14890              :           if (!(
   14891              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14892              : (TARGET_AVX512F) && ((((
   14893              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14894              : (TARGET_AVX512VL) && 
   14895              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14896              : (Pmode == SImode)) && 
   14897              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14898              : (Pmode == SImode)) && 
   14899              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14900              : (TARGET_AVX512VL)) && 
   14901              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14902              : (TARGET_AVX512VL))))
   14903              :             return -1;
   14904              :           *pnum_clobbers = 1;
   14905              :           return 9922; /* *avx512f_scattersiv2di */
   14906              : 
   14907              :         case 1:
   14908              :           if (!(
   14909              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14910              : (TARGET_AVX512F) && (((
   14911              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14912              : (TARGET_AVX512VL) && 
   14913              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14914              : (Pmode == SImode)) && 
   14915              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14916              : (Pmode == SImode)) && 
   14917              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14918              : (TARGET_AVX512VL))))
   14919              :             return -1;
   14920              :           *pnum_clobbers = 1;
   14921              :           return 9946; /* *avx512f_scatterdiv2di */
   14922              : 
   14923              :         case 2:
   14924              :           if (!(
   14925              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14926              : (TARGET_AVX512F) && ((((
   14927              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14928              : (TARGET_AVX512VL) && 
   14929              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14930              : (Pmode == DImode)) && 
   14931              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14932              : (Pmode == DImode)) && 
   14933              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14934              : (TARGET_AVX512VL)) && 
   14935              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14936              : (TARGET_AVX512VL))))
   14937              :             return -1;
   14938              :           *pnum_clobbers = 1;
   14939              :           return 9934; /* *avx512f_scattersiv2di */
   14940              : 
   14941              :         case 3:
   14942              :           if (!(
   14943              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14944              : (TARGET_AVX512F) && (((
   14945              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14946              : (TARGET_AVX512VL) && 
   14947              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14948              : (Pmode == DImode)) && 
   14949              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14950              : (Pmode == DImode)) && 
   14951              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14952              : (TARGET_AVX512VL))))
   14953              :             return -1;
   14954              :           *pnum_clobbers = 1;
   14955              :           return 9958; /* *avx512f_scatterdiv2di */
   14956              : 
   14957              :         default:
   14958              :           return -1;
   14959              :         }
   14960              : 
   14961              :     case E_V2DFmode:
   14962              :       switch (pattern1620 (x1, 
   14963              : E_V2DFmode))
   14964              :         {
   14965              :         case 0:
   14966              :           if (!(
   14967              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14968              : (TARGET_AVX512F) && ((((
   14969              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14970              : (TARGET_AVX512VL) && 
   14971              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14972              : (Pmode == SImode)) && 
   14973              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14974              : (Pmode == SImode)) && 
   14975              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14976              : (TARGET_AVX512VL)) && 
   14977              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14978              : (TARGET_AVX512VL))))
   14979              :             return -1;
   14980              :           *pnum_clobbers = 1;
   14981              :           return 9923; /* *avx512f_scattersiv2df */
   14982              : 
   14983              :         case 1:
   14984              :           if (!(
   14985              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14986              : (TARGET_AVX512F) && (((
   14987              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14988              : (TARGET_AVX512VL) && 
   14989              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14990              : (Pmode == SImode)) && 
   14991              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   14992              : (Pmode == SImode)) && 
   14993              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14994              : (TARGET_AVX512VL))))
   14995              :             return -1;
   14996              :           *pnum_clobbers = 1;
   14997              :           return 9947; /* *avx512f_scatterdiv2df */
   14998              : 
   14999              :         case 2:
   15000              :           if (!(
   15001              : #line 30300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15002              : (TARGET_AVX512F) && ((((
   15003              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15004              : (TARGET_AVX512VL) && 
   15005              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15006              : (Pmode == DImode)) && 
   15007              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15008              : (Pmode == DImode)) && 
   15009              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15010              : (TARGET_AVX512VL)) && 
   15011              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15012              : (TARGET_AVX512VL))))
   15013              :             return -1;
   15014              :           *pnum_clobbers = 1;
   15015              :           return 9935; /* *avx512f_scattersiv2df */
   15016              : 
   15017              :         case 3:
   15018              :           if (!(
   15019              : #line 30340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15020              : (TARGET_AVX512F) && (((
   15021              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15022              : (TARGET_AVX512VL) && 
   15023              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15024              : (Pmode == DImode)) && 
   15025              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15026              : (Pmode == DImode)) && 
   15027              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15028              : (TARGET_AVX512VL))))
   15029              :             return -1;
   15030              :           *pnum_clobbers = 1;
   15031              :           return 9959; /* *avx512f_scatterdiv2df */
   15032              : 
   15033              :         default:
   15034              :           return -1;
   15035              :         }
   15036              : 
   15037              :     default:
   15038              :       return -1;
   15039              :     }
   15040              : }
   15041              : 
   15042              :  int
   15043              : recog_255 (rtx x1 ATTRIBUTE_UNUSED,
   15044              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15045              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15046              : {
   15047              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15048              :   rtx x2, x3, x4, x5, x6;
   15049              :   int res ATTRIBUTE_UNUSED;
   15050              :   x2 = XEXP (x1, 0);
   15051              :   operands[0] = x2;
   15052              :   x3 = XEXP (x1, 1);
   15053              :   x4 = XVECEXP (x3, 0, 0);
   15054              :   operands[1] = x4;
   15055              :   x5 = XVECEXP (x3, 0, 1);
   15056              :   operands[2] = x5;
   15057              :   x6 = XVECEXP (x3, 0, 2);
   15058              :   operands[3] = x6;
   15059              :   switch (GET_MODE (operands[0]))
   15060              :     {
   15061              :     case E_V16SImode:
   15062              :       if (pattern915 (x3, 
   15063              : E_HImode, 
   15064              : E_V16SImode) != 0
   15065              :           || !
   15066              : #line 30355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15067              : (TARGET_AVX512F))
   15068              :         return -1;
   15069              :       return 9960; /* avx512f_compressv16si_mask */
   15070              : 
   15071              :     case E_V16SFmode:
   15072              :       if (pattern915 (x3, 
   15073              : E_HImode, 
   15074              : E_V16SFmode) != 0
   15075              :           || !
   15076              : #line 30355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15077              : (TARGET_AVX512F))
   15078              :         return -1;
   15079              :       return 9961; /* avx512f_compressv16sf_mask */
   15080              : 
   15081              :     case E_V8DImode:
   15082              :       if (pattern915 (x3, 
   15083              : E_QImode, 
   15084              : E_V8DImode) != 0
   15085              :           || !
   15086              : #line 30355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15087              : (TARGET_AVX512F))
   15088              :         return -1;
   15089              :       return 9962; /* avx512f_compressv8di_mask */
   15090              : 
   15091              :     case E_V8DFmode:
   15092              :       if (pattern915 (x3, 
   15093              : E_QImode, 
   15094              : E_V8DFmode) != 0
   15095              :           || !
   15096              : #line 30355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15097              : (TARGET_AVX512F))
   15098              :         return -1;
   15099              :       return 9963; /* avx512f_compressv8df_mask */
   15100              : 
   15101              :     case E_V8SImode:
   15102              :       if (pattern915 (x3, 
   15103              : E_QImode, 
   15104              : E_V8SImode) != 0
   15105              :           || !(
   15106              : #line 30355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15107              : (TARGET_AVX512F) && 
   15108              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15109              : (TARGET_AVX512VL)))
   15110              :         return -1;
   15111              :       return 9964; /* avx512vl_compressv8si_mask */
   15112              : 
   15113              :     case E_V8SFmode:
   15114              :       if (pattern915 (x3, 
   15115              : E_QImode, 
   15116              : E_V8SFmode) != 0
   15117              :           || !(
   15118              : #line 30355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15119              : (TARGET_AVX512F) && 
   15120              : #line 993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15121              : (TARGET_AVX512VL)))
   15122              :         return -1;
   15123              :       return 9965; /* avx512vl_compressv8sf_mask */
   15124              : 
   15125              :     case E_V4DImode:
   15126              :       if (pattern915 (x3, 
   15127              : E_QImode, 
   15128              : E_V4DImode) != 0
   15129              :           || !(
   15130              : #line 30355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15131              : (TARGET_AVX512F) && 
   15132              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15133              : (TARGET_AVX512VL)))
   15134              :         return -1;
   15135              :       return 9966; /* avx512vl_compressv4di_mask */
   15136              : 
   15137              :     case E_V4DFmode:
   15138              :       if (pattern915 (x3, 
   15139              : E_QImode, 
   15140              : E_V4DFmode) != 0
   15141              :           || !(
   15142              : #line 30355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15143              : (TARGET_AVX512F) && 
   15144              : #line 994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15145              : (TARGET_AVX512VL)))
   15146              :         return -1;
   15147              :       return 9967; /* avx512vl_compressv4df_mask */
   15148              : 
   15149              :     case E_V4SImode:
   15150              :       if (pattern915 (x3, 
   15151              : E_QImode, 
   15152              : E_V4SImode) != 0
   15153              :           || !(
   15154              : #line 30355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15155              : (TARGET_AVX512F) && 
   15156              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15157              : (TARGET_AVX512VL)))
   15158              :         return -1;
   15159              :       return 9968; /* avx512vl_compressv4si_mask */
   15160              : 
   15161              :     case E_V4SFmode:
   15162              :       if (pattern915 (x3, 
   15163              : E_QImode, 
   15164              : E_V4SFmode) != 0
   15165              :           || !(
   15166              : #line 30355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15167              : (TARGET_AVX512F) && 
   15168              : #line 995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15169              : (TARGET_AVX512VL)))
   15170              :         return -1;
   15171              :       return 9969; /* avx512vl_compressv4sf_mask */
   15172              : 
   15173              :     case E_V2DImode:
   15174              :       if (pattern915 (x3, 
   15175              : E_QImode, 
   15176              : E_V2DImode) != 0
   15177              :           || !(
   15178              : #line 30355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15179              : (TARGET_AVX512F) && 
   15180              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15181              : (TARGET_AVX512VL)))
   15182              :         return -1;
   15183              :       return 9970; /* avx512vl_compressv2di_mask */
   15184              : 
   15185              :     case E_V2DFmode:
   15186              :       if (pattern915 (x3, 
   15187              : E_QImode, 
   15188              : E_V2DFmode) != 0
   15189              :           || !(
   15190              : #line 30355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15191              : (TARGET_AVX512F) && 
   15192              : #line 996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15193              : (TARGET_AVX512VL)))
   15194              :         return -1;
   15195              :       return 9971; /* avx512vl_compressv2df_mask */
   15196              : 
   15197              :     case E_V64QImode:
   15198              :       if (pattern915 (x3, 
   15199              : E_DImode, 
   15200              : E_V64QImode) != 0
   15201              :           || !
   15202              : #line 30368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15203              : (TARGET_AVX512VBMI2))
   15204              :         return -1;
   15205              :       return 9972; /* compressv64qi_mask */
   15206              : 
   15207              :     case E_V16QImode:
   15208              :       if (pattern915 (x3, 
   15209              : E_HImode, 
   15210              : E_V16QImode) != 0
   15211              :           || !(
   15212              : #line 30368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15213              : (TARGET_AVX512VBMI2) && 
   15214              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15215              : (TARGET_AVX512VL)))
   15216              :         return -1;
   15217              :       return 9973; /* compressv16qi_mask */
   15218              : 
   15219              :     case E_V32QImode:
   15220              :       if (pattern915 (x3, 
   15221              : E_SImode, 
   15222              : E_V32QImode) != 0
   15223              :           || !(
   15224              : #line 30368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15225              : (TARGET_AVX512VBMI2) && 
   15226              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15227              : (TARGET_AVX512VL)))
   15228              :         return -1;
   15229              :       return 9974; /* compressv32qi_mask */
   15230              : 
   15231              :     case E_V32HImode:
   15232              :       if (pattern915 (x3, 
   15233              : E_SImode, 
   15234              : E_V32HImode) != 0
   15235              :           || !
   15236              : #line 30368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15237              : (TARGET_AVX512VBMI2))
   15238              :         return -1;
   15239              :       return 9975; /* compressv32hi_mask */
   15240              : 
   15241              :     case E_V16HImode:
   15242              :       if (pattern915 (x3, 
   15243              : E_HImode, 
   15244              : E_V16HImode) != 0
   15245              :           || !(
   15246              : #line 30368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15247              : (TARGET_AVX512VBMI2) && 
   15248              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15249              : (TARGET_AVX512VL)))
   15250              :         return -1;
   15251              :       return 9976; /* compressv16hi_mask */
   15252              : 
   15253              :     case E_V8HImode:
   15254              :       if (pattern915 (x3, 
   15255              : E_QImode, 
   15256              : E_V8HImode) != 0
   15257              :           || !(
   15258              : #line 30368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15259              : (TARGET_AVX512VBMI2) && 
   15260              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15261              : (TARGET_AVX512VL)))
   15262              :         return -1;
   15263              :       return 9977; /* compressv8hi_mask */
   15264              : 
   15265              :     default:
   15266              :       return -1;
   15267              :     }
   15268              : }
   15269              : 
   15270              :  int
   15271              : recog_267 (rtx x1 ATTRIBUTE_UNUSED,
   15272              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15273              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15274              : {
   15275              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15276              :   rtx x2, x3, x4, x5;
   15277              :   int res ATTRIBUTE_UNUSED;
   15278              :   x2 = XEXP (x1, 0);
   15279              :   operands[0] = x2;
   15280              :   x3 = XEXP (x1, 1);
   15281              :   x4 = XVECEXP (x3, 0, 0);
   15282              :   operands[1] = x4;
   15283              :   x5 = XVECEXP (x3, 0, 1);
   15284              :   operands[2] = x5;
   15285              :   switch (pattern677 (x3))
   15286              :     {
   15287              :     case 0:
   15288              :       if (
   15289              : #line 7507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15290              : (TARGET_AVX512FP16 && 1 && 1))
   15291              :         return 4366; /* fma_fcmaddc_v32hf */
   15292              :       break;
   15293              : 
   15294              :     case 1:
   15295              :       if ((
   15296              : #line 7507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15297              : (TARGET_AVX512FP16 && 1 && 1) && 
   15298              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15299              : (TARGET_AVX512VL)))
   15300              :         return 4372; /* fma_fcmaddc_v16hf */
   15301              :       break;
   15302              : 
   15303              :     case 2:
   15304              :       if ((
   15305              : #line 7507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15306              : (TARGET_AVX512FP16 && 1 && 1) && 
   15307              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15308              : (TARGET_AVX512VL)))
   15309              :         return 4376; /* fma_fcmaddc_v8hf */
   15310              :       break;
   15311              : 
   15312              :     default:
   15313              :       break;
   15314              :     }
   15315              :   if (GET_CODE (x5) != SUBREG
   15316              :       || maybe_ne (SUBREG_BYTE (x5), 0))
   15317              :     return -1;
   15318              :   switch (pattern602 (x3))
   15319              :     {
   15320              :     case 0:
   15321              :       if (!
   15322              : #line 7613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15323              : (TARGET_AVX512FP16 && ix86_pre_reload_split ()))
   15324              :         return -1;
   15325              :       return 4399; /* fma_v32hf_fcmaddc_bcst */
   15326              : 
   15327              :     case 1:
   15328              :       if (!(
   15329              : #line 7613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15330              : (TARGET_AVX512FP16 && ix86_pre_reload_split ()) && 
   15331              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15332              : (TARGET_AVX512VL)))
   15333              :         return -1;
   15334              :       return 4400; /* fma_v16hf_fcmaddc_bcst */
   15335              : 
   15336              :     case 2:
   15337              :       if (!(
   15338              : #line 7613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15339              : (TARGET_AVX512FP16 && ix86_pre_reload_split ()) && 
   15340              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15341              : (TARGET_AVX512VL)))
   15342              :         return -1;
   15343              :       return 4401; /* fma_v8hf_fcmaddc_bcst */
   15344              : 
   15345              :     default:
   15346              :       return -1;
   15347              :     }
   15348              : }
   15349              : 
   15350              :  int
   15351              : recog_274 (rtx x1 ATTRIBUTE_UNUSED,
   15352              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15353              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15354              : {
   15355              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15356              :   rtx x2, x3, x4, x5, x6, x7, x8;
   15357              :   int res ATTRIBUTE_UNUSED;
   15358              :   x2 = XEXP (x1, 1);
   15359              :   x3 = XEXP (x2, 0);
   15360              :   x4 = XEXP (x3, 1);
   15361              :   if (GET_CODE (x4) != PARALLEL)
   15362              :     return -1;
   15363              :   x5 = XEXP (x3, 0);
   15364              :   operands[1] = x5;
   15365              :   x6 = XEXP (x2, 1);
   15366              :   operands[2] = x6;
   15367              :   switch (XVECLEN (x4, 0))
   15368              :     {
   15369              :     case 1:
   15370              :       x7 = XVECEXP (x4, 0, 0);
   15371              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   15372              :         return -1;
   15373              :       switch (GET_CODE (operands[2]))
   15374              :         {
   15375              :         case CONST_INT:
   15376              :         case CONST_DOUBLE:
   15377              :         case CONST_VECTOR:
   15378              :           switch (GET_MODE (operands[0]))
   15379              :             {
   15380              :             case E_V2DImode:
   15381              :               if (pattern1150 (x2, 
   15382              : E_DImode, 
   15383              : E_V2DImode) != 0
   15384              :                   || !
   15385              : #line 1871 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15386              : (TARGET_SSE2))
   15387              :                 return -1;
   15388              :               return 2617; /* *sse2_movq128_v2di */
   15389              : 
   15390              :             case E_V2DFmode:
   15391              :               if (pattern1150 (x2, 
   15392              : E_DFmode, 
   15393              : E_V2DFmode) != 0
   15394              :                   || !
   15395              : #line 1871 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15396              : (TARGET_SSE2))
   15397              :                 return -1;
   15398              :               return 2618; /* *sse2_movq128_v2df */
   15399              : 
   15400              :             default:
   15401              :               return -1;
   15402              :             }
   15403              : 
   15404              :         case REG:
   15405              :         case SUBREG:
   15406              :         case MEM:
   15407              :           if (!nonimmediate_operand (operands[2], E_DFmode)
   15408              :               || pattern1151 (x2, 
   15409              : E_V2DFmode, 
   15410              : E_DFmode) != 0
   15411              :               || !
   15412              : #line 15053 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15413              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   15414              :             return -1;
   15415              :           return 7251; /* sse2_loadhpd */
   15416              : 
   15417              :         default:
   15418              :           return -1;
   15419              :         }
   15420              : 
   15421              :     case 2:
   15422              :       x7 = XVECEXP (x4, 0, 0);
   15423              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   15424              :         return -1;
   15425              :       x8 = XVECEXP (x4, 0, 1);
   15426              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   15427              :         return -1;
   15428              :       switch (GET_MODE (operands[0]))
   15429              :         {
   15430              :         case E_V4SFmode:
   15431              :           if (pattern1151 (x2, 
   15432              : E_V4SFmode, 
   15433              : E_V2SFmode) != 0
   15434              :               || !nonimmediate_operand (operands[2], E_V2SFmode)
   15435              :               || !
   15436              : #line 11951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15437              : (TARGET_SSE))
   15438              :             return -1;
   15439              :           return 5290; /* sse_loadhps */
   15440              : 
   15441              :         case E_V4DImode:
   15442              :           if (pattern1152 (x2, 
   15443              : E_V2DImode, 
   15444              : E_V4DImode) != 0
   15445              :               || !
   15446              : #line 29159 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15447              : (TARGET_AVX && 1))
   15448              :             return -1;
   15449              :           return 9540; /* vec_set_hi_v4di */
   15450              : 
   15451              :         case E_V4DFmode:
   15452              :           if (pattern1152 (x2, 
   15453              : E_V2DFmode, 
   15454              : E_V4DFmode) != 0
   15455              :               || !
   15456              : #line 29159 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15457              : (TARGET_AVX && 1))
   15458              :             return -1;
   15459              :           return 9542; /* vec_set_hi_v4df */
   15460              : 
   15461              :         default:
   15462              :           return -1;
   15463              :         }
   15464              : 
   15465              :     case 8:
   15466              :       if (pattern681 (x4) != 0)
   15467              :         return -1;
   15468              :       switch (GET_MODE (operands[0]))
   15469              :         {
   15470              :         case E_V16SFmode:
   15471              :           if (pattern1152 (x2, 
   15472              : E_V8SFmode, 
   15473              : E_V16SFmode) != 0
   15474              :               || !
   15475              : #line 20450 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15476              : (TARGET_AVX512DQ))
   15477              :             return -1;
   15478              :           return 8446; /* vec_set_hi_v16sf */
   15479              : 
   15480              :         case E_V16SImode:
   15481              :           if (pattern1152 (x2, 
   15482              : E_V8SImode, 
   15483              : E_V16SImode) != 0
   15484              :               || !
   15485              : #line 20450 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15486              : (TARGET_AVX512DQ))
   15487              :             return -1;
   15488              :           return 8448; /* vec_set_hi_v16si */
   15489              : 
   15490              :         case E_V16HImode:
   15491              :           if (pattern1152 (x2, 
   15492              : E_V8HImode, 
   15493              : E_V16HImode) != 0
   15494              :               || !
   15495              : #line 29254 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15496              : (TARGET_AVX))
   15497              :             return -1;
   15498              :           return 9555; /* vec_set_hi_v16hi */
   15499              : 
   15500              :         case E_V16HFmode:
   15501              :           if (pattern1152 (x2, 
   15502              : E_V8HFmode, 
   15503              : E_V16HFmode) != 0
   15504              :               || !
   15505              : #line 29254 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15506              : (TARGET_AVX))
   15507              :             return -1;
   15508              :           return 9556; /* vec_set_hi_v16hf */
   15509              : 
   15510              :         case E_V16BFmode:
   15511              :           if (pattern1152 (x2, 
   15512              : E_V8BFmode, 
   15513              : E_V16BFmode) != 0
   15514              :               || !
   15515              : #line 29254 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15516              : (TARGET_AVX))
   15517              :             return -1;
   15518              :           return 9557; /* vec_set_hi_v16bf */
   15519              : 
   15520              :         default:
   15521              :           return -1;
   15522              :         }
   15523              : 
   15524              :     case 4:
   15525              :       if (pattern682 (x4, 
   15526              : 3, 
   15527              : 2, 
   15528              : 1) != 0)
   15529              :         return -1;
   15530              :       switch (GET_MODE (operands[0]))
   15531              :         {
   15532              :         case E_V8DFmode:
   15533              :           if (pattern1152 (x2, 
   15534              : E_V4DFmode, 
   15535              : E_V8DFmode) != 0
   15536              :               || !
   15537              : #line 20480 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15538              : (TARGET_AVX512F))
   15539              :             return -1;
   15540              :           return 8454; /* vec_set_hi_v8df */
   15541              : 
   15542              :         case E_V8DImode:
   15543              :           if (pattern1152 (x2, 
   15544              : E_V4DImode, 
   15545              : E_V8DImode) != 0
   15546              :               || !
   15547              : #line 20480 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15548              : (TARGET_AVX512F))
   15549              :             return -1;
   15550              :           return 8456; /* vec_set_hi_v8di */
   15551              : 
   15552              :         case E_V8SImode:
   15553              :           if (pattern1152 (x2, 
   15554              : E_V4SImode, 
   15555              : E_V8SImode) != 0
   15556              :               || !
   15557              : #line 29207 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15558              : (TARGET_AVX))
   15559              :             return -1;
   15560              :           return 9548; /* vec_set_hi_v8si */
   15561              : 
   15562              :         case E_V8SFmode:
   15563              :           if (pattern1152 (x2, 
   15564              : E_V4SFmode, 
   15565              : E_V8SFmode) != 0
   15566              :               || !
   15567              : #line 29207 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15568              : (TARGET_AVX))
   15569              :             return -1;
   15570              :           return 9550; /* vec_set_hi_v8sf */
   15571              : 
   15572              :         default:
   15573              :           return -1;
   15574              :         }
   15575              : 
   15576              :     case 16:
   15577              :       if (pattern795 (x4, 
   15578              : 6, 
   15579              : 5, 
   15580              : 4) != 0
   15581              :           || pattern1490 (x4, 
   15582              : 11, 
   15583              : 10, 
   15584              : 9, 
   15585              : 8, 
   15586              : 7) != 0
   15587              :           || pattern1152 (x2, 
   15588              : E_V16QImode, 
   15589              : E_V32QImode) != 0
   15590              :           || !
   15591              : #line 29306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15592              : (TARGET_AVX))
   15593              :         return -1;
   15594              :       return 9559; /* vec_set_hi_v32qi */
   15595              : 
   15596              :     default:
   15597              :       return -1;
   15598              :     }
   15599              : }
   15600              : 
   15601              :  int
   15602              : recog_275 (rtx x1 ATTRIBUTE_UNUSED,
   15603              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15604              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15605              : {
   15606              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15607              :   rtx x2, x3, x4, x5, x6;
   15608              :   int res ATTRIBUTE_UNUSED;
   15609              :   x2 = XEXP (x1, 1);
   15610              :   x3 = XEXP (x2, 0);
   15611              :   switch (XVECLEN (x3, 0))
   15612              :     {
   15613              :     case 1:
   15614              :       x4 = XVECEXP (x3, 0, 0);
   15615              :       operands[1] = x4;
   15616              :       switch (XINT (x3, 1))
   15617              :         {
   15618              :         case 47:
   15619              :           if (GET_MODE (x3) == E_V4SImode
   15620              :               && pattern798 (x2, 
   15621              : E_V4SImode, 
   15622              : E_V4DFmode, 
   15623              : E_V8SImode) == 0
   15624              :               && 
   15625              : #line 9762 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15626              : (TARGET_AVX))
   15627              :             return 5044; /* *avx_cvtpd2dq256_2 */
   15628              :           if (GET_MODE (x3) != E_V2SImode)
   15629              :             return -1;
   15630              :           x5 = XEXP (x2, 1);
   15631              :           if (GET_CODE (x5) != CONST_VECTOR
   15632              :               || pattern512 (x5, 
   15633              : E_V2SImode, 
   15634              : 2) != 0
   15635              :               || !register_operand (operands[0], E_V4SImode)
   15636              :               || GET_MODE (x2) != E_V4SImode
   15637              :               || !vector_operand (operands[1], E_V2DFmode)
   15638              :               || !
   15639              : #line 9775 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15640              : (TARGET_SSE2))
   15641              :             return -1;
   15642              :           return 5045; /* sse2_cvtpd2dq */
   15643              : 
   15644              :         case 157:
   15645              :           if (pattern679 (x2) != 0
   15646              :               || !
   15647              : #line 9845 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15648              : (TARGET_AVX512VL))
   15649              :             return -1;
   15650              :           return 5056; /* fixuns_notruncv2dfv2si2 */
   15651              : 
   15652              :         case 174:
   15653              :           if (pattern679 (x2) != 0
   15654              :               || !
   15655              : #line 9912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15656              : (TARGET_AVX512VL))
   15657              :             return -1;
   15658              :           return 5075; /* *unspec_fixuns_truncv2dfv2si2 */
   15659              : 
   15660              :         case 254:
   15661              :           if (GET_MODE (x3) != E_V8QImode
   15662              :               || pattern798 (x2, 
   15663              : E_V8QImode, 
   15664              : E_V8HFmode, 
   15665              : E_V16QImode) != 0
   15666              :               || !
   15667              : #line 32572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15668              : (TARGET_AVX10_2))
   15669              :             return -1;
   15670              :           return 10567; /* *vcvtph2bf8v8hf */
   15671              : 
   15672              :         case 255:
   15673              :           if (GET_MODE (x3) != E_V8QImode
   15674              :               || pattern798 (x2, 
   15675              : E_V8QImode, 
   15676              : E_V8HFmode, 
   15677              : E_V16QImode) != 0
   15678              :               || !
   15679              : #line 32572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15680              : (TARGET_AVX10_2))
   15681              :             return -1;
   15682              :           return 10568; /* *vcvtph2bf8sv8hf */
   15683              : 
   15684              :         case 256:
   15685              :           if (GET_MODE (x3) != E_V8QImode
   15686              :               || pattern798 (x2, 
   15687              : E_V8QImode, 
   15688              : E_V8HFmode, 
   15689              : E_V16QImode) != 0
   15690              :               || !
   15691              : #line 32572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15692              : (TARGET_AVX10_2))
   15693              :             return -1;
   15694              :           return 10569; /* *vcvtph2hf8v8hf */
   15695              : 
   15696              :         case 257:
   15697              :           if (GET_MODE (x3) != E_V8QImode
   15698              :               || pattern798 (x2, 
   15699              : E_V8QImode, 
   15700              : E_V8HFmode, 
   15701              : E_V16QImode) != 0
   15702              :               || !
   15703              : #line 32572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15704              : (TARGET_AVX10_2))
   15705              :             return -1;
   15706              :           return 10570; /* *vcvtph2hf8sv8hf */
   15707              : 
   15708              :         default:
   15709              :           return -1;
   15710              :         }
   15711              : 
   15712              :     case 2:
   15713              :       x4 = XVECEXP (x3, 0, 0);
   15714              :       operands[1] = x4;
   15715              :       x6 = XVECEXP (x3, 0, 1);
   15716              :       operands[2] = x6;
   15717              :       x5 = XEXP (x2, 1);
   15718              :       operands[3] = x5;
   15719              :       switch (XINT (x3, 1))
   15720              :         {
   15721              :         case 151:
   15722              :           if (GET_MODE (x3) != E_V4HImode
   15723              :               || !register_operand (operands[0], E_V8HImode)
   15724              :               || GET_MODE (x2) != E_V8HImode
   15725              :               || !register_operand (operands[1], E_V4SFmode)
   15726              :               || !const_0_to_255_operand (operands[2], E_SImode)
   15727              :               || !const0_operand (operands[3], E_V4HImode)
   15728              :               || !
   15729              : #line 29846 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15730              : ((TARGET_F16C || TARGET_AVX512VL) && 1))
   15731              :             return -1;
   15732              :           return 9731; /* *vcvtps2ph */
   15733              : 
   15734              :         case 246:
   15735              :           if (pattern922 (x2) != 0
   15736              :               || !
   15737              : #line 32482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15738              : (TARGET_AVX10_2))
   15739              :             return -1;
   15740              :           return 10543; /* *vcvtbiasph2bf8v8hf */
   15741              : 
   15742              :         case 247:
   15743              :           if (pattern922 (x2) != 0
   15744              :               || !
   15745              : #line 32482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15746              : (TARGET_AVX10_2))
   15747              :             return -1;
   15748              :           return 10544; /* *vcvtbiasph2bf8sv8hf */
   15749              : 
   15750              :         case 248:
   15751              :           if (pattern922 (x2) != 0
   15752              :               || !
   15753              : #line 32482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15754              : (TARGET_AVX10_2))
   15755              :             return -1;
   15756              :           return 10545; /* *vcvtbiasph2hf8v8hf */
   15757              : 
   15758              :         case 249:
   15759              :           if (pattern922 (x2) != 0
   15760              :               || !
   15761              : #line 32482 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15762              : (TARGET_AVX10_2))
   15763              :             return -1;
   15764              :           return 10546; /* *vcvtbiasph2hf8sv8hf */
   15765              : 
   15766              :         default:
   15767              :           return -1;
   15768              :         }
   15769              : 
   15770              :     default:
   15771              :       return -1;
   15772              :     }
   15773              : }
   15774              : 
   15775              :  int
   15776              : recog_279 (rtx x1 ATTRIBUTE_UNUSED,
   15777              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15778              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15779              : {
   15780              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15781              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   15782              :   int res ATTRIBUTE_UNUSED;
   15783              :   x2 = XEXP (x1, 1);
   15784              :   x3 = XEXP (x2, 1);
   15785              :   x4 = XVECEXP (x3, 0, 2);
   15786              :   if (GET_CODE (x4) != CONST_INT)
   15787              :     return -1;
   15788              :   x5 = XVECEXP (x3, 0, 3);
   15789              :   if (GET_CODE (x5) != CONST_INT)
   15790              :     return -1;
   15791              :   x6 = XVECEXP (x3, 0, 0);
   15792              :   switch (XWINT (x6, 0))
   15793              :     {
   15794              :     case 6L:
   15795              :       x7 = XVECEXP (x3, 0, 1);
   15796              :       if (XWINT (x7, 0) != 7L
   15797              :           || XWINT (x4, 0) != 2L
   15798              :           || XWINT (x5, 0) != 3L
   15799              :           || pattern1568 (x2) != 0
   15800              :           || !
   15801              : #line 11389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15802              : (TARGET_SSE && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   15803              :         return -1;
   15804              :       return 5255; /* sse_movhlps */
   15805              : 
   15806              :     case 0L:
   15807              :       x7 = XVECEXP (x3, 0, 1);
   15808              :       switch (XWINT (x7, 0))
   15809              :         {
   15810              :         case 1L:
   15811              :           if (XWINT (x4, 0) != 4L
   15812              :               || XWINT (x5, 0) != 5L
   15813              :               || pattern1568 (x2) != 0
   15814              :               || !
   15815              : #line 11434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15816              : (TARGET_SSE && ix86_binary_operator_ok (UNKNOWN, V4SFmode, operands)))
   15817              :             return -1;
   15818              :           return 5256; /* sse_movlhps */
   15819              : 
   15820              :         case 4L:
   15821              :           switch (XWINT (x4, 0))
   15822              :             {
   15823              :             case 1L:
   15824              :               if (XWINT (x5, 0) != 5L
   15825              :                   || pattern1323 (x2, 
   15826              : E_V4SFmode, 
   15827              : E_V8SFmode) != 0
   15828              :                   || !
   15829              : #line 11651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15830              : (TARGET_SSE))
   15831              :                 return -1;
   15832              :               return 5271; /* vec_interleave_lowv4sf */
   15833              : 
   15834              :             case 2L:
   15835              :               if (XWINT (x5, 0) != 6L)
   15836              :                 return -1;
   15837              :               switch (GET_MODE (operands[0]))
   15838              :                 {
   15839              :                 case E_V4DFmode:
   15840              :                   if (!register_operand (operands[0], E_V4DFmode)
   15841              :                       || GET_MODE (x2) != E_V4DFmode)
   15842              :                     return -1;
   15843              :                   x8 = XEXP (x2, 0);
   15844              :                   if (GET_MODE (x8) != E_V8DFmode)
   15845              :                     return -1;
   15846              :                   if (nonimmediate_operand (operands[1], E_V4DFmode))
   15847              :                     {
   15848              :                       x9 = XEXP (x8, 1);
   15849              :                       if (rtx_equal_p (x9, operands[1])
   15850              :                           && 
   15851              : #line 13794 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15852              : (TARGET_AVX && 1))
   15853              :                         return 5424; /* avx_movddup256 */
   15854              :                     }
   15855              :                   if (!register_operand (operands[1], E_V4DFmode))
   15856              :                     return -1;
   15857              :                   x9 = XEXP (x8, 1);
   15858              :                   operands[2] = x9;
   15859              :                   if (!nonimmediate_operand (operands[2], E_V4DFmode)
   15860              :                       || !
   15861              : #line 13808 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15862              : (TARGET_AVX && 1))
   15863              :                     return -1;
   15864              :                   return 5426; /* avx_unpcklpd256 */
   15865              : 
   15866              :                 case E_V4DImode:
   15867              :                   if (pattern1631 (x2, 
   15868              : E_V4DImode, 
   15869              : E_V8DImode) != 0
   15870              :                       || !
   15871              : #line 14840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15872              : (TARGET_AVX2 && 1))
   15873              :                     return -1;
   15874              :                   return 7239; /* avx2_interleave_lowv4di */
   15875              : 
   15876              :                 default:
   15877              :                   return -1;
   15878              :                 }
   15879              : 
   15880              :             default:
   15881              :               return -1;
   15882              :             }
   15883              : 
   15884              :         case 0L:
   15885              :           if (XWINT (x4, 0) != 6L
   15886              :               || XWINT (x5, 0) != 6L
   15887              :               || pattern1569 (x2) != 0
   15888              :               || !
   15889              : #line 11741 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15890              : (TARGET_SSE3 && 1))
   15891              :             return -1;
   15892              :           return 5280; /* sse3_movsldup */
   15893              : 
   15894              :         default:
   15895              :           return -1;
   15896              :         }
   15897              : 
   15898              :     case 2L:
   15899              :       x7 = XVECEXP (x3, 0, 1);
   15900              :       if (XWINT (x7, 0) != 6L
   15901              :           || XWINT (x4, 0) != 3L
   15902              :           || XWINT (x5, 0) != 7L
   15903              :           || pattern1323 (x2, 
   15904              : E_V4SFmode, 
   15905              : E_V8SFmode) != 0
   15906              :           || !
   15907              : #line 11546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15908              : (TARGET_SSE && 1))
   15909              :         return -1;
   15910              :       return 5264; /* vec_interleave_highv4sf */
   15911              : 
   15912              :     case 1L:
   15913              :       if (XWINT (x5, 0) != 7L)
   15914              :         return -1;
   15915              :       x7 = XVECEXP (x3, 0, 1);
   15916              :       switch (XWINT (x7, 0))
   15917              :         {
   15918              :         case 1L:
   15919              :           if (XWINT (x4, 0) != 7L
   15920              :               || pattern1569 (x2) != 0
   15921              :               || !
   15922              : #line 11688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15923              : (TARGET_SSE3 && 1))
   15924              :             return -1;
   15925              :           return 5274; /* sse3_movshdup */
   15926              : 
   15927              :         case 5L:
   15928              :           if (XWINT (x4, 0) != 3L)
   15929              :             return -1;
   15930              :           x8 = XEXP (x2, 0);
   15931              :           x9 = XEXP (x8, 1);
   15932              :           operands[2] = x9;
   15933              :           switch (GET_MODE (operands[0]))
   15934              :             {
   15935              :             case E_V4DFmode:
   15936              :               if (pattern1425 (x2, 
   15937              : E_V4DFmode, 
   15938              : E_V8DFmode) != 0
   15939              :                   || !
   15940              : #line 13664 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15941              : (TARGET_AVX && 1))
   15942              :                 return -1;
   15943              :               return 5416; /* avx_unpckhpd256 */
   15944              : 
   15945              :             case E_V4DImode:
   15946              :               if (pattern1425 (x2, 
   15947              : E_V4DImode, 
   15948              : E_V8DImode) != 0
   15949              :                   || !
   15950              : #line 14790 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15951              : (TARGET_AVX2 && 1))
   15952              :                 return -1;
   15953              :               return 7233; /* avx2_interleave_highv4di */
   15954              : 
   15955              :             default:
   15956              :               return -1;
   15957              :             }
   15958              : 
   15959              :         default:
   15960              :           return -1;
   15961              :         }
   15962              : 
   15963              :     default:
   15964              :       return -1;
   15965              :     }
   15966              : }
   15967              : 
   15968              :  int
   15969              : recog_283 (rtx x1 ATTRIBUTE_UNUSED,
   15970              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15971              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15972              : {
   15973              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15974              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   15975              :   rtx x10, x11, x12, x13;
   15976              :   int res ATTRIBUTE_UNUSED;
   15977              :   x2 = XEXP (x1, 1);
   15978              :   x3 = XEXP (x2, 1);
   15979              :   x4 = XVECEXP (x3, 0, 0);
   15980              :   if (GET_CODE (x4) != CONST_INT)
   15981              :     return -1;
   15982              :   x5 = XVECEXP (x3, 0, 1);
   15983              :   if (GET_CODE (x5) == CONST_INT)
   15984              :     {
   15985              :       res = recog_282 (x1, insn, pnum_clobbers);
   15986              :       if (res >= 0)
   15987              :         return res;
   15988              :     }
   15989              :   operands[3] = x4;
   15990              :   x6 = XEXP (x2, 0);
   15991              :   x7 = XEXP (x6, 1);
   15992              :   operands[2] = x7;
   15993              :   operands[4] = x5;
   15994              :   x8 = XVECEXP (x3, 0, 2);
   15995              :   operands[5] = x8;
   15996              :   x9 = XVECEXP (x3, 0, 3);
   15997              :   operands[6] = x9;
   15998              :   x10 = XVECEXP (x3, 0, 4);
   15999              :   operands[7] = x10;
   16000              :   x11 = XVECEXP (x3, 0, 5);
   16001              :   operands[8] = x11;
   16002              :   x12 = XVECEXP (x3, 0, 6);
   16003              :   operands[9] = x12;
   16004              :   x13 = XVECEXP (x3, 0, 7);
   16005              :   operands[10] = x13;
   16006              :   switch (GET_MODE (operands[0]))
   16007              :     {
   16008              :     case E_V8SFmode:
   16009              :       if (pattern1425 (x2, 
   16010              : E_V8SFmode, 
   16011              : E_V16SFmode) != 0)
   16012              :         return -1;
   16013              :       if (const_0_to_3_operand (operands[3], E_VOIDmode)
   16014              :           && const_0_to_3_operand (operands[4], E_VOIDmode)
   16015              :           && const_8_to_11_operand (operands[5], E_VOIDmode)
   16016              :           && const_8_to_11_operand (operands[6], E_VOIDmode)
   16017              :           && const_4_to_7_operand (operands[7], E_VOIDmode)
   16018              :           && const_4_to_7_operand (operands[8], E_VOIDmode)
   16019              :           && const_12_to_15_operand (operands[9], E_VOIDmode)
   16020              :           && const_12_to_15_operand (operands[10], E_VOIDmode)
   16021              :           && 
   16022              : #line 11806 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16023              : (TARGET_AVX
   16024              :    && 1
   16025              :    && (INTVAL (operands[3]) == (INTVAL (operands[7]) - 4)
   16026              :        && INTVAL (operands[4]) == (INTVAL (operands[8]) - 4)
   16027              :        && INTVAL (operands[5]) == (INTVAL (operands[9]) - 4)
   16028              :        && INTVAL (operands[6]) == (INTVAL (operands[10]) - 4))))
   16029              :         return 5284; /* avx_shufps256_1 */
   16030              :       if (!const_0_to_7_operand (operands[3], E_VOIDmode)
   16031              :           || pattern1695 () != 0
   16032              :           || !
   16033              : #line 20673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16034              : (TARGET_AVX512VL
   16035              :    && (INTVAL (operands[3]) & 3) == 0
   16036              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   16037              :    && INTVAL (operands[3]) == INTVAL (operands[5]) - 2
   16038              :    && INTVAL (operands[3]) == INTVAL (operands[6]) - 3
   16039              :    && (INTVAL (operands[7]) & 3) == 0
   16040              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   16041              :    && INTVAL (operands[7]) == INTVAL (operands[9]) - 2
   16042              :    && INTVAL (operands[7]) == INTVAL (operands[10]) - 3))
   16043              :         return -1;
   16044              :       return 8472; /* avx512vl_shuf_f32x4_1 */
   16045              : 
   16046              :     case E_V8DFmode:
   16047              :       if (pattern1425 (x2, 
   16048              : E_V8DFmode, 
   16049              : E_V16DFmode) != 0)
   16050              :         return -1;
   16051              :       if (const_0_to_1_operand (operands[3], E_VOIDmode)
   16052              :           && const_8_to_9_operand (operands[4], E_VOIDmode)
   16053              :           && const_2_to_3_operand (operands[5], E_VOIDmode)
   16054              :           && const_10_to_11_operand (operands[6], E_VOIDmode)
   16055              :           && const_4_to_5_operand (operands[7], E_VOIDmode)
   16056              :           && const_12_to_13_operand (operands[8], E_VOIDmode)
   16057              :           && const_6_to_7_operand (operands[9], E_VOIDmode)
   16058              :           && const_14_to_15_operand (operands[10], E_VOIDmode)
   16059              :           && 
   16060              : #line 14674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16061              : (TARGET_AVX512F))
   16062              :         return 7228; /* avx512f_shufpd512_1 */
   16063              :       if (!const_0_to_7_operand (operands[3], E_VOIDmode)
   16064              :           || pattern1695 () != 0
   16065              :           || !
   16066              : #line 20575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16067              : (TARGET_AVX512F
   16068              :    && (INTVAL (operands[3]) & 1) == 0
   16069              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   16070              :    && (INTVAL (operands[5]) & 1) == 0
   16071              :    && INTVAL (operands[5]) == INTVAL (operands[6]) - 1
   16072              :    && (INTVAL (operands[7]) & 1) == 0
   16073              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   16074              :    && (INTVAL (operands[9]) & 1) == 0
   16075              :    && INTVAL (operands[9]) == INTVAL (operands[10]) - 1))
   16076              :         return -1;
   16077              :       return 8462; /* avx512f_shuf_f64x2_1 */
   16078              : 
   16079              :     case E_V8DImode:
   16080              :       if (pattern1696 (x2, 
   16081              : E_V8DImode, 
   16082              : E_V16DImode) != 0
   16083              :           || !
   16084              : #line 20575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16085              : (TARGET_AVX512F
   16086              :    && (INTVAL (operands[3]) & 1) == 0
   16087              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   16088              :    && (INTVAL (operands[5]) & 1) == 0
   16089              :    && INTVAL (operands[5]) == INTVAL (operands[6]) - 1
   16090              :    && (INTVAL (operands[7]) & 1) == 0
   16091              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   16092              :    && (INTVAL (operands[9]) & 1) == 0
   16093              :    && INTVAL (operands[9]) == INTVAL (operands[10]) - 1))
   16094              :         return -1;
   16095              :       return 8464; /* avx512f_shuf_i64x2_1 */
   16096              : 
   16097              :     case E_V8SImode:
   16098              :       if (pattern1696 (x2, 
   16099              : E_V8SImode, 
   16100              : E_V16SImode) != 0
   16101              :           || !
   16102              : #line 20673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16103              : (TARGET_AVX512VL
   16104              :    && (INTVAL (operands[3]) & 3) == 0
   16105              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   16106              :    && INTVAL (operands[3]) == INTVAL (operands[5]) - 2
   16107              :    && INTVAL (operands[3]) == INTVAL (operands[6]) - 3
   16108              :    && (INTVAL (operands[7]) & 3) == 0
   16109              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   16110              :    && INTVAL (operands[7]) == INTVAL (operands[9]) - 2
   16111              :    && INTVAL (operands[7]) == INTVAL (operands[10]) - 3))
   16112              :         return -1;
   16113              :       return 8470; /* avx512vl_shuf_i32x4_1 */
   16114              : 
   16115              :     default:
   16116              :       return -1;
   16117              :     }
   16118              : }
   16119              : 
   16120              :  int
   16121              : recog_286 (rtx x1 ATTRIBUTE_UNUSED,
   16122              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16123              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16124              : {
   16125              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16126              :   rtx x2, x3, x4, x5, x6, x7;
   16127              :   int res ATTRIBUTE_UNUSED;
   16128              :   x2 = XEXP (x1, 1);
   16129              :   x3 = XEXP (x2, 1);
   16130              :   x4 = XVECEXP (x3, 0, 0);
   16131              :   if (GET_CODE (x4) != CONST_INT)
   16132              :     return -1;
   16133              :   x5 = XVECEXP (x3, 0, 1);
   16134              :   if (GET_CODE (x5) == CONST_INT)
   16135              :     {
   16136              :       x6 = XEXP (x2, 0);
   16137              :       x7 = XEXP (x6, 1);
   16138              :       operands[2] = x7;
   16139              :       switch (XWINT (x4, 0))
   16140              :         {
   16141              :         case 1L:
   16142              :           if (XWINT (x5, 0) == 3L)
   16143              :             {
   16144              :               switch (GET_MODE (operands[0]))
   16145              :                 {
   16146              :                 case E_V2DFmode:
   16147              :                   if (pattern1493 (x2, 
   16148              : E_V2DFmode, 
   16149              : E_V4DFmode) == 0
   16150              :                       && 
   16151              : #line 13737 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16152              : (TARGET_SSE2 && ix86_vec_interleave_v2df_operator_ok (operands, 1)))
   16153              :                     return 5419; /* *vec_interleave_highv2df */
   16154              :                   break;
   16155              : 
   16156              :                 case E_V2DImode:
   16157              :                   if (pattern1494 (x2, 
   16158              : E_V2DImode, 
   16159              : E_V4DImode) == 0
   16160              :                       && 
   16161              : #line 14820 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16162              : (TARGET_SSE2 && 1))
   16163              :                     return 7237; /* vec_interleave_highv2di */
   16164              :                   break;
   16165              : 
   16166              :                 default:
   16167              :                   break;
   16168              :                 }
   16169              :             }
   16170              :           break;
   16171              : 
   16172              :         case 0L:
   16173              :           if (XWINT (x5, 0) == 2L)
   16174              :             {
   16175              :               switch (GET_MODE (operands[0]))
   16176              :                 {
   16177              :                 case E_V2DFmode:
   16178              :                   if (pattern1493 (x2, 
   16179              : E_V2DFmode, 
   16180              : E_V4DFmode) == 0
   16181              :                       && 
   16182              : #line 13880 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16183              : (TARGET_SSE2 && ix86_vec_interleave_v2df_operator_ok (operands, 0)))
   16184              :                     return 5429; /* *vec_interleave_lowv2df */
   16185              :                   break;
   16186              : 
   16187              :                 case E_V2DImode:
   16188              :                   if (pattern1494 (x2, 
   16189              : E_V2DImode, 
   16190              : E_V4DImode) == 0
   16191              :                       && 
   16192              : #line 14870 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16193              : (TARGET_SSE2 && 1))
   16194              :                     return 7243; /* vec_interleave_lowv2di */
   16195              :                   break;
   16196              : 
   16197              :                 default:
   16198              :                   break;
   16199              :                 }
   16200              :             }
   16201              :           break;
   16202              : 
   16203              :         default:
   16204              :           break;
   16205              :         }
   16206              :     }
   16207              :   operands[3] = x4;
   16208              :   if (!const_0_to_1_operand (operands[3], E_VOIDmode))
   16209              :     return -1;
   16210              :   x6 = XEXP (x2, 0);
   16211              :   x7 = XEXP (x6, 1);
   16212              :   operands[2] = x7;
   16213              :   operands[4] = x5;
   16214              :   if (!const_2_to_3_operand (operands[4], E_VOIDmode))
   16215              :     return -1;
   16216              :   switch (GET_MODE (operands[0]))
   16217              :     {
   16218              :     case E_V2DImode:
   16219              :       if (pattern1494 (x2, 
   16220              : E_V2DImode, 
   16221              : E_V4DImode) != 0
   16222              :           || !
   16223              : #line 14888 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16224              : (TARGET_SSE2))
   16225              :         return -1;
   16226              :       return 7245; /* sse2_shufpd_v2di */
   16227              : 
   16228              :     case E_V2DFmode:
   16229              :       if (pattern1494 (x2, 
   16230              : E_V2DFmode, 
   16231              : E_V4DFmode) != 0
   16232              :           || !
   16233              : #line 14888 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16234              : (TARGET_SSE2))
   16235              :         return -1;
   16236              :       return 7246; /* sse2_shufpd_v2df */
   16237              : 
   16238              :     default:
   16239              :       return -1;
   16240              :     }
   16241              : }
   16242              : 
   16243              :  int
   16244              : recog_288 (rtx x1 ATTRIBUTE_UNUSED,
   16245              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16246              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16247              : {
   16248              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16249              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   16250              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   16251              :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
   16252              :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
   16253              :   rtx x34, x35, x36, x37;
   16254              :   int res ATTRIBUTE_UNUSED;
   16255              :   x2 = XEXP (x1, 1);
   16256              :   x3 = XEXP (x2, 1);
   16257              :   if (pattern683 (x3) != 0)
   16258              :     return -1;
   16259              :   x4 = XEXP (x2, 0);
   16260              :   x5 = XEXP (x4, 1);
   16261              :   operands[2] = x5;
   16262              :   x6 = XVECEXP (x3, 0, 0);
   16263              :   switch (XWINT (x6, 0))
   16264              :     {
   16265              :     case 8L:
   16266              :       x7 = XVECEXP (x3, 0, 1);
   16267              :       if (XWINT (x7, 0) != 40L)
   16268              :         return -1;
   16269              :       x8 = XVECEXP (x3, 0, 2);
   16270              :       if (XWINT (x8, 0) != 9L)
   16271              :         return -1;
   16272              :       x9 = XVECEXP (x3, 0, 3);
   16273              :       if (XWINT (x9, 0) != 41L)
   16274              :         return -1;
   16275              :       x10 = XVECEXP (x3, 0, 4);
   16276              :       if (XWINT (x10, 0) != 10L)
   16277              :         return -1;
   16278              :       x11 = XVECEXP (x3, 0, 5);
   16279              :       if (XWINT (x11, 0) != 42L)
   16280              :         return -1;
   16281              :       x12 = XVECEXP (x3, 0, 6);
   16282              :       if (XWINT (x12, 0) != 11L)
   16283              :         return -1;
   16284              :       x13 = XVECEXP (x3, 0, 7);
   16285              :       if (XWINT (x13, 0) != 43L
   16286              :           || pattern1913 (x3) != 0)
   16287              :         return -1;
   16288              :       x14 = XVECEXP (x3, 0, 16);
   16289              :       if (XWINT (x14, 0) != 24L)
   16290              :         return -1;
   16291              :       x15 = XVECEXP (x3, 0, 17);
   16292              :       if (XWINT (x15, 0) != 56L)
   16293              :         return -1;
   16294              :       x16 = XVECEXP (x3, 0, 18);
   16295              :       if (XWINT (x16, 0) != 25L)
   16296              :         return -1;
   16297              :       x17 = XVECEXP (x3, 0, 19);
   16298              :       if (XWINT (x17, 0) != 57L)
   16299              :         return -1;
   16300              :       x18 = XVECEXP (x3, 0, 20);
   16301              :       if (XWINT (x18, 0) != 26L)
   16302              :         return -1;
   16303              :       x19 = XVECEXP (x3, 0, 21);
   16304              :       if (XWINT (x19, 0) != 58L)
   16305              :         return -1;
   16306              :       x20 = XVECEXP (x3, 0, 22);
   16307              :       if (XWINT (x20, 0) != 27L)
   16308              :         return -1;
   16309              :       x21 = XVECEXP (x3, 0, 23);
   16310              :       if (XWINT (x21, 0) != 59L
   16311              :           || pattern1919 (x3) != 0
   16312              :           || pattern1425 (x2, 
   16313              : E_V32QImode, 
   16314              : E_V64QImode) != 0
   16315              :           || !
   16316              : #line 19790 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16317              : (TARGET_AVX2 && 1 && 1))
   16318              :         return -1;
   16319              :       return 8366; /* avx2_interleave_highv32qi */
   16320              : 
   16321              :     case 0L:
   16322              :       x7 = XVECEXP (x3, 0, 1);
   16323              :       if (XWINT (x7, 0) != 32L)
   16324              :         return -1;
   16325              :       x8 = XVECEXP (x3, 0, 2);
   16326              :       if (XWINT (x8, 0) != 1L)
   16327              :         return -1;
   16328              :       x9 = XVECEXP (x3, 0, 3);
   16329              :       if (XWINT (x9, 0) != 33L)
   16330              :         return -1;
   16331              :       x10 = XVECEXP (x3, 0, 4);
   16332              :       if (XWINT (x10, 0) != 2L)
   16333              :         return -1;
   16334              :       x11 = XVECEXP (x3, 0, 5);
   16335              :       if (XWINT (x11, 0) != 34L)
   16336              :         return -1;
   16337              :       x12 = XVECEXP (x3, 0, 6);
   16338              :       if (XWINT (x12, 0) != 3L)
   16339              :         return -1;
   16340              :       x13 = XVECEXP (x3, 0, 7);
   16341              :       if (XWINT (x13, 0) != 35L)
   16342              :         return -1;
   16343              :       x14 = XVECEXP (x3, 0, 16);
   16344              :       if (XWINT (x14, 0) != 16L)
   16345              :         return -1;
   16346              :       x15 = XVECEXP (x3, 0, 17);
   16347              :       if (XWINT (x15, 0) != 48L)
   16348              :         return -1;
   16349              :       x16 = XVECEXP (x3, 0, 18);
   16350              :       if (XWINT (x16, 0) != 17L)
   16351              :         return -1;
   16352              :       x17 = XVECEXP (x3, 0, 19);
   16353              :       if (XWINT (x17, 0) != 49L)
   16354              :         return -1;
   16355              :       x18 = XVECEXP (x3, 0, 20);
   16356              :       if (XWINT (x18, 0) != 18L)
   16357              :         return -1;
   16358              :       x19 = XVECEXP (x3, 0, 21);
   16359              :       if (XWINT (x19, 0) != 50L)
   16360              :         return -1;
   16361              :       x20 = XVECEXP (x3, 0, 22);
   16362              :       if (XWINT (x20, 0) != 19L)
   16363              :         return -1;
   16364              :       x21 = XVECEXP (x3, 0, 23);
   16365              :       if (XWINT (x21, 0) != 51L)
   16366              :         return -1;
   16367              :       x22 = XVECEXP (x3, 0, 8);
   16368              :       switch (XWINT (x22, 0))
   16369              :         {
   16370              :         case 4L:
   16371              :           x23 = XVECEXP (x3, 0, 9);
   16372              :           if (XWINT (x23, 0) != 36L)
   16373              :             return -1;
   16374              :           x24 = XVECEXP (x3, 0, 10);
   16375              :           if (XWINT (x24, 0) != 5L)
   16376              :             return -1;
   16377              :           x25 = XVECEXP (x3, 0, 11);
   16378              :           if (XWINT (x25, 0) != 37L)
   16379              :             return -1;
   16380              :           x26 = XVECEXP (x3, 0, 12);
   16381              :           if (XWINT (x26, 0) != 6L)
   16382              :             return -1;
   16383              :           x27 = XVECEXP (x3, 0, 13);
   16384              :           if (XWINT (x27, 0) != 38L)
   16385              :             return -1;
   16386              :           x28 = XVECEXP (x3, 0, 14);
   16387              :           if (XWINT (x28, 0) != 7L)
   16388              :             return -1;
   16389              :           x29 = XVECEXP (x3, 0, 15);
   16390              :           if (XWINT (x29, 0) != 39L)
   16391              :             return -1;
   16392              :           x30 = XVECEXP (x3, 0, 24);
   16393              :           if (XWINT (x30, 0) != 20L)
   16394              :             return -1;
   16395              :           x31 = XVECEXP (x3, 0, 25);
   16396              :           if (XWINT (x31, 0) != 52L)
   16397              :             return -1;
   16398              :           x32 = XVECEXP (x3, 0, 26);
   16399              :           if (XWINT (x32, 0) != 21L)
   16400              :             return -1;
   16401              :           x33 = XVECEXP (x3, 0, 27);
   16402              :           if (XWINT (x33, 0) != 53L)
   16403              :             return -1;
   16404              :           x34 = XVECEXP (x3, 0, 28);
   16405              :           if (XWINT (x34, 0) != 22L)
   16406              :             return -1;
   16407              :           x35 = XVECEXP (x3, 0, 29);
   16408              :           if (XWINT (x35, 0) != 54L)
   16409              :             return -1;
   16410              :           x36 = XVECEXP (x3, 0, 30);
   16411              :           if (XWINT (x36, 0) != 23L)
   16412              :             return -1;
   16413              :           x37 = XVECEXP (x3, 0, 31);
   16414              :           if (XWINT (x37, 0) != 55L
   16415              :               || pattern1425 (x2, 
   16416              : E_V32QImode, 
   16417              : E_V64QImode) != 0
   16418              :               || !
   16419              : #line 19886 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16420              : (TARGET_AVX2 && 1 && 1))
   16421              :             return -1;
   16422              :           return 8372; /* avx2_interleave_lowv32qi */
   16423              : 
   16424              :         case 8L:
   16425              :           x23 = XVECEXP (x3, 0, 9);
   16426              :           if (XWINT (x23, 0) != 40L)
   16427              :             return -1;
   16428              :           x24 = XVECEXP (x3, 0, 10);
   16429              :           if (XWINT (x24, 0) != 9L)
   16430              :             return -1;
   16431              :           x25 = XVECEXP (x3, 0, 11);
   16432              :           if (XWINT (x25, 0) != 41L)
   16433              :             return -1;
   16434              :           x26 = XVECEXP (x3, 0, 12);
   16435              :           if (XWINT (x26, 0) != 10L)
   16436              :             return -1;
   16437              :           x27 = XVECEXP (x3, 0, 13);
   16438              :           if (XWINT (x27, 0) != 42L)
   16439              :             return -1;
   16440              :           x28 = XVECEXP (x3, 0, 14);
   16441              :           if (XWINT (x28, 0) != 11L)
   16442              :             return -1;
   16443              :           x29 = XVECEXP (x3, 0, 15);
   16444              :           if (XWINT (x29, 0) != 43L)
   16445              :             return -1;
   16446              :           x30 = XVECEXP (x3, 0, 24);
   16447              :           if (XWINT (x30, 0) != 24L)
   16448              :             return -1;
   16449              :           x31 = XVECEXP (x3, 0, 25);
   16450              :           if (XWINT (x31, 0) != 56L)
   16451              :             return -1;
   16452              :           x32 = XVECEXP (x3, 0, 26);
   16453              :           if (XWINT (x32, 0) != 25L)
   16454              :             return -1;
   16455              :           x33 = XVECEXP (x3, 0, 27);
   16456              :           if (XWINT (x33, 0) != 57L)
   16457              :             return -1;
   16458              :           x34 = XVECEXP (x3, 0, 28);
   16459              :           if (XWINT (x34, 0) != 26L)
   16460              :             return -1;
   16461              :           x35 = XVECEXP (x3, 0, 29);
   16462              :           if (XWINT (x35, 0) != 58L)
   16463              :             return -1;
   16464              :           x36 = XVECEXP (x3, 0, 30);
   16465              :           if (XWINT (x36, 0) != 27L)
   16466              :             return -1;
   16467              :           x37 = XVECEXP (x3, 0, 31);
   16468              :           if (XWINT (x37, 0) != 59L)
   16469              :             return -1;
   16470              :           switch (GET_MODE (operands[0]))
   16471              :             {
   16472              :             case E_V32HImode:
   16473              :               if (pattern1425 (x2, 
   16474              : E_V32HImode, 
   16475              : E_V64HImode) != 0
   16476              :                   || !
   16477              : #line 20006 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16478              : (TARGET_AVX512BW))
   16479              :                 return -1;
   16480              :               return 8394; /* *avx512bw_interleave_lowv32hi */
   16481              : 
   16482              :             case E_V32HFmode:
   16483              :               if (pattern1425 (x2, 
   16484              : E_V32HFmode, 
   16485              : E_V64HFmode) != 0
   16486              :                   || !
   16487              : #line 20006 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16488              : (TARGET_AVX512BW))
   16489              :                 return -1;
   16490              :               return 8396; /* *avx512bw_interleave_lowv32hf */
   16491              : 
   16492              :             case E_V32BFmode:
   16493              :               if (pattern1425 (x2, 
   16494              : E_V32BFmode, 
   16495              : E_V64BFmode) != 0
   16496              :                   || !
   16497              : #line 20006 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16498              : (TARGET_AVX512BW))
   16499              :                 return -1;
   16500              :               return 8398; /* *avx512bw_interleave_lowv32bf */
   16501              : 
   16502              :             default:
   16503              :               return -1;
   16504              :             }
   16505              : 
   16506              :         default:
   16507              :           return -1;
   16508              :         }
   16509              : 
   16510              :     case 4L:
   16511              :       x7 = XVECEXP (x3, 0, 1);
   16512              :       if (XWINT (x7, 0) != 36L)
   16513              :         return -1;
   16514              :       x8 = XVECEXP (x3, 0, 2);
   16515              :       if (XWINT (x8, 0) != 5L)
   16516              :         return -1;
   16517              :       x9 = XVECEXP (x3, 0, 3);
   16518              :       if (XWINT (x9, 0) != 37L)
   16519              :         return -1;
   16520              :       x10 = XVECEXP (x3, 0, 4);
   16521              :       if (XWINT (x10, 0) != 6L)
   16522              :         return -1;
   16523              :       x11 = XVECEXP (x3, 0, 5);
   16524              :       if (XWINT (x11, 0) != 38L)
   16525              :         return -1;
   16526              :       x12 = XVECEXP (x3, 0, 6);
   16527              :       if (XWINT (x12, 0) != 7L)
   16528              :         return -1;
   16529              :       x13 = XVECEXP (x3, 0, 7);
   16530              :       if (XWINT (x13, 0) != 39L
   16531              :           || pattern1913 (x3) != 0)
   16532              :         return -1;
   16533              :       x14 = XVECEXP (x3, 0, 16);
   16534              :       if (XWINT (x14, 0) != 20L)
   16535              :         return -1;
   16536              :       x15 = XVECEXP (x3, 0, 17);
   16537              :       if (XWINT (x15, 0) != 52L)
   16538              :         return -1;
   16539              :       x16 = XVECEXP (x3, 0, 18);
   16540              :       if (XWINT (x16, 0) != 21L)
   16541              :         return -1;
   16542              :       x17 = XVECEXP (x3, 0, 19);
   16543              :       if (XWINT (x17, 0) != 53L)
   16544              :         return -1;
   16545              :       x18 = XVECEXP (x3, 0, 20);
   16546              :       if (XWINT (x18, 0) != 22L)
   16547              :         return -1;
   16548              :       x19 = XVECEXP (x3, 0, 21);
   16549              :       if (XWINT (x19, 0) != 54L)
   16550              :         return -1;
   16551              :       x20 = XVECEXP (x3, 0, 22);
   16552              :       if (XWINT (x20, 0) != 23L)
   16553              :         return -1;
   16554              :       x21 = XVECEXP (x3, 0, 23);
   16555              :       if (XWINT (x21, 0) != 55L
   16556              :           || pattern1919 (x3) != 0)
   16557              :         return -1;
   16558              :       switch (GET_MODE (operands[0]))
   16559              :         {
   16560              :         case E_V32HImode:
   16561              :           if (pattern1425 (x2, 
   16562              : E_V32HImode, 
   16563              : E_V64HImode) != 0
   16564              :               || !
   16565              : #line 19938 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16566              : (TARGET_AVX512BW))
   16567              :             return -1;
   16568              :           return 8376; /* avx512bw_interleave_highv32hi */
   16569              : 
   16570              :         case E_V32HFmode:
   16571              :           if (pattern1425 (x2, 
   16572              : E_V32HFmode, 
   16573              : E_V64HFmode) != 0
   16574              :               || !
   16575              : #line 19938 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16576              : (TARGET_AVX512BW))
   16577              :             return -1;
   16578              :           return 8378; /* avx512bw_interleave_highv32hf */
   16579              : 
   16580              :         case E_V32BFmode:
   16581              :           if (pattern1425 (x2, 
   16582              : E_V32BFmode, 
   16583              : E_V64BFmode) != 0
   16584              :               || !
   16585              : #line 19938 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16586              : (TARGET_AVX512BW))
   16587              :             return -1;
   16588              :           return 8380; /* avx512bw_interleave_highv32bf */
   16589              : 
   16590              :         default:
   16591              :           return -1;
   16592              :         }
   16593              : 
   16594              :     default:
   16595              :       return -1;
   16596              :     }
   16597              : }
   16598              : 
   16599              :  int
   16600              : recog_298 (rtx x1 ATTRIBUTE_UNUSED,
   16601              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16602              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16603              : {
   16604              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16605              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   16606              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   16607              :   int res ATTRIBUTE_UNUSED;
   16608              :   x2 = XEXP (x1, 1);
   16609              :   x3 = XEXP (x2, 1);
   16610              :   x4 = XVECEXP (x3, 0, 1);
   16611              :   operands[3] = x4;
   16612              :   x5 = XVECEXP (x3, 0, 2);
   16613              :   operands[4] = x5;
   16614              :   x6 = XVECEXP (x3, 0, 3);
   16615              :   operands[5] = x6;
   16616              :   x7 = XVECEXP (x3, 0, 5);
   16617              :   operands[7] = x7;
   16618              :   x8 = XVECEXP (x3, 0, 6);
   16619              :   operands[8] = x8;
   16620              :   x9 = XVECEXP (x3, 0, 7);
   16621              :   operands[9] = x9;
   16622              :   x10 = XVECEXP (x3, 0, 8);
   16623              :   operands[10] = x10;
   16624              :   x11 = XVECEXP (x3, 0, 9);
   16625              :   operands[11] = x11;
   16626              :   x12 = XVECEXP (x3, 0, 10);
   16627              :   operands[12] = x12;
   16628              :   x13 = XVECEXP (x3, 0, 11);
   16629              :   operands[13] = x13;
   16630              :   x14 = XVECEXP (x3, 0, 12);
   16631              :   operands[14] = x14;
   16632              :   x15 = XVECEXP (x3, 0, 13);
   16633              :   operands[15] = x15;
   16634              :   x16 = XVECEXP (x3, 0, 14);
   16635              :   operands[16] = x16;
   16636              :   x17 = XVECEXP (x3, 0, 15);
   16637              :   operands[17] = x17;
   16638              :   switch (GET_MODE (operands[0]))
   16639              :     {
   16640              :     case E_V16SFmode:
   16641              :       if (!register_operand (operands[0], E_V16SFmode)
   16642              :           || GET_MODE (x2) != E_V16SFmode
   16643              :           || !register_operand (operands[1], E_V16SFmode)
   16644              :           || pattern1861 () != 0
   16645              :           || !
   16646              : #line 20805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16647              : (TARGET_AVX512F
   16648              :    && (INTVAL (operands[2]) & 3) == 0
   16649              :    && INTVAL (operands[2]) == INTVAL (operands[3]) - 1
   16650              :    && INTVAL (operands[2]) == INTVAL (operands[4]) - 2
   16651              :    && INTVAL (operands[2]) == INTVAL (operands[5]) - 3
   16652              :    && (INTVAL (operands[6]) & 3) == 0
   16653              :    && INTVAL (operands[6]) == INTVAL (operands[7]) - 1
   16654              :    && INTVAL (operands[6]) == INTVAL (operands[8]) - 2
   16655              :    && INTVAL (operands[6]) == INTVAL (operands[9]) - 3
   16656              :    && (INTVAL (operands[10]) & 3) == 0
   16657              :    && INTVAL (operands[10]) == INTVAL (operands[11]) - 1
   16658              :    && INTVAL (operands[10]) == INTVAL (operands[12]) - 2
   16659              :    && INTVAL (operands[10]) == INTVAL (operands[13]) - 3
   16660              :    && (INTVAL (operands[14]) & 3) == 0
   16661              :    && INTVAL (operands[14]) == INTVAL (operands[15]) - 1
   16662              :    && INTVAL (operands[14]) == INTVAL (operands[16]) - 2
   16663              :    && INTVAL (operands[14]) == INTVAL (operands[17]) - 3))
   16664              :         return -1;
   16665              :       return 8478; /* *avx512f_shuf_f32x4_1_1 */
   16666              : 
   16667              :     case E_V16SImode:
   16668              :       if (!register_operand (operands[0], E_V16SImode)
   16669              :           || GET_MODE (x2) != E_V16SImode)
   16670              :         return -1;
   16671              :       if (register_operand (operands[1], E_V16SImode)
   16672              :           && pattern1861 () == 0
   16673              :           && 
   16674              : #line 20805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16675              : (TARGET_AVX512F
   16676              :    && (INTVAL (operands[2]) & 3) == 0
   16677              :    && INTVAL (operands[2]) == INTVAL (operands[3]) - 1
   16678              :    && INTVAL (operands[2]) == INTVAL (operands[4]) - 2
   16679              :    && INTVAL (operands[2]) == INTVAL (operands[5]) - 3
   16680              :    && (INTVAL (operands[6]) & 3) == 0
   16681              :    && INTVAL (operands[6]) == INTVAL (operands[7]) - 1
   16682              :    && INTVAL (operands[6]) == INTVAL (operands[8]) - 2
   16683              :    && INTVAL (operands[6]) == INTVAL (operands[9]) - 3
   16684              :    && (INTVAL (operands[10]) & 3) == 0
   16685              :    && INTVAL (operands[10]) == INTVAL (operands[11]) - 1
   16686              :    && INTVAL (operands[10]) == INTVAL (operands[12]) - 2
   16687              :    && INTVAL (operands[10]) == INTVAL (operands[13]) - 3
   16688              :    && (INTVAL (operands[14]) & 3) == 0
   16689              :    && INTVAL (operands[14]) == INTVAL (operands[15]) - 1
   16690              :    && INTVAL (operands[14]) == INTVAL (operands[16]) - 2
   16691              :    && INTVAL (operands[14]) == INTVAL (operands[17]) - 3))
   16692              :         return 8480; /* *avx512f_shuf_i32x4_1_1 */
   16693              :       if (!nonimmediate_operand (operands[1], E_V16SImode)
   16694              :           || pattern1728 () != 0
   16695              :           || !const_8_to_11_operand (operands[10], E_VOIDmode)
   16696              :           || !const_8_to_11_operand (operands[11], E_VOIDmode)
   16697              :           || !const_8_to_11_operand (operands[12], E_VOIDmode)
   16698              :           || !const_8_to_11_operand (operands[13], E_VOIDmode)
   16699              :           || !const_12_to_15_operand (operands[14], E_VOIDmode)
   16700              :           || !const_12_to_15_operand (operands[15], E_VOIDmode)
   16701              :           || !const_12_to_15_operand (operands[16], E_VOIDmode)
   16702              :           || !const_12_to_15_operand (operands[17], E_VOIDmode)
   16703              :           || !
   16704              : #line 20887 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16705              : (TARGET_AVX512F
   16706              :    && INTVAL (operands[2]) + 4 == INTVAL (operands[6])
   16707              :    && INTVAL (operands[3]) + 4 == INTVAL (operands[7])
   16708              :    && INTVAL (operands[4]) + 4 == INTVAL (operands[8])
   16709              :    && INTVAL (operands[5]) + 4 == INTVAL (operands[9])
   16710              :    && INTVAL (operands[2]) + 8 == INTVAL (operands[10])
   16711              :    && INTVAL (operands[3]) + 8 == INTVAL (operands[11])
   16712              :    && INTVAL (operands[4]) + 8 == INTVAL (operands[12])
   16713              :    && INTVAL (operands[5]) + 8 == INTVAL (operands[13])
   16714              :    && INTVAL (operands[2]) + 12 == INTVAL (operands[14])
   16715              :    && INTVAL (operands[3]) + 12 == INTVAL (operands[15])
   16716              :    && INTVAL (operands[4]) + 12 == INTVAL (operands[16])
   16717              :    && INTVAL (operands[5]) + 12 == INTVAL (operands[17])))
   16718              :         return -1;
   16719              :       return 8482; /* avx512f_pshufd_1 */
   16720              : 
   16721              :     default:
   16722              :       return -1;
   16723              :     }
   16724              : }
   16725              : 
   16726              :  int
   16727              : recog_309 (rtx x1 ATTRIBUTE_UNUSED,
   16728              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16729              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16730              : {
   16731              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16732              :   rtx x2, x3, x4;
   16733              :   int res ATTRIBUTE_UNUSED;
   16734              :   x2 = XEXP (x1, 1);
   16735              :   x3 = XEXP (x2, 0);
   16736              :   x4 = XEXP (x3, 0);
   16737              :   switch (GET_CODE (x4))
   16738              :     {
   16739              :     case REG:
   16740              :     case SUBREG:
   16741              :     case MEM:
   16742              :     case NOT:
   16743              :       switch (pattern535 (x2))
   16744              :         {
   16745              :         case 0:
   16746              :           if (!(
   16747              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16748              : ((64 == 64 || TARGET_AVX512VL
   16749              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16750              :    && ix86_pre_reload_split ()
   16751              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16752              :                     STRIP_UNARY (operands[4]))
   16753              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16754              :                        STRIP_UNARY (operands[4]))
   16755              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16756              :                        STRIP_UNARY (operands[3]))
   16757              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16758              :                        STRIP_UNARY (operands[3])))) && 
   16759              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16760              : (TARGET_AVX512F)))
   16761              :             return -1;
   16762              :           return 5557; /* *avx512bw_vpternlogv64qi_1 */
   16763              : 
   16764              :         case 1:
   16765              :           if (!(
   16766              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16767              : ((32 == 64 || TARGET_AVX512VL
   16768              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16769              :    && ix86_pre_reload_split ()
   16770              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16771              :                     STRIP_UNARY (operands[4]))
   16772              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16773              :                        STRIP_UNARY (operands[4]))
   16774              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16775              :                        STRIP_UNARY (operands[3]))
   16776              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16777              :                        STRIP_UNARY (operands[3])))) && 
   16778              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16779              : (TARGET_AVX)))
   16780              :             return -1;
   16781              :           return 5584; /* *avx512vl_vpternlogv32qi_1 */
   16782              : 
   16783              :         case 2:
   16784              :           if (!
   16785              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16786              : ((16 == 64 || TARGET_AVX512VL
   16787              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16788              :    && ix86_pre_reload_split ()
   16789              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16790              :                     STRIP_UNARY (operands[4]))
   16791              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16792              :                        STRIP_UNARY (operands[4]))
   16793              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16794              :                        STRIP_UNARY (operands[3]))
   16795              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16796              :                        STRIP_UNARY (operands[3])))))
   16797              :             return -1;
   16798              :           return 5611; /* *avx512vl_vpternlogv16qi_1 */
   16799              : 
   16800              :         case 3:
   16801              :           if (!(
   16802              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16803              : ((64 == 64 || TARGET_AVX512VL
   16804              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16805              :    && ix86_pre_reload_split ()
   16806              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16807              :                     STRIP_UNARY (operands[4]))
   16808              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16809              :                        STRIP_UNARY (operands[4]))
   16810              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16811              :                        STRIP_UNARY (operands[3]))
   16812              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16813              :                        STRIP_UNARY (operands[3])))) && 
   16814              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16815              : (TARGET_AVX512F)))
   16816              :             return -1;
   16817              :           return 5638; /* *avx512bw_vpternlogv32hi_1 */
   16818              : 
   16819              :         case 4:
   16820              :           if (!(
   16821              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16822              : ((32 == 64 || TARGET_AVX512VL
   16823              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16824              :    && ix86_pre_reload_split ()
   16825              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16826              :                     STRIP_UNARY (operands[4]))
   16827              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16828              :                        STRIP_UNARY (operands[4]))
   16829              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16830              :                        STRIP_UNARY (operands[3]))
   16831              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16832              :                        STRIP_UNARY (operands[3])))) && 
   16833              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16834              : (TARGET_AVX)))
   16835              :             return -1;
   16836              :           return 5665; /* *avx512vl_vpternlogv16hi_1 */
   16837              : 
   16838              :         case 5:
   16839              :           if (!
   16840              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16841              : ((16 == 64 || TARGET_AVX512VL
   16842              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16843              :    && ix86_pre_reload_split ()
   16844              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16845              :                     STRIP_UNARY (operands[4]))
   16846              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16847              :                        STRIP_UNARY (operands[4]))
   16848              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16849              :                        STRIP_UNARY (operands[3]))
   16850              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16851              :                        STRIP_UNARY (operands[3])))))
   16852              :             return -1;
   16853              :           return 5692; /* *avx512vl_vpternlogv8hi_1 */
   16854              : 
   16855              :         case 6:
   16856              :           if (!(
   16857              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16858              : ((64 == 64 || TARGET_AVX512VL
   16859              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16860              :    && ix86_pre_reload_split ()
   16861              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16862              :                     STRIP_UNARY (operands[4]))
   16863              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16864              :                        STRIP_UNARY (operands[4]))
   16865              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16866              :                        STRIP_UNARY (operands[3]))
   16867              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16868              :                        STRIP_UNARY (operands[3])))) && 
   16869              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16870              : (TARGET_AVX512F)))
   16871              :             return -1;
   16872              :           return 5719; /* *avx512f_vpternlogv16si_1 */
   16873              : 
   16874              :         case 7:
   16875              :           if (!(
   16876              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16877              : ((32 == 64 || TARGET_AVX512VL
   16878              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16879              :    && ix86_pre_reload_split ()
   16880              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16881              :                     STRIP_UNARY (operands[4]))
   16882              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16883              :                        STRIP_UNARY (operands[4]))
   16884              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16885              :                        STRIP_UNARY (operands[3]))
   16886              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16887              :                        STRIP_UNARY (operands[3])))) && 
   16888              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16889              : (TARGET_AVX)))
   16890              :             return -1;
   16891              :           return 5746; /* *avx512vl_vpternlogv8si_1 */
   16892              : 
   16893              :         case 8:
   16894              :           if (!
   16895              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16896              : ((16 == 64 || TARGET_AVX512VL
   16897              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16898              :    && ix86_pre_reload_split ()
   16899              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16900              :                     STRIP_UNARY (operands[4]))
   16901              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16902              :                        STRIP_UNARY (operands[4]))
   16903              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16904              :                        STRIP_UNARY (operands[3]))
   16905              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16906              :                        STRIP_UNARY (operands[3])))))
   16907              :             return -1;
   16908              :           return 5773; /* *avx512vl_vpternlogv4si_1 */
   16909              : 
   16910              :         case 9:
   16911              :           if (!(
   16912              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16913              : ((64 == 64 || TARGET_AVX512VL
   16914              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16915              :    && ix86_pre_reload_split ()
   16916              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16917              :                     STRIP_UNARY (operands[4]))
   16918              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16919              :                        STRIP_UNARY (operands[4]))
   16920              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16921              :                        STRIP_UNARY (operands[3]))
   16922              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16923              :                        STRIP_UNARY (operands[3])))) && 
   16924              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16925              : (TARGET_AVX512F)))
   16926              :             return -1;
   16927              :           return 5800; /* *avx512f_vpternlogv8di_1 */
   16928              : 
   16929              :         case 10:
   16930              :           if (!(
   16931              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16932              : ((32 == 64 || TARGET_AVX512VL
   16933              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16934              :    && ix86_pre_reload_split ()
   16935              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16936              :                     STRIP_UNARY (operands[4]))
   16937              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16938              :                        STRIP_UNARY (operands[4]))
   16939              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16940              :                        STRIP_UNARY (operands[3]))
   16941              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16942              :                        STRIP_UNARY (operands[3])))) && 
   16943              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16944              : (TARGET_AVX)))
   16945              :             return -1;
   16946              :           return 5827; /* *avx512vl_vpternlogv4di_1 */
   16947              : 
   16948              :         case 11:
   16949              :           if (!
   16950              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16951              : ((16 == 64 || TARGET_AVX512VL
   16952              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16953              :    && ix86_pre_reload_split ()
   16954              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16955              :                     STRIP_UNARY (operands[4]))
   16956              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16957              :                        STRIP_UNARY (operands[4]))
   16958              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16959              :                        STRIP_UNARY (operands[3]))
   16960              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16961              :                        STRIP_UNARY (operands[3])))))
   16962              :             return -1;
   16963              :           return 5854; /* *avx512vl_vpternlogv2di_1 */
   16964              : 
   16965              :         case 12:
   16966              :           if (!(
   16967              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16968              : ((64 == 64 || TARGET_AVX512VL
   16969              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16970              :    && ix86_pre_reload_split ()
   16971              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16972              :                     STRIP_UNARY (operands[4]))
   16973              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16974              :                        STRIP_UNARY (operands[4]))
   16975              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16976              :                        STRIP_UNARY (operands[3]))
   16977              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16978              :                        STRIP_UNARY (operands[3])))) && 
   16979              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16980              : (TARGET_AVX512F)))
   16981              :             return -1;
   16982              :           return 5560; /* *avx512bw_vpternlogv64qi_1 */
   16983              : 
   16984              :         case 13:
   16985              :           if (!(
   16986              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16987              : ((32 == 64 || TARGET_AVX512VL
   16988              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   16989              :    && ix86_pre_reload_split ()
   16990              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   16991              :                     STRIP_UNARY (operands[4]))
   16992              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16993              :                        STRIP_UNARY (operands[4]))
   16994              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   16995              :                        STRIP_UNARY (operands[3]))
   16996              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   16997              :                        STRIP_UNARY (operands[3])))) && 
   16998              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16999              : (TARGET_AVX)))
   17000              :             return -1;
   17001              :           return 5587; /* *avx512vl_vpternlogv32qi_1 */
   17002              : 
   17003              :         case 14:
   17004              :           if (!
   17005              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17006              : ((16 == 64 || TARGET_AVX512VL
   17007              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17008              :    && ix86_pre_reload_split ()
   17009              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17010              :                     STRIP_UNARY (operands[4]))
   17011              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17012              :                        STRIP_UNARY (operands[4]))
   17013              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17014              :                        STRIP_UNARY (operands[3]))
   17015              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17016              :                        STRIP_UNARY (operands[3])))))
   17017              :             return -1;
   17018              :           return 5614; /* *avx512vl_vpternlogv16qi_1 */
   17019              : 
   17020              :         case 15:
   17021              :           if (!(
   17022              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17023              : ((64 == 64 || TARGET_AVX512VL
   17024              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17025              :    && ix86_pre_reload_split ()
   17026              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17027              :                     STRIP_UNARY (operands[4]))
   17028              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17029              :                        STRIP_UNARY (operands[4]))
   17030              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17031              :                        STRIP_UNARY (operands[3]))
   17032              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17033              :                        STRIP_UNARY (operands[3])))) && 
   17034              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17035              : (TARGET_AVX512F)))
   17036              :             return -1;
   17037              :           return 5641; /* *avx512bw_vpternlogv32hi_1 */
   17038              : 
   17039              :         case 16:
   17040              :           if (!(
   17041              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17042              : ((32 == 64 || TARGET_AVX512VL
   17043              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17044              :    && ix86_pre_reload_split ()
   17045              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17046              :                     STRIP_UNARY (operands[4]))
   17047              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17048              :                        STRIP_UNARY (operands[4]))
   17049              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17050              :                        STRIP_UNARY (operands[3]))
   17051              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17052              :                        STRIP_UNARY (operands[3])))) && 
   17053              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17054              : (TARGET_AVX)))
   17055              :             return -1;
   17056              :           return 5668; /* *avx512vl_vpternlogv16hi_1 */
   17057              : 
   17058              :         case 17:
   17059              :           if (!
   17060              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17061              : ((16 == 64 || TARGET_AVX512VL
   17062              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17063              :    && ix86_pre_reload_split ()
   17064              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17065              :                     STRIP_UNARY (operands[4]))
   17066              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17067              :                        STRIP_UNARY (operands[4]))
   17068              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17069              :                        STRIP_UNARY (operands[3]))
   17070              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17071              :                        STRIP_UNARY (operands[3])))))
   17072              :             return -1;
   17073              :           return 5695; /* *avx512vl_vpternlogv8hi_1 */
   17074              : 
   17075              :         case 18:
   17076              :           if (!(
   17077              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17078              : ((64 == 64 || TARGET_AVX512VL
   17079              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17080              :    && ix86_pre_reload_split ()
   17081              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17082              :                     STRIP_UNARY (operands[4]))
   17083              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17084              :                        STRIP_UNARY (operands[4]))
   17085              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17086              :                        STRIP_UNARY (operands[3]))
   17087              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17088              :                        STRIP_UNARY (operands[3])))) && 
   17089              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17090              : (TARGET_AVX512F)))
   17091              :             return -1;
   17092              :           return 5722; /* *avx512f_vpternlogv16si_1 */
   17093              : 
   17094              :         case 19:
   17095              :           if (!(
   17096              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17097              : ((32 == 64 || TARGET_AVX512VL
   17098              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17099              :    && ix86_pre_reload_split ()
   17100              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17101              :                     STRIP_UNARY (operands[4]))
   17102              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17103              :                        STRIP_UNARY (operands[4]))
   17104              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17105              :                        STRIP_UNARY (operands[3]))
   17106              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17107              :                        STRIP_UNARY (operands[3])))) && 
   17108              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17109              : (TARGET_AVX)))
   17110              :             return -1;
   17111              :           return 5749; /* *avx512vl_vpternlogv8si_1 */
   17112              : 
   17113              :         case 20:
   17114              :           if (!
   17115              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17116              : ((16 == 64 || TARGET_AVX512VL
   17117              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17118              :    && ix86_pre_reload_split ()
   17119              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17120              :                     STRIP_UNARY (operands[4]))
   17121              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17122              :                        STRIP_UNARY (operands[4]))
   17123              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17124              :                        STRIP_UNARY (operands[3]))
   17125              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17126              :                        STRIP_UNARY (operands[3])))))
   17127              :             return -1;
   17128              :           return 5776; /* *avx512vl_vpternlogv4si_1 */
   17129              : 
   17130              :         case 21:
   17131              :           if (!(
   17132              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17133              : ((64 == 64 || TARGET_AVX512VL
   17134              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17135              :    && ix86_pre_reload_split ()
   17136              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17137              :                     STRIP_UNARY (operands[4]))
   17138              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17139              :                        STRIP_UNARY (operands[4]))
   17140              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17141              :                        STRIP_UNARY (operands[3]))
   17142              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17143              :                        STRIP_UNARY (operands[3])))) && 
   17144              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17145              : (TARGET_AVX512F)))
   17146              :             return -1;
   17147              :           return 5803; /* *avx512f_vpternlogv8di_1 */
   17148              : 
   17149              :         case 22:
   17150              :           if (!(
   17151              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17152              : ((32 == 64 || TARGET_AVX512VL
   17153              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17154              :    && ix86_pre_reload_split ()
   17155              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17156              :                     STRIP_UNARY (operands[4]))
   17157              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17158              :                        STRIP_UNARY (operands[4]))
   17159              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17160              :                        STRIP_UNARY (operands[3]))
   17161              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17162              :                        STRIP_UNARY (operands[3])))) && 
   17163              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17164              : (TARGET_AVX)))
   17165              :             return -1;
   17166              :           return 5830; /* *avx512vl_vpternlogv4di_1 */
   17167              : 
   17168              :         case 23:
   17169              :           if (!
   17170              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17171              : ((16 == 64 || TARGET_AVX512VL
   17172              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17173              :    && ix86_pre_reload_split ()
   17174              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17175              :                     STRIP_UNARY (operands[4]))
   17176              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17177              :                        STRIP_UNARY (operands[4]))
   17178              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17179              :                        STRIP_UNARY (operands[3]))
   17180              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17181              :                        STRIP_UNARY (operands[3])))))
   17182              :             return -1;
   17183              :           return 5857; /* *avx512vl_vpternlogv2di_1 */
   17184              : 
   17185              :         case 24:
   17186              :           if (!(
   17187              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17188              : ((64 == 64 || TARGET_AVX512VL
   17189              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17190              :    && ix86_pre_reload_split ()
   17191              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17192              :                     STRIP_UNARY (operands[4]))
   17193              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17194              :                        STRIP_UNARY (operands[4]))
   17195              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17196              :                        STRIP_UNARY (operands[3]))
   17197              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17198              :                        STRIP_UNARY (operands[3])))) && 
   17199              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17200              : (TARGET_AVX512F)))
   17201              :             return -1;
   17202              :           return 5563; /* *avx512bw_vpternlogv64qi_1 */
   17203              : 
   17204              :         case 25:
   17205              :           if (!(
   17206              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17207              : ((32 == 64 || TARGET_AVX512VL
   17208              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17209              :    && ix86_pre_reload_split ()
   17210              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17211              :                     STRIP_UNARY (operands[4]))
   17212              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17213              :                        STRIP_UNARY (operands[4]))
   17214              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17215              :                        STRIP_UNARY (operands[3]))
   17216              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17217              :                        STRIP_UNARY (operands[3])))) && 
   17218              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17219              : (TARGET_AVX)))
   17220              :             return -1;
   17221              :           return 5590; /* *avx512vl_vpternlogv32qi_1 */
   17222              : 
   17223              :         case 26:
   17224              :           if (!
   17225              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17226              : ((16 == 64 || TARGET_AVX512VL
   17227              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17228              :    && ix86_pre_reload_split ()
   17229              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17230              :                     STRIP_UNARY (operands[4]))
   17231              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17232              :                        STRIP_UNARY (operands[4]))
   17233              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17234              :                        STRIP_UNARY (operands[3]))
   17235              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17236              :                        STRIP_UNARY (operands[3])))))
   17237              :             return -1;
   17238              :           return 5617; /* *avx512vl_vpternlogv16qi_1 */
   17239              : 
   17240              :         case 27:
   17241              :           if (!(
   17242              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17243              : ((64 == 64 || TARGET_AVX512VL
   17244              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17245              :    && ix86_pre_reload_split ()
   17246              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17247              :                     STRIP_UNARY (operands[4]))
   17248              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17249              :                        STRIP_UNARY (operands[4]))
   17250              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17251              :                        STRIP_UNARY (operands[3]))
   17252              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17253              :                        STRIP_UNARY (operands[3])))) && 
   17254              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17255              : (TARGET_AVX512F)))
   17256              :             return -1;
   17257              :           return 5644; /* *avx512bw_vpternlogv32hi_1 */
   17258              : 
   17259              :         case 28:
   17260              :           if (!(
   17261              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17262              : ((32 == 64 || TARGET_AVX512VL
   17263              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17264              :    && ix86_pre_reload_split ()
   17265              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17266              :                     STRIP_UNARY (operands[4]))
   17267              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17268              :                        STRIP_UNARY (operands[4]))
   17269              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17270              :                        STRIP_UNARY (operands[3]))
   17271              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17272              :                        STRIP_UNARY (operands[3])))) && 
   17273              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17274              : (TARGET_AVX)))
   17275              :             return -1;
   17276              :           return 5671; /* *avx512vl_vpternlogv16hi_1 */
   17277              : 
   17278              :         case 29:
   17279              :           if (!
   17280              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17281              : ((16 == 64 || TARGET_AVX512VL
   17282              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17283              :    && ix86_pre_reload_split ()
   17284              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17285              :                     STRIP_UNARY (operands[4]))
   17286              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17287              :                        STRIP_UNARY (operands[4]))
   17288              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17289              :                        STRIP_UNARY (operands[3]))
   17290              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17291              :                        STRIP_UNARY (operands[3])))))
   17292              :             return -1;
   17293              :           return 5698; /* *avx512vl_vpternlogv8hi_1 */
   17294              : 
   17295              :         case 30:
   17296              :           if (!(
   17297              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17298              : ((64 == 64 || TARGET_AVX512VL
   17299              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17300              :    && ix86_pre_reload_split ()
   17301              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17302              :                     STRIP_UNARY (operands[4]))
   17303              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17304              :                        STRIP_UNARY (operands[4]))
   17305              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17306              :                        STRIP_UNARY (operands[3]))
   17307              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17308              :                        STRIP_UNARY (operands[3])))) && 
   17309              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17310              : (TARGET_AVX512F)))
   17311              :             return -1;
   17312              :           return 5725; /* *avx512f_vpternlogv16si_1 */
   17313              : 
   17314              :         case 31:
   17315              :           if (!(
   17316              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17317              : ((32 == 64 || TARGET_AVX512VL
   17318              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17319              :    && ix86_pre_reload_split ()
   17320              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17321              :                     STRIP_UNARY (operands[4]))
   17322              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17323              :                        STRIP_UNARY (operands[4]))
   17324              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17325              :                        STRIP_UNARY (operands[3]))
   17326              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17327              :                        STRIP_UNARY (operands[3])))) && 
   17328              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17329              : (TARGET_AVX)))
   17330              :             return -1;
   17331              :           return 5752; /* *avx512vl_vpternlogv8si_1 */
   17332              : 
   17333              :         case 32:
   17334              :           if (!
   17335              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17336              : ((16 == 64 || TARGET_AVX512VL
   17337              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17338              :    && ix86_pre_reload_split ()
   17339              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17340              :                     STRIP_UNARY (operands[4]))
   17341              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17342              :                        STRIP_UNARY (operands[4]))
   17343              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17344              :                        STRIP_UNARY (operands[3]))
   17345              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17346              :                        STRIP_UNARY (operands[3])))))
   17347              :             return -1;
   17348              :           return 5779; /* *avx512vl_vpternlogv4si_1 */
   17349              : 
   17350              :         case 33:
   17351              :           if (!(
   17352              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17353              : ((64 == 64 || TARGET_AVX512VL
   17354              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17355              :    && ix86_pre_reload_split ()
   17356              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17357              :                     STRIP_UNARY (operands[4]))
   17358              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17359              :                        STRIP_UNARY (operands[4]))
   17360              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17361              :                        STRIP_UNARY (operands[3]))
   17362              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17363              :                        STRIP_UNARY (operands[3])))) && 
   17364              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17365              : (TARGET_AVX512F)))
   17366              :             return -1;
   17367              :           return 5806; /* *avx512f_vpternlogv8di_1 */
   17368              : 
   17369              :         case 34:
   17370              :           if (!(
   17371              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17372              : ((32 == 64 || TARGET_AVX512VL
   17373              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17374              :    && ix86_pre_reload_split ()
   17375              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17376              :                     STRIP_UNARY (operands[4]))
   17377              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17378              :                        STRIP_UNARY (operands[4]))
   17379              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17380              :                        STRIP_UNARY (operands[3]))
   17381              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17382              :                        STRIP_UNARY (operands[3])))) && 
   17383              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17384              : (TARGET_AVX)))
   17385              :             return -1;
   17386              :           return 5833; /* *avx512vl_vpternlogv4di_1 */
   17387              : 
   17388              :         case 35:
   17389              :           if (!
   17390              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17391              : ((16 == 64 || TARGET_AVX512VL
   17392              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17393              :    && ix86_pre_reload_split ()
   17394              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17395              :                     STRIP_UNARY (operands[4]))
   17396              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17397              :                        STRIP_UNARY (operands[4]))
   17398              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17399              :                        STRIP_UNARY (operands[3]))
   17400              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17401              :                        STRIP_UNARY (operands[3])))))
   17402              :             return -1;
   17403              :           return 5860; /* *avx512vl_vpternlogv2di_1 */
   17404              : 
   17405              :         case 36:
   17406              :           if (!(
   17407              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17408              : ((64 == 64 || TARGET_AVX512VL
   17409              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17410              :    && ix86_pre_reload_split ()) && 
   17411              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17412              : (TARGET_AVX512F)))
   17413              :             return -1;
   17414              :           return 6841; /* *avx512bw_vpternlogv64qi_3 */
   17415              : 
   17416              :         case 37:
   17417              :           if (!(
   17418              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17419              : ((32 == 64 || TARGET_AVX512VL
   17420              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17421              :    && ix86_pre_reload_split ()) && 
   17422              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17423              : (TARGET_AVX)))
   17424              :             return -1;
   17425              :           return 6850; /* *avx512vl_vpternlogv32qi_3 */
   17426              : 
   17427              :         case 38:
   17428              :           if (!
   17429              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17430              : ((16 == 64 || TARGET_AVX512VL
   17431              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17432              :    && ix86_pre_reload_split ()))
   17433              :             return -1;
   17434              :           return 6859; /* *avx512vl_vpternlogv16qi_3 */
   17435              : 
   17436              :         case 39:
   17437              :           if (!(
   17438              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17439              : ((64 == 64 || TARGET_AVX512VL
   17440              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17441              :    && ix86_pre_reload_split ()) && 
   17442              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17443              : (TARGET_AVX512F)))
   17444              :             return -1;
   17445              :           return 6868; /* *avx512bw_vpternlogv32hi_3 */
   17446              : 
   17447              :         case 40:
   17448              :           if (!(
   17449              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17450              : ((32 == 64 || TARGET_AVX512VL
   17451              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17452              :    && ix86_pre_reload_split ()) && 
   17453              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17454              : (TARGET_AVX)))
   17455              :             return -1;
   17456              :           return 6877; /* *avx512vl_vpternlogv16hi_3 */
   17457              : 
   17458              :         case 41:
   17459              :           if (!
   17460              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17461              : ((16 == 64 || TARGET_AVX512VL
   17462              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17463              :    && ix86_pre_reload_split ()))
   17464              :             return -1;
   17465              :           return 6886; /* *avx512vl_vpternlogv8hi_3 */
   17466              : 
   17467              :         case 42:
   17468              :           if (!(
   17469              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17470              : ((64 == 64 || TARGET_AVX512VL
   17471              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17472              :    && ix86_pre_reload_split ()) && 
   17473              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17474              : (TARGET_AVX512F)))
   17475              :             return -1;
   17476              :           return 6895; /* *avx512f_vpternlogv16si_3 */
   17477              : 
   17478              :         case 43:
   17479              :           if (!(
   17480              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17481              : ((32 == 64 || TARGET_AVX512VL
   17482              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17483              :    && ix86_pre_reload_split ()) && 
   17484              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17485              : (TARGET_AVX)))
   17486              :             return -1;
   17487              :           return 6904; /* *avx512vl_vpternlogv8si_3 */
   17488              : 
   17489              :         case 44:
   17490              :           if (!
   17491              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17492              : ((16 == 64 || TARGET_AVX512VL
   17493              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17494              :    && ix86_pre_reload_split ()))
   17495              :             return -1;
   17496              :           return 6913; /* *avx512vl_vpternlogv4si_3 */
   17497              : 
   17498              :         case 45:
   17499              :           if (!(
   17500              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17501              : ((64 == 64 || TARGET_AVX512VL
   17502              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17503              :    && ix86_pre_reload_split ()) && 
   17504              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17505              : (TARGET_AVX512F)))
   17506              :             return -1;
   17507              :           return 6922; /* *avx512f_vpternlogv8di_3 */
   17508              : 
   17509              :         case 46:
   17510              :           if (!(
   17511              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17512              : ((32 == 64 || TARGET_AVX512VL
   17513              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17514              :    && ix86_pre_reload_split ()) && 
   17515              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17516              : (TARGET_AVX)))
   17517              :             return -1;
   17518              :           return 6931; /* *avx512vl_vpternlogv4di_3 */
   17519              : 
   17520              :         case 47:
   17521              :           if (!
   17522              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17523              : ((16 == 64 || TARGET_AVX512VL
   17524              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17525              :    && ix86_pre_reload_split ()))
   17526              :             return -1;
   17527              :           return 6940; /* *avx512vl_vpternlogv2di_3 */
   17528              : 
   17529              :         default:
   17530              :           return -1;
   17531              :         }
   17532              : 
   17533              :     case AND:
   17534              :       switch (pattern537 (x2))
   17535              :         {
   17536              :         case 0:
   17537              :           if (!(
   17538              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17539              : ((64 == 64 || TARGET_AVX512VL
   17540              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17541              :    && ix86_pre_reload_split ()
   17542              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17543              :                     STRIP_UNARY (operands[4]))
   17544              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17545              :                        STRIP_UNARY (operands[4]))
   17546              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17547              :                        STRIP_UNARY (operands[3]))
   17548              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17549              :                        STRIP_UNARY (operands[3])))) && 
   17550              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17551              : (TARGET_AVX512F)))
   17552              :             return -1;
   17553              :           return 6205; /* *avx512bw_vpternlogv64qi_2 */
   17554              : 
   17555              :         case 1:
   17556              :           if (!(
   17557              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17558              : ((32 == 64 || TARGET_AVX512VL
   17559              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17560              :    && ix86_pre_reload_split ()
   17561              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17562              :                     STRIP_UNARY (operands[4]))
   17563              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17564              :                        STRIP_UNARY (operands[4]))
   17565              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17566              :                        STRIP_UNARY (operands[3]))
   17567              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17568              :                        STRIP_UNARY (operands[3])))) && 
   17569              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17570              : (TARGET_AVX)))
   17571              :             return -1;
   17572              :           return 6232; /* *avx512vl_vpternlogv32qi_2 */
   17573              : 
   17574              :         case 2:
   17575              :           if (!
   17576              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17577              : ((16 == 64 || TARGET_AVX512VL
   17578              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17579              :    && ix86_pre_reload_split ()
   17580              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17581              :                     STRIP_UNARY (operands[4]))
   17582              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17583              :                        STRIP_UNARY (operands[4]))
   17584              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17585              :                        STRIP_UNARY (operands[3]))
   17586              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17587              :                        STRIP_UNARY (operands[3])))))
   17588              :             return -1;
   17589              :           return 6259; /* *avx512vl_vpternlogv16qi_2 */
   17590              : 
   17591              :         case 3:
   17592              :           if (!(
   17593              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17594              : ((64 == 64 || TARGET_AVX512VL
   17595              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17596              :    && ix86_pre_reload_split ()
   17597              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17598              :                     STRIP_UNARY (operands[4]))
   17599              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17600              :                        STRIP_UNARY (operands[4]))
   17601              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17602              :                        STRIP_UNARY (operands[3]))
   17603              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17604              :                        STRIP_UNARY (operands[3])))) && 
   17605              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17606              : (TARGET_AVX512F)))
   17607              :             return -1;
   17608              :           return 6286; /* *avx512bw_vpternlogv32hi_2 */
   17609              : 
   17610              :         case 4:
   17611              :           if (!(
   17612              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17613              : ((32 == 64 || TARGET_AVX512VL
   17614              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17615              :    && ix86_pre_reload_split ()
   17616              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17617              :                     STRIP_UNARY (operands[4]))
   17618              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17619              :                        STRIP_UNARY (operands[4]))
   17620              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17621              :                        STRIP_UNARY (operands[3]))
   17622              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17623              :                        STRIP_UNARY (operands[3])))) && 
   17624              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17625              : (TARGET_AVX)))
   17626              :             return -1;
   17627              :           return 6313; /* *avx512vl_vpternlogv16hi_2 */
   17628              : 
   17629              :         case 5:
   17630              :           if (!
   17631              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17632              : ((16 == 64 || TARGET_AVX512VL
   17633              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17634              :    && ix86_pre_reload_split ()
   17635              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17636              :                     STRIP_UNARY (operands[4]))
   17637              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17638              :                        STRIP_UNARY (operands[4]))
   17639              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17640              :                        STRIP_UNARY (operands[3]))
   17641              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17642              :                        STRIP_UNARY (operands[3])))))
   17643              :             return -1;
   17644              :           return 6340; /* *avx512vl_vpternlogv8hi_2 */
   17645              : 
   17646              :         case 6:
   17647              :           if (!(
   17648              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17649              : ((64 == 64 || TARGET_AVX512VL
   17650              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17651              :    && ix86_pre_reload_split ()
   17652              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17653              :                     STRIP_UNARY (operands[4]))
   17654              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17655              :                        STRIP_UNARY (operands[4]))
   17656              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17657              :                        STRIP_UNARY (operands[3]))
   17658              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17659              :                        STRIP_UNARY (operands[3])))) && 
   17660              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17661              : (TARGET_AVX512F)))
   17662              :             return -1;
   17663              :           return 6367; /* *avx512f_vpternlogv16si_2 */
   17664              : 
   17665              :         case 7:
   17666              :           if (!(
   17667              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17668              : ((32 == 64 || TARGET_AVX512VL
   17669              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17670              :    && ix86_pre_reload_split ()
   17671              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17672              :                     STRIP_UNARY (operands[4]))
   17673              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17674              :                        STRIP_UNARY (operands[4]))
   17675              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17676              :                        STRIP_UNARY (operands[3]))
   17677              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17678              :                        STRIP_UNARY (operands[3])))) && 
   17679              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17680              : (TARGET_AVX)))
   17681              :             return -1;
   17682              :           return 6394; /* *avx512vl_vpternlogv8si_2 */
   17683              : 
   17684              :         case 8:
   17685              :           if (!
   17686              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17687              : ((16 == 64 || TARGET_AVX512VL
   17688              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17689              :    && ix86_pre_reload_split ()
   17690              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17691              :                     STRIP_UNARY (operands[4]))
   17692              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17693              :                        STRIP_UNARY (operands[4]))
   17694              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17695              :                        STRIP_UNARY (operands[3]))
   17696              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17697              :                        STRIP_UNARY (operands[3])))))
   17698              :             return -1;
   17699              :           return 6421; /* *avx512vl_vpternlogv4si_2 */
   17700              : 
   17701              :         case 9:
   17702              :           if (!(
   17703              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17704              : ((64 == 64 || TARGET_AVX512VL
   17705              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17706              :    && ix86_pre_reload_split ()
   17707              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17708              :                     STRIP_UNARY (operands[4]))
   17709              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17710              :                        STRIP_UNARY (operands[4]))
   17711              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17712              :                        STRIP_UNARY (operands[3]))
   17713              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17714              :                        STRIP_UNARY (operands[3])))) && 
   17715              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17716              : (TARGET_AVX512F)))
   17717              :             return -1;
   17718              :           return 6448; /* *avx512f_vpternlogv8di_2 */
   17719              : 
   17720              :         case 10:
   17721              :           if (!(
   17722              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17723              : ((32 == 64 || TARGET_AVX512VL
   17724              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17725              :    && ix86_pre_reload_split ()
   17726              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17727              :                     STRIP_UNARY (operands[4]))
   17728              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17729              :                        STRIP_UNARY (operands[4]))
   17730              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17731              :                        STRIP_UNARY (operands[3]))
   17732              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17733              :                        STRIP_UNARY (operands[3])))) && 
   17734              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17735              : (TARGET_AVX)))
   17736              :             return -1;
   17737              :           return 6475; /* *avx512vl_vpternlogv4di_2 */
   17738              : 
   17739              :         case 11:
   17740              :           if (!
   17741              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17742              : ((16 == 64 || TARGET_AVX512VL
   17743              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17744              :    && ix86_pre_reload_split ()
   17745              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17746              :                     STRIP_UNARY (operands[4]))
   17747              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17748              :                        STRIP_UNARY (operands[4]))
   17749              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17750              :                        STRIP_UNARY (operands[3]))
   17751              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17752              :                        STRIP_UNARY (operands[3])))))
   17753              :             return -1;
   17754              :           return 6502; /* *avx512vl_vpternlogv2di_2 */
   17755              : 
   17756              :         default:
   17757              :           return -1;
   17758              :         }
   17759              : 
   17760              :     case IOR:
   17761              :       switch (pattern537 (x2))
   17762              :         {
   17763              :         case 0:
   17764              :           if (!(
   17765              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17766              : ((64 == 64 || TARGET_AVX512VL
   17767              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17768              :    && ix86_pre_reload_split ()
   17769              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17770              :                     STRIP_UNARY (operands[4]))
   17771              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17772              :                        STRIP_UNARY (operands[4]))
   17773              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17774              :                        STRIP_UNARY (operands[3]))
   17775              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17776              :                        STRIP_UNARY (operands[3])))) && 
   17777              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17778              : (TARGET_AVX512F)))
   17779              :             return -1;
   17780              :           return 6208; /* *avx512bw_vpternlogv64qi_2 */
   17781              : 
   17782              :         case 1:
   17783              :           if (!(
   17784              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17785              : ((32 == 64 || TARGET_AVX512VL
   17786              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17787              :    && ix86_pre_reload_split ()
   17788              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17789              :                     STRIP_UNARY (operands[4]))
   17790              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17791              :                        STRIP_UNARY (operands[4]))
   17792              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17793              :                        STRIP_UNARY (operands[3]))
   17794              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17795              :                        STRIP_UNARY (operands[3])))) && 
   17796              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17797              : (TARGET_AVX)))
   17798              :             return -1;
   17799              :           return 6235; /* *avx512vl_vpternlogv32qi_2 */
   17800              : 
   17801              :         case 2:
   17802              :           if (!
   17803              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17804              : ((16 == 64 || TARGET_AVX512VL
   17805              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17806              :    && ix86_pre_reload_split ()
   17807              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17808              :                     STRIP_UNARY (operands[4]))
   17809              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17810              :                        STRIP_UNARY (operands[4]))
   17811              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17812              :                        STRIP_UNARY (operands[3]))
   17813              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17814              :                        STRIP_UNARY (operands[3])))))
   17815              :             return -1;
   17816              :           return 6262; /* *avx512vl_vpternlogv16qi_2 */
   17817              : 
   17818              :         case 3:
   17819              :           if (!(
   17820              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17821              : ((64 == 64 || TARGET_AVX512VL
   17822              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17823              :    && ix86_pre_reload_split ()
   17824              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17825              :                     STRIP_UNARY (operands[4]))
   17826              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17827              :                        STRIP_UNARY (operands[4]))
   17828              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17829              :                        STRIP_UNARY (operands[3]))
   17830              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17831              :                        STRIP_UNARY (operands[3])))) && 
   17832              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17833              : (TARGET_AVX512F)))
   17834              :             return -1;
   17835              :           return 6289; /* *avx512bw_vpternlogv32hi_2 */
   17836              : 
   17837              :         case 4:
   17838              :           if (!(
   17839              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17840              : ((32 == 64 || TARGET_AVX512VL
   17841              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17842              :    && ix86_pre_reload_split ()
   17843              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17844              :                     STRIP_UNARY (operands[4]))
   17845              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17846              :                        STRIP_UNARY (operands[4]))
   17847              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17848              :                        STRIP_UNARY (operands[3]))
   17849              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17850              :                        STRIP_UNARY (operands[3])))) && 
   17851              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17852              : (TARGET_AVX)))
   17853              :             return -1;
   17854              :           return 6316; /* *avx512vl_vpternlogv16hi_2 */
   17855              : 
   17856              :         case 5:
   17857              :           if (!
   17858              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17859              : ((16 == 64 || TARGET_AVX512VL
   17860              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17861              :    && ix86_pre_reload_split ()
   17862              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17863              :                     STRIP_UNARY (operands[4]))
   17864              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17865              :                        STRIP_UNARY (operands[4]))
   17866              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17867              :                        STRIP_UNARY (operands[3]))
   17868              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17869              :                        STRIP_UNARY (operands[3])))))
   17870              :             return -1;
   17871              :           return 6343; /* *avx512vl_vpternlogv8hi_2 */
   17872              : 
   17873              :         case 6:
   17874              :           if (!(
   17875              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17876              : ((64 == 64 || TARGET_AVX512VL
   17877              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17878              :    && ix86_pre_reload_split ()
   17879              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17880              :                     STRIP_UNARY (operands[4]))
   17881              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17882              :                        STRIP_UNARY (operands[4]))
   17883              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17884              :                        STRIP_UNARY (operands[3]))
   17885              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17886              :                        STRIP_UNARY (operands[3])))) && 
   17887              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17888              : (TARGET_AVX512F)))
   17889              :             return -1;
   17890              :           return 6370; /* *avx512f_vpternlogv16si_2 */
   17891              : 
   17892              :         case 7:
   17893              :           if (!(
   17894              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17895              : ((32 == 64 || TARGET_AVX512VL
   17896              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17897              :    && ix86_pre_reload_split ()
   17898              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17899              :                     STRIP_UNARY (operands[4]))
   17900              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17901              :                        STRIP_UNARY (operands[4]))
   17902              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17903              :                        STRIP_UNARY (operands[3]))
   17904              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17905              :                        STRIP_UNARY (operands[3])))) && 
   17906              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17907              : (TARGET_AVX)))
   17908              :             return -1;
   17909              :           return 6397; /* *avx512vl_vpternlogv8si_2 */
   17910              : 
   17911              :         case 8:
   17912              :           if (!
   17913              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17914              : ((16 == 64 || TARGET_AVX512VL
   17915              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17916              :    && ix86_pre_reload_split ()
   17917              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17918              :                     STRIP_UNARY (operands[4]))
   17919              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17920              :                        STRIP_UNARY (operands[4]))
   17921              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17922              :                        STRIP_UNARY (operands[3]))
   17923              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17924              :                        STRIP_UNARY (operands[3])))))
   17925              :             return -1;
   17926              :           return 6424; /* *avx512vl_vpternlogv4si_2 */
   17927              : 
   17928              :         case 9:
   17929              :           if (!(
   17930              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17931              : ((64 == 64 || TARGET_AVX512VL
   17932              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17933              :    && ix86_pre_reload_split ()
   17934              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17935              :                     STRIP_UNARY (operands[4]))
   17936              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17937              :                        STRIP_UNARY (operands[4]))
   17938              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17939              :                        STRIP_UNARY (operands[3]))
   17940              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17941              :                        STRIP_UNARY (operands[3])))) && 
   17942              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17943              : (TARGET_AVX512F)))
   17944              :             return -1;
   17945              :           return 6451; /* *avx512f_vpternlogv8di_2 */
   17946              : 
   17947              :         case 10:
   17948              :           if (!(
   17949              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17950              : ((32 == 64 || TARGET_AVX512VL
   17951              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17952              :    && ix86_pre_reload_split ()
   17953              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17954              :                     STRIP_UNARY (operands[4]))
   17955              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17956              :                        STRIP_UNARY (operands[4]))
   17957              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17958              :                        STRIP_UNARY (operands[3]))
   17959              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17960              :                        STRIP_UNARY (operands[3])))) && 
   17961              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17962              : (TARGET_AVX)))
   17963              :             return -1;
   17964              :           return 6478; /* *avx512vl_vpternlogv4di_2 */
   17965              : 
   17966              :         case 11:
   17967              :           if (!
   17968              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17969              : ((16 == 64 || TARGET_AVX512VL
   17970              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17971              :    && ix86_pre_reload_split ()
   17972              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17973              :                     STRIP_UNARY (operands[4]))
   17974              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17975              :                        STRIP_UNARY (operands[4]))
   17976              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17977              :                        STRIP_UNARY (operands[3]))
   17978              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17979              :                        STRIP_UNARY (operands[3])))))
   17980              :             return -1;
   17981              :           return 6505; /* *avx512vl_vpternlogv2di_2 */
   17982              : 
   17983              :         default:
   17984              :           return -1;
   17985              :         }
   17986              : 
   17987              :     case XOR:
   17988              :       switch (pattern537 (x2))
   17989              :         {
   17990              :         case 0:
   17991              :           if (!(
   17992              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17993              : ((64 == 64 || TARGET_AVX512VL
   17994              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17995              :    && ix86_pre_reload_split ()
   17996              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17997              :                     STRIP_UNARY (operands[4]))
   17998              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17999              :                        STRIP_UNARY (operands[4]))
   18000              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18001              :                        STRIP_UNARY (operands[3]))
   18002              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18003              :                        STRIP_UNARY (operands[3])))) && 
   18004              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18005              : (TARGET_AVX512F)))
   18006              :             return -1;
   18007              :           return 6211; /* *avx512bw_vpternlogv64qi_2 */
   18008              : 
   18009              :         case 1:
   18010              :           if (!(
   18011              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18012              : ((32 == 64 || TARGET_AVX512VL
   18013              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18014              :    && ix86_pre_reload_split ()
   18015              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18016              :                     STRIP_UNARY (operands[4]))
   18017              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18018              :                        STRIP_UNARY (operands[4]))
   18019              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18020              :                        STRIP_UNARY (operands[3]))
   18021              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18022              :                        STRIP_UNARY (operands[3])))) && 
   18023              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18024              : (TARGET_AVX)))
   18025              :             return -1;
   18026              :           return 6238; /* *avx512vl_vpternlogv32qi_2 */
   18027              : 
   18028              :         case 2:
   18029              :           if (!
   18030              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18031              : ((16 == 64 || TARGET_AVX512VL
   18032              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18033              :    && ix86_pre_reload_split ()
   18034              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18035              :                     STRIP_UNARY (operands[4]))
   18036              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18037              :                        STRIP_UNARY (operands[4]))
   18038              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18039              :                        STRIP_UNARY (operands[3]))
   18040              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18041              :                        STRIP_UNARY (operands[3])))))
   18042              :             return -1;
   18043              :           return 6265; /* *avx512vl_vpternlogv16qi_2 */
   18044              : 
   18045              :         case 3:
   18046              :           if (!(
   18047              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18048              : ((64 == 64 || TARGET_AVX512VL
   18049              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18050              :    && ix86_pre_reload_split ()
   18051              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18052              :                     STRIP_UNARY (operands[4]))
   18053              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18054              :                        STRIP_UNARY (operands[4]))
   18055              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18056              :                        STRIP_UNARY (operands[3]))
   18057              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18058              :                        STRIP_UNARY (operands[3])))) && 
   18059              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18060              : (TARGET_AVX512F)))
   18061              :             return -1;
   18062              :           return 6292; /* *avx512bw_vpternlogv32hi_2 */
   18063              : 
   18064              :         case 4:
   18065              :           if (!(
   18066              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18067              : ((32 == 64 || TARGET_AVX512VL
   18068              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18069              :    && ix86_pre_reload_split ()
   18070              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18071              :                     STRIP_UNARY (operands[4]))
   18072              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18073              :                        STRIP_UNARY (operands[4]))
   18074              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18075              :                        STRIP_UNARY (operands[3]))
   18076              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18077              :                        STRIP_UNARY (operands[3])))) && 
   18078              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18079              : (TARGET_AVX)))
   18080              :             return -1;
   18081              :           return 6319; /* *avx512vl_vpternlogv16hi_2 */
   18082              : 
   18083              :         case 5:
   18084              :           if (!
   18085              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18086              : ((16 == 64 || TARGET_AVX512VL
   18087              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18088              :    && ix86_pre_reload_split ()
   18089              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18090              :                     STRIP_UNARY (operands[4]))
   18091              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18092              :                        STRIP_UNARY (operands[4]))
   18093              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18094              :                        STRIP_UNARY (operands[3]))
   18095              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18096              :                        STRIP_UNARY (operands[3])))))
   18097              :             return -1;
   18098              :           return 6346; /* *avx512vl_vpternlogv8hi_2 */
   18099              : 
   18100              :         case 6:
   18101              :           if (!(
   18102              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18103              : ((64 == 64 || TARGET_AVX512VL
   18104              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18105              :    && ix86_pre_reload_split ()
   18106              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18107              :                     STRIP_UNARY (operands[4]))
   18108              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18109              :                        STRIP_UNARY (operands[4]))
   18110              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18111              :                        STRIP_UNARY (operands[3]))
   18112              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18113              :                        STRIP_UNARY (operands[3])))) && 
   18114              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18115              : (TARGET_AVX512F)))
   18116              :             return -1;
   18117              :           return 6373; /* *avx512f_vpternlogv16si_2 */
   18118              : 
   18119              :         case 7:
   18120              :           if (!(
   18121              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18122              : ((32 == 64 || TARGET_AVX512VL
   18123              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18124              :    && ix86_pre_reload_split ()
   18125              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18126              :                     STRIP_UNARY (operands[4]))
   18127              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18128              :                        STRIP_UNARY (operands[4]))
   18129              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18130              :                        STRIP_UNARY (operands[3]))
   18131              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18132              :                        STRIP_UNARY (operands[3])))) && 
   18133              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18134              : (TARGET_AVX)))
   18135              :             return -1;
   18136              :           return 6400; /* *avx512vl_vpternlogv8si_2 */
   18137              : 
   18138              :         case 8:
   18139              :           if (!
   18140              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18141              : ((16 == 64 || TARGET_AVX512VL
   18142              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18143              :    && ix86_pre_reload_split ()
   18144              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18145              :                     STRIP_UNARY (operands[4]))
   18146              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18147              :                        STRIP_UNARY (operands[4]))
   18148              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18149              :                        STRIP_UNARY (operands[3]))
   18150              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18151              :                        STRIP_UNARY (operands[3])))))
   18152              :             return -1;
   18153              :           return 6427; /* *avx512vl_vpternlogv4si_2 */
   18154              : 
   18155              :         case 9:
   18156              :           if (!(
   18157              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18158              : ((64 == 64 || TARGET_AVX512VL
   18159              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18160              :    && ix86_pre_reload_split ()
   18161              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18162              :                     STRIP_UNARY (operands[4]))
   18163              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18164              :                        STRIP_UNARY (operands[4]))
   18165              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18166              :                        STRIP_UNARY (operands[3]))
   18167              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18168              :                        STRIP_UNARY (operands[3])))) && 
   18169              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18170              : (TARGET_AVX512F)))
   18171              :             return -1;
   18172              :           return 6454; /* *avx512f_vpternlogv8di_2 */
   18173              : 
   18174              :         case 10:
   18175              :           if (!(
   18176              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18177              : ((32 == 64 || TARGET_AVX512VL
   18178              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18179              :    && ix86_pre_reload_split ()
   18180              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18181              :                     STRIP_UNARY (operands[4]))
   18182              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18183              :                        STRIP_UNARY (operands[4]))
   18184              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18185              :                        STRIP_UNARY (operands[3]))
   18186              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18187              :                        STRIP_UNARY (operands[3])))) && 
   18188              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18189              : (TARGET_AVX)))
   18190              :             return -1;
   18191              :           return 6481; /* *avx512vl_vpternlogv4di_2 */
   18192              : 
   18193              :         case 11:
   18194              :           if (!
   18195              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18196              : ((16 == 64 || TARGET_AVX512VL
   18197              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18198              :    && ix86_pre_reload_split ()
   18199              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18200              :                     STRIP_UNARY (operands[4]))
   18201              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18202              :                        STRIP_UNARY (operands[4]))
   18203              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18204              :                        STRIP_UNARY (operands[3]))
   18205              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18206              :                        STRIP_UNARY (operands[3])))))
   18207              :             return -1;
   18208              :           return 6508; /* *avx512vl_vpternlogv2di_2 */
   18209              : 
   18210              :         default:
   18211              :           return -1;
   18212              :         }
   18213              : 
   18214              :     default:
   18215              :       return -1;
   18216              :     }
   18217              : }
   18218              : 
   18219              :  int
   18220              : recog_318 (rtx x1 ATTRIBUTE_UNUSED,
   18221              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   18222              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   18223              : {
   18224              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   18225              :   rtx x2, x3, x4;
   18226              :   int res ATTRIBUTE_UNUSED;
   18227              :   x2 = XEXP (x1, 1);
   18228              :   x3 = XEXP (x2, 0);
   18229              :   switch (GET_CODE (x3))
   18230              :     {
   18231              :     case AND:
   18232              :       x4 = XEXP (x3, 0);
   18233              :       switch (GET_CODE (x4))
   18234              :         {
   18235              :         case REG:
   18236              :         case SUBREG:
   18237              :         case MEM:
   18238              :         case NOT:
   18239              :           switch (pattern541 (x2))
   18240              :             {
   18241              :             case 0:
   18242              :               if (!(
   18243              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18244              : ((64 == 64 || TARGET_AVX512VL
   18245              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18246              :    && ix86_pre_reload_split ()
   18247              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18248              :                     STRIP_UNARY (operands[4]))
   18249              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18250              :                        STRIP_UNARY (operands[4]))
   18251              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18252              :                        STRIP_UNARY (operands[3]))
   18253              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18254              :                        STRIP_UNARY (operands[3])))) && 
   18255              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18256              : (TARGET_AVX512F)))
   18257              :                 return -1;
   18258              :               return 5863; /* *avx512bw_vpternlogv32hf_1 */
   18259              : 
   18260              :             case 1:
   18261              :               if (!(
   18262              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18263              : ((32 == 64 || TARGET_AVX512VL
   18264              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18265              :    && ix86_pre_reload_split ()
   18266              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18267              :                     STRIP_UNARY (operands[4]))
   18268              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18269              :                        STRIP_UNARY (operands[4]))
   18270              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18271              :                        STRIP_UNARY (operands[3]))
   18272              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18273              :                        STRIP_UNARY (operands[3])))) && 
   18274              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18275              : (TARGET_AVX)))
   18276              :                 return -1;
   18277              :               return 5890; /* *avx512vl_vpternlogv16hf_1 */
   18278              : 
   18279              :             case 2:
   18280              :               if (!
   18281              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18282              : ((16 == 64 || TARGET_AVX512VL
   18283              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18284              :    && ix86_pre_reload_split ()
   18285              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18286              :                     STRIP_UNARY (operands[4]))
   18287              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18288              :                        STRIP_UNARY (operands[4]))
   18289              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18290              :                        STRIP_UNARY (operands[3]))
   18291              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18292              :                        STRIP_UNARY (operands[3])))))
   18293              :                 return -1;
   18294              :               return 5917; /* *avx512fp16_vpternlogv8hf_1 */
   18295              : 
   18296              :             case 3:
   18297              :               if (!(
   18298              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18299              : ((64 == 64 || TARGET_AVX512VL
   18300              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18301              :    && ix86_pre_reload_split ()
   18302              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18303              :                     STRIP_UNARY (operands[4]))
   18304              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18305              :                        STRIP_UNARY (operands[4]))
   18306              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18307              :                        STRIP_UNARY (operands[3]))
   18308              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18309              :                        STRIP_UNARY (operands[3])))) && 
   18310              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18311              : (TARGET_AVX512F)))
   18312              :                 return -1;
   18313              :               return 5944; /* *avx512bw_vpternlogv32bf_1 */
   18314              : 
   18315              :             case 4:
   18316              :               if (!(
   18317              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18318              : ((32 == 64 || TARGET_AVX512VL
   18319              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18320              :    && ix86_pre_reload_split ()
   18321              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18322              :                     STRIP_UNARY (operands[4]))
   18323              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18324              :                        STRIP_UNARY (operands[4]))
   18325              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18326              :                        STRIP_UNARY (operands[3]))
   18327              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18328              :                        STRIP_UNARY (operands[3])))) && 
   18329              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18330              : (TARGET_AVX)))
   18331              :                 return -1;
   18332              :               return 5971; /* *avx512vl_vpternlogv16bf_1 */
   18333              : 
   18334              :             case 5:
   18335              :               if (!
   18336              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18337              : ((16 == 64 || TARGET_AVX512VL
   18338              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18339              :    && ix86_pre_reload_split ()
   18340              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18341              :                     STRIP_UNARY (operands[4]))
   18342              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18343              :                        STRIP_UNARY (operands[4]))
   18344              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18345              :                        STRIP_UNARY (operands[3]))
   18346              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18347              :                        STRIP_UNARY (operands[3])))))
   18348              :                 return -1;
   18349              :               return 5998; /* *avx512vl_vpternlogv8bf_1 */
   18350              : 
   18351              :             case 6:
   18352              :               if (!(
   18353              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18354              : ((64 == 64 || TARGET_AVX512VL
   18355              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18356              :    && ix86_pre_reload_split ()
   18357              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18358              :                     STRIP_UNARY (operands[4]))
   18359              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18360              :                        STRIP_UNARY (operands[4]))
   18361              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18362              :                        STRIP_UNARY (operands[3]))
   18363              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18364              :                        STRIP_UNARY (operands[3])))) && 
   18365              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18366              : (TARGET_AVX512F)))
   18367              :                 return -1;
   18368              :               return 6025; /* *avx512f_vpternlogv16sf_1 */
   18369              : 
   18370              :             case 7:
   18371              :               if (!(
   18372              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18373              : ((32 == 64 || TARGET_AVX512VL
   18374              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18375              :    && ix86_pre_reload_split ()
   18376              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18377              :                     STRIP_UNARY (operands[4]))
   18378              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18379              :                        STRIP_UNARY (operands[4]))
   18380              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18381              :                        STRIP_UNARY (operands[3]))
   18382              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18383              :                        STRIP_UNARY (operands[3])))) && 
   18384              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18385              : (TARGET_AVX)))
   18386              :                 return -1;
   18387              :               return 6052; /* *avx512vl_vpternlogv8sf_1 */
   18388              : 
   18389              :             case 8:
   18390              :               if (!
   18391              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18392              : ((16 == 64 || TARGET_AVX512VL
   18393              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18394              :    && ix86_pre_reload_split ()
   18395              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18396              :                     STRIP_UNARY (operands[4]))
   18397              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18398              :                        STRIP_UNARY (operands[4]))
   18399              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18400              :                        STRIP_UNARY (operands[3]))
   18401              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18402              :                        STRIP_UNARY (operands[3])))))
   18403              :                 return -1;
   18404              :               return 6079; /* *avx512vl_vpternlogv4sf_1 */
   18405              : 
   18406              :             case 9:
   18407              :               if (!(
   18408              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18409              : ((64 == 64 || TARGET_AVX512VL
   18410              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18411              :    && ix86_pre_reload_split ()
   18412              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18413              :                     STRIP_UNARY (operands[4]))
   18414              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18415              :                        STRIP_UNARY (operands[4]))
   18416              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18417              :                        STRIP_UNARY (operands[3]))
   18418              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18419              :                        STRIP_UNARY (operands[3])))) && 
   18420              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18421              : (TARGET_AVX512F)))
   18422              :                 return -1;
   18423              :               return 6106; /* *avx512f_vpternlogv8df_1 */
   18424              : 
   18425              :             case 10:
   18426              :               if (!(
   18427              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18428              : ((32 == 64 || TARGET_AVX512VL
   18429              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18430              :    && ix86_pre_reload_split ()
   18431              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18432              :                     STRIP_UNARY (operands[4]))
   18433              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18434              :                        STRIP_UNARY (operands[4]))
   18435              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18436              :                        STRIP_UNARY (operands[3]))
   18437              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18438              :                        STRIP_UNARY (operands[3])))) && 
   18439              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18440              : (TARGET_AVX)))
   18441              :                 return -1;
   18442              :               return 6133; /* *avx512vl_vpternlogv4df_1 */
   18443              : 
   18444              :             case 11:
   18445              :               if (!(
   18446              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18447              : ((16 == 64 || TARGET_AVX512VL
   18448              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18449              :    && ix86_pre_reload_split ()
   18450              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18451              :                     STRIP_UNARY (operands[4]))
   18452              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18453              :                        STRIP_UNARY (operands[4]))
   18454              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18455              :                        STRIP_UNARY (operands[3]))
   18456              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18457              :                        STRIP_UNARY (operands[3])))) && 
   18458              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18459              : (TARGET_SSE2)))
   18460              :                 return -1;
   18461              :               return 6160; /* *avx512vl_vpternlogv2df_1 */
   18462              : 
   18463              :             case 12:
   18464              :               if (!(
   18465              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18466              : ((64 == 64 || TARGET_AVX512VL
   18467              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18468              :    && ix86_pre_reload_split ()
   18469              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18470              :                     STRIP_UNARY (operands[4]))
   18471              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18472              :                        STRIP_UNARY (operands[4]))
   18473              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18474              :                        STRIP_UNARY (operands[3]))
   18475              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18476              :                        STRIP_UNARY (operands[3])))) && 
   18477              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18478              : (TARGET_AVX512F)))
   18479              :                 return -1;
   18480              :               return 5866; /* *avx512bw_vpternlogv32hf_1 */
   18481              : 
   18482              :             case 13:
   18483              :               if (!(
   18484              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18485              : ((32 == 64 || TARGET_AVX512VL
   18486              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18487              :    && ix86_pre_reload_split ()
   18488              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18489              :                     STRIP_UNARY (operands[4]))
   18490              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18491              :                        STRIP_UNARY (operands[4]))
   18492              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18493              :                        STRIP_UNARY (operands[3]))
   18494              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18495              :                        STRIP_UNARY (operands[3])))) && 
   18496              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18497              : (TARGET_AVX)))
   18498              :                 return -1;
   18499              :               return 5893; /* *avx512vl_vpternlogv16hf_1 */
   18500              : 
   18501              :             case 14:
   18502              :               if (!
   18503              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18504              : ((16 == 64 || TARGET_AVX512VL
   18505              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18506              :    && ix86_pre_reload_split ()
   18507              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18508              :                     STRIP_UNARY (operands[4]))
   18509              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18510              :                        STRIP_UNARY (operands[4]))
   18511              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18512              :                        STRIP_UNARY (operands[3]))
   18513              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18514              :                        STRIP_UNARY (operands[3])))))
   18515              :                 return -1;
   18516              :               return 5920; /* *avx512fp16_vpternlogv8hf_1 */
   18517              : 
   18518              :             case 15:
   18519              :               if (!(
   18520              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18521              : ((64 == 64 || TARGET_AVX512VL
   18522              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18523              :    && ix86_pre_reload_split ()
   18524              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18525              :                     STRIP_UNARY (operands[4]))
   18526              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18527              :                        STRIP_UNARY (operands[4]))
   18528              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18529              :                        STRIP_UNARY (operands[3]))
   18530              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18531              :                        STRIP_UNARY (operands[3])))) && 
   18532              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18533              : (TARGET_AVX512F)))
   18534              :                 return -1;
   18535              :               return 5947; /* *avx512bw_vpternlogv32bf_1 */
   18536              : 
   18537              :             case 16:
   18538              :               if (!(
   18539              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18540              : ((32 == 64 || TARGET_AVX512VL
   18541              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18542              :    && ix86_pre_reload_split ()
   18543              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18544              :                     STRIP_UNARY (operands[4]))
   18545              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18546              :                        STRIP_UNARY (operands[4]))
   18547              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18548              :                        STRIP_UNARY (operands[3]))
   18549              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18550              :                        STRIP_UNARY (operands[3])))) && 
   18551              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18552              : (TARGET_AVX)))
   18553              :                 return -1;
   18554              :               return 5974; /* *avx512vl_vpternlogv16bf_1 */
   18555              : 
   18556              :             case 17:
   18557              :               if (!
   18558              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18559              : ((16 == 64 || TARGET_AVX512VL
   18560              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18561              :    && ix86_pre_reload_split ()
   18562              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18563              :                     STRIP_UNARY (operands[4]))
   18564              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18565              :                        STRIP_UNARY (operands[4]))
   18566              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18567              :                        STRIP_UNARY (operands[3]))
   18568              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18569              :                        STRIP_UNARY (operands[3])))))
   18570              :                 return -1;
   18571              :               return 6001; /* *avx512vl_vpternlogv8bf_1 */
   18572              : 
   18573              :             case 18:
   18574              :               if (!(
   18575              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18576              : ((64 == 64 || TARGET_AVX512VL
   18577              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18578              :    && ix86_pre_reload_split ()
   18579              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18580              :                     STRIP_UNARY (operands[4]))
   18581              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18582              :                        STRIP_UNARY (operands[4]))
   18583              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18584              :                        STRIP_UNARY (operands[3]))
   18585              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18586              :                        STRIP_UNARY (operands[3])))) && 
   18587              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18588              : (TARGET_AVX512F)))
   18589              :                 return -1;
   18590              :               return 6028; /* *avx512f_vpternlogv16sf_1 */
   18591              : 
   18592              :             case 19:
   18593              :               if (!(
   18594              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18595              : ((32 == 64 || TARGET_AVX512VL
   18596              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18597              :    && ix86_pre_reload_split ()
   18598              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18599              :                     STRIP_UNARY (operands[4]))
   18600              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18601              :                        STRIP_UNARY (operands[4]))
   18602              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18603              :                        STRIP_UNARY (operands[3]))
   18604              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18605              :                        STRIP_UNARY (operands[3])))) && 
   18606              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18607              : (TARGET_AVX)))
   18608              :                 return -1;
   18609              :               return 6055; /* *avx512vl_vpternlogv8sf_1 */
   18610              : 
   18611              :             case 20:
   18612              :               if (!
   18613              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18614              : ((16 == 64 || TARGET_AVX512VL
   18615              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18616              :    && ix86_pre_reload_split ()
   18617              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18618              :                     STRIP_UNARY (operands[4]))
   18619              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18620              :                        STRIP_UNARY (operands[4]))
   18621              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18622              :                        STRIP_UNARY (operands[3]))
   18623              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18624              :                        STRIP_UNARY (operands[3])))))
   18625              :                 return -1;
   18626              :               return 6082; /* *avx512vl_vpternlogv4sf_1 */
   18627              : 
   18628              :             case 21:
   18629              :               if (!(
   18630              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18631              : ((64 == 64 || TARGET_AVX512VL
   18632              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18633              :    && ix86_pre_reload_split ()
   18634              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18635              :                     STRIP_UNARY (operands[4]))
   18636              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18637              :                        STRIP_UNARY (operands[4]))
   18638              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18639              :                        STRIP_UNARY (operands[3]))
   18640              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18641              :                        STRIP_UNARY (operands[3])))) && 
   18642              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18643              : (TARGET_AVX512F)))
   18644              :                 return -1;
   18645              :               return 6109; /* *avx512f_vpternlogv8df_1 */
   18646              : 
   18647              :             case 22:
   18648              :               if (!(
   18649              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18650              : ((32 == 64 || TARGET_AVX512VL
   18651              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18652              :    && ix86_pre_reload_split ()
   18653              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18654              :                     STRIP_UNARY (operands[4]))
   18655              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18656              :                        STRIP_UNARY (operands[4]))
   18657              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18658              :                        STRIP_UNARY (operands[3]))
   18659              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18660              :                        STRIP_UNARY (operands[3])))) && 
   18661              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18662              : (TARGET_AVX)))
   18663              :                 return -1;
   18664              :               return 6136; /* *avx512vl_vpternlogv4df_1 */
   18665              : 
   18666              :             case 23:
   18667              :               if (!(
   18668              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18669              : ((16 == 64 || TARGET_AVX512VL
   18670              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18671              :    && ix86_pre_reload_split ()
   18672              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18673              :                     STRIP_UNARY (operands[4]))
   18674              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18675              :                        STRIP_UNARY (operands[4]))
   18676              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18677              :                        STRIP_UNARY (operands[3]))
   18678              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18679              :                        STRIP_UNARY (operands[3])))) && 
   18680              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18681              : (TARGET_SSE2)))
   18682              :                 return -1;
   18683              :               return 6163; /* *avx512vl_vpternlogv2df_1 */
   18684              : 
   18685              :             case 24:
   18686              :               if (!(
   18687              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18688              : ((64 == 64 || TARGET_AVX512VL
   18689              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18690              :    && ix86_pre_reload_split ()
   18691              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18692              :                     STRIP_UNARY (operands[4]))
   18693              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18694              :                        STRIP_UNARY (operands[4]))
   18695              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18696              :                        STRIP_UNARY (operands[3]))
   18697              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18698              :                        STRIP_UNARY (operands[3])))) && 
   18699              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18700              : (TARGET_AVX512F)))
   18701              :                 return -1;
   18702              :               return 5869; /* *avx512bw_vpternlogv32hf_1 */
   18703              : 
   18704              :             case 25:
   18705              :               if (!(
   18706              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18707              : ((32 == 64 || TARGET_AVX512VL
   18708              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18709              :    && ix86_pre_reload_split ()
   18710              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18711              :                     STRIP_UNARY (operands[4]))
   18712              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18713              :                        STRIP_UNARY (operands[4]))
   18714              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18715              :                        STRIP_UNARY (operands[3]))
   18716              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18717              :                        STRIP_UNARY (operands[3])))) && 
   18718              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18719              : (TARGET_AVX)))
   18720              :                 return -1;
   18721              :               return 5896; /* *avx512vl_vpternlogv16hf_1 */
   18722              : 
   18723              :             case 26:
   18724              :               if (!
   18725              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18726              : ((16 == 64 || TARGET_AVX512VL
   18727              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18728              :    && ix86_pre_reload_split ()
   18729              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18730              :                     STRIP_UNARY (operands[4]))
   18731              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18732              :                        STRIP_UNARY (operands[4]))
   18733              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18734              :                        STRIP_UNARY (operands[3]))
   18735              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18736              :                        STRIP_UNARY (operands[3])))))
   18737              :                 return -1;
   18738              :               return 5923; /* *avx512fp16_vpternlogv8hf_1 */
   18739              : 
   18740              :             case 27:
   18741              :               if (!(
   18742              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18743              : ((64 == 64 || TARGET_AVX512VL
   18744              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18745              :    && ix86_pre_reload_split ()
   18746              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18747              :                     STRIP_UNARY (operands[4]))
   18748              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18749              :                        STRIP_UNARY (operands[4]))
   18750              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18751              :                        STRIP_UNARY (operands[3]))
   18752              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18753              :                        STRIP_UNARY (operands[3])))) && 
   18754              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18755              : (TARGET_AVX512F)))
   18756              :                 return -1;
   18757              :               return 5950; /* *avx512bw_vpternlogv32bf_1 */
   18758              : 
   18759              :             case 28:
   18760              :               if (!(
   18761              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18762              : ((32 == 64 || TARGET_AVX512VL
   18763              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18764              :    && ix86_pre_reload_split ()
   18765              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18766              :                     STRIP_UNARY (operands[4]))
   18767              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18768              :                        STRIP_UNARY (operands[4]))
   18769              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18770              :                        STRIP_UNARY (operands[3]))
   18771              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18772              :                        STRIP_UNARY (operands[3])))) && 
   18773              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18774              : (TARGET_AVX)))
   18775              :                 return -1;
   18776              :               return 5977; /* *avx512vl_vpternlogv16bf_1 */
   18777              : 
   18778              :             case 29:
   18779              :               if (!
   18780              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18781              : ((16 == 64 || TARGET_AVX512VL
   18782              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18783              :    && ix86_pre_reload_split ()
   18784              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18785              :                     STRIP_UNARY (operands[4]))
   18786              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18787              :                        STRIP_UNARY (operands[4]))
   18788              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18789              :                        STRIP_UNARY (operands[3]))
   18790              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18791              :                        STRIP_UNARY (operands[3])))))
   18792              :                 return -1;
   18793              :               return 6004; /* *avx512vl_vpternlogv8bf_1 */
   18794              : 
   18795              :             case 30:
   18796              :               if (!(
   18797              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18798              : ((64 == 64 || TARGET_AVX512VL
   18799              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18800              :    && ix86_pre_reload_split ()
   18801              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18802              :                     STRIP_UNARY (operands[4]))
   18803              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18804              :                        STRIP_UNARY (operands[4]))
   18805              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18806              :                        STRIP_UNARY (operands[3]))
   18807              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18808              :                        STRIP_UNARY (operands[3])))) && 
   18809              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18810              : (TARGET_AVX512F)))
   18811              :                 return -1;
   18812              :               return 6031; /* *avx512f_vpternlogv16sf_1 */
   18813              : 
   18814              :             case 31:
   18815              :               if (!(
   18816              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18817              : ((32 == 64 || TARGET_AVX512VL
   18818              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18819              :    && ix86_pre_reload_split ()
   18820              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18821              :                     STRIP_UNARY (operands[4]))
   18822              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18823              :                        STRIP_UNARY (operands[4]))
   18824              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18825              :                        STRIP_UNARY (operands[3]))
   18826              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18827              :                        STRIP_UNARY (operands[3])))) && 
   18828              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18829              : (TARGET_AVX)))
   18830              :                 return -1;
   18831              :               return 6058; /* *avx512vl_vpternlogv8sf_1 */
   18832              : 
   18833              :             case 32:
   18834              :               if (!
   18835              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18836              : ((16 == 64 || TARGET_AVX512VL
   18837              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18838              :    && ix86_pre_reload_split ()
   18839              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18840              :                     STRIP_UNARY (operands[4]))
   18841              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18842              :                        STRIP_UNARY (operands[4]))
   18843              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18844              :                        STRIP_UNARY (operands[3]))
   18845              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18846              :                        STRIP_UNARY (operands[3])))))
   18847              :                 return -1;
   18848              :               return 6085; /* *avx512vl_vpternlogv4sf_1 */
   18849              : 
   18850              :             case 33:
   18851              :               if (!(
   18852              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18853              : ((64 == 64 || TARGET_AVX512VL
   18854              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18855              :    && ix86_pre_reload_split ()
   18856              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18857              :                     STRIP_UNARY (operands[4]))
   18858              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18859              :                        STRIP_UNARY (operands[4]))
   18860              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18861              :                        STRIP_UNARY (operands[3]))
   18862              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18863              :                        STRIP_UNARY (operands[3])))) && 
   18864              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18865              : (TARGET_AVX512F)))
   18866              :                 return -1;
   18867              :               return 6112; /* *avx512f_vpternlogv8df_1 */
   18868              : 
   18869              :             case 34:
   18870              :               if (!(
   18871              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18872              : ((32 == 64 || TARGET_AVX512VL
   18873              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18874              :    && ix86_pre_reload_split ()
   18875              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18876              :                     STRIP_UNARY (operands[4]))
   18877              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18878              :                        STRIP_UNARY (operands[4]))
   18879              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18880              :                        STRIP_UNARY (operands[3]))
   18881              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18882              :                        STRIP_UNARY (operands[3])))) && 
   18883              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18884              : (TARGET_AVX)))
   18885              :                 return -1;
   18886              :               return 6139; /* *avx512vl_vpternlogv4df_1 */
   18887              : 
   18888              :             case 35:
   18889              :               if (!(
   18890              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18891              : ((16 == 64 || TARGET_AVX512VL
   18892              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18893              :    && ix86_pre_reload_split ()
   18894              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18895              :                     STRIP_UNARY (operands[4]))
   18896              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18897              :                        STRIP_UNARY (operands[4]))
   18898              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18899              :                        STRIP_UNARY (operands[3]))
   18900              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18901              :                        STRIP_UNARY (operands[3])))) && 
   18902              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18903              : (TARGET_SSE2)))
   18904              :                 return -1;
   18905              :               return 6166; /* *avx512vl_vpternlogv2df_1 */
   18906              : 
   18907              :             case 36:
   18908              :               if (!(
   18909              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18910              : ((64 == 64 || TARGET_AVX512VL
   18911              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18912              :    && ix86_pre_reload_split ()) && 
   18913              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18914              : (TARGET_AVX512F)))
   18915              :                 return -1;
   18916              :               return 6943; /* *avx512bw_vpternlogv32hf_3 */
   18917              : 
   18918              :             case 37:
   18919              :               if (!(
   18920              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18921              : ((32 == 64 || TARGET_AVX512VL
   18922              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18923              :    && ix86_pre_reload_split ()) && 
   18924              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18925              : (TARGET_AVX)))
   18926              :                 return -1;
   18927              :               return 6952; /* *avx512vl_vpternlogv16hf_3 */
   18928              : 
   18929              :             case 38:
   18930              :               if (!
   18931              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18932              : ((16 == 64 || TARGET_AVX512VL
   18933              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18934              :    && ix86_pre_reload_split ()))
   18935              :                 return -1;
   18936              :               return 6961; /* *avx512fp16_vpternlogv8hf_3 */
   18937              : 
   18938              :             case 39:
   18939              :               if (!(
   18940              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18941              : ((64 == 64 || TARGET_AVX512VL
   18942              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18943              :    && ix86_pre_reload_split ()) && 
   18944              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18945              : (TARGET_AVX512F)))
   18946              :                 return -1;
   18947              :               return 6970; /* *avx512bw_vpternlogv32bf_3 */
   18948              : 
   18949              :             case 40:
   18950              :               if (!(
   18951              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18952              : ((32 == 64 || TARGET_AVX512VL
   18953              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18954              :    && ix86_pre_reload_split ()) && 
   18955              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18956              : (TARGET_AVX)))
   18957              :                 return -1;
   18958              :               return 6979; /* *avx512vl_vpternlogv16bf_3 */
   18959              : 
   18960              :             case 41:
   18961              :               if (!
   18962              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18963              : ((16 == 64 || TARGET_AVX512VL
   18964              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18965              :    && ix86_pre_reload_split ()))
   18966              :                 return -1;
   18967              :               return 6988; /* *avx512vl_vpternlogv8bf_3 */
   18968              : 
   18969              :             case 42:
   18970              :               if (!(
   18971              : #line 14271 "/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              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18976              : (TARGET_AVX512F)))
   18977              :                 return -1;
   18978              :               return 6997; /* *avx512f_vpternlogv16sf_3 */
   18979              : 
   18980              :             case 43:
   18981              :               if (!(
   18982              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18983              : ((32 == 64 || TARGET_AVX512VL
   18984              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18985              :    && ix86_pre_reload_split ()) && 
   18986              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18987              : (TARGET_AVX)))
   18988              :                 return -1;
   18989              :               return 7006; /* *avx512vl_vpternlogv8sf_3 */
   18990              : 
   18991              :             case 44:
   18992              :               if (!
   18993              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18994              : ((16 == 64 || TARGET_AVX512VL
   18995              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18996              :    && ix86_pre_reload_split ()))
   18997              :                 return -1;
   18998              :               return 7015; /* *avx512vl_vpternlogv4sf_3 */
   18999              : 
   19000              :             case 45:
   19001              :               if (!(
   19002              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19003              : ((64 == 64 || TARGET_AVX512VL
   19004              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19005              :    && ix86_pre_reload_split ()) && 
   19006              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19007              : (TARGET_AVX512F)))
   19008              :                 return -1;
   19009              :               return 7024; /* *avx512f_vpternlogv8df_3 */
   19010              : 
   19011              :             case 46:
   19012              :               if (!(
   19013              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19014              : ((32 == 64 || TARGET_AVX512VL
   19015              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19016              :    && ix86_pre_reload_split ()) && 
   19017              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19018              : (TARGET_AVX)))
   19019              :                 return -1;
   19020              :               return 7033; /* *avx512vl_vpternlogv4df_3 */
   19021              : 
   19022              :             case 47:
   19023              :               if (!(
   19024              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19025              : ((16 == 64 || TARGET_AVX512VL
   19026              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19027              :    && ix86_pre_reload_split ()) && 
   19028              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19029              : (TARGET_SSE2)))
   19030              :                 return -1;
   19031              :               return 7042; /* *avx512vl_vpternlogv2df_3 */
   19032              : 
   19033              :             default:
   19034              :               return -1;
   19035              :             }
   19036              : 
   19037              :         case AND:
   19038              :           switch (pattern542 (x2))
   19039              :             {
   19040              :             case 0:
   19041              :               if (!(
   19042              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19043              : ((64 == 64 || TARGET_AVX512VL
   19044              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19045              :    && ix86_pre_reload_split ()
   19046              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19047              :                     STRIP_UNARY (operands[4]))
   19048              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19049              :                        STRIP_UNARY (operands[4]))
   19050              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19051              :                        STRIP_UNARY (operands[3]))
   19052              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19053              :                        STRIP_UNARY (operands[3])))) && 
   19054              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19055              : (TARGET_AVX512F)))
   19056              :                 return -1;
   19057              :               return 6511; /* *avx512bw_vpternlogv32hf_2 */
   19058              : 
   19059              :             case 1:
   19060              :               if (!(
   19061              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19062              : ((32 == 64 || TARGET_AVX512VL
   19063              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19064              :    && ix86_pre_reload_split ()
   19065              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19066              :                     STRIP_UNARY (operands[4]))
   19067              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19068              :                        STRIP_UNARY (operands[4]))
   19069              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19070              :                        STRIP_UNARY (operands[3]))
   19071              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19072              :                        STRIP_UNARY (operands[3])))) && 
   19073              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19074              : (TARGET_AVX)))
   19075              :                 return -1;
   19076              :               return 6538; /* *avx512vl_vpternlogv16hf_2 */
   19077              : 
   19078              :             case 2:
   19079              :               if (!
   19080              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19081              : ((16 == 64 || TARGET_AVX512VL
   19082              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19083              :    && ix86_pre_reload_split ()
   19084              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19085              :                     STRIP_UNARY (operands[4]))
   19086              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19087              :                        STRIP_UNARY (operands[4]))
   19088              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19089              :                        STRIP_UNARY (operands[3]))
   19090              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19091              :                        STRIP_UNARY (operands[3])))))
   19092              :                 return -1;
   19093              :               return 6565; /* *avx512fp16_vpternlogv8hf_2 */
   19094              : 
   19095              :             case 3:
   19096              :               if (!(
   19097              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19098              : ((64 == 64 || TARGET_AVX512VL
   19099              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19100              :    && ix86_pre_reload_split ()
   19101              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19102              :                     STRIP_UNARY (operands[4]))
   19103              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19104              :                        STRIP_UNARY (operands[4]))
   19105              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19106              :                        STRIP_UNARY (operands[3]))
   19107              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19108              :                        STRIP_UNARY (operands[3])))) && 
   19109              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19110              : (TARGET_AVX512F)))
   19111              :                 return -1;
   19112              :               return 6592; /* *avx512bw_vpternlogv32bf_2 */
   19113              : 
   19114              :             case 4:
   19115              :               if (!(
   19116              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19117              : ((32 == 64 || TARGET_AVX512VL
   19118              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19119              :    && ix86_pre_reload_split ()
   19120              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19121              :                     STRIP_UNARY (operands[4]))
   19122              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19123              :                        STRIP_UNARY (operands[4]))
   19124              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19125              :                        STRIP_UNARY (operands[3]))
   19126              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19127              :                        STRIP_UNARY (operands[3])))) && 
   19128              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19129              : (TARGET_AVX)))
   19130              :                 return -1;
   19131              :               return 6619; /* *avx512vl_vpternlogv16bf_2 */
   19132              : 
   19133              :             case 5:
   19134              :               if (!
   19135              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19136              : ((16 == 64 || TARGET_AVX512VL
   19137              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19138              :    && ix86_pre_reload_split ()
   19139              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19140              :                     STRIP_UNARY (operands[4]))
   19141              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19142              :                        STRIP_UNARY (operands[4]))
   19143              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19144              :                        STRIP_UNARY (operands[3]))
   19145              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19146              :                        STRIP_UNARY (operands[3])))))
   19147              :                 return -1;
   19148              :               return 6646; /* *avx512vl_vpternlogv8bf_2 */
   19149              : 
   19150              :             case 6:
   19151              :               if (!(
   19152              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19153              : ((64 == 64 || TARGET_AVX512VL
   19154              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19155              :    && ix86_pre_reload_split ()
   19156              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19157              :                     STRIP_UNARY (operands[4]))
   19158              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19159              :                        STRIP_UNARY (operands[4]))
   19160              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19161              :                        STRIP_UNARY (operands[3]))
   19162              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19163              :                        STRIP_UNARY (operands[3])))) && 
   19164              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19165              : (TARGET_AVX512F)))
   19166              :                 return -1;
   19167              :               return 6673; /* *avx512f_vpternlogv16sf_2 */
   19168              : 
   19169              :             case 7:
   19170              :               if (!(
   19171              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19172              : ((32 == 64 || TARGET_AVX512VL
   19173              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19174              :    && ix86_pre_reload_split ()
   19175              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19176              :                     STRIP_UNARY (operands[4]))
   19177              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19178              :                        STRIP_UNARY (operands[4]))
   19179              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19180              :                        STRIP_UNARY (operands[3]))
   19181              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19182              :                        STRIP_UNARY (operands[3])))) && 
   19183              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19184              : (TARGET_AVX)))
   19185              :                 return -1;
   19186              :               return 6700; /* *avx512vl_vpternlogv8sf_2 */
   19187              : 
   19188              :             case 8:
   19189              :               if (!
   19190              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19191              : ((16 == 64 || TARGET_AVX512VL
   19192              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19193              :    && ix86_pre_reload_split ()
   19194              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19195              :                     STRIP_UNARY (operands[4]))
   19196              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19197              :                        STRIP_UNARY (operands[4]))
   19198              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19199              :                        STRIP_UNARY (operands[3]))
   19200              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19201              :                        STRIP_UNARY (operands[3])))))
   19202              :                 return -1;
   19203              :               return 6727; /* *avx512vl_vpternlogv4sf_2 */
   19204              : 
   19205              :             case 9:
   19206              :               if (!(
   19207              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19208              : ((64 == 64 || TARGET_AVX512VL
   19209              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19210              :    && ix86_pre_reload_split ()
   19211              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19212              :                     STRIP_UNARY (operands[4]))
   19213              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19214              :                        STRIP_UNARY (operands[4]))
   19215              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19216              :                        STRIP_UNARY (operands[3]))
   19217              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19218              :                        STRIP_UNARY (operands[3])))) && 
   19219              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19220              : (TARGET_AVX512F)))
   19221              :                 return -1;
   19222              :               return 6754; /* *avx512f_vpternlogv8df_2 */
   19223              : 
   19224              :             case 10:
   19225              :               if (!(
   19226              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19227              : ((32 == 64 || TARGET_AVX512VL
   19228              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19229              :    && ix86_pre_reload_split ()
   19230              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19231              :                     STRIP_UNARY (operands[4]))
   19232              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19233              :                        STRIP_UNARY (operands[4]))
   19234              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19235              :                        STRIP_UNARY (operands[3]))
   19236              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19237              :                        STRIP_UNARY (operands[3])))) && 
   19238              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19239              : (TARGET_AVX)))
   19240              :                 return -1;
   19241              :               return 6781; /* *avx512vl_vpternlogv4df_2 */
   19242              : 
   19243              :             case 11:
   19244              :               if (!(
   19245              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19246              : ((16 == 64 || TARGET_AVX512VL
   19247              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19248              :    && ix86_pre_reload_split ()
   19249              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19250              :                     STRIP_UNARY (operands[4]))
   19251              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19252              :                        STRIP_UNARY (operands[4]))
   19253              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19254              :                        STRIP_UNARY (operands[3]))
   19255              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19256              :                        STRIP_UNARY (operands[3])))) && 
   19257              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19258              : (TARGET_SSE2)))
   19259              :                 return -1;
   19260              :               return 6808; /* *avx512vl_vpternlogv2df_2 */
   19261              : 
   19262              :             default:
   19263              :               return -1;
   19264              :             }
   19265              : 
   19266              :         case IOR:
   19267              :           switch (pattern542 (x2))
   19268              :             {
   19269              :             case 0:
   19270              :               if (!(
   19271              : #line 14187 "/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 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19284              : (TARGET_AVX512F)))
   19285              :                 return -1;
   19286              :               return 6514; /* *avx512bw_vpternlogv32hf_2 */
   19287              : 
   19288              :             case 1:
   19289              :               if (!(
   19290              : #line 14187 "/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 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19303              : (TARGET_AVX)))
   19304              :                 return -1;
   19305              :               return 6541; /* *avx512vl_vpternlogv16hf_2 */
   19306              : 
   19307              :             case 2:
   19308              :               if (!
   19309              : #line 14187 "/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 6568; /* *avx512fp16_vpternlogv8hf_2 */
   19323              : 
   19324              :             case 3:
   19325              :               if (!(
   19326              : #line 14187 "/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 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19339              : (TARGET_AVX512F)))
   19340              :                 return -1;
   19341              :               return 6595; /* *avx512bw_vpternlogv32bf_2 */
   19342              : 
   19343              :             case 4:
   19344              :               if (!(
   19345              : #line 14187 "/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 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19358              : (TARGET_AVX)))
   19359              :                 return -1;
   19360              :               return 6622; /* *avx512vl_vpternlogv16bf_2 */
   19361              : 
   19362              :             case 5:
   19363              :               if (!
   19364              : #line 14187 "/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              :                 return -1;
   19377              :               return 6649; /* *avx512vl_vpternlogv8bf_2 */
   19378              : 
   19379              :             case 6:
   19380              :               if (!(
   19381              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19382              : ((64 == 64 || TARGET_AVX512VL
   19383              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19384              :    && ix86_pre_reload_split ()
   19385              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19386              :                     STRIP_UNARY (operands[4]))
   19387              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19388              :                        STRIP_UNARY (operands[4]))
   19389              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19390              :                        STRIP_UNARY (operands[3]))
   19391              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19392              :                        STRIP_UNARY (operands[3])))) && 
   19393              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19394              : (TARGET_AVX512F)))
   19395              :                 return -1;
   19396              :               return 6676; /* *avx512f_vpternlogv16sf_2 */
   19397              : 
   19398              :             case 7:
   19399              :               if (!(
   19400              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19401              : ((32 == 64 || TARGET_AVX512VL
   19402              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19403              :    && ix86_pre_reload_split ()
   19404              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19405              :                     STRIP_UNARY (operands[4]))
   19406              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19407              :                        STRIP_UNARY (operands[4]))
   19408              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19409              :                        STRIP_UNARY (operands[3]))
   19410              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19411              :                        STRIP_UNARY (operands[3])))) && 
   19412              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19413              : (TARGET_AVX)))
   19414              :                 return -1;
   19415              :               return 6703; /* *avx512vl_vpternlogv8sf_2 */
   19416              : 
   19417              :             case 8:
   19418              :               if (!
   19419              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19420              : ((16 == 64 || TARGET_AVX512VL
   19421              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19422              :    && ix86_pre_reload_split ()
   19423              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19424              :                     STRIP_UNARY (operands[4]))
   19425              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19426              :                        STRIP_UNARY (operands[4]))
   19427              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19428              :                        STRIP_UNARY (operands[3]))
   19429              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19430              :                        STRIP_UNARY (operands[3])))))
   19431              :                 return -1;
   19432              :               return 6730; /* *avx512vl_vpternlogv4sf_2 */
   19433              : 
   19434              :             case 9:
   19435              :               if (!(
   19436              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19437              : ((64 == 64 || TARGET_AVX512VL
   19438              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19439              :    && ix86_pre_reload_split ()
   19440              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19441              :                     STRIP_UNARY (operands[4]))
   19442              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19443              :                        STRIP_UNARY (operands[4]))
   19444              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19445              :                        STRIP_UNARY (operands[3]))
   19446              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19447              :                        STRIP_UNARY (operands[3])))) && 
   19448              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19449              : (TARGET_AVX512F)))
   19450              :                 return -1;
   19451              :               return 6757; /* *avx512f_vpternlogv8df_2 */
   19452              : 
   19453              :             case 10:
   19454              :               if (!(
   19455              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19456              : ((32 == 64 || TARGET_AVX512VL
   19457              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19458              :    && ix86_pre_reload_split ()
   19459              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19460              :                     STRIP_UNARY (operands[4]))
   19461              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19462              :                        STRIP_UNARY (operands[4]))
   19463              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19464              :                        STRIP_UNARY (operands[3]))
   19465              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19466              :                        STRIP_UNARY (operands[3])))) && 
   19467              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19468              : (TARGET_AVX)))
   19469              :                 return -1;
   19470              :               return 6784; /* *avx512vl_vpternlogv4df_2 */
   19471              : 
   19472              :             case 11:
   19473              :               if (!(
   19474              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19475              : ((16 == 64 || TARGET_AVX512VL
   19476              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19477              :    && ix86_pre_reload_split ()
   19478              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19479              :                     STRIP_UNARY (operands[4]))
   19480              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19481              :                        STRIP_UNARY (operands[4]))
   19482              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19483              :                        STRIP_UNARY (operands[3]))
   19484              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19485              :                        STRIP_UNARY (operands[3])))) && 
   19486              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19487              : (TARGET_SSE2)))
   19488              :                 return -1;
   19489              :               return 6811; /* *avx512vl_vpternlogv2df_2 */
   19490              : 
   19491              :             default:
   19492              :               return -1;
   19493              :             }
   19494              : 
   19495              :         case XOR:
   19496              :           switch (pattern542 (x2))
   19497              :             {
   19498              :             case 0:
   19499              :               if (!(
   19500              : #line 14187 "/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 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19513              : (TARGET_AVX512F)))
   19514              :                 return -1;
   19515              :               return 6517; /* *avx512bw_vpternlogv32hf_2 */
   19516              : 
   19517              :             case 1:
   19518              :               if (!(
   19519              : #line 14187 "/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 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19532              : (TARGET_AVX)))
   19533              :                 return -1;
   19534              :               return 6544; /* *avx512vl_vpternlogv16hf_2 */
   19535              : 
   19536              :             case 2:
   19537              :               if (!
   19538              : #line 14187 "/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 6571; /* *avx512fp16_vpternlogv8hf_2 */
   19552              : 
   19553              :             case 3:
   19554              :               if (!(
   19555              : #line 14187 "/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 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19568              : (TARGET_AVX512F)))
   19569              :                 return -1;
   19570              :               return 6598; /* *avx512bw_vpternlogv32bf_2 */
   19571              : 
   19572              :             case 4:
   19573              :               if (!(
   19574              : #line 14187 "/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 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19587              : (TARGET_AVX)))
   19588              :                 return -1;
   19589              :               return 6625; /* *avx512vl_vpternlogv16bf_2 */
   19590              : 
   19591              :             case 5:
   19592              :               if (!
   19593              : #line 14187 "/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              :                 return -1;
   19606              :               return 6652; /* *avx512vl_vpternlogv8bf_2 */
   19607              : 
   19608              :             case 6:
   19609              :               if (!(
   19610              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19611              : ((64 == 64 || TARGET_AVX512VL
   19612              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19613              :    && ix86_pre_reload_split ()
   19614              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19615              :                     STRIP_UNARY (operands[4]))
   19616              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19617              :                        STRIP_UNARY (operands[4]))
   19618              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19619              :                        STRIP_UNARY (operands[3]))
   19620              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19621              :                        STRIP_UNARY (operands[3])))) && 
   19622              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19623              : (TARGET_AVX512F)))
   19624              :                 return -1;
   19625              :               return 6679; /* *avx512f_vpternlogv16sf_2 */
   19626              : 
   19627              :             case 7:
   19628              :               if (!(
   19629              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19630              : ((32 == 64 || TARGET_AVX512VL
   19631              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19632              :    && ix86_pre_reload_split ()
   19633              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19634              :                     STRIP_UNARY (operands[4]))
   19635              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19636              :                        STRIP_UNARY (operands[4]))
   19637              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19638              :                        STRIP_UNARY (operands[3]))
   19639              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19640              :                        STRIP_UNARY (operands[3])))) && 
   19641              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19642              : (TARGET_AVX)))
   19643              :                 return -1;
   19644              :               return 6706; /* *avx512vl_vpternlogv8sf_2 */
   19645              : 
   19646              :             case 8:
   19647              :               if (!
   19648              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19649              : ((16 == 64 || TARGET_AVX512VL
   19650              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19651              :    && ix86_pre_reload_split ()
   19652              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19653              :                     STRIP_UNARY (operands[4]))
   19654              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19655              :                        STRIP_UNARY (operands[4]))
   19656              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19657              :                        STRIP_UNARY (operands[3]))
   19658              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19659              :                        STRIP_UNARY (operands[3])))))
   19660              :                 return -1;
   19661              :               return 6733; /* *avx512vl_vpternlogv4sf_2 */
   19662              : 
   19663              :             case 9:
   19664              :               if (!(
   19665              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19666              : ((64 == 64 || TARGET_AVX512VL
   19667              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19668              :    && ix86_pre_reload_split ()
   19669              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19670              :                     STRIP_UNARY (operands[4]))
   19671              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19672              :                        STRIP_UNARY (operands[4]))
   19673              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19674              :                        STRIP_UNARY (operands[3]))
   19675              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19676              :                        STRIP_UNARY (operands[3])))) && 
   19677              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19678              : (TARGET_AVX512F)))
   19679              :                 return -1;
   19680              :               return 6760; /* *avx512f_vpternlogv8df_2 */
   19681              : 
   19682              :             case 10:
   19683              :               if (!(
   19684              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19685              : ((32 == 64 || TARGET_AVX512VL
   19686              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19687              :    && ix86_pre_reload_split ()
   19688              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19689              :                     STRIP_UNARY (operands[4]))
   19690              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19691              :                        STRIP_UNARY (operands[4]))
   19692              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19693              :                        STRIP_UNARY (operands[3]))
   19694              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19695              :                        STRIP_UNARY (operands[3])))) && 
   19696              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19697              : (TARGET_AVX)))
   19698              :                 return -1;
   19699              :               return 6787; /* *avx512vl_vpternlogv4df_2 */
   19700              : 
   19701              :             case 11:
   19702              :               if (!(
   19703              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19704              : ((16 == 64 || TARGET_AVX512VL
   19705              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19706              :    && ix86_pre_reload_split ()
   19707              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19708              :                     STRIP_UNARY (operands[4]))
   19709              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19710              :                        STRIP_UNARY (operands[4]))
   19711              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19712              :                        STRIP_UNARY (operands[3]))
   19713              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19714              :                        STRIP_UNARY (operands[3])))) && 
   19715              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19716              : (TARGET_SSE2)))
   19717              :                 return -1;
   19718              :               return 6814; /* *avx512vl_vpternlogv2df_2 */
   19719              : 
   19720              :             default:
   19721              :               return -1;
   19722              :             }
   19723              : 
   19724              :         default:
   19725              :           return -1;
   19726              :         }
   19727              : 
   19728              :     case IOR:
   19729              :       x4 = XEXP (x3, 0);
   19730              :       switch (GET_CODE (x4))
   19731              :         {
   19732              :         case REG:
   19733              :         case SUBREG:
   19734              :         case MEM:
   19735              :         case NOT:
   19736              :           switch (pattern541 (x2))
   19737              :             {
   19738              :             case 0:
   19739              :               if (!(
   19740              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19741              : ((64 == 64 || TARGET_AVX512VL
   19742              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19743              :    && ix86_pre_reload_split ()
   19744              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19745              :                     STRIP_UNARY (operands[4]))
   19746              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19747              :                        STRIP_UNARY (operands[4]))
   19748              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19749              :                        STRIP_UNARY (operands[3]))
   19750              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19751              :                        STRIP_UNARY (operands[3])))) && 
   19752              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19753              : (TARGET_AVX512F)))
   19754              :                 return -1;
   19755              :               return 5872; /* *avx512bw_vpternlogv32hf_1 */
   19756              : 
   19757              :             case 1:
   19758              :               if (!(
   19759              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19760              : ((32 == 64 || TARGET_AVX512VL
   19761              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19762              :    && ix86_pre_reload_split ()
   19763              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19764              :                     STRIP_UNARY (operands[4]))
   19765              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19766              :                        STRIP_UNARY (operands[4]))
   19767              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19768              :                        STRIP_UNARY (operands[3]))
   19769              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19770              :                        STRIP_UNARY (operands[3])))) && 
   19771              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19772              : (TARGET_AVX)))
   19773              :                 return -1;
   19774              :               return 5899; /* *avx512vl_vpternlogv16hf_1 */
   19775              : 
   19776              :             case 2:
   19777              :               if (!
   19778              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19779              : ((16 == 64 || TARGET_AVX512VL
   19780              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19781              :    && ix86_pre_reload_split ()
   19782              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19783              :                     STRIP_UNARY (operands[4]))
   19784              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19785              :                        STRIP_UNARY (operands[4]))
   19786              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19787              :                        STRIP_UNARY (operands[3]))
   19788              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19789              :                        STRIP_UNARY (operands[3])))))
   19790              :                 return -1;
   19791              :               return 5926; /* *avx512fp16_vpternlogv8hf_1 */
   19792              : 
   19793              :             case 3:
   19794              :               if (!(
   19795              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19796              : ((64 == 64 || TARGET_AVX512VL
   19797              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19798              :    && ix86_pre_reload_split ()
   19799              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19800              :                     STRIP_UNARY (operands[4]))
   19801              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19802              :                        STRIP_UNARY (operands[4]))
   19803              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19804              :                        STRIP_UNARY (operands[3]))
   19805              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19806              :                        STRIP_UNARY (operands[3])))) && 
   19807              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19808              : (TARGET_AVX512F)))
   19809              :                 return -1;
   19810              :               return 5953; /* *avx512bw_vpternlogv32bf_1 */
   19811              : 
   19812              :             case 4:
   19813              :               if (!(
   19814              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19815              : ((32 == 64 || TARGET_AVX512VL
   19816              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19817              :    && ix86_pre_reload_split ()
   19818              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19819              :                     STRIP_UNARY (operands[4]))
   19820              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19821              :                        STRIP_UNARY (operands[4]))
   19822              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19823              :                        STRIP_UNARY (operands[3]))
   19824              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19825              :                        STRIP_UNARY (operands[3])))) && 
   19826              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19827              : (TARGET_AVX)))
   19828              :                 return -1;
   19829              :               return 5980; /* *avx512vl_vpternlogv16bf_1 */
   19830              : 
   19831              :             case 5:
   19832              :               if (!
   19833              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19834              : ((16 == 64 || TARGET_AVX512VL
   19835              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19836              :    && ix86_pre_reload_split ()
   19837              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19838              :                     STRIP_UNARY (operands[4]))
   19839              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19840              :                        STRIP_UNARY (operands[4]))
   19841              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19842              :                        STRIP_UNARY (operands[3]))
   19843              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19844              :                        STRIP_UNARY (operands[3])))))
   19845              :                 return -1;
   19846              :               return 6007; /* *avx512vl_vpternlogv8bf_1 */
   19847              : 
   19848              :             case 6:
   19849              :               if (!(
   19850              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19851              : ((64 == 64 || TARGET_AVX512VL
   19852              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19853              :    && ix86_pre_reload_split ()
   19854              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19855              :                     STRIP_UNARY (operands[4]))
   19856              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19857              :                        STRIP_UNARY (operands[4]))
   19858              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19859              :                        STRIP_UNARY (operands[3]))
   19860              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19861              :                        STRIP_UNARY (operands[3])))) && 
   19862              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19863              : (TARGET_AVX512F)))
   19864              :                 return -1;
   19865              :               return 6034; /* *avx512f_vpternlogv16sf_1 */
   19866              : 
   19867              :             case 7:
   19868              :               if (!(
   19869              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19870              : ((32 == 64 || TARGET_AVX512VL
   19871              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19872              :    && ix86_pre_reload_split ()
   19873              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19874              :                     STRIP_UNARY (operands[4]))
   19875              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19876              :                        STRIP_UNARY (operands[4]))
   19877              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19878              :                        STRIP_UNARY (operands[3]))
   19879              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19880              :                        STRIP_UNARY (operands[3])))) && 
   19881              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19882              : (TARGET_AVX)))
   19883              :                 return -1;
   19884              :               return 6061; /* *avx512vl_vpternlogv8sf_1 */
   19885              : 
   19886              :             case 8:
   19887              :               if (!
   19888              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19889              : ((16 == 64 || TARGET_AVX512VL
   19890              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19891              :    && ix86_pre_reload_split ()
   19892              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19893              :                     STRIP_UNARY (operands[4]))
   19894              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19895              :                        STRIP_UNARY (operands[4]))
   19896              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19897              :                        STRIP_UNARY (operands[3]))
   19898              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19899              :                        STRIP_UNARY (operands[3])))))
   19900              :                 return -1;
   19901              :               return 6088; /* *avx512vl_vpternlogv4sf_1 */
   19902              : 
   19903              :             case 9:
   19904              :               if (!(
   19905              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19906              : ((64 == 64 || TARGET_AVX512VL
   19907              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19908              :    && ix86_pre_reload_split ()
   19909              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19910              :                     STRIP_UNARY (operands[4]))
   19911              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19912              :                        STRIP_UNARY (operands[4]))
   19913              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19914              :                        STRIP_UNARY (operands[3]))
   19915              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19916              :                        STRIP_UNARY (operands[3])))) && 
   19917              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19918              : (TARGET_AVX512F)))
   19919              :                 return -1;
   19920              :               return 6115; /* *avx512f_vpternlogv8df_1 */
   19921              : 
   19922              :             case 10:
   19923              :               if (!(
   19924              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19925              : ((32 == 64 || TARGET_AVX512VL
   19926              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19927              :    && ix86_pre_reload_split ()
   19928              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19929              :                     STRIP_UNARY (operands[4]))
   19930              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19931              :                        STRIP_UNARY (operands[4]))
   19932              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19933              :                        STRIP_UNARY (operands[3]))
   19934              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19935              :                        STRIP_UNARY (operands[3])))) && 
   19936              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19937              : (TARGET_AVX)))
   19938              :                 return -1;
   19939              :               return 6142; /* *avx512vl_vpternlogv4df_1 */
   19940              : 
   19941              :             case 11:
   19942              :               if (!(
   19943              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19944              : ((16 == 64 || TARGET_AVX512VL
   19945              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19946              :    && ix86_pre_reload_split ()
   19947              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19948              :                     STRIP_UNARY (operands[4]))
   19949              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19950              :                        STRIP_UNARY (operands[4]))
   19951              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19952              :                        STRIP_UNARY (operands[3]))
   19953              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19954              :                        STRIP_UNARY (operands[3])))) && 
   19955              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19956              : (TARGET_SSE2)))
   19957              :                 return -1;
   19958              :               return 6169; /* *avx512vl_vpternlogv2df_1 */
   19959              : 
   19960              :             case 12:
   19961              :               if (!(
   19962              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19963              : ((64 == 64 || TARGET_AVX512VL
   19964              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19965              :    && ix86_pre_reload_split ()
   19966              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19967              :                     STRIP_UNARY (operands[4]))
   19968              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19969              :                        STRIP_UNARY (operands[4]))
   19970              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19971              :                        STRIP_UNARY (operands[3]))
   19972              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19973              :                        STRIP_UNARY (operands[3])))) && 
   19974              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19975              : (TARGET_AVX512F)))
   19976              :                 return -1;
   19977              :               return 5875; /* *avx512bw_vpternlogv32hf_1 */
   19978              : 
   19979              :             case 13:
   19980              :               if (!(
   19981              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19982              : ((32 == 64 || TARGET_AVX512VL
   19983              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19984              :    && ix86_pre_reload_split ()
   19985              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19986              :                     STRIP_UNARY (operands[4]))
   19987              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19988              :                        STRIP_UNARY (operands[4]))
   19989              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19990              :                        STRIP_UNARY (operands[3]))
   19991              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19992              :                        STRIP_UNARY (operands[3])))) && 
   19993              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19994              : (TARGET_AVX)))
   19995              :                 return -1;
   19996              :               return 5902; /* *avx512vl_vpternlogv16hf_1 */
   19997              : 
   19998              :             case 14:
   19999              :               if (!
   20000              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20001              : ((16 == 64 || TARGET_AVX512VL
   20002              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20003              :    && ix86_pre_reload_split ()
   20004              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20005              :                     STRIP_UNARY (operands[4]))
   20006              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20007              :                        STRIP_UNARY (operands[4]))
   20008              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20009              :                        STRIP_UNARY (operands[3]))
   20010              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20011              :                        STRIP_UNARY (operands[3])))))
   20012              :                 return -1;
   20013              :               return 5929; /* *avx512fp16_vpternlogv8hf_1 */
   20014              : 
   20015              :             case 15:
   20016              :               if (!(
   20017              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20018              : ((64 == 64 || TARGET_AVX512VL
   20019              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20020              :    && ix86_pre_reload_split ()
   20021              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20022              :                     STRIP_UNARY (operands[4]))
   20023              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20024              :                        STRIP_UNARY (operands[4]))
   20025              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20026              :                        STRIP_UNARY (operands[3]))
   20027              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20028              :                        STRIP_UNARY (operands[3])))) && 
   20029              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20030              : (TARGET_AVX512F)))
   20031              :                 return -1;
   20032              :               return 5956; /* *avx512bw_vpternlogv32bf_1 */
   20033              : 
   20034              :             case 16:
   20035              :               if (!(
   20036              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20037              : ((32 == 64 || TARGET_AVX512VL
   20038              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20039              :    && ix86_pre_reload_split ()
   20040              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20041              :                     STRIP_UNARY (operands[4]))
   20042              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20043              :                        STRIP_UNARY (operands[4]))
   20044              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20045              :                        STRIP_UNARY (operands[3]))
   20046              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20047              :                        STRIP_UNARY (operands[3])))) && 
   20048              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20049              : (TARGET_AVX)))
   20050              :                 return -1;
   20051              :               return 5983; /* *avx512vl_vpternlogv16bf_1 */
   20052              : 
   20053              :             case 17:
   20054              :               if (!
   20055              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20056              : ((16 == 64 || TARGET_AVX512VL
   20057              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20058              :    && ix86_pre_reload_split ()
   20059              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20060              :                     STRIP_UNARY (operands[4]))
   20061              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20062              :                        STRIP_UNARY (operands[4]))
   20063              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20064              :                        STRIP_UNARY (operands[3]))
   20065              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20066              :                        STRIP_UNARY (operands[3])))))
   20067              :                 return -1;
   20068              :               return 6010; /* *avx512vl_vpternlogv8bf_1 */
   20069              : 
   20070              :             case 18:
   20071              :               if (!(
   20072              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20073              : ((64 == 64 || TARGET_AVX512VL
   20074              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20075              :    && ix86_pre_reload_split ()
   20076              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20077              :                     STRIP_UNARY (operands[4]))
   20078              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20079              :                        STRIP_UNARY (operands[4]))
   20080              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20081              :                        STRIP_UNARY (operands[3]))
   20082              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20083              :                        STRIP_UNARY (operands[3])))) && 
   20084              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20085              : (TARGET_AVX512F)))
   20086              :                 return -1;
   20087              :               return 6037; /* *avx512f_vpternlogv16sf_1 */
   20088              : 
   20089              :             case 19:
   20090              :               if (!(
   20091              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20092              : ((32 == 64 || TARGET_AVX512VL
   20093              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20094              :    && ix86_pre_reload_split ()
   20095              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20096              :                     STRIP_UNARY (operands[4]))
   20097              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20098              :                        STRIP_UNARY (operands[4]))
   20099              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20100              :                        STRIP_UNARY (operands[3]))
   20101              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20102              :                        STRIP_UNARY (operands[3])))) && 
   20103              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20104              : (TARGET_AVX)))
   20105              :                 return -1;
   20106              :               return 6064; /* *avx512vl_vpternlogv8sf_1 */
   20107              : 
   20108              :             case 20:
   20109              :               if (!
   20110              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20111              : ((16 == 64 || TARGET_AVX512VL
   20112              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20113              :    && ix86_pre_reload_split ()
   20114              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20115              :                     STRIP_UNARY (operands[4]))
   20116              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20117              :                        STRIP_UNARY (operands[4]))
   20118              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20119              :                        STRIP_UNARY (operands[3]))
   20120              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20121              :                        STRIP_UNARY (operands[3])))))
   20122              :                 return -1;
   20123              :               return 6091; /* *avx512vl_vpternlogv4sf_1 */
   20124              : 
   20125              :             case 21:
   20126              :               if (!(
   20127              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20128              : ((64 == 64 || TARGET_AVX512VL
   20129              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20130              :    && ix86_pre_reload_split ()
   20131              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20132              :                     STRIP_UNARY (operands[4]))
   20133              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20134              :                        STRIP_UNARY (operands[4]))
   20135              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20136              :                        STRIP_UNARY (operands[3]))
   20137              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20138              :                        STRIP_UNARY (operands[3])))) && 
   20139              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20140              : (TARGET_AVX512F)))
   20141              :                 return -1;
   20142              :               return 6118; /* *avx512f_vpternlogv8df_1 */
   20143              : 
   20144              :             case 22:
   20145              :               if (!(
   20146              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20147              : ((32 == 64 || TARGET_AVX512VL
   20148              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20149              :    && ix86_pre_reload_split ()
   20150              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20151              :                     STRIP_UNARY (operands[4]))
   20152              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20153              :                        STRIP_UNARY (operands[4]))
   20154              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20155              :                        STRIP_UNARY (operands[3]))
   20156              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20157              :                        STRIP_UNARY (operands[3])))) && 
   20158              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20159              : (TARGET_AVX)))
   20160              :                 return -1;
   20161              :               return 6145; /* *avx512vl_vpternlogv4df_1 */
   20162              : 
   20163              :             case 23:
   20164              :               if (!(
   20165              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20166              : ((16 == 64 || TARGET_AVX512VL
   20167              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20168              :    && ix86_pre_reload_split ()
   20169              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20170              :                     STRIP_UNARY (operands[4]))
   20171              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20172              :                        STRIP_UNARY (operands[4]))
   20173              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20174              :                        STRIP_UNARY (operands[3]))
   20175              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20176              :                        STRIP_UNARY (operands[3])))) && 
   20177              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20178              : (TARGET_SSE2)))
   20179              :                 return -1;
   20180              :               return 6172; /* *avx512vl_vpternlogv2df_1 */
   20181              : 
   20182              :             case 24:
   20183              :               if (!(
   20184              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20185              : ((64 == 64 || TARGET_AVX512VL
   20186              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20187              :    && ix86_pre_reload_split ()
   20188              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20189              :                     STRIP_UNARY (operands[4]))
   20190              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20191              :                        STRIP_UNARY (operands[4]))
   20192              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20193              :                        STRIP_UNARY (operands[3]))
   20194              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20195              :                        STRIP_UNARY (operands[3])))) && 
   20196              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20197              : (TARGET_AVX512F)))
   20198              :                 return -1;
   20199              :               return 5878; /* *avx512bw_vpternlogv32hf_1 */
   20200              : 
   20201              :             case 25:
   20202              :               if (!(
   20203              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20204              : ((32 == 64 || TARGET_AVX512VL
   20205              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20206              :    && ix86_pre_reload_split ()
   20207              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20208              :                     STRIP_UNARY (operands[4]))
   20209              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20210              :                        STRIP_UNARY (operands[4]))
   20211              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20212              :                        STRIP_UNARY (operands[3]))
   20213              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20214              :                        STRIP_UNARY (operands[3])))) && 
   20215              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20216              : (TARGET_AVX)))
   20217              :                 return -1;
   20218              :               return 5905; /* *avx512vl_vpternlogv16hf_1 */
   20219              : 
   20220              :             case 26:
   20221              :               if (!
   20222              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20223              : ((16 == 64 || TARGET_AVX512VL
   20224              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20225              :    && ix86_pre_reload_split ()
   20226              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20227              :                     STRIP_UNARY (operands[4]))
   20228              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20229              :                        STRIP_UNARY (operands[4]))
   20230              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20231              :                        STRIP_UNARY (operands[3]))
   20232              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20233              :                        STRIP_UNARY (operands[3])))))
   20234              :                 return -1;
   20235              :               return 5932; /* *avx512fp16_vpternlogv8hf_1 */
   20236              : 
   20237              :             case 27:
   20238              :               if (!(
   20239              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20240              : ((64 == 64 || TARGET_AVX512VL
   20241              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20242              :    && ix86_pre_reload_split ()
   20243              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20244              :                     STRIP_UNARY (operands[4]))
   20245              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20246              :                        STRIP_UNARY (operands[4]))
   20247              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20248              :                        STRIP_UNARY (operands[3]))
   20249              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20250              :                        STRIP_UNARY (operands[3])))) && 
   20251              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20252              : (TARGET_AVX512F)))
   20253              :                 return -1;
   20254              :               return 5959; /* *avx512bw_vpternlogv32bf_1 */
   20255              : 
   20256              :             case 28:
   20257              :               if (!(
   20258              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20259              : ((32 == 64 || TARGET_AVX512VL
   20260              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20261              :    && ix86_pre_reload_split ()
   20262              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20263              :                     STRIP_UNARY (operands[4]))
   20264              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20265              :                        STRIP_UNARY (operands[4]))
   20266              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20267              :                        STRIP_UNARY (operands[3]))
   20268              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20269              :                        STRIP_UNARY (operands[3])))) && 
   20270              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20271              : (TARGET_AVX)))
   20272              :                 return -1;
   20273              :               return 5986; /* *avx512vl_vpternlogv16bf_1 */
   20274              : 
   20275              :             case 29:
   20276              :               if (!
   20277              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20278              : ((16 == 64 || TARGET_AVX512VL
   20279              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20280              :    && ix86_pre_reload_split ()
   20281              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20282              :                     STRIP_UNARY (operands[4]))
   20283              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20284              :                        STRIP_UNARY (operands[4]))
   20285              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20286              :                        STRIP_UNARY (operands[3]))
   20287              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20288              :                        STRIP_UNARY (operands[3])))))
   20289              :                 return -1;
   20290              :               return 6013; /* *avx512vl_vpternlogv8bf_1 */
   20291              : 
   20292              :             case 30:
   20293              :               if (!(
   20294              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20295              : ((64 == 64 || TARGET_AVX512VL
   20296              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20297              :    && ix86_pre_reload_split ()
   20298              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20299              :                     STRIP_UNARY (operands[4]))
   20300              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20301              :                        STRIP_UNARY (operands[4]))
   20302              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20303              :                        STRIP_UNARY (operands[3]))
   20304              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20305              :                        STRIP_UNARY (operands[3])))) && 
   20306              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20307              : (TARGET_AVX512F)))
   20308              :                 return -1;
   20309              :               return 6040; /* *avx512f_vpternlogv16sf_1 */
   20310              : 
   20311              :             case 31:
   20312              :               if (!(
   20313              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20314              : ((32 == 64 || TARGET_AVX512VL
   20315              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20316              :    && ix86_pre_reload_split ()
   20317              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20318              :                     STRIP_UNARY (operands[4]))
   20319              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20320              :                        STRIP_UNARY (operands[4]))
   20321              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20322              :                        STRIP_UNARY (operands[3]))
   20323              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20324              :                        STRIP_UNARY (operands[3])))) && 
   20325              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20326              : (TARGET_AVX)))
   20327              :                 return -1;
   20328              :               return 6067; /* *avx512vl_vpternlogv8sf_1 */
   20329              : 
   20330              :             case 32:
   20331              :               if (!
   20332              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20333              : ((16 == 64 || TARGET_AVX512VL
   20334              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20335              :    && ix86_pre_reload_split ()
   20336              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20337              :                     STRIP_UNARY (operands[4]))
   20338              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20339              :                        STRIP_UNARY (operands[4]))
   20340              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20341              :                        STRIP_UNARY (operands[3]))
   20342              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20343              :                        STRIP_UNARY (operands[3])))))
   20344              :                 return -1;
   20345              :               return 6094; /* *avx512vl_vpternlogv4sf_1 */
   20346              : 
   20347              :             case 33:
   20348              :               if (!(
   20349              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20350              : ((64 == 64 || TARGET_AVX512VL
   20351              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20352              :    && ix86_pre_reload_split ()
   20353              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20354              :                     STRIP_UNARY (operands[4]))
   20355              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20356              :                        STRIP_UNARY (operands[4]))
   20357              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20358              :                        STRIP_UNARY (operands[3]))
   20359              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20360              :                        STRIP_UNARY (operands[3])))) && 
   20361              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20362              : (TARGET_AVX512F)))
   20363              :                 return -1;
   20364              :               return 6121; /* *avx512f_vpternlogv8df_1 */
   20365              : 
   20366              :             case 34:
   20367              :               if (!(
   20368              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20369              : ((32 == 64 || TARGET_AVX512VL
   20370              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20371              :    && ix86_pre_reload_split ()
   20372              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20373              :                     STRIP_UNARY (operands[4]))
   20374              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20375              :                        STRIP_UNARY (operands[4]))
   20376              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20377              :                        STRIP_UNARY (operands[3]))
   20378              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20379              :                        STRIP_UNARY (operands[3])))) && 
   20380              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20381              : (TARGET_AVX)))
   20382              :                 return -1;
   20383              :               return 6148; /* *avx512vl_vpternlogv4df_1 */
   20384              : 
   20385              :             case 35:
   20386              :               if (!(
   20387              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20388              : ((16 == 64 || TARGET_AVX512VL
   20389              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20390              :    && ix86_pre_reload_split ()
   20391              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20392              :                     STRIP_UNARY (operands[4]))
   20393              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20394              :                        STRIP_UNARY (operands[4]))
   20395              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20396              :                        STRIP_UNARY (operands[3]))
   20397              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20398              :                        STRIP_UNARY (operands[3])))) && 
   20399              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20400              : (TARGET_SSE2)))
   20401              :                 return -1;
   20402              :               return 6175; /* *avx512vl_vpternlogv2df_1 */
   20403              : 
   20404              :             case 36:
   20405              :               if (!(
   20406              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20407              : ((64 == 64 || TARGET_AVX512VL
   20408              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20409              :    && ix86_pre_reload_split ()) && 
   20410              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20411              : (TARGET_AVX512F)))
   20412              :                 return -1;
   20413              :               return 6946; /* *avx512bw_vpternlogv32hf_3 */
   20414              : 
   20415              :             case 37:
   20416              :               if (!(
   20417              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20418              : ((32 == 64 || TARGET_AVX512VL
   20419              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20420              :    && ix86_pre_reload_split ()) && 
   20421              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20422              : (TARGET_AVX)))
   20423              :                 return -1;
   20424              :               return 6955; /* *avx512vl_vpternlogv16hf_3 */
   20425              : 
   20426              :             case 38:
   20427              :               if (!
   20428              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20429              : ((16 == 64 || TARGET_AVX512VL
   20430              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20431              :    && ix86_pre_reload_split ()))
   20432              :                 return -1;
   20433              :               return 6964; /* *avx512fp16_vpternlogv8hf_3 */
   20434              : 
   20435              :             case 39:
   20436              :               if (!(
   20437              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20438              : ((64 == 64 || TARGET_AVX512VL
   20439              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20440              :    && ix86_pre_reload_split ()) && 
   20441              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20442              : (TARGET_AVX512F)))
   20443              :                 return -1;
   20444              :               return 6973; /* *avx512bw_vpternlogv32bf_3 */
   20445              : 
   20446              :             case 40:
   20447              :               if (!(
   20448              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20449              : ((32 == 64 || TARGET_AVX512VL
   20450              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20451              :    && ix86_pre_reload_split ()) && 
   20452              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20453              : (TARGET_AVX)))
   20454              :                 return -1;
   20455              :               return 6982; /* *avx512vl_vpternlogv16bf_3 */
   20456              : 
   20457              :             case 41:
   20458              :               if (!
   20459              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20460              : ((16 == 64 || TARGET_AVX512VL
   20461              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20462              :    && ix86_pre_reload_split ()))
   20463              :                 return -1;
   20464              :               return 6991; /* *avx512vl_vpternlogv8bf_3 */
   20465              : 
   20466              :             case 42:
   20467              :               if (!(
   20468              : #line 14271 "/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              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20473              : (TARGET_AVX512F)))
   20474              :                 return -1;
   20475              :               return 7000; /* *avx512f_vpternlogv16sf_3 */
   20476              : 
   20477              :             case 43:
   20478              :               if (!(
   20479              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20480              : ((32 == 64 || TARGET_AVX512VL
   20481              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20482              :    && ix86_pre_reload_split ()) && 
   20483              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20484              : (TARGET_AVX)))
   20485              :                 return -1;
   20486              :               return 7009; /* *avx512vl_vpternlogv8sf_3 */
   20487              : 
   20488              :             case 44:
   20489              :               if (!
   20490              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20491              : ((16 == 64 || TARGET_AVX512VL
   20492              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20493              :    && ix86_pre_reload_split ()))
   20494              :                 return -1;
   20495              :               return 7018; /* *avx512vl_vpternlogv4sf_3 */
   20496              : 
   20497              :             case 45:
   20498              :               if (!(
   20499              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20500              : ((64 == 64 || TARGET_AVX512VL
   20501              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20502              :    && ix86_pre_reload_split ()) && 
   20503              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20504              : (TARGET_AVX512F)))
   20505              :                 return -1;
   20506              :               return 7027; /* *avx512f_vpternlogv8df_3 */
   20507              : 
   20508              :             case 46:
   20509              :               if (!(
   20510              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20511              : ((32 == 64 || TARGET_AVX512VL
   20512              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20513              :    && ix86_pre_reload_split ()) && 
   20514              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20515              : (TARGET_AVX)))
   20516              :                 return -1;
   20517              :               return 7036; /* *avx512vl_vpternlogv4df_3 */
   20518              : 
   20519              :             case 47:
   20520              :               if (!(
   20521              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20522              : ((16 == 64 || TARGET_AVX512VL
   20523              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20524              :    && ix86_pre_reload_split ()) && 
   20525              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20526              : (TARGET_SSE2)))
   20527              :                 return -1;
   20528              :               return 7045; /* *avx512vl_vpternlogv2df_3 */
   20529              : 
   20530              :             default:
   20531              :               return -1;
   20532              :             }
   20533              : 
   20534              :         case AND:
   20535              :           switch (pattern542 (x2))
   20536              :             {
   20537              :             case 0:
   20538              :               if (!(
   20539              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20540              : ((64 == 64 || TARGET_AVX512VL
   20541              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20542              :    && ix86_pre_reload_split ()
   20543              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20544              :                     STRIP_UNARY (operands[4]))
   20545              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20546              :                        STRIP_UNARY (operands[4]))
   20547              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20548              :                        STRIP_UNARY (operands[3]))
   20549              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20550              :                        STRIP_UNARY (operands[3])))) && 
   20551              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20552              : (TARGET_AVX512F)))
   20553              :                 return -1;
   20554              :               return 6520; /* *avx512bw_vpternlogv32hf_2 */
   20555              : 
   20556              :             case 1:
   20557              :               if (!(
   20558              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20559              : ((32 == 64 || TARGET_AVX512VL
   20560              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20561              :    && ix86_pre_reload_split ()
   20562              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20563              :                     STRIP_UNARY (operands[4]))
   20564              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20565              :                        STRIP_UNARY (operands[4]))
   20566              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20567              :                        STRIP_UNARY (operands[3]))
   20568              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20569              :                        STRIP_UNARY (operands[3])))) && 
   20570              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20571              : (TARGET_AVX)))
   20572              :                 return -1;
   20573              :               return 6547; /* *avx512vl_vpternlogv16hf_2 */
   20574              : 
   20575              :             case 2:
   20576              :               if (!
   20577              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20578              : ((16 == 64 || TARGET_AVX512VL
   20579              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20580              :    && ix86_pre_reload_split ()
   20581              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20582              :                     STRIP_UNARY (operands[4]))
   20583              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20584              :                        STRIP_UNARY (operands[4]))
   20585              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20586              :                        STRIP_UNARY (operands[3]))
   20587              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20588              :                        STRIP_UNARY (operands[3])))))
   20589              :                 return -1;
   20590              :               return 6574; /* *avx512fp16_vpternlogv8hf_2 */
   20591              : 
   20592              :             case 3:
   20593              :               if (!(
   20594              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20595              : ((64 == 64 || TARGET_AVX512VL
   20596              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20597              :    && ix86_pre_reload_split ()
   20598              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20599              :                     STRIP_UNARY (operands[4]))
   20600              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20601              :                        STRIP_UNARY (operands[4]))
   20602              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20603              :                        STRIP_UNARY (operands[3]))
   20604              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20605              :                        STRIP_UNARY (operands[3])))) && 
   20606              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20607              : (TARGET_AVX512F)))
   20608              :                 return -1;
   20609              :               return 6601; /* *avx512bw_vpternlogv32bf_2 */
   20610              : 
   20611              :             case 4:
   20612              :               if (!(
   20613              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20614              : ((32 == 64 || TARGET_AVX512VL
   20615              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20616              :    && ix86_pre_reload_split ()
   20617              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20618              :                     STRIP_UNARY (operands[4]))
   20619              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20620              :                        STRIP_UNARY (operands[4]))
   20621              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20622              :                        STRIP_UNARY (operands[3]))
   20623              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20624              :                        STRIP_UNARY (operands[3])))) && 
   20625              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20626              : (TARGET_AVX)))
   20627              :                 return -1;
   20628              :               return 6628; /* *avx512vl_vpternlogv16bf_2 */
   20629              : 
   20630              :             case 5:
   20631              :               if (!
   20632              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20633              : ((16 == 64 || TARGET_AVX512VL
   20634              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20635              :    && ix86_pre_reload_split ()
   20636              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20637              :                     STRIP_UNARY (operands[4]))
   20638              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20639              :                        STRIP_UNARY (operands[4]))
   20640              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20641              :                        STRIP_UNARY (operands[3]))
   20642              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20643              :                        STRIP_UNARY (operands[3])))))
   20644              :                 return -1;
   20645              :               return 6655; /* *avx512vl_vpternlogv8bf_2 */
   20646              : 
   20647              :             case 6:
   20648              :               if (!(
   20649              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20650              : ((64 == 64 || TARGET_AVX512VL
   20651              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20652              :    && ix86_pre_reload_split ()
   20653              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20654              :                     STRIP_UNARY (operands[4]))
   20655              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20656              :                        STRIP_UNARY (operands[4]))
   20657              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20658              :                        STRIP_UNARY (operands[3]))
   20659              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20660              :                        STRIP_UNARY (operands[3])))) && 
   20661              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20662              : (TARGET_AVX512F)))
   20663              :                 return -1;
   20664              :               return 6682; /* *avx512f_vpternlogv16sf_2 */
   20665              : 
   20666              :             case 7:
   20667              :               if (!(
   20668              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20669              : ((32 == 64 || TARGET_AVX512VL
   20670              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20671              :    && ix86_pre_reload_split ()
   20672              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20673              :                     STRIP_UNARY (operands[4]))
   20674              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20675              :                        STRIP_UNARY (operands[4]))
   20676              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20677              :                        STRIP_UNARY (operands[3]))
   20678              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20679              :                        STRIP_UNARY (operands[3])))) && 
   20680              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20681              : (TARGET_AVX)))
   20682              :                 return -1;
   20683              :               return 6709; /* *avx512vl_vpternlogv8sf_2 */
   20684              : 
   20685              :             case 8:
   20686              :               if (!
   20687              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20688              : ((16 == 64 || TARGET_AVX512VL
   20689              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20690              :    && ix86_pre_reload_split ()
   20691              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20692              :                     STRIP_UNARY (operands[4]))
   20693              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20694              :                        STRIP_UNARY (operands[4]))
   20695              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20696              :                        STRIP_UNARY (operands[3]))
   20697              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20698              :                        STRIP_UNARY (operands[3])))))
   20699              :                 return -1;
   20700              :               return 6736; /* *avx512vl_vpternlogv4sf_2 */
   20701              : 
   20702              :             case 9:
   20703              :               if (!(
   20704              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20705              : ((64 == 64 || TARGET_AVX512VL
   20706              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20707              :    && ix86_pre_reload_split ()
   20708              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20709              :                     STRIP_UNARY (operands[4]))
   20710              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20711              :                        STRIP_UNARY (operands[4]))
   20712              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20713              :                        STRIP_UNARY (operands[3]))
   20714              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20715              :                        STRIP_UNARY (operands[3])))) && 
   20716              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20717              : (TARGET_AVX512F)))
   20718              :                 return -1;
   20719              :               return 6763; /* *avx512f_vpternlogv8df_2 */
   20720              : 
   20721              :             case 10:
   20722              :               if (!(
   20723              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20724              : ((32 == 64 || TARGET_AVX512VL
   20725              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20726              :    && ix86_pre_reload_split ()
   20727              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20728              :                     STRIP_UNARY (operands[4]))
   20729              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20730              :                        STRIP_UNARY (operands[4]))
   20731              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20732              :                        STRIP_UNARY (operands[3]))
   20733              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20734              :                        STRIP_UNARY (operands[3])))) && 
   20735              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20736              : (TARGET_AVX)))
   20737              :                 return -1;
   20738              :               return 6790; /* *avx512vl_vpternlogv4df_2 */
   20739              : 
   20740              :             case 11:
   20741              :               if (!(
   20742              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20743              : ((16 == 64 || TARGET_AVX512VL
   20744              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20745              :    && ix86_pre_reload_split ()
   20746              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20747              :                     STRIP_UNARY (operands[4]))
   20748              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20749              :                        STRIP_UNARY (operands[4]))
   20750              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20751              :                        STRIP_UNARY (operands[3]))
   20752              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20753              :                        STRIP_UNARY (operands[3])))) && 
   20754              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20755              : (TARGET_SSE2)))
   20756              :                 return -1;
   20757              :               return 6817; /* *avx512vl_vpternlogv2df_2 */
   20758              : 
   20759              :             default:
   20760              :               return -1;
   20761              :             }
   20762              : 
   20763              :         case IOR:
   20764              :           switch (pattern542 (x2))
   20765              :             {
   20766              :             case 0:
   20767              :               if (!(
   20768              : #line 14187 "/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 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20781              : (TARGET_AVX512F)))
   20782              :                 return -1;
   20783              :               return 6523; /* *avx512bw_vpternlogv32hf_2 */
   20784              : 
   20785              :             case 1:
   20786              :               if (!(
   20787              : #line 14187 "/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 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20800              : (TARGET_AVX)))
   20801              :                 return -1;
   20802              :               return 6550; /* *avx512vl_vpternlogv16hf_2 */
   20803              : 
   20804              :             case 2:
   20805              :               if (!
   20806              : #line 14187 "/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 6577; /* *avx512fp16_vpternlogv8hf_2 */
   20820              : 
   20821              :             case 3:
   20822              :               if (!(
   20823              : #line 14187 "/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 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20836              : (TARGET_AVX512F)))
   20837              :                 return -1;
   20838              :               return 6604; /* *avx512bw_vpternlogv32bf_2 */
   20839              : 
   20840              :             case 4:
   20841              :               if (!(
   20842              : #line 14187 "/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 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20855              : (TARGET_AVX)))
   20856              :                 return -1;
   20857              :               return 6631; /* *avx512vl_vpternlogv16bf_2 */
   20858              : 
   20859              :             case 5:
   20860              :               if (!
   20861              : #line 14187 "/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              :                 return -1;
   20874              :               return 6658; /* *avx512vl_vpternlogv8bf_2 */
   20875              : 
   20876              :             case 6:
   20877              :               if (!(
   20878              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20879              : ((64 == 64 || TARGET_AVX512VL
   20880              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20881              :    && ix86_pre_reload_split ()
   20882              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20883              :                     STRIP_UNARY (operands[4]))
   20884              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20885              :                        STRIP_UNARY (operands[4]))
   20886              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20887              :                        STRIP_UNARY (operands[3]))
   20888              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20889              :                        STRIP_UNARY (operands[3])))) && 
   20890              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20891              : (TARGET_AVX512F)))
   20892              :                 return -1;
   20893              :               return 6685; /* *avx512f_vpternlogv16sf_2 */
   20894              : 
   20895              :             case 7:
   20896              :               if (!(
   20897              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20898              : ((32 == 64 || TARGET_AVX512VL
   20899              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20900              :    && ix86_pre_reload_split ()
   20901              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20902              :                     STRIP_UNARY (operands[4]))
   20903              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20904              :                        STRIP_UNARY (operands[4]))
   20905              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20906              :                        STRIP_UNARY (operands[3]))
   20907              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20908              :                        STRIP_UNARY (operands[3])))) && 
   20909              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20910              : (TARGET_AVX)))
   20911              :                 return -1;
   20912              :               return 6712; /* *avx512vl_vpternlogv8sf_2 */
   20913              : 
   20914              :             case 8:
   20915              :               if (!
   20916              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20917              : ((16 == 64 || TARGET_AVX512VL
   20918              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20919              :    && ix86_pre_reload_split ()
   20920              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20921              :                     STRIP_UNARY (operands[4]))
   20922              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20923              :                        STRIP_UNARY (operands[4]))
   20924              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20925              :                        STRIP_UNARY (operands[3]))
   20926              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20927              :                        STRIP_UNARY (operands[3])))))
   20928              :                 return -1;
   20929              :               return 6739; /* *avx512vl_vpternlogv4sf_2 */
   20930              : 
   20931              :             case 9:
   20932              :               if (!(
   20933              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20934              : ((64 == 64 || TARGET_AVX512VL
   20935              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20936              :    && ix86_pre_reload_split ()
   20937              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20938              :                     STRIP_UNARY (operands[4]))
   20939              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20940              :                        STRIP_UNARY (operands[4]))
   20941              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20942              :                        STRIP_UNARY (operands[3]))
   20943              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20944              :                        STRIP_UNARY (operands[3])))) && 
   20945              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20946              : (TARGET_AVX512F)))
   20947              :                 return -1;
   20948              :               return 6766; /* *avx512f_vpternlogv8df_2 */
   20949              : 
   20950              :             case 10:
   20951              :               if (!(
   20952              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20953              : ((32 == 64 || TARGET_AVX512VL
   20954              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20955              :    && ix86_pre_reload_split ()
   20956              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20957              :                     STRIP_UNARY (operands[4]))
   20958              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20959              :                        STRIP_UNARY (operands[4]))
   20960              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20961              :                        STRIP_UNARY (operands[3]))
   20962              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20963              :                        STRIP_UNARY (operands[3])))) && 
   20964              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20965              : (TARGET_AVX)))
   20966              :                 return -1;
   20967              :               return 6793; /* *avx512vl_vpternlogv4df_2 */
   20968              : 
   20969              :             case 11:
   20970              :               if (!(
   20971              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20972              : ((16 == 64 || TARGET_AVX512VL
   20973              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20974              :    && ix86_pre_reload_split ()
   20975              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20976              :                     STRIP_UNARY (operands[4]))
   20977              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20978              :                        STRIP_UNARY (operands[4]))
   20979              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20980              :                        STRIP_UNARY (operands[3]))
   20981              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20982              :                        STRIP_UNARY (operands[3])))) && 
   20983              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20984              : (TARGET_SSE2)))
   20985              :                 return -1;
   20986              :               return 6820; /* *avx512vl_vpternlogv2df_2 */
   20987              : 
   20988              :             default:
   20989              :               return -1;
   20990              :             }
   20991              : 
   20992              :         case XOR:
   20993              :           switch (pattern542 (x2))
   20994              :             {
   20995              :             case 0:
   20996              :               if (!(
   20997              : #line 14187 "/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 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21010              : (TARGET_AVX512F)))
   21011              :                 return -1;
   21012              :               return 6526; /* *avx512bw_vpternlogv32hf_2 */
   21013              : 
   21014              :             case 1:
   21015              :               if (!(
   21016              : #line 14187 "/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 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21029              : (TARGET_AVX)))
   21030              :                 return -1;
   21031              :               return 6553; /* *avx512vl_vpternlogv16hf_2 */
   21032              : 
   21033              :             case 2:
   21034              :               if (!
   21035              : #line 14187 "/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 6580; /* *avx512fp16_vpternlogv8hf_2 */
   21049              : 
   21050              :             case 3:
   21051              :               if (!(
   21052              : #line 14187 "/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 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21065              : (TARGET_AVX512F)))
   21066              :                 return -1;
   21067              :               return 6607; /* *avx512bw_vpternlogv32bf_2 */
   21068              : 
   21069              :             case 4:
   21070              :               if (!(
   21071              : #line 14187 "/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 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21084              : (TARGET_AVX)))
   21085              :                 return -1;
   21086              :               return 6634; /* *avx512vl_vpternlogv16bf_2 */
   21087              : 
   21088              :             case 5:
   21089              :               if (!
   21090              : #line 14187 "/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              :                 return -1;
   21103              :               return 6661; /* *avx512vl_vpternlogv8bf_2 */
   21104              : 
   21105              :             case 6:
   21106              :               if (!(
   21107              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21108              : ((64 == 64 || TARGET_AVX512VL
   21109              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21110              :    && ix86_pre_reload_split ()
   21111              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21112              :                     STRIP_UNARY (operands[4]))
   21113              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21114              :                        STRIP_UNARY (operands[4]))
   21115              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21116              :                        STRIP_UNARY (operands[3]))
   21117              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21118              :                        STRIP_UNARY (operands[3])))) && 
   21119              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21120              : (TARGET_AVX512F)))
   21121              :                 return -1;
   21122              :               return 6688; /* *avx512f_vpternlogv16sf_2 */
   21123              : 
   21124              :             case 7:
   21125              :               if (!(
   21126              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21127              : ((32 == 64 || TARGET_AVX512VL
   21128              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21129              :    && ix86_pre_reload_split ()
   21130              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21131              :                     STRIP_UNARY (operands[4]))
   21132              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21133              :                        STRIP_UNARY (operands[4]))
   21134              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21135              :                        STRIP_UNARY (operands[3]))
   21136              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21137              :                        STRIP_UNARY (operands[3])))) && 
   21138              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21139              : (TARGET_AVX)))
   21140              :                 return -1;
   21141              :               return 6715; /* *avx512vl_vpternlogv8sf_2 */
   21142              : 
   21143              :             case 8:
   21144              :               if (!
   21145              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21146              : ((16 == 64 || TARGET_AVX512VL
   21147              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21148              :    && ix86_pre_reload_split ()
   21149              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21150              :                     STRIP_UNARY (operands[4]))
   21151              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21152              :                        STRIP_UNARY (operands[4]))
   21153              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21154              :                        STRIP_UNARY (operands[3]))
   21155              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21156              :                        STRIP_UNARY (operands[3])))))
   21157              :                 return -1;
   21158              :               return 6742; /* *avx512vl_vpternlogv4sf_2 */
   21159              : 
   21160              :             case 9:
   21161              :               if (!(
   21162              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21163              : ((64 == 64 || TARGET_AVX512VL
   21164              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21165              :    && ix86_pre_reload_split ()
   21166              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21167              :                     STRIP_UNARY (operands[4]))
   21168              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21169              :                        STRIP_UNARY (operands[4]))
   21170              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21171              :                        STRIP_UNARY (operands[3]))
   21172              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21173              :                        STRIP_UNARY (operands[3])))) && 
   21174              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21175              : (TARGET_AVX512F)))
   21176              :                 return -1;
   21177              :               return 6769; /* *avx512f_vpternlogv8df_2 */
   21178              : 
   21179              :             case 10:
   21180              :               if (!(
   21181              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21182              : ((32 == 64 || TARGET_AVX512VL
   21183              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21184              :    && ix86_pre_reload_split ()
   21185              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21186              :                     STRIP_UNARY (operands[4]))
   21187              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21188              :                        STRIP_UNARY (operands[4]))
   21189              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21190              :                        STRIP_UNARY (operands[3]))
   21191              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21192              :                        STRIP_UNARY (operands[3])))) && 
   21193              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21194              : (TARGET_AVX)))
   21195              :                 return -1;
   21196              :               return 6796; /* *avx512vl_vpternlogv4df_2 */
   21197              : 
   21198              :             case 11:
   21199              :               if (!(
   21200              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21201              : ((16 == 64 || TARGET_AVX512VL
   21202              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21203              :    && ix86_pre_reload_split ()
   21204              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21205              :                     STRIP_UNARY (operands[4]))
   21206              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21207              :                        STRIP_UNARY (operands[4]))
   21208              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21209              :                        STRIP_UNARY (operands[3]))
   21210              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21211              :                        STRIP_UNARY (operands[3])))) && 
   21212              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21213              : (TARGET_SSE2)))
   21214              :                 return -1;
   21215              :               return 6823; /* *avx512vl_vpternlogv2df_2 */
   21216              : 
   21217              :             default:
   21218              :               return -1;
   21219              :             }
   21220              : 
   21221              :         default:
   21222              :           return -1;
   21223              :         }
   21224              : 
   21225              :     case XOR:
   21226              :       return recog_315 (x1, insn, pnum_clobbers);
   21227              : 
   21228              :     default:
   21229              :       return -1;
   21230              :     }
   21231              : }
   21232              : 
   21233              :  int
   21234              : recog_382 (rtx x1 ATTRIBUTE_UNUSED,
   21235              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21236              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21237              : {
   21238              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21239              :   rtx x2, x3, x4, x5, x6, x7;
   21240              :   int res ATTRIBUTE_UNUSED;
   21241              :   if (pnum_clobbers == NULL)
   21242              :     return -1;
   21243              :   x2 = XVECEXP (x1, 0, 0);
   21244              :   x3 = XEXP (x2, 1);
   21245              :   if (GET_MODE (x3) != E_SImode)
   21246              :     return -1;
   21247              :   x4 = XVECEXP (x1, 0, 1);
   21248              :   if (GET_CODE (x4) != USE)
   21249              :     return -1;
   21250              :   x5 = XEXP (x2, 0);
   21251              :   operands[0] = x5;
   21252              :   if (!register_operand (operands[0], E_SImode))
   21253              :     return -1;
   21254              :   x6 = XEXP (x3, 0);
   21255              :   operands[3] = x6;
   21256              :   x7 = XEXP (x4, 0);
   21257              :   operands[4] = x7;
   21258              :   switch (GET_MODE (operands[3]))
   21259              :     {
   21260              :     case E_SFmode:
   21261              :       if (!nonimmediate_operand (operands[3], E_SFmode)
   21262              :           || !nonimmediate_operand (operands[4], E_V4SFmode)
   21263              :           || !
   21264              : #line 5920 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21265              : (!TARGET_64BIT && TARGET_SSE2 && TARGET_SSE_MATH
   21266              :    && optimize_function_for_speed_p (cfun)))
   21267              :         return -1;
   21268              :       *pnum_clobbers = 2;
   21269              :       return 227; /* *fixuns_truncsf_1 */
   21270              : 
   21271              :     case E_DFmode:
   21272              :       if (!nonimmediate_operand (operands[3], E_DFmode)
   21273              :           || !nonimmediate_operand (operands[4], E_V2DFmode)
   21274              :           || !
   21275              : #line 5920 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21276              : (!TARGET_64BIT && TARGET_SSE2 && TARGET_SSE_MATH
   21277              :    && optimize_function_for_speed_p (cfun)))
   21278              :         return -1;
   21279              :       *pnum_clobbers = 2;
   21280              :       return 228; /* *fixuns_truncdf_1 */
   21281              : 
   21282              :     default:
   21283              :       return -1;
   21284              :     }
   21285              : }
   21286              : 
   21287              :  int
   21288              : recog_384 (rtx x1 ATTRIBUTE_UNUSED,
   21289              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21290              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21291              : {
   21292              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21293              :   rtx x2, x3, x4, x5, x6;
   21294              :   int res ATTRIBUTE_UNUSED;
   21295              :   x2 = XVECEXP (x1, 0, 0);
   21296              :   x3 = XEXP (x2, 0);
   21297              :   operands[0] = x3;
   21298              :   x4 = XEXP (x2, 1);
   21299              :   x5 = XEXP (x4, 0);
   21300              :   operands[1] = x5;
   21301              :   x6 = XVECEXP (x1, 0, 1);
   21302              :   switch (GET_CODE (x6))
   21303              :     {
   21304              :     case CLOBBER:
   21305              :       if (pnum_clobbers == NULL
   21306              :           || !register_operand (operands[1], E_DImode))
   21307              :         return -1;
   21308              :       switch (pattern940 (x1))
   21309              :         {
   21310              :         case 0:
   21311              :           if (!
   21312              : #line 6215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21313              : (!TARGET_64BIT && TARGET_INTER_UNIT_MOVES_TO_VEC
   21314              :    && TARGET_80387 && X87_ENABLE_FLOAT (SFmode, DImode)
   21315              :    && TARGET_SSE2 && optimize_function_for_speed_p (cfun)))
   21316              :             return -1;
   21317              :           *pnum_clobbers = 2;
   21318              :           return 258; /* floatdisf2_i387_with_xmm */
   21319              : 
   21320              :         case 1:
   21321              :           if (!
   21322              : #line 6215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21323              : (!TARGET_64BIT && TARGET_INTER_UNIT_MOVES_TO_VEC
   21324              :    && TARGET_80387 && X87_ENABLE_FLOAT (DFmode, DImode)
   21325              :    && TARGET_SSE2 && optimize_function_for_speed_p (cfun)))
   21326              :             return -1;
   21327              :           *pnum_clobbers = 2;
   21328              :           return 259; /* floatdidf2_i387_with_xmm */
   21329              : 
   21330              :         case 2:
   21331              :           if (!
   21332              : #line 6215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21333              : (!TARGET_64BIT && TARGET_INTER_UNIT_MOVES_TO_VEC
   21334              :    && TARGET_80387 && X87_ENABLE_FLOAT (XFmode, DImode)
   21335              :    && TARGET_SSE2 && optimize_function_for_speed_p (cfun)))
   21336              :             return -1;
   21337              :           *pnum_clobbers = 2;
   21338              :           return 260; /* floatdixf2_i387_with_xmm */
   21339              : 
   21340              :         default:
   21341              :           return -1;
   21342              :         }
   21343              : 
   21344              :     case UNSPEC:
   21345              :       if (pattern693 (x1, 
   21346              : E_V2SImode, 
   21347              : E_V2SFmode) != 0
   21348              :           || !
   21349              : #line 1623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   21350              : (TARGET_3DNOW))
   21351              :         return -1;
   21352              :       return 2138; /* mmx_floatv2siv2sf2 */
   21353              : 
   21354              :     default:
   21355              :       return -1;
   21356              :     }
   21357              : }
   21358              : 
   21359              :  int
   21360              : recog_385 (rtx x1 ATTRIBUTE_UNUSED,
   21361              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21362              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21363              : {
   21364              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21365              :   rtx x2, x3, x4, x5, x6;
   21366              :   int res ATTRIBUTE_UNUSED;
   21367              :   if (pnum_clobbers == NULL)
   21368              :     return -1;
   21369              :   x2 = XVECEXP (x1, 0, 1);
   21370              :   if (GET_CODE (x2) != CLOBBER)
   21371              :     return -1;
   21372              :   x3 = XVECEXP (x1, 0, 0);
   21373              :   x4 = XEXP (x3, 0);
   21374              :   operands[0] = x4;
   21375              :   x5 = XEXP (x3, 1);
   21376              :   x6 = XEXP (x5, 0);
   21377              :   operands[1] = x6;
   21378              :   if (!nonimmediate_operand (operands[1], E_SImode))
   21379              :     return -1;
   21380              :   switch (pattern940 (x1))
   21381              :     {
   21382              :     case 0:
   21383              :       if (!
   21384              : #line 6306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21385              : (!TARGET_64BIT
   21386              :    && TARGET_80387 && X87_ENABLE_FLOAT (SFmode, DImode)
   21387              :    && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC))
   21388              :         return -1;
   21389              :       *pnum_clobbers = 1;
   21390              :       return 265; /* floatunssisf2_i387_with_xmm */
   21391              : 
   21392              :     case 1:
   21393              :       if (!
   21394              : #line 6306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21395              : (!TARGET_64BIT
   21396              :    && TARGET_80387 && X87_ENABLE_FLOAT (DFmode, DImode)
   21397              :    && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC))
   21398              :         return -1;
   21399              :       *pnum_clobbers = 1;
   21400              :       return 266; /* floatunssidf2_i387_with_xmm */
   21401              : 
   21402              :     case 2:
   21403              :       if (!
   21404              : #line 6306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21405              : (!TARGET_64BIT
   21406              :    && TARGET_80387 && X87_ENABLE_FLOAT (XFmode, DImode)
   21407              :    && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC))
   21408              :         return -1;
   21409              :       *pnum_clobbers = 1;
   21410              :       return 267; /* floatunssixf2_i387_with_xmm */
   21411              : 
   21412              :     default:
   21413              :       return -1;
   21414              :     }
   21415              : }
   21416              : 
   21417              :  int
   21418              : recog_387 (rtx x1 ATTRIBUTE_UNUSED,
   21419              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21420              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21421              : {
   21422              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21423              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   21424              :   rtx x10, x11, x12, x13, x14;
   21425              :   int res ATTRIBUTE_UNUSED;
   21426              :   x2 = XVECEXP (x1, 0, 0);
   21427              :   x3 = XEXP (x2, 1);
   21428              :   x4 = XEXP (x3, 0);
   21429              :   switch (GET_CODE (x4))
   21430              :     {
   21431              :     case REG:
   21432              :     case SUBREG:
   21433              :     case MEM:
   21434              :       operands[1] = x4;
   21435              :       res = recog_386 (x1, insn, pnum_clobbers);
   21436              :       if (res >= 0)
   21437              :         return res;
   21438              :       if (GET_CODE (x4) != SUBREG
   21439              :           || maybe_ne (SUBREG_BYTE (x4), 0)
   21440              :           || GET_MODE (x4) != E_QImode)
   21441              :         return -1;
   21442              :       x5 = XEXP (x4, 0);
   21443              :       switch (GET_CODE (x5))
   21444              :         {
   21445              :         case ASHIFTRT:
   21446              :         case LSHIFTRT:
   21447              :         case SIGN_EXTRACT:
   21448              :         case ZERO_EXTRACT:
   21449              :           operands[3] = x5;
   21450              :           x6 = XVECEXP (x1, 0, 1);
   21451              :           if (GET_CODE (x6) != CLOBBER
   21452              :               || pattern573 (x1) != 0)
   21453              :             return -1;
   21454              :           x7 = XEXP (x5, 0);
   21455              :           operands[2] = x7;
   21456              :           switch (pattern1535 (x2))
   21457              :             {
   21458              :             case 0:
   21459              :               if (
   21460              : #line 7044 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21461              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   21462              :                 return 307; /* *addqi_exthi_1_slp */
   21463              :               break;
   21464              : 
   21465              :             case 1:
   21466              :               if (
   21467              : #line 7044 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21468              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   21469              :                 return 308; /* *addqi_extsi_1_slp */
   21470              :               break;
   21471              : 
   21472              :             case 2:
   21473              :               if ((
   21474              : #line 7044 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21475              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   21476              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21477              : (TARGET_64BIT)))
   21478              :                 return 309; /* *addqi_extdi_1_slp */
   21479              :               break;
   21480              : 
   21481              :             case 3:
   21482              :               return 331; /* *addqi_exthi_0 */
   21483              : 
   21484              :             case 4:
   21485              :               return 332; /* *addqi_extsi_0 */
   21486              : 
   21487              :             case 5:
   21488              :               if (
   21489              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21490              : (TARGET_64BIT))
   21491              :                 return 333; /* *addqi_extdi_0 */
   21492              :               break;
   21493              : 
   21494              :             default:
   21495              :               break;
   21496              :             }
   21497              :           x8 = XEXP (x3, 1);
   21498              :           if (GET_CODE (x8) != SUBREG)
   21499              :             return -1;
   21500              :           switch (pattern1536 (x2))
   21501              :             {
   21502              :             case 0:
   21503              :               if (!
   21504              : #line 7073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21505              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   21506              :                 return -1;
   21507              :               return 310; /* *addqi_exthi_2_slp */
   21508              : 
   21509              :             case 1:
   21510              :               if (!
   21511              : #line 7073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21512              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   21513              :                 return -1;
   21514              :               return 311; /* *addqi_extsi_2_slp */
   21515              : 
   21516              :             case 2:
   21517              :               if (!(
   21518              : #line 7073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21519              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   21520              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21521              : (TARGET_64BIT)))
   21522              :                 return -1;
   21523              :               return 312; /* *addqi_extdi_2_slp */
   21524              : 
   21525              :             case 3:
   21526              :               return 334; /* *addqi_ext2hi_0 */
   21527              : 
   21528              :             case 4:
   21529              :               return 335; /* *addqi_ext2si_0 */
   21530              : 
   21531              :             case 5:
   21532              :               if (!
   21533              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21534              : (TARGET_64BIT))
   21535              :                 return -1;
   21536              :               return 336; /* *addqi_ext2di_0 */
   21537              : 
   21538              :             default:
   21539              :               return -1;
   21540              :             }
   21541              : 
   21542              :         default:
   21543              :           return -1;
   21544              :         }
   21545              : 
   21546              :     case ZERO_EXTEND:
   21547              :       x6 = XVECEXP (x1, 0, 1);
   21548              :       if (pattern355 (x6) != 0)
   21549              :         return -1;
   21550              :       switch (pattern942 (x2))
   21551              :         {
   21552              :         case 0:
   21553              :           if (!(
   21554              : #line 6562 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21555              : (ix86_binary_operator_ok (UNKNOWN, DImode, operands, TARGET_APX_NDD)) && 
   21556              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21557              : (!TARGET_64BIT)))
   21558              :             return -1;
   21559              :           return 272; /* *adddi3_doubleword_zext */
   21560              : 
   21561              :         case 1:
   21562              :           if (!(
   21563              : #line 6562 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21564              : (ix86_binary_operator_ok (UNKNOWN, TImode, operands, TARGET_APX_NDD)) && 
   21565              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21566              : (TARGET_64BIT)))
   21567              :             return -1;
   21568              :           return 273; /* *addti3_doubleword_zext */
   21569              : 
   21570              :         default:
   21571              :           return -1;
   21572              :         }
   21573              : 
   21574              :     case PLUS:
   21575              :       if (pattern344 (x1) != 0)
   21576              :         return -1;
   21577              :       x5 = XEXP (x4, 0);
   21578              :       switch (GET_CODE (x5))
   21579              :         {
   21580              :         case ASHIFT:
   21581              :           switch (pattern1167 (x3))
   21582              :             {
   21583              :             case 0:
   21584              :               if (!(
   21585              : #line 6593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21586              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   21587              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21588              : (!TARGET_64BIT)))
   21589              :                 return -1;
   21590              :               return 274; /* *adddi3_doubleword_concat */
   21591              : 
   21592              :             case 1:
   21593              :               if (!(
   21594              : #line 6593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21595              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   21596              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21597              : (TARGET_64BIT)))
   21598              :                 return -1;
   21599              :               return 277; /* *addti3_doubleword_concat */
   21600              : 
   21601              :             case 2:
   21602              :               if (!(
   21603              : #line 6624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21604              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   21605              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21606              : (!TARGET_64BIT)))
   21607              :                 return -1;
   21608              :               return 280; /* *adddi3_doubleword_concat_zext */
   21609              : 
   21610              :             case 3:
   21611              :               if (!(
   21612              : #line 6624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21613              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   21614              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21615              : (TARGET_64BIT)))
   21616              :                 return -1;
   21617              :               return 283; /* *addti3_doubleword_concat_zext */
   21618              : 
   21619              :             default:
   21620              :               return -1;
   21621              :             }
   21622              : 
   21623              :         case LTU:
   21624              :         case UNLT:
   21625              :           operands[4] = x5;
   21626              :           x9 = XEXP (x5, 1);
   21627              :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   21628              :             return -1;
   21629              :           x7 = XEXP (x5, 0);
   21630              :           operands[3] = x7;
   21631              :           if (!flags_reg_operand (operands[3], E_VOIDmode))
   21632              :             return -1;
   21633              :           x10 = XEXP (x4, 1);
   21634              :           operands[1] = x10;
   21635              :           x8 = XEXP (x3, 1);
   21636              :           operands[2] = x8;
   21637              :           switch (GET_MODE (operands[0]))
   21638              :             {
   21639              :             case E_QImode:
   21640              :               if (pattern1636 (x3, 
   21641              : E_QImode) != 0
   21642              :                   || !
   21643              : #line 8840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21644              : (ix86_binary_operator_ok (PLUS, QImode, operands, TARGET_APX_NDD)))
   21645              :                 return -1;
   21646              :               return 457; /* addqi3_carry */
   21647              : 
   21648              :             case E_HImode:
   21649              :               if (pattern1636 (x3, 
   21650              : E_HImode) != 0
   21651              :                   || !
   21652              : #line 8840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21653              : (ix86_binary_operator_ok (PLUS, HImode, operands, TARGET_APX_NDD)))
   21654              :                 return -1;
   21655              :               return 458; /* addhi3_carry */
   21656              : 
   21657              :             case E_SImode:
   21658              :               if (pattern1637 (x3, 
   21659              : E_SImode) != 0
   21660              :                   || !
   21661              : #line 8840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21662              : (ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
   21663              :                 return -1;
   21664              :               return 459; /* addsi3_carry */
   21665              : 
   21666              :             case E_DImode:
   21667              :               if (pattern1637 (x3, 
   21668              : E_DImode) != 0
   21669              :                   || !(
   21670              : #line 8840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21671              : (ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)) && 
   21672              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21673              : (TARGET_64BIT)))
   21674              :                 return -1;
   21675              :               return 460; /* adddi3_carry */
   21676              : 
   21677              :             default:
   21678              :               return -1;
   21679              :             }
   21680              : 
   21681              :         case EQ:
   21682              :           switch (pattern1170 (x3))
   21683              :             {
   21684              :             case 0:
   21685              :               if (!
   21686              : #line 10479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21687              : (ix86_binary_operator_ok (PLUS, QImode, operands, TARGET_APX_NDD)
   21688              :    && ix86_pre_reload_split ()))
   21689              :                 return -1;
   21690              :               return 582; /* *addqi3_eq */
   21691              : 
   21692              :             case 1:
   21693              :               if (!
   21694              : #line 10479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21695              : (ix86_binary_operator_ok (PLUS, HImode, operands, TARGET_APX_NDD)
   21696              :    && ix86_pre_reload_split ()))
   21697              :                 return -1;
   21698              :               return 583; /* *addhi3_eq */
   21699              : 
   21700              :             case 2:
   21701              :               if (!
   21702              : #line 10479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21703              : (ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)
   21704              :    && ix86_pre_reload_split ()))
   21705              :                 return -1;
   21706              :               return 584; /* *addsi3_eq */
   21707              : 
   21708              :             case 3:
   21709              :               if (!(
   21710              : #line 10479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21711              : (ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)
   21712              :    && ix86_pre_reload_split ()) && 
   21713              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21714              : (TARGET_64BIT)))
   21715              :                 return -1;
   21716              :               return 585; /* *adddi3_eq */
   21717              : 
   21718              :             default:
   21719              :               return -1;
   21720              :             }
   21721              : 
   21722              :         case NE:
   21723              :           switch (pattern1173 (x3))
   21724              :             {
   21725              :             case 0:
   21726              :               if (!
   21727              : #line 10500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21728              : (CONST_INT_P (operands[2])
   21729              :    && (QImode != DImode
   21730              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   21731              :    && ix86_binary_operator_ok (PLUS, QImode, operands, TARGET_APX_NDD)
   21732              :    && ix86_pre_reload_split ()))
   21733              :                 return -1;
   21734              :               return 586; /* *addqi3_ne */
   21735              : 
   21736              :             case 1:
   21737              :               if (!
   21738              : #line 10500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21739              : (CONST_INT_P (operands[2])
   21740              :    && (HImode != DImode
   21741              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   21742              :    && ix86_binary_operator_ok (PLUS, HImode, operands, TARGET_APX_NDD)
   21743              :    && ix86_pre_reload_split ()))
   21744              :                 return -1;
   21745              :               return 587; /* *addhi3_ne */
   21746              : 
   21747              :             case 2:
   21748              :               if (!
   21749              : #line 10500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21750              : (CONST_INT_P (operands[2])
   21751              :    && (SImode != DImode
   21752              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   21753              :    && ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)
   21754              :    && ix86_pre_reload_split ()))
   21755              :                 return -1;
   21756              :               return 588; /* *addsi3_ne */
   21757              : 
   21758              :             case 3:
   21759              :               if (!(
   21760              : #line 10500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21761              : (CONST_INT_P (operands[2])
   21762              :    && (DImode != DImode
   21763              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   21764              :    && ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)
   21765              :    && ix86_pre_reload_split ()) && 
   21766              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21767              : (TARGET_64BIT)))
   21768              :                 return -1;
   21769              :               return 589; /* *adddi3_ne */
   21770              : 
   21771              :             default:
   21772              :               return -1;
   21773              :             }
   21774              : 
   21775              :         default:
   21776              :           return -1;
   21777              :         }
   21778              : 
   21779              :     case IOR:
   21780              :       switch (pattern359 (x1))
   21781              :         {
   21782              :         case 0:
   21783              :           if (!(
   21784              : #line 6593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21785              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   21786              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21787              : (!TARGET_64BIT)))
   21788              :             return -1;
   21789              :           return 275; /* *adddi3_doubleword_concat */
   21790              : 
   21791              :         case 1:
   21792              :           if (!(
   21793              : #line 6593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21794              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   21795              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21796              : (TARGET_64BIT)))
   21797              :             return -1;
   21798              :           return 278; /* *addti3_doubleword_concat */
   21799              : 
   21800              :         case 2:
   21801              :           if (!(
   21802              : #line 6624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21803              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   21804              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21805              : (!TARGET_64BIT)))
   21806              :             return -1;
   21807              :           return 281; /* *adddi3_doubleword_concat_zext */
   21808              : 
   21809              :         case 3:
   21810              :           if (!(
   21811              : #line 6624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21812              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   21813              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21814              : (TARGET_64BIT)))
   21815              :             return -1;
   21816              :           return 284; /* *addti3_doubleword_concat_zext */
   21817              : 
   21818              :         default:
   21819              :           return -1;
   21820              :         }
   21821              : 
   21822              :     case XOR:
   21823              :       switch (pattern359 (x1))
   21824              :         {
   21825              :         case 0:
   21826              :           if (!(
   21827              : #line 6593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21828              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   21829              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21830              : (!TARGET_64BIT)))
   21831              :             return -1;
   21832              :           return 276; /* *adddi3_doubleword_concat */
   21833              : 
   21834              :         case 1:
   21835              :           if (!(
   21836              : #line 6593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21837              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   21838              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21839              : (TARGET_64BIT)))
   21840              :             return -1;
   21841              :           return 279; /* *addti3_doubleword_concat */
   21842              : 
   21843              :         case 2:
   21844              :           if (!(
   21845              : #line 6624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21846              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   21847              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21848              : (!TARGET_64BIT)))
   21849              :             return -1;
   21850              :           return 282; /* *adddi3_doubleword_concat_zext */
   21851              : 
   21852              :         case 3:
   21853              :           if (!(
   21854              : #line 6624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21855              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   21856              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21857              : (TARGET_64BIT)))
   21858              :             return -1;
   21859              :           return 285; /* *addti3_doubleword_concat_zext */
   21860              : 
   21861              :         default:
   21862              :           return -1;
   21863              :         }
   21864              : 
   21865              :     case LTU:
   21866              :     case UNLT:
   21867              :       switch (pattern360 (x1))
   21868              :         {
   21869              :         case 0:
   21870              :           if (pattern1537 (x3, 
   21871              : E_QImode) != 0
   21872              :               || !
   21873              : #line 8941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21874              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])))
   21875              :             return -1;
   21876              :           return 465; /* *addqi3_carry_0 */
   21877              : 
   21878              :         case 1:
   21879              :           if (pattern1537 (x3, 
   21880              : E_HImode) != 0
   21881              :               || !
   21882              : #line 8941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21883              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])))
   21884              :             return -1;
   21885              :           return 466; /* *addhi3_carry_0 */
   21886              : 
   21887              :         case 2:
   21888              :           if (pattern1537 (x3, 
   21889              : E_SImode) != 0
   21890              :               || !
   21891              : #line 8941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21892              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])))
   21893              :             return -1;
   21894              :           return 467; /* *addsi3_carry_0 */
   21895              : 
   21896              :         case 3:
   21897              :           if (pattern1537 (x3, 
   21898              : E_DImode) != 0
   21899              :               || !(
   21900              : #line 8941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21901              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])) && 
   21902              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21903              : (TARGET_64BIT)))
   21904              :             return -1;
   21905              :           return 468; /* *adddi3_carry_0 */
   21906              : 
   21907              :         default:
   21908              :           return -1;
   21909              :         }
   21910              : 
   21911              :     case GE:
   21912              :     case GEU:
   21913              :       switch (pattern360 (x1))
   21914              :         {
   21915              :         case 0:
   21916              :           if (pattern1538 (x3, 
   21917              : E_QImode) != 0
   21918              :               || !
   21919              : #line 8975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21920              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])))
   21921              :             return -1;
   21922              :           return 473; /* *addqi3_carry_0r */
   21923              : 
   21924              :         case 1:
   21925              :           if (pattern1538 (x3, 
   21926              : E_HImode) != 0
   21927              :               || !
   21928              : #line 8975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21929              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])))
   21930              :             return -1;
   21931              :           return 474; /* *addhi3_carry_0r */
   21932              : 
   21933              :         case 2:
   21934              :           if (pattern1538 (x3, 
   21935              : E_SImode) != 0
   21936              :               || !
   21937              : #line 8975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21938              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])))
   21939              :             return -1;
   21940              :           return 475; /* *addsi3_carry_0r */
   21941              : 
   21942              :         case 3:
   21943              :           if (pattern1538 (x3, 
   21944              : E_DImode) != 0
   21945              :               || !(
   21946              : #line 8975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21947              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])) && 
   21948              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21949              : (TARGET_64BIT)))
   21950              :             return -1;
   21951              :           return 476; /* *adddi3_carry_0r */
   21952              : 
   21953              :         default:
   21954              :           return -1;
   21955              :         }
   21956              : 
   21957              :     case EQ:
   21958              :       switch (pattern364 (x1))
   21959              :         {
   21960              :         case 0:
   21961              :           if (!
   21962              : #line 10526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21963              : (ix86_unary_operator_ok (PLUS, QImode, operands)
   21964              :    && ix86_pre_reload_split ()))
   21965              :             return -1;
   21966              :           return 590; /* *addqi3_eq_0 */
   21967              : 
   21968              :         case 1:
   21969              :           if (!
   21970              : #line 10526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21971              : (ix86_unary_operator_ok (PLUS, HImode, operands)
   21972              :    && ix86_pre_reload_split ()))
   21973              :             return -1;
   21974              :           return 591; /* *addhi3_eq_0 */
   21975              : 
   21976              :         case 2:
   21977              :           if (!
   21978              : #line 10526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21979              : (ix86_unary_operator_ok (PLUS, SImode, operands)
   21980              :    && ix86_pre_reload_split ()))
   21981              :             return -1;
   21982              :           return 592; /* *addsi3_eq_0 */
   21983              : 
   21984              :         case 3:
   21985              :           if (!(
   21986              : #line 10526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21987              : (ix86_unary_operator_ok (PLUS, DImode, operands)
   21988              :    && ix86_pre_reload_split ()) && 
   21989              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21990              : (TARGET_64BIT)))
   21991              :             return -1;
   21992              :           return 593; /* *adddi3_eq_0 */
   21993              : 
   21994              :         default:
   21995              :           return -1;
   21996              :         }
   21997              : 
   21998              :     case NE:
   21999              :       switch (pattern364 (x1))
   22000              :         {
   22001              :         case 0:
   22002              :           if (!
   22003              : #line 10547 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22004              : (ix86_unary_operator_ok (PLUS, QImode, operands)
   22005              :    && ix86_pre_reload_split ()))
   22006              :             return -1;
   22007              :           return 594; /* *addqi3_ne_0 */
   22008              : 
   22009              :         case 1:
   22010              :           if (!
   22011              : #line 10547 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22012              : (ix86_unary_operator_ok (PLUS, HImode, operands)
   22013              :    && ix86_pre_reload_split ()))
   22014              :             return -1;
   22015              :           return 595; /* *addhi3_ne_0 */
   22016              : 
   22017              :         case 2:
   22018              :           if (!
   22019              : #line 10547 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22020              : (ix86_unary_operator_ok (PLUS, SImode, operands)
   22021              :    && ix86_pre_reload_split ()))
   22022              :             return -1;
   22023              :           return 596; /* *addsi3_ne_0 */
   22024              : 
   22025              :         case 3:
   22026              :           if (!(
   22027              : #line 10547 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22028              : (ix86_unary_operator_ok (PLUS, DImode, operands)
   22029              :    && ix86_pre_reload_split ()) && 
   22030              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22031              : (TARGET_64BIT)))
   22032              :             return -1;
   22033              :           return 597; /* *adddi3_ne_0 */
   22034              : 
   22035              :         default:
   22036              :           return -1;
   22037              :         }
   22038              : 
   22039              :     case MINUS:
   22040              :       x6 = XVECEXP (x1, 0, 1);
   22041              :       if (pattern355 (x6) != 0)
   22042              :         return -1;
   22043              :       switch (pattern946 (x2))
   22044              :         {
   22045              :         case 0:
   22046              :           if (!
   22047              : #line 10595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22048              : (CONST_INT_P (operands[2])
   22049              :    && (QImode != DImode
   22050              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22051              :    && ix86_binary_operator_ok (MINUS, QImode, operands, TARGET_APX_NDD)
   22052              :    && ix86_pre_reload_split ()))
   22053              :             return -1;
   22054              :           return 602; /* *subqi3_ne */
   22055              : 
   22056              :         case 1:
   22057              :           if (!
   22058              : #line 10595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22059              : (CONST_INT_P (operands[2])
   22060              :    && (HImode != DImode
   22061              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22062              :    && ix86_binary_operator_ok (MINUS, HImode, operands, TARGET_APX_NDD)
   22063              :    && ix86_pre_reload_split ()))
   22064              :             return -1;
   22065              :           return 603; /* *subhi3_ne */
   22066              : 
   22067              :         case 2:
   22068              :           if (!
   22069              : #line 10595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22070              : (CONST_INT_P (operands[2])
   22071              :    && (SImode != DImode
   22072              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22073              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)
   22074              :    && ix86_pre_reload_split ()))
   22075              :             return -1;
   22076              :           return 604; /* *subsi3_ne */
   22077              : 
   22078              :         case 3:
   22079              :           if (!(
   22080              : #line 10595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22081              : (CONST_INT_P (operands[2])
   22082              :    && (DImode != DImode
   22083              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22084              :    && ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)
   22085              :    && ix86_pre_reload_split ()) && 
   22086              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22087              : (TARGET_64BIT)))
   22088              :             return -1;
   22089              :           return 605; /* *subdi3_ne */
   22090              : 
   22091              :         case 4:
   22092              :           if (!
   22093              : #line 10624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22094              : (CONST_INT_P (operands[2])
   22095              :    && (QImode != DImode
   22096              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22097              :    && ix86_binary_operator_ok (MINUS, QImode, operands, TARGET_APX_NDD)
   22098              :    && ix86_pre_reload_split ()))
   22099              :             return -1;
   22100              :           return 606; /* *subqi3_eq_1 */
   22101              : 
   22102              :         case 5:
   22103              :           if (!
   22104              : #line 10624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22105              : (CONST_INT_P (operands[2])
   22106              :    && (HImode != DImode
   22107              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22108              :    && ix86_binary_operator_ok (MINUS, HImode, operands, TARGET_APX_NDD)
   22109              :    && ix86_pre_reload_split ()))
   22110              :             return -1;
   22111              :           return 607; /* *subhi3_eq_1 */
   22112              : 
   22113              :         case 6:
   22114              :           if (!
   22115              : #line 10624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22116              : (CONST_INT_P (operands[2])
   22117              :    && (SImode != DImode
   22118              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22119              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)
   22120              :    && ix86_pre_reload_split ()))
   22121              :             return -1;
   22122              :           return 608; /* *subsi3_eq_1 */
   22123              : 
   22124              :         case 7:
   22125              :           if (!(
   22126              : #line 10624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22127              : (CONST_INT_P (operands[2])
   22128              :    && (DImode != DImode
   22129              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22130              :    && ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)
   22131              :    && ix86_pre_reload_split ()) && 
   22132              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22133              : (TARGET_64BIT)))
   22134              :             return -1;
   22135              :           return 609; /* *subdi3_eq_1 */
   22136              : 
   22137              :         default:
   22138              :           return -1;
   22139              :         }
   22140              : 
   22141              :     case LSHIFTRT:
   22142              :       x10 = XEXP (x4, 1);
   22143              :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   22144              :         return -1;
   22145              :       x8 = XEXP (x3, 1);
   22146              :       if (GET_CODE (x8) != ASHIFT)
   22147              :         return -1;
   22148              :       x11 = XEXP (x8, 0);
   22149              :       if (GET_CODE (x11) != LTU)
   22150              :         return -1;
   22151              :       x12 = XEXP (x11, 0);
   22152              :       if (GET_CODE (x12) != REG
   22153              :           || REGNO (x12) != 17
   22154              :           || GET_MODE (x12) != E_CCCmode)
   22155              :         return -1;
   22156              :       x13 = XEXP (x11, 1);
   22157              :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   22158              :         return -1;
   22159              :       x14 = XEXP (x8, 1);
   22160              :       if (GET_CODE (x14) != CONST_INT
   22161              :           || pattern349 (x1) != 0)
   22162              :         return -1;
   22163              :       switch (XWINT (x14, 0))
   22164              :         {
   22165              :         case 31L:
   22166              :           if (pattern1698 (x3, 
   22167              : E_SImode) != 0)
   22168              :             return -1;
   22169              :           return 1417; /* rcrsi2 */
   22170              : 
   22171              :         case 63L:
   22172              :           if (pattern1698 (x3, 
   22173              : E_DImode) != 0
   22174              :               || !
   22175              : #line 19114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22176              : (TARGET_64BIT))
   22177              :             return -1;
   22178              :           return 1418; /* rcrdi2 */
   22179              : 
   22180              :         default:
   22181              :           return -1;
   22182              :         }
   22183              : 
   22184              :     case UNSPEC:
   22185              :       x6 = XVECEXP (x1, 0, 1);
   22186              :       if (pattern355 (x6) != 0)
   22187              :         return -1;
   22188              :       switch (pattern950 (x2))
   22189              :         {
   22190              :         case 0:
   22191              :           if (!
   22192              : #line 1409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22193              : (ptr_mode == SImode))
   22194              :             return -1;
   22195              :           return 1695; /* *add_tp_si */
   22196              : 
   22197              :         case 1:
   22198              :           if (!
   22199              : #line 1409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22200              : (ptr_mode == DImode))
   22201              :             return -1;
   22202              :           return 1696; /* *add_tp_di */
   22203              : 
   22204              :         case 2:
   22205              :           if (!
   22206              : #line 23686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22207              : (!TARGET_64BIT && TARGET_GNU2_TLS))
   22208              :             return -1;
   22209              :           return 1700; /* *tls_dynamic_gnu2_combine_32 */
   22210              : 
   22211              :         case 3:
   22212              :           if (!(
   22213              : #line 23749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22214              : (TARGET_64BIT && TARGET_GNU2_TLS) && 
   22215              : #line 1409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22216              : (ptr_mode == SImode)))
   22217              :             return -1;
   22218              :           return 1705; /* *tls_dynamic_gnu2_combine_64_si */
   22219              : 
   22220              :         case 4:
   22221              :           if (!(
   22222              : #line 23749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22223              : (TARGET_64BIT && TARGET_GNU2_TLS) && 
   22224              : #line 1409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22225              : (ptr_mode == DImode)))
   22226              :             return -1;
   22227              :           return 1706; /* *tls_dynamic_gnu2_combine_64_di */
   22228              : 
   22229              :         default:
   22230              :           return -1;
   22231              :         }
   22232              : 
   22233              :     default:
   22234              :       return -1;
   22235              :     }
   22236              : }
   22237              : 
   22238              :  int
   22239              : recog_404 (rtx x1 ATTRIBUTE_UNUSED,
   22240              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22241              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22242              : {
   22243              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22244              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   22245              :   rtx x10, x11;
   22246              :   int res ATTRIBUTE_UNUSED;
   22247              :   x2 = XVECEXP (x1, 0, 0);
   22248              :   x3 = XEXP (x2, 1);
   22249              :   x4 = XEXP (x3, 0);
   22250              :   x5 = XEXP (x4, 1);
   22251              :   if (GET_CODE (x5) != CONST_INT)
   22252              :     return -1;
   22253              :   switch (pattern703 (x1))
   22254              :     {
   22255              :     case 0:
   22256              :       switch (XWINT (x5, 0))
   22257              :         {
   22258              :         case 0L:
   22259              :           x6 = XEXP (x3, 1);
   22260              :           if (GET_CODE (x6) != PLUS)
   22261              :             return -1;
   22262              :           x7 = XEXP (x6, 1);
   22263              :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
   22264              :             return -1;
   22265              :           x8 = XEXP (x2, 0);
   22266              :           operands[0] = x8;
   22267              :           operands[1] = x4;
   22268              :           x9 = XEXP (x4, 0);
   22269              :           operands[2] = x9;
   22270              :           switch (pattern1588 (x3))
   22271              :             {
   22272              :             case 0:
   22273              :               if (!
   22274              : #line 8797 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22275              : (TARGET_CMOVE))
   22276              :                 return -1;
   22277              :               return 453; /* *dec_cmovhi */
   22278              : 
   22279              :             case 1:
   22280              :               if (!
   22281              : #line 8797 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22282              : (TARGET_CMOVE))
   22283              :                 return -1;
   22284              :               return 454; /* *dec_cmovsi */
   22285              : 
   22286              :             case 2:
   22287              :               if (!(
   22288              : #line 8797 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22289              : (TARGET_CMOVE) && 
   22290              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22291              : (TARGET_64BIT)))
   22292              :                 return -1;
   22293              :               return 455; /* *dec_cmovdi */
   22294              : 
   22295              :             default:
   22296              :               return -1;
   22297              :             }
   22298              : 
   22299              :         case -1L:
   22300              :           switch (pattern1193 (x2))
   22301              :             {
   22302              :             case 0:
   22303              :               if (!(
   22304              : #line 2442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22305              : (TARGET_AVX512BW) && 
   22306              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22307              : (TARGET_AVX512DQ)))
   22308              :                 return -1;
   22309              :               return 2693; /* *kortest_cmpqi_jcc */
   22310              : 
   22311              :             case 1:
   22312              :               if (!
   22313              : #line 2442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22314              : (TARGET_AVX512BW))
   22315              :                 return -1;
   22316              :               return 2694; /* *kortest_cmphi_jcc */
   22317              : 
   22318              :             case 2:
   22319              :               if (!
   22320              : #line 2442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22321              : (TARGET_AVX512BW))
   22322              :                 return -1;
   22323              :               return 2695; /* *kortest_cmpsi_jcc */
   22324              : 
   22325              :             case 3:
   22326              :               if (!(
   22327              : #line 2442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22328              : (TARGET_AVX512BW) && 
   22329              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22330              : (TARGET_AVX512BW && TARGET_64BIT)))
   22331              :                 return -1;
   22332              :               return 2696; /* *kortest_cmpdi_jcc */
   22333              : 
   22334              :             case 4:
   22335              :               if (!(
   22336              : #line 2478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22337              : (TARGET_AVX512BW && TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL) && 
   22338              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22339              : (TARGET_AVX512DQ)))
   22340              :                 return -1;
   22341              :               return 2697; /* *kortest_cmpqi_movqicc */
   22342              : 
   22343              :             case 5:
   22344              :               if (!
   22345              : #line 2478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22346              : (TARGET_AVX512BW && TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL))
   22347              :                 return -1;
   22348              :               return 2698; /* *kortest_cmphi_movqicc */
   22349              : 
   22350              :             case 6:
   22351              :               if (!(
   22352              : #line 2478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22353              : (TARGET_AVX512BW && TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL) && 
   22354              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22355              : (TARGET_AVX512BW)))
   22356              :                 return -1;
   22357              :               return 2699; /* *kortest_cmpsi_movqicc */
   22358              : 
   22359              :             case 7:
   22360              :               if (!(
   22361              : #line 2478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22362              : (TARGET_AVX512BW && TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL) && 
   22363              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22364              : (TARGET_AVX512BW && TARGET_64BIT)))
   22365              :                 return -1;
   22366              :               return 2700; /* *kortest_cmpdi_movqicc */
   22367              : 
   22368              :             case 8:
   22369              :               if (!(
   22370              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22371              : (TARGET_AVX512BW && TARGET_CMOVE
   22372              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   22373              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22374              : (TARGET_AVX512DQ)))
   22375              :                 return -1;
   22376              :               return 2701; /* *kortest_cmpqi_movhicc */
   22377              : 
   22378              :             case 9:
   22379              :               if (!
   22380              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22381              : (TARGET_AVX512BW && TARGET_CMOVE
   22382              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
   22383              :                 return -1;
   22384              :               return 2704; /* *kortest_cmphi_movhicc */
   22385              : 
   22386              :             case 10:
   22387              :               if (!(
   22388              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22389              : (TARGET_AVX512BW && TARGET_CMOVE
   22390              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   22391              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22392              : (TARGET_AVX512BW)))
   22393              :                 return -1;
   22394              :               return 2707; /* *kortest_cmpsi_movhicc */
   22395              : 
   22396              :             case 11:
   22397              :               if (!(
   22398              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22399              : (TARGET_AVX512BW && TARGET_CMOVE
   22400              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   22401              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22402              : (TARGET_AVX512BW && TARGET_64BIT)))
   22403              :                 return -1;
   22404              :               return 2710; /* *kortest_cmpdi_movhicc */
   22405              : 
   22406              :             case 12:
   22407              :               if (!(
   22408              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22409              : (TARGET_AVX512BW && TARGET_CMOVE
   22410              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   22411              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22412              : (TARGET_AVX512DQ)))
   22413              :                 return -1;
   22414              :               return 2702; /* *kortest_cmpqi_movsicc */
   22415              : 
   22416              :             case 13:
   22417              :               if (!
   22418              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22419              : (TARGET_AVX512BW && TARGET_CMOVE
   22420              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
   22421              :                 return -1;
   22422              :               return 2705; /* *kortest_cmphi_movsicc */
   22423              : 
   22424              :             case 14:
   22425              :               if (!(
   22426              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22427              : (TARGET_AVX512BW && TARGET_CMOVE
   22428              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   22429              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22430              : (TARGET_AVX512BW)))
   22431              :                 return -1;
   22432              :               return 2708; /* *kortest_cmpsi_movsicc */
   22433              : 
   22434              :             case 15:
   22435              :               if (!(
   22436              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22437              : (TARGET_AVX512BW && TARGET_CMOVE
   22438              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   22439              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22440              : (TARGET_AVX512BW && TARGET_64BIT)))
   22441              :                 return -1;
   22442              :               return 2711; /* *kortest_cmpdi_movsicc */
   22443              : 
   22444              :             case 16:
   22445              :               if (!(
   22446              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22447              : (TARGET_AVX512BW && TARGET_CMOVE
   22448              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && ((((
   22449              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22450              : (TARGET_64BIT) && 
   22451              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22452              : (TARGET_AVX512DQ)) && 
   22453              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22454              : (TARGET_64BIT)) && 
   22455              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22456              : (TARGET_64BIT)) && 
   22457              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22458              : (TARGET_64BIT))))
   22459              :                 return -1;
   22460              :               return 2703; /* *kortest_cmpqi_movdicc */
   22461              : 
   22462              :             case 17:
   22463              :               if (!(
   22464              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22465              : (TARGET_AVX512BW && TARGET_CMOVE
   22466              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   22467              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22468              : (TARGET_64BIT)))
   22469              :                 return -1;
   22470              :               return 2706; /* *kortest_cmphi_movdicc */
   22471              : 
   22472              :             case 18:
   22473              :               if (!(
   22474              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22475              : (TARGET_AVX512BW && TARGET_CMOVE
   22476              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && ((((
   22477              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22478              : (TARGET_64BIT) && 
   22479              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22480              : (TARGET_AVX512BW)) && 
   22481              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22482              : (TARGET_64BIT)) && 
   22483              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22484              : (TARGET_64BIT)) && 
   22485              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22486              : (TARGET_64BIT))))
   22487              :                 return -1;
   22488              :               return 2709; /* *kortest_cmpsi_movdicc */
   22489              : 
   22490              :             case 19:
   22491              :               if (!(
   22492              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22493              : (TARGET_AVX512BW && TARGET_CMOVE
   22494              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && ((((
   22495              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22496              : (TARGET_64BIT) && 
   22497              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22498              : (TARGET_AVX512BW && TARGET_64BIT)) && 
   22499              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22500              : (TARGET_64BIT)) && 
   22501              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22502              : (TARGET_64BIT)) && 
   22503              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22504              : (TARGET_64BIT))))
   22505              :                 return -1;
   22506              :               return 2712; /* *kortest_cmpdi_movdicc */
   22507              : 
   22508              :             default:
   22509              :               return -1;
   22510              :             }
   22511              : 
   22512              :         default:
   22513              :           return -1;
   22514              :         }
   22515              : 
   22516              :     case 1:
   22517              :       x9 = XEXP (x4, 0);
   22518              :       x10 = XEXP (x9, 1);
   22519              :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   22520              :           || XWINT (x5, 0) != 0L)
   22521              :         return -1;
   22522              :       switch (pattern1346 (x2))
   22523              :         {
   22524              :         case 0:
   22525              :           x11 = XEXP (x9, 2);
   22526              :           operands[2] = x11;
   22527              :           switch (pattern1706 (x3))
   22528              :             {
   22529              :             case 0:
   22530              :               if (
   22531              : #line 19549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22532              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   22533              :    && (CONST_INT_P (operands[2])
   22534              :        ? (INTVAL (operands[2]) < GET_MODE_BITSIZE (SImode)
   22535              :           && INTVAL (operands[2])
   22536              :                >= (optimize_function_for_size_p (cfun) ? 8 : 32))
   22537              :        : !memory_operand (operands[1], SImode))
   22538              :    && ix86_pre_reload_split ()))
   22539              :                 return 1456; /* *jcc_btsi */
   22540              :               break;
   22541              : 
   22542              :             case 1:
   22543              :               if ((
   22544              : #line 19549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22545              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   22546              :    && (CONST_INT_P (operands[2])
   22547              :        ? (INTVAL (operands[2]) < GET_MODE_BITSIZE (DImode)
   22548              :           && INTVAL (operands[2])
   22549              :                >= (optimize_function_for_size_p (cfun) ? 8 : 32))
   22550              :        : !memory_operand (operands[1], DImode))
   22551              :    && ix86_pre_reload_split ()) && 
   22552              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22553              : (TARGET_64BIT)))
   22554              :                 return 1457; /* *jcc_btdi */
   22555              :               break;
   22556              : 
   22557              :             default:
   22558              :               break;
   22559              :             }
   22560              :           if (GET_CODE (x11) != SUBREG)
   22561              :             return -1;
   22562              :           switch (pattern1708 (x3))
   22563              :             {
   22564              :             case 0:
   22565              :               if (!
   22566              : #line 19625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22567              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   22568              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   22569              :       == GET_MODE_BITSIZE (SImode)-1
   22570              :    && ix86_pre_reload_split ()))
   22571              :                 return -1;
   22572              :               return 1460; /* *jcc_btsi_mask_1 */
   22573              : 
   22574              :             case 1:
   22575              :               if (!
   22576              : #line 19625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22577              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   22578              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   22579              :       == GET_MODE_BITSIZE (SImode)-1
   22580              :    && ix86_pre_reload_split ()))
   22581              :                 return -1;
   22582              :               return 1462; /* *jcc_btsi_mask_1 */
   22583              : 
   22584              :             case 2:
   22585              :               if (!(
   22586              : #line 19625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22587              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   22588              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   22589              :       == GET_MODE_BITSIZE (SImode)-1
   22590              :    && ix86_pre_reload_split ()) && 
   22591              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22592              : (TARGET_64BIT)))
   22593              :                 return -1;
   22594              :               return 1464; /* *jcc_btsi_mask_1 */
   22595              : 
   22596              :             case 3:
   22597              :               if (!(
   22598              : #line 19625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22599              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   22600              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   22601              :       == GET_MODE_BITSIZE (DImode)-1
   22602              :    && ix86_pre_reload_split ()) && 
   22603              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22604              : (TARGET_64BIT)))
   22605              :                 return -1;
   22606              :               return 1461; /* *jcc_btdi_mask_1 */
   22607              : 
   22608              :             case 4:
   22609              :               if (!(
   22610              : #line 19625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22611              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   22612              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   22613              :       == GET_MODE_BITSIZE (DImode)-1
   22614              :    && ix86_pre_reload_split ()) && 
   22615              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22616              : (TARGET_64BIT)))
   22617              :                 return -1;
   22618              :               return 1463; /* *jcc_btdi_mask_1 */
   22619              : 
   22620              :             case 5:
   22621              :               if (!(
   22622              : #line 19625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22623              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   22624              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   22625              :       == GET_MODE_BITSIZE (DImode)-1
   22626              :    && ix86_pre_reload_split ()) && 
   22627              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22628              : (TARGET_64BIT)))
   22629              :                 return -1;
   22630              :               return 1465; /* *jcc_btdi_mask_1 */
   22631              : 
   22632              :             default:
   22633              :               return -1;
   22634              :             }
   22635              : 
   22636              :         case 1:
   22637              :           if (!
   22638              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22639              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   22640              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   22641              :       == GET_MODE_BITSIZE (SImode)-1
   22642              :    && ix86_pre_reload_split ()))
   22643              :             return -1;
   22644              :           return 1458; /* *jcc_btsi_mask */
   22645              : 
   22646              :         case 2:
   22647              :           if (!(
   22648              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22649              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   22650              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   22651              :       == GET_MODE_BITSIZE (DImode)-1
   22652              :    && ix86_pre_reload_split ()) && 
   22653              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22654              : (TARGET_64BIT)))
   22655              :             return -1;
   22656              :           return 1459; /* *jcc_btdi_mask */
   22657              : 
   22658              :         default:
   22659              :           return -1;
   22660              :         }
   22661              : 
   22662              :     default:
   22663              :       return -1;
   22664              :     }
   22665              : }
   22666              : 
   22667              :  int
   22668              : recog_417 (rtx x1 ATTRIBUTE_UNUSED,
   22669              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22670              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22671              : {
   22672              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22673              :   rtx x2, x3, x4, x5, x6, x7;
   22674              :   int res ATTRIBUTE_UNUSED;
   22675              :   x2 = XVECEXP (x1, 0, 0);
   22676              :   x3 = XEXP (x2, 0);
   22677              :   operands[0] = x3;
   22678              :   x4 = XEXP (x2, 1);
   22679              :   x5 = XEXP (x4, 0);
   22680              :   operands[1] = x5;
   22681              :   x6 = XVECEXP (x1, 0, 1);
   22682              :   switch (GET_CODE (x6))
   22683              :     {
   22684              :     case CLOBBER:
   22685              :       x7 = XEXP (x6, 0);
   22686              :       switch (pattern705 (x7))
   22687              :         {
   22688              :         case 0:
   22689              :           if (!register_operand (operands[0], E_DImode)
   22690              :               || GET_MODE (x4) != E_DImode
   22691              :               || !general_operand (operands[1], E_DImode))
   22692              :             return -1;
   22693              :           if ((
   22694              : #line 14945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22695              : (TARGET_CMOVE
   22696              :    && ix86_pre_reload_split ()) && 
   22697              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22698              : (!TARGET_64BIT)))
   22699              :             return 1027; /* *absdi2_doubleword */
   22700              :           if (!(
   22701              : #line 15032 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22702              : (TARGET_CMOVE
   22703              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   22704              :    && ix86_pre_reload_split ()) && 
   22705              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22706              : (TARGET_64BIT)))
   22707              :             return -1;
   22708              :           return 1034; /* *absdi2_1 */
   22709              : 
   22710              :         case 1:
   22711              :           if (!register_operand (operands[0], E_TImode)
   22712              :               || GET_MODE (x4) != E_TImode
   22713              :               || !general_operand (operands[1], E_TImode)
   22714              :               || !(
   22715              : #line 14945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22716              : (TARGET_CMOVE
   22717              :    && ix86_pre_reload_split ()) && 
   22718              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22719              : (TARGET_64BIT)))
   22720              :             return -1;
   22721              :           return 1028; /* *absti2_doubleword */
   22722              : 
   22723              :         case 2:
   22724              :           if (!register_operand (operands[0], E_QImode)
   22725              :               || GET_MODE (x4) != E_QImode
   22726              :               || !general_operand (operands[1], E_QImode)
   22727              :               || !
   22728              : #line 15032 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22729              : (TARGET_CMOVE
   22730              :    && (QImode != QImode || !TARGET_PARTIAL_REG_STALL)
   22731              :    && ix86_pre_reload_split ()))
   22732              :             return -1;
   22733              :           return 1031; /* *absqi2_1 */
   22734              : 
   22735              :         case 3:
   22736              :           if (!register_operand (operands[0], E_HImode)
   22737              :               || GET_MODE (x4) != E_HImode
   22738              :               || !general_operand (operands[1], E_HImode)
   22739              :               || !
   22740              : #line 15032 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22741              : (TARGET_CMOVE
   22742              :    && (HImode != QImode || !TARGET_PARTIAL_REG_STALL)
   22743              :    && ix86_pre_reload_split ()))
   22744              :             return -1;
   22745              :           return 1032; /* *abshi2_1 */
   22746              : 
   22747              :         case 4:
   22748              :           if (!register_operand (operands[0], E_SImode)
   22749              :               || GET_MODE (x4) != E_SImode
   22750              :               || !general_operand (operands[1], E_SImode)
   22751              :               || !
   22752              : #line 15032 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22753              : (TARGET_CMOVE
   22754              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   22755              :    && ix86_pre_reload_split ()))
   22756              :             return -1;
   22757              :           return 1033; /* *abssi2_1 */
   22758              : 
   22759              :         case 5:
   22760              :           if (!register_operand (operands[0], E_SFmode)
   22761              :               || GET_MODE (x4) != E_SFmode
   22762              :               || !register_operand (operands[1], E_SFmode)
   22763              :               || !
   22764              : #line 15155 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22765              : (TARGET_80387 && !(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)))
   22766              :             return -1;
   22767              :           return 1042; /* *abssf2_i387_1 */
   22768              : 
   22769              :         case 6:
   22770              :           if (!register_operand (operands[0], E_DFmode)
   22771              :               || GET_MODE (x4) != E_DFmode
   22772              :               || !register_operand (operands[1], E_DFmode)
   22773              :               || !
   22774              : #line 15155 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22775              : (TARGET_80387 && !(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)))
   22776              :             return -1;
   22777              :           return 1044; /* *absdf2_i387_1 */
   22778              : 
   22779              :         case 7:
   22780              :           if (!register_operand (operands[0], E_XFmode)
   22781              :               || GET_MODE (x4) != E_XFmode
   22782              :               || !register_operand (operands[1], E_XFmode)
   22783              :               || !
   22784              : #line 15155 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22785              : (TARGET_80387 && !(SSE_FLOAT_MODE_P (XFmode) && TARGET_SSE_MATH)))
   22786              :             return -1;
   22787              :           return 1046; /* *absxf2_i387_1 */
   22788              : 
   22789              :         default:
   22790              :           return -1;
   22791              :         }
   22792              : 
   22793              :     case USE:
   22794              :       switch (pattern709 (x1, pnum_clobbers))
   22795              :         {
   22796              :         case 0:
   22797              :           if (!
   22798              : #line 15093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22799              : (TARGET_SSE))
   22800              :             return -1;
   22801              :           return 1039; /* *abstf2_1 */
   22802              : 
   22803              :         case 1:
   22804              :           if (!
   22805              : #line 15179 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22806              : (TARGET_AVX512FP16))
   22807              :             return -1;
   22808              :           *pnum_clobbers = 1;
   22809              :           return 1048; /* *abshf2_1 */
   22810              : 
   22811              :         case 2:
   22812              :           if (!
   22813              : #line 15195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22814              : (TARGET_80387 || (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)))
   22815              :             return -1;
   22816              :           *pnum_clobbers = 1;
   22817              :           return 1050; /* *abssf2_1 */
   22818              : 
   22819              :         case 3:
   22820              :           if (!
   22821              : #line 15195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22822              : (TARGET_80387 || (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)))
   22823              :             return -1;
   22824              :           *pnum_clobbers = 1;
   22825              :           return 1052; /* *absdf2_1 */
   22826              : 
   22827              :         case 4:
   22828              :           if (!
   22829              : #line 706 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   22830              : (TARGET_MMX_WITH_SSE))
   22831              :             return -1;
   22832              :           return 2106; /* *mmx_absv2sf2 */
   22833              : 
   22834              :         case 5:
   22835              :           if (!
   22836              : #line 2263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   22837              : (TARGET_SSE))
   22838              :             return -1;
   22839              :           return 2152; /* *mmx_absv2bf */
   22840              : 
   22841              :         case 6:
   22842              :           if (!(
   22843              : #line 2263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   22844              : (TARGET_SSE) && 
   22845              : #line 2248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   22846              : (TARGET_MMX_WITH_SSE)))
   22847              :             return -1;
   22848              :           return 2154; /* *mmx_absv4bf */
   22849              : 
   22850              :         case 7:
   22851              :           if (!
   22852              : #line 2263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   22853              : (TARGET_SSE))
   22854              :             return -1;
   22855              :           return 2156; /* *mmx_absv2hf */
   22856              : 
   22857              :         case 8:
   22858              :           if (!(
   22859              : #line 2263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   22860              : (TARGET_SSE) && 
   22861              : #line 2249 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   22862              : (TARGET_MMX_WITH_SSE)))
   22863              :             return -1;
   22864              :           return 2158; /* *mmx_absv4hf */
   22865              : 
   22866              :         case 9:
   22867              :           if (!(
   22868              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22869              : (TARGET_SSE) && 
   22870              : #line 415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22871              : (TARGET_AVX512F)))
   22872              :             return -1;
   22873              :           return 2716; /* *absv32bf2 */
   22874              : 
   22875              :         case 10:
   22876              :           if (!(
   22877              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22878              : (TARGET_SSE) && 
   22879              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22880              : (TARGET_AVX)))
   22881              :             return -1;
   22882              :           return 2718; /* *absv16bf2 */
   22883              : 
   22884              :         case 11:
   22885              :           if (!(
   22886              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22887              : (TARGET_SSE) && 
   22888              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22889              : (TARGET_SSE2)))
   22890              :             return -1;
   22891              :           return 2720; /* *absv8bf2 */
   22892              : 
   22893              :         case 12:
   22894              :           if (!(
   22895              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22896              : (TARGET_SSE) && 
   22897              : #line 417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22898              : (TARGET_AVX512F)))
   22899              :             return -1;
   22900              :           return 2722; /* *absv32hf2 */
   22901              : 
   22902              :         case 13:
   22903              :           if (!(
   22904              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22905              : (TARGET_SSE) && 
   22906              : #line 418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22907              : (TARGET_AVX)))
   22908              :             return -1;
   22909              :           return 2724; /* *absv16hf2 */
   22910              : 
   22911              :         case 14:
   22912              :           if (!(
   22913              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22914              : (TARGET_SSE) && 
   22915              : #line 418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22916              : (TARGET_SSE2)))
   22917              :             return -1;
   22918              :           return 2726; /* *absv8hf2 */
   22919              : 
   22920              :         case 15:
   22921              :           if (!(
   22922              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22923              : (TARGET_SSE) && 
   22924              : #line 419 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22925              : (TARGET_AVX512F)))
   22926              :             return -1;
   22927              :           return 2728; /* *absv16sf2 */
   22928              : 
   22929              :         case 16:
   22930              :           if (!(
   22931              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22932              : (TARGET_SSE) && 
   22933              : #line 419 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22934              : (TARGET_AVX)))
   22935              :             return -1;
   22936              :           return 2730; /* *absv8sf2 */
   22937              : 
   22938              :         case 17:
   22939              :           if (!
   22940              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22941              : (TARGET_SSE))
   22942              :             return -1;
   22943              :           return 2732; /* *absv4sf2 */
   22944              : 
   22945              :         case 18:
   22946              :           if (!(
   22947              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22948              : (TARGET_SSE) && 
   22949              : #line 420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22950              : (TARGET_AVX512F)))
   22951              :             return -1;
   22952              :           return 2734; /* *absv8df2 */
   22953              : 
   22954              :         case 19:
   22955              :           if (!(
   22956              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22957              : (TARGET_SSE) && 
   22958              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22959              : (TARGET_AVX)))
   22960              :             return -1;
   22961              :           return 2736; /* *absv4df2 */
   22962              : 
   22963              :         case 20:
   22964              :           if (!(
   22965              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22966              : (TARGET_SSE) && 
   22967              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22968              : (TARGET_SSE2)))
   22969              :             return -1;
   22970              :           return 2738; /* *absv2df2 */
   22971              : 
   22972              :         default:
   22973              :           return -1;
   22974              :         }
   22975              : 
   22976              :     default:
   22977              :       return -1;
   22978              :     }
   22979              : }
   22980              : 
   22981              :  int
   22982              : recog_427 (rtx x1 ATTRIBUTE_UNUSED,
   22983              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22984              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22985              : {
   22986              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22987              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   22988              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   22989              :   rtx x18, x19, x20, x21;
   22990              :   int res ATTRIBUTE_UNUSED;
   22991              :   x2 = XVECEXP (x1, 0, 0);
   22992              :   x3 = XEXP (x2, 1);
   22993              :   x4 = XEXP (x3, 0);
   22994              :   if (GET_CODE (x4) != UNSPEC
   22995              :       || XVECLEN (x4, 0) != 4
   22996              :       || XINT (x4, 1) != 154)
   22997              :     return -1;
   22998              :   x5 = XVECEXP (x4, 0, 1);
   22999              :   if (GET_CODE (x5) != MEM)
   23000              :     return -1;
   23001              :   x6 = XEXP (x5, 0);
   23002              :   if (GET_CODE (x6) != UNSPEC
   23003              :       || XVECLEN (x6, 0) != 3
   23004              :       || XINT (x6, 1) != 155)
   23005              :     return -1;
   23006              :   x7 = XVECEXP (x4, 0, 2);
   23007              :   if (GET_CODE (x7) != MEM
   23008              :       || GET_MODE (x7) != E_BLKmode)
   23009              :     return -1;
   23010              :   x8 = XEXP (x7, 0);
   23011              :   if (GET_CODE (x8) != SCRATCH)
   23012              :     return -1;
   23013              :   x9 = XEXP (x3, 1);
   23014              :   if (GET_CODE (x9) != PARALLEL
   23015              :       || XVECLEN (x9, 0) != 4)
   23016              :     return -1;
   23017              :   x10 = XVECEXP (x9, 0, 0);
   23018              :   if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   23019              :     return -1;
   23020              :   x11 = XVECEXP (x9, 0, 1);
   23021              :   if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   23022              :     return -1;
   23023              :   x12 = XVECEXP (x9, 0, 2);
   23024              :   if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
   23025              :     return -1;
   23026              :   x13 = XVECEXP (x9, 0, 3);
   23027              :   if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
   23028              :     return -1;
   23029              :   x14 = XVECEXP (x1, 0, 1);
   23030              :   if (GET_CODE (x14) != CLOBBER)
   23031              :     return -1;
   23032              :   x15 = XEXP (x2, 0);
   23033              :   operands[0] = x15;
   23034              :   x16 = XVECEXP (x6, 0, 1);
   23035              :   if (!register_operand (x16, E_V4DImode))
   23036              :     return -1;
   23037              :   x17 = XVECEXP (x6, 0, 2);
   23038              :   if (!const1248_operand (x17, E_SImode))
   23039              :     return -1;
   23040              :   x18 = XEXP (x14, 0);
   23041              :   operands[1] = x18;
   23042              :   x19 = XVECEXP (x4, 0, 0);
   23043              :   switch (GET_CODE (x19))
   23044              :     {
   23045              :     case REG:
   23046              :     case SUBREG:
   23047              :       operands[2] = x19;
   23048              :       operands[7] = x5;
   23049              :       x20 = XVECEXP (x6, 0, 0);
   23050              :       operands[3] = x20;
   23051              :       operands[4] = x16;
   23052              :       operands[6] = x17;
   23053              :       x21 = XVECEXP (x4, 0, 3);
   23054              :       operands[5] = x21;
   23055              :       switch (GET_MODE (operands[0]))
   23056              :         {
   23057              :         case E_V4SImode:
   23058              :           switch (pattern1881 (x3, 
   23059              : E_V8SImode, 
   23060              : E_V4SImode, 
   23061              : E_SImode))
   23062              :             {
   23063              :             case 0:
   23064              :               if (!(
   23065              : #line 30105 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23066              : (TARGET_AVX2) && 
   23067              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23068              : (Pmode == SImode)))
   23069              :                 return -1;
   23070              :               return 9808; /* *avx2_gatherdiv8si_3 */
   23071              : 
   23072              :             case 1:
   23073              :               if (!(
   23074              : #line 30105 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23075              : (TARGET_AVX2) && 
   23076              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23077              : (Pmode == DImode)))
   23078              :                 return -1;
   23079              :               return 9810; /* *avx2_gatherdiv8si_3 */
   23080              : 
   23081              :             default:
   23082              :               return -1;
   23083              :             }
   23084              : 
   23085              :         case E_V4SFmode:
   23086              :           switch (pattern1881 (x3, 
   23087              : E_V8SFmode, 
   23088              : E_V4SFmode, 
   23089              : E_SFmode))
   23090              :             {
   23091              :             case 0:
   23092              :               if (!(
   23093              : #line 30105 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23094              : (TARGET_AVX2) && 
   23095              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23096              : (Pmode == SImode)))
   23097              :                 return -1;
   23098              :               return 9809; /* *avx2_gatherdiv8sf_3 */
   23099              : 
   23100              :             case 1:
   23101              :               if (!(
   23102              : #line 30105 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23103              : (TARGET_AVX2) && 
   23104              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23105              : (Pmode == DImode)))
   23106              :                 return -1;
   23107              :               return 9811; /* *avx2_gatherdiv8sf_3 */
   23108              : 
   23109              :             default:
   23110              :               return -1;
   23111              :             }
   23112              : 
   23113              :         default:
   23114              :           return -1;
   23115              :         }
   23116              : 
   23117              :     case PC:
   23118              :       operands[6] = x5;
   23119              :       x20 = XVECEXP (x6, 0, 0);
   23120              :       operands[2] = x20;
   23121              :       operands[3] = x16;
   23122              :       operands[5] = x17;
   23123              :       x21 = XVECEXP (x4, 0, 3);
   23124              :       operands[4] = x21;
   23125              :       switch (GET_MODE (operands[0]))
   23126              :         {
   23127              :         case E_V4SImode:
   23128              :           switch (pattern1877 (x3, 
   23129              : E_V8SImode, 
   23130              : E_V4SImode, 
   23131              : E_SImode))
   23132              :             {
   23133              :             case 0:
   23134              :               if (!(
   23135              : #line 30129 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23136              : (TARGET_AVX2) && 
   23137              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23138              : (Pmode == SImode)))
   23139              :                 return -1;
   23140              :               return 9812; /* *avx2_gatherdiv8si_4 */
   23141              : 
   23142              :             case 1:
   23143              :               if (!(
   23144              : #line 30129 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23145              : (TARGET_AVX2) && 
   23146              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23147              : (Pmode == DImode)))
   23148              :                 return -1;
   23149              :               return 9814; /* *avx2_gatherdiv8si_4 */
   23150              : 
   23151              :             default:
   23152              :               return -1;
   23153              :             }
   23154              : 
   23155              :         case E_V4SFmode:
   23156              :           switch (pattern1877 (x3, 
   23157              : E_V8SFmode, 
   23158              : E_V4SFmode, 
   23159              : E_SFmode))
   23160              :             {
   23161              :             case 0:
   23162              :               if (!(
   23163              : #line 30129 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23164              : (TARGET_AVX2) && 
   23165              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23166              : (Pmode == SImode)))
   23167              :                 return -1;
   23168              :               return 9813; /* *avx2_gatherdiv8sf_4 */
   23169              : 
   23170              :             case 1:
   23171              :               if (!(
   23172              : #line 30129 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23173              : (TARGET_AVX2) && 
   23174              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23175              : (Pmode == DImode)))
   23176              :                 return -1;
   23177              :               return 9815; /* *avx2_gatherdiv8sf_4 */
   23178              : 
   23179              :             default:
   23180              :               return -1;
   23181              :             }
   23182              : 
   23183              :         default:
   23184              :           return -1;
   23185              :         }
   23186              : 
   23187              :     default:
   23188              :       return -1;
   23189              :     }
   23190              : }
   23191              : 
   23192              :  int
   23193              : recog_433 (rtx x1 ATTRIBUTE_UNUSED,
   23194              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23195              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23196              : {
   23197              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23198              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   23199              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   23200              :   rtx x18, x19, x20;
   23201              :   int res ATTRIBUTE_UNUSED;
   23202              :   x2 = XVECEXP (x1, 0, 1);
   23203              :   if (GET_CODE (x2) != SET)
   23204              :     return -1;
   23205              :   x3 = XVECEXP (x1, 0, 0);
   23206              :   x4 = XEXP (x3, 0);
   23207              :   operands[0] = x4;
   23208              :   x5 = XEXP (x3, 1);
   23209              :   switch (XVECLEN (x5, 0))
   23210              :     {
   23211              :     case 1:
   23212              :       if (XINT (x5, 1) != 10
   23213              :           || GET_MODE (x5) != E_DImode)
   23214              :         return -1;
   23215              :       x6 = XVECEXP (x5, 0, 0);
   23216              :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   23217              :         return -1;
   23218              :       x7 = XEXP (x2, 1);
   23219              :       if (pattern824 (x7, 
   23220              : E_DImode, 
   23221              : 10, 
   23222              : 1, 
   23223              : UNSPEC_VOLATILE) != 0
   23224              :           || pattern1182 (x1, 
   23225              : E_SImode, 
   23226              : 10) != 0
   23227              :           || !register_operand (operands[0], E_DImode))
   23228              :         return -1;
   23229              :       x8 = XEXP (x2, 0);
   23230              :       operands[1] = x8;
   23231              :       if (!register_operand (operands[1], E_DImode))
   23232              :         return -1;
   23233              :       x9 = XVECEXP (x1, 0, 2);
   23234              :       x10 = XEXP (x9, 0);
   23235              :       operands[2] = x10;
   23236              :       if (!register_operand (operands[2], E_SImode)
   23237              :           || !
   23238              : #line 29835 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23239              : (TARGET_64BIT))
   23240              :         return -1;
   23241              :       return 1954; /* rdtscp_rex64 */
   23242              : 
   23243              :     case 5:
   23244              :       if (XINT (x5, 1) != 109)
   23245              :         return -1;
   23246              :       x7 = XEXP (x2, 1);
   23247              :       if (GET_CODE (x7) != UNSPEC_VOLATILE
   23248              :           || XVECLEN (x7, 0) != 1
   23249              :           || XINT (x7, 1) != 109
   23250              :           || pattern1182 (x1, 
   23251              : E_CCZmode, 
   23252              : 109) != 0)
   23253              :         return -1;
   23254              :       x9 = XVECEXP (x1, 0, 2);
   23255              :       x10 = XEXP (x9, 0);
   23256              :       if (GET_CODE (x10) != REG
   23257              :           || REGNO (x10) != 17
   23258              :           || GET_MODE (x10) != E_CCZmode)
   23259              :         return -1;
   23260              :       x6 = XVECEXP (x5, 0, 0);
   23261              :       operands[1] = x6;
   23262              :       x11 = XVECEXP (x5, 0, 1);
   23263              :       operands[2] = x11;
   23264              :       x12 = XVECEXP (x5, 0, 2);
   23265              :       operands[3] = x12;
   23266              :       x13 = XVECEXP (x5, 0, 3);
   23267              :       operands[4] = x13;
   23268              :       x14 = XVECEXP (x5, 0, 4);
   23269              :       operands[5] = x14;
   23270              :       if (!const_int_operand (operands[5], E_SImode))
   23271              :         return -1;
   23272              :       x8 = XEXP (x2, 0);
   23273              :       if (!rtx_equal_p (x8, operands[1]))
   23274              :         return -1;
   23275              :       switch (GET_MODE (operands[0]))
   23276              :         {
   23277              :         case E_DImode:
   23278              :           if (pattern1866 (x1, 
   23279              : E_DImode, 
   23280              : E_SImode) != 0
   23281              :               || !(
   23282              : #line 486 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   23283              : (TARGET_CMPXCHG8B) && 
   23284              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23285              : (!TARGET_64BIT)))
   23286              :             return -1;
   23287              :           return 11074; /* atomic_compare_and_swapdi_doubleword */
   23288              : 
   23289              :         case E_TImode:
   23290              :           if (pattern1866 (x1, 
   23291              : E_TImode, 
   23292              : E_DImode) != 0
   23293              :               || !(
   23294              : #line 486 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   23295              : (TARGET_CMPXCHG16B) && 
   23296              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23297              : (TARGET_64BIT)))
   23298              :             return -1;
   23299              :           return 11075; /* atomic_compare_and_swapti_doubleword */
   23300              : 
   23301              :         default:
   23302              :           return -1;
   23303              :         }
   23304              : 
   23305              :     case 4:
   23306              :       x7 = XEXP (x2, 1);
   23307              :       if (GET_CODE (x7) != UNSPEC_VOLATILE
   23308              :           || XVECLEN (x7, 0) != 1)
   23309              :         return -1;
   23310              :       x15 = XVECEXP (x7, 0, 0);
   23311              :       if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   23312              :         return -1;
   23313              :       x9 = XVECEXP (x1, 0, 2);
   23314              :       if (GET_CODE (x9) != SET)
   23315              :         return -1;
   23316              :       x10 = XEXP (x9, 0);
   23317              :       if (GET_CODE (x10) != REG
   23318              :           || REGNO (x10) != 17)
   23319              :         return -1;
   23320              :       x6 = XVECEXP (x5, 0, 0);
   23321              :       operands[1] = x6;
   23322              :       x11 = XVECEXP (x5, 0, 1);
   23323              :       operands[2] = x11;
   23324              :       x12 = XVECEXP (x5, 0, 2);
   23325              :       operands[3] = x12;
   23326              :       x13 = XVECEXP (x5, 0, 3);
   23327              :       operands[4] = x13;
   23328              :       x8 = XEXP (x2, 0);
   23329              :       if (!rtx_equal_p (x8, operands[1]))
   23330              :         return -1;
   23331              :       switch (XINT (x5, 1))
   23332              :         {
   23333              :         case 109:
   23334              :           if (XINT (x7, 1) != 109)
   23335              :             return -1;
   23336              :           x16 = XEXP (x9, 1);
   23337              :           if (pattern1181 (x16, 
   23338              : E_CCZmode, 
   23339              : 109) != 0
   23340              :               || !const_int_operand (operands[4], E_SImode)
   23341              :               || GET_MODE (x10) != E_CCZmode)
   23342              :             return -1;
   23343              :           switch (GET_MODE (operands[0]))
   23344              :             {
   23345              :             case E_QImode:
   23346              :               if (pattern1855 (x1, 
   23347              : E_QImode) != 0
   23348              :                   || !
   23349              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   23350              : (TARGET_CMPXCHG))
   23351              :                 return -1;
   23352              :               return 11076; /* atomic_compare_and_swapqi_1 */
   23353              : 
   23354              :             case E_HImode:
   23355              :               if (pattern1855 (x1, 
   23356              : E_HImode) != 0
   23357              :                   || !
   23358              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   23359              : (TARGET_CMPXCHG))
   23360              :                 return -1;
   23361              :               return 11077; /* atomic_compare_and_swaphi_1 */
   23362              : 
   23363              :             case E_SImode:
   23364              :               if (pattern1855 (x1, 
   23365              : E_SImode) != 0
   23366              :                   || !
   23367              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   23368              : (TARGET_CMPXCHG))
   23369              :                 return -1;
   23370              :               return 11078; /* atomic_compare_and_swapsi_1 */
   23371              : 
   23372              :             case E_DImode:
   23373              :               if (pattern1855 (x1, 
   23374              : E_DImode) != 0
   23375              :                   || !(
   23376              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   23377              : (TARGET_CMPXCHG) && 
   23378              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23379              : (TARGET_64BIT)))
   23380              :                 return -1;
   23381              :               return 11079; /* atomic_compare_and_swapdi_1 */
   23382              : 
   23383              :             default:
   23384              :               return -1;
   23385              :             }
   23386              : 
   23387              :         case 112:
   23388              :           if (XINT (x7, 1) != 112)
   23389              :             return -1;
   23390              :           x16 = XEXP (x9, 1);
   23391              :           if (GET_CODE (x16) != COMPARE
   23392              :               || GET_MODE (x16) != E_CCmode
   23393              :               || !const_0_to_15_operand (operands[4], E_SImode)
   23394              :               || GET_MODE (x10) != E_CCmode)
   23395              :             return -1;
   23396              :           x17 = XEXP (x16, 0);
   23397              :           if (!rtx_equal_p (x17, operands[1]))
   23398              :             return -1;
   23399              :           x18 = XEXP (x16, 1);
   23400              :           if (!rtx_equal_p (x18, operands[2]))
   23401              :             return -1;
   23402              :           switch (GET_MODE (operands[0]))
   23403              :             {
   23404              :             case E_SImode:
   23405              :               if (pattern1855 (x1, 
   23406              : E_SImode) != 0
   23407              :                   || !
   23408              : #line 1119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   23409              : (TARGET_CMPCCXADD && TARGET_64BIT))
   23410              :                 return -1;
   23411              :               return 11149; /* cmpccxadd_si */
   23412              : 
   23413              :             case E_DImode:
   23414              :               if (pattern1855 (x1, 
   23415              : E_DImode) != 0
   23416              :                   || !
   23417              : #line 1119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   23418              : (TARGET_CMPCCXADD && TARGET_64BIT))
   23419              :                 return -1;
   23420              :               return 11150; /* cmpccxadd_di */
   23421              : 
   23422              :             default:
   23423              :               return -1;
   23424              :             }
   23425              : 
   23426              :         default:
   23427              :           return -1;
   23428              :         }
   23429              : 
   23430              :     case 2:
   23431              :       if (XINT (x5, 1) != 110)
   23432              :         return -1;
   23433              :       x7 = XEXP (x2, 1);
   23434              :       if (GET_CODE (x7) != PLUS)
   23435              :         return -1;
   23436              :       x9 = XVECEXP (x1, 0, 2);
   23437              :       if (pattern953 (x9, 
   23438              : E_CCmode, 
   23439              : 17) != 0)
   23440              :         return -1;
   23441              :       x6 = XVECEXP (x5, 0, 0);
   23442              :       operands[1] = x6;
   23443              :       x11 = XVECEXP (x5, 0, 1);
   23444              :       operands[3] = x11;
   23445              :       if (!const_int_operand (operands[3], E_SImode))
   23446              :         return -1;
   23447              :       x19 = XEXP (x7, 1);
   23448              :       operands[2] = x19;
   23449              :       x20 = XEXP (x7, 0);
   23450              :       if (!rtx_equal_p (x20, operands[1]))
   23451              :         return -1;
   23452              :       x8 = XEXP (x2, 0);
   23453              :       if (!rtx_equal_p (x8, operands[1]))
   23454              :         return -1;
   23455              :       switch (GET_MODE (operands[0]))
   23456              :         {
   23457              :         case E_QImode:
   23458              :           if (pattern1581 (x1, 
   23459              : E_QImode) != 0
   23460              :               || !
   23461              : #line 703 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   23462              : (TARGET_XADD))
   23463              :             return -1;
   23464              :           return 11080; /* atomic_fetch_addqi */
   23465              : 
   23466              :         case E_HImode:
   23467              :           if (pattern1581 (x1, 
   23468              : E_HImode) != 0
   23469              :               || !
   23470              : #line 703 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   23471              : (TARGET_XADD))
   23472              :             return -1;
   23473              :           return 11081; /* atomic_fetch_addhi */
   23474              : 
   23475              :         case E_SImode:
   23476              :           if (pattern1581 (x1, 
   23477              : E_SImode) != 0
   23478              :               || !
   23479              : #line 703 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   23480              : (TARGET_XADD))
   23481              :             return -1;
   23482              :           return 11082; /* atomic_fetch_addsi */
   23483              : 
   23484              :         case E_DImode:
   23485              :           if (pattern1581 (x1, 
   23486              : E_DImode) != 0
   23487              :               || !(
   23488              : #line 703 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   23489              : (TARGET_XADD) && 
   23490              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23491              : (TARGET_64BIT)))
   23492              :             return -1;
   23493              :           return 11083; /* atomic_fetch_adddi */
   23494              : 
   23495              :         default:
   23496              :           return -1;
   23497              :         }
   23498              : 
   23499              :     default:
   23500              :       return -1;
   23501              :     }
   23502              : }
   23503              : 
   23504              :  int
   23505              : recog_445 (rtx x1 ATTRIBUTE_UNUSED,
   23506              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23507              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23508              : {
   23509              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23510              :   rtx x2, x3, x4, x5;
   23511              :   int res ATTRIBUTE_UNUSED;
   23512              :   x2 = XEXP (x1, 1);
   23513              :   switch (GET_CODE (x2))
   23514              :     {
   23515              :     case IF_THEN_ELSE:
   23516              :       res = recog_2 (x1, insn, pnum_clobbers);
   23517              :       if (res >= 0)
   23518              :         return res;
   23519              :       break;
   23520              : 
   23521              :     case COMPARE:
   23522              :       res = recog_6 (x1, insn, pnum_clobbers);
   23523              :       if (res >= 0)
   23524              :         return res;
   23525              :       break;
   23526              : 
   23527              :     case UNSPEC:
   23528              :       res = recog_15 (x1, insn, pnum_clobbers);
   23529              :       if (res >= 0)
   23530              :         return res;
   23531              :       break;
   23532              : 
   23533              :     case CONST_INT:
   23534              :     case CONST_WIDE_INT:
   23535              :     case CONST_POLY_INT:
   23536              :     case CONST_FIXED:
   23537              :     case CONST_DOUBLE:
   23538              :     case CONST_VECTOR:
   23539              :     case CONST:
   23540              :     case REG:
   23541              :     case SUBREG:
   23542              :     case MEM:
   23543              :     case LABEL_REF:
   23544              :     case SYMBOL_REF:
   23545              :     case HIGH:
   23546              :       res = recog_21 (x1, insn, pnum_clobbers);
   23547              :       if (res >= 0)
   23548              :         return res;
   23549              :       break;
   23550              : 
   23551              :     case ASHIFTRT:
   23552              :     case LSHIFTRT:
   23553              :     case SIGN_EXTRACT:
   23554              :     case ZERO_EXTRACT:
   23555              :       res = recog_26 (x1, insn, pnum_clobbers);
   23556              :       if (res >= 0)
   23557              :         return res;
   23558              :       break;
   23559              : 
   23560              :     case IOR:
   23561              :       res = recog_27 (x1, insn, pnum_clobbers);
   23562              :       if (res >= 0)
   23563              :         return res;
   23564              :       break;
   23565              : 
   23566              :     case XOR:
   23567              :       res = recog_28 (x1, insn, pnum_clobbers);
   23568              :       if (res >= 0)
   23569              :         return res;
   23570              :       break;
   23571              : 
   23572              :     case ZERO_EXTEND:
   23573              :       res = recog_30 (x1, insn, pnum_clobbers);
   23574              :       if (res >= 0)
   23575              :         return res;
   23576              :       break;
   23577              : 
   23578              :     case SIGN_EXTEND:
   23579              :       res = recog_31 (x1, insn, pnum_clobbers);
   23580              :       if (res >= 0)
   23581              :         return res;
   23582              :       break;
   23583              : 
   23584              :     case FLOAT_EXTEND:
   23585              :       res = recog_32 (x1, insn, pnum_clobbers);
   23586              :       if (res >= 0)
   23587              :         return res;
   23588              :       break;
   23589              : 
   23590              :     case FLOAT_TRUNCATE:
   23591              :       res = recog_33 (x1, insn, pnum_clobbers);
   23592              :       if (res >= 0)
   23593              :         return res;
   23594              :       break;
   23595              : 
   23596              :     case FIX:
   23597              :       res = recog_34 (x1, insn, pnum_clobbers);
   23598              :       if (res >= 0)
   23599              :         return res;
   23600              :       break;
   23601              : 
   23602              :     case UNSIGNED_FIX:
   23603              :       res = recog_35 (x1, insn, pnum_clobbers);
   23604              :       if (res >= 0)
   23605              :         return res;
   23606              :       break;
   23607              : 
   23608              :     case FLOAT:
   23609              :       res = recog_36 (x1, insn, pnum_clobbers);
   23610              :       if (res >= 0)
   23611              :         return res;
   23612              :       break;
   23613              : 
   23614              :     case UNSIGNED_FLOAT:
   23615              :       res = recog_37 (x1, insn, pnum_clobbers);
   23616              :       if (res >= 0)
   23617              :         return res;
   23618              :       break;
   23619              : 
   23620              :     case AND:
   23621              :       res = recog_42 (x1, insn, pnum_clobbers);
   23622              :       if (res >= 0)
   23623              :         return res;
   23624              :       break;
   23625              : 
   23626              :     case NOT:
   23627              :       res = recog_43 (x1, insn, pnum_clobbers);
   23628              :       if (res >= 0)
   23629              :         return res;
   23630              :       break;
   23631              : 
   23632              :     case NEG:
   23633              :       res = recog_44 (x1, insn, pnum_clobbers);
   23634              :       if (res >= 0)
   23635              :         return res;
   23636              :       break;
   23637              : 
   23638              :     case ABS:
   23639              :       res = recog_45 (x1, insn, pnum_clobbers);
   23640              :       if (res >= 0)
   23641              :         return res;
   23642              :       break;
   23643              : 
   23644              :     case ASHIFT:
   23645              :       res = recog_46 (x1, insn, pnum_clobbers);
   23646              :       if (res >= 0)
   23647              :         return res;
   23648              :       break;
   23649              : 
   23650              :     case ROTATE:
   23651              :       res = recog_47 (x1, insn, pnum_clobbers);
   23652              :       if (res >= 0)
   23653              :         return res;
   23654              :       break;
   23655              : 
   23656              :     case ROTATERT:
   23657              :       res = recog_48 (x1, insn, pnum_clobbers);
   23658              :       if (res >= 0)
   23659              :         return res;
   23660              :       break;
   23661              : 
   23662              :     case NE:
   23663              :     case EQ:
   23664              :     case GE:
   23665              :     case GT:
   23666              :     case LE:
   23667              :     case LT:
   23668              :     case LTGT:
   23669              :     case GEU:
   23670              :     case GTU:
   23671              :     case LEU:
   23672              :     case LTU:
   23673              :     case UNORDERED:
   23674              :     case ORDERED:
   23675              :     case UNEQ:
   23676              :     case UNGE:
   23677              :     case UNGT:
   23678              :     case UNLE:
   23679              :     case UNLT:
   23680              :       res = recog_54 (x1, insn, pnum_clobbers);
   23681              :       if (res >= 0)
   23682              :         return res;
   23683              :       break;
   23684              : 
   23685              :     case POPCOUNT:
   23686              :       res = recog_55 (x1, insn, pnum_clobbers);
   23687              :       if (res >= 0)
   23688              :         return res;
   23689              :       break;
   23690              : 
   23691              :     case BSWAP:
   23692              :       if (GET_MODE (x2) == E_HImode)
   23693              :         {
   23694              :           x3 = XEXP (x1, 0);
   23695              :           operands[0] = x3;
   23696              :           x4 = XEXP (x2, 0);
   23697              :           operands[1] = x4;
   23698              :           if (nonimmediate_operand (operands[1], E_HImode)
   23699              :               && nonimmediate_operand (operands[0], E_HImode)
   23700              :               && 
   23701              : #line 22967 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23702              : (TARGET_MOVBE
   23703              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
   23704              :             return 1678; /* *bswaphi2_movbe */
   23705              :           if (register_operand (operands[1], E_HImode)
   23706              :               && register_operand (operands[0], E_HImode)
   23707              :               && 
   23708              : #line 22986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23709              : (!TARGET_MOVBE))
   23710              :             return 1679; /* *bswaphi2 */
   23711              :         }
   23712              :       break;
   23713              : 
   23714              :     case PLUS:
   23715              :     case MINUS:
   23716              :     case MULT:
   23717              :     case DIV:
   23718              :       res = recog_62 (x1, insn, pnum_clobbers);
   23719              :       if (res >= 0)
   23720              :         return res;
   23721              :       break;
   23722              : 
   23723              :     case SQRT:
   23724              :       res = recog_359 (x1, insn, pnum_clobbers);
   23725              :       if (res >= 0)
   23726              :         return res;
   23727              :       break;
   23728              : 
   23729              :     case SMAX:
   23730              :       switch (pattern7 (x1, pnum_clobbers))
   23731              :         {
   23732              :         case 0:
   23733              :           if (
   23734              : #line 27182 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23735              : (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH))
   23736              :             return 1849; /* smaxsf3 */
   23737              :           break;
   23738              : 
   23739              :         case 1:
   23740              :           if (
   23741              : #line 27182 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23742              : (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH))
   23743              :             return 1851; /* smaxdf3 */
   23744              :           break;
   23745              : 
   23746              :         case 2:
   23747              :           if (
   23748              : #line 27196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23749              : (TARGET_AVX512FP16))
   23750              :             return 1853; /* smaxhf3 */
   23751              :           break;
   23752              : 
   23753              :         case 3:
   23754              :           if ((
   23755              : #line 27359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23756              : (TARGET_CMOVE
   23757              :    && ix86_pre_reload_split ()) && 
   23758              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23759              : (TARGET_64BIT)))
   23760              :             {
   23761              :               *pnum_clobbers = 1;
   23762              :               return 1869; /* *smaxti3_doubleword */
   23763              :             }
   23764              :           break;
   23765              : 
   23766              :         case 4:
   23767              :           if (
   23768              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23769              : (TARGET_CMOVE
   23770              :    && (QImode != QImode || !TARGET_PARTIAL_REG_STALL)
   23771              :    && ix86_pre_reload_split ()))
   23772              :             {
   23773              :               *pnum_clobbers = 1;
   23774              :               return 1873; /* *smaxqi3_1 */
   23775              :             }
   23776              :           break;
   23777              : 
   23778              :         case 5:
   23779              :           if (
   23780              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23781              : (TARGET_CMOVE
   23782              :    && (HImode != QImode || !TARGET_PARTIAL_REG_STALL)
   23783              :    && ix86_pre_reload_split ()))
   23784              :             {
   23785              :               *pnum_clobbers = 1;
   23786              :               return 1877; /* *smaxhi3_1 */
   23787              :             }
   23788              :           break;
   23789              : 
   23790              :         case 6:
   23791              :           if (
   23792              : #line 3687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23793              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
   23794              :             return 2225; /* smaxv8qi3 */
   23795              :           break;
   23796              : 
   23797              :         case 7:
   23798              :           if (
   23799              : #line 3687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23800              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
   23801              :             return 2227; /* smaxv2si3 */
   23802              :           break;
   23803              : 
   23804              :         case 8:
   23805              :           if (
   23806              : #line 3712 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23807              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
   23808              :    && (TARGET_SSE || TARGET_3DNOW_A)
   23809              :    && ix86_binary_operator_ok (SMAX, V4HImode, operands)))
   23810              :             return 2229; /* *mmx_smaxv4hi3 */
   23811              :           break;
   23812              : 
   23813              :         case 9:
   23814              :           if (
   23815              : #line 3736 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23816              : (TARGET_SSE4_1))
   23817              :             return 2231; /* smaxv4qi3 */
   23818              :           break;
   23819              : 
   23820              :         case 10:
   23821              :           if (
   23822              : #line 3736 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23823              : (TARGET_SSE4_1))
   23824              :             return 2233; /* smaxv2qi3 */
   23825              :           break;
   23826              : 
   23827              :         case 11:
   23828              :           if (
   23829              : #line 3752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23830              : (TARGET_SSE2))
   23831              :             return 2235; /* smaxv2hi3 */
   23832              :           break;
   23833              : 
   23834              :         default:
   23835              :           break;
   23836              :         }
   23837              :       break;
   23838              : 
   23839              :     case SMIN:
   23840              :       switch (pattern7 (x1, pnum_clobbers))
   23841              :         {
   23842              :         case 0:
   23843              :           if (
   23844              : #line 27182 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23845              : (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH))
   23846              :             return 1850; /* sminsf3 */
   23847              :           break;
   23848              : 
   23849              :         case 1:
   23850              :           if (
   23851              : #line 27182 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23852              : (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH))
   23853              :             return 1852; /* smindf3 */
   23854              :           break;
   23855              : 
   23856              :         case 2:
   23857              :           if (
   23858              : #line 27196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23859              : (TARGET_AVX512FP16))
   23860              :             return 1854; /* sminhf3 */
   23861              :           break;
   23862              : 
   23863              :         case 3:
   23864              :           if ((
   23865              : #line 27359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23866              : (TARGET_CMOVE
   23867              :    && ix86_pre_reload_split ()) && 
   23868              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23869              : (TARGET_64BIT)))
   23870              :             {
   23871              :               *pnum_clobbers = 1;
   23872              :               return 1870; /* *sminti3_doubleword */
   23873              :             }
   23874              :           break;
   23875              : 
   23876              :         case 4:
   23877              :           if (
   23878              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23879              : (TARGET_CMOVE
   23880              :    && (QImode != QImode || !TARGET_PARTIAL_REG_STALL)
   23881              :    && ix86_pre_reload_split ()))
   23882              :             {
   23883              :               *pnum_clobbers = 1;
   23884              :               return 1874; /* *sminqi3_1 */
   23885              :             }
   23886              :           break;
   23887              : 
   23888              :         case 5:
   23889              :           if (
   23890              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23891              : (TARGET_CMOVE
   23892              :    && (HImode != QImode || !TARGET_PARTIAL_REG_STALL)
   23893              :    && ix86_pre_reload_split ()))
   23894              :             {
   23895              :               *pnum_clobbers = 1;
   23896              :               return 1878; /* *sminhi3_1 */
   23897              :             }
   23898              :           break;
   23899              : 
   23900              :         case 6:
   23901              :           if (
   23902              : #line 3687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23903              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
   23904              :             return 2226; /* sminv8qi3 */
   23905              :           break;
   23906              : 
   23907              :         case 7:
   23908              :           if (
   23909              : #line 3687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23910              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
   23911              :             return 2228; /* sminv2si3 */
   23912              :           break;
   23913              : 
   23914              :         case 8:
   23915              :           if (
   23916              : #line 3712 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23917              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
   23918              :    && (TARGET_SSE || TARGET_3DNOW_A)
   23919              :    && ix86_binary_operator_ok (SMIN, V4HImode, operands)))
   23920              :             return 2230; /* *mmx_sminv4hi3 */
   23921              :           break;
   23922              : 
   23923              :         case 9:
   23924              :           if (
   23925              : #line 3736 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23926              : (TARGET_SSE4_1))
   23927              :             return 2232; /* sminv4qi3 */
   23928              :           break;
   23929              : 
   23930              :         case 10:
   23931              :           if (
   23932              : #line 3736 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23933              : (TARGET_SSE4_1))
   23934              :             return 2234; /* sminv2qi3 */
   23935              :           break;
   23936              : 
   23937              :         case 11:
   23938              :           if (
   23939              : #line 3752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23940              : (TARGET_SSE2))
   23941              :             return 2236; /* sminv2hi3 */
   23942              :           break;
   23943              : 
   23944              :         default:
   23945              :           break;
   23946              :         }
   23947              :       break;
   23948              : 
   23949              :     case UMAX:
   23950              :       res = recog_362 (x1, insn, pnum_clobbers);
   23951              :       if (res >= 0)
   23952              :         return res;
   23953              :       break;
   23954              : 
   23955              :     case UMIN:
   23956              :       res = recog_361 (x1, insn, pnum_clobbers);
   23957              :       if (res >= 0)
   23958              :         return res;
   23959              :       break;
   23960              : 
   23961              :     case UNSPEC_VOLATILE:
   23962              :       res = recog_63 (x1, insn, pnum_clobbers);
   23963              :       if (res >= 0)
   23964              :         return res;
   23965              :       break;
   23966              : 
   23967              :     case VEC_CONCAT:
   23968              :       res = recog_64 (x1, insn, pnum_clobbers);
   23969              :       if (res >= 0)
   23970              :         return res;
   23971              :       break;
   23972              : 
   23973              :     case VEC_MERGE:
   23974              :       res = recog_65 (x1, insn, pnum_clobbers);
   23975              :       if (res >= 0)
   23976              :         return res;
   23977              :       break;
   23978              : 
   23979              :     case VEC_SELECT:
   23980              :       res = recog_67 (x1, insn, pnum_clobbers);
   23981              :       if (res >= 0)
   23982              :         return res;
   23983              :       break;
   23984              : 
   23985              :     case VEC_DUPLICATE:
   23986              :       res = recog_68 (x1, insn, pnum_clobbers);
   23987              :       if (res >= 0)
   23988              :         return res;
   23989              :       break;
   23990              : 
   23991              :     case SS_PLUS:
   23992              :       res = recog_69 (x1, insn, pnum_clobbers);
   23993              :       if (res >= 0)
   23994              :         return res;
   23995              :       break;
   23996              : 
   23997              :     case US_PLUS:
   23998              :       x3 = XEXP (x1, 0);
   23999              :       operands[0] = x3;
   24000              :       switch (pattern47 (x2))
   24001              :         {
   24002              :         case 0:
   24003              :           if (
   24004              : #line 3351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24005              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
   24006              :    && ix86_binary_operator_ok (US_PLUS, V8QImode, operands)))
   24007              :             return 2196; /* *mmx_usaddv8qi3 */
   24008              :           break;
   24009              : 
   24010              :         case 1:
   24011              :           if (
   24012              : #line 3351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24013              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
   24014              :    && ix86_binary_operator_ok (US_PLUS, V4HImode, operands)))
   24015              :             return 2200; /* *mmx_usaddv4hi3 */
   24016              :           break;
   24017              : 
   24018              :         case 2:
   24019              :           if (
   24020              : #line 3367 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24021              : (TARGET_SSE2))
   24022              :             return 2204; /* usaddv4qi3 */
   24023              :           break;
   24024              : 
   24025              :         case 3:
   24026              :           if (
   24027              : #line 3367 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24028              : (TARGET_SSE2))
   24029              :             return 2208; /* usaddv2qi3 */
   24030              :           break;
   24031              : 
   24032              :         case 4:
   24033              :           if (
   24034              : #line 3367 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24035              : (TARGET_SSE2))
   24036              :             return 2212; /* usaddv2hi3 */
   24037              :           break;
   24038              : 
   24039              :         default:
   24040              :           break;
   24041              :         }
   24042              :       break;
   24043              : 
   24044              :     case SS_MINUS:
   24045              :       x3 = XEXP (x1, 0);
   24046              :       operands[0] = x3;
   24047              :       x4 = XEXP (x2, 0);
   24048              :       switch (GET_CODE (x4))
   24049              :         {
   24050              :         case REG:
   24051              :         case SUBREG:
   24052              :         case MEM:
   24053              :           switch (pattern47 (x2))
   24054              :             {
   24055              :             case 0:
   24056              :               if (
   24057              : #line 3351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24058              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
   24059              :    && ix86_binary_operator_ok (SS_MINUS, V8QImode, operands)))
   24060              :                 return 2197; /* *mmx_sssubv8qi3 */
   24061              :               break;
   24062              : 
   24063              :             case 1:
   24064              :               if (
   24065              : #line 3351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24066              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
   24067              :    && ix86_binary_operator_ok (SS_MINUS, V4HImode, operands)))
   24068              :                 return 2201; /* *mmx_sssubv4hi3 */
   24069              :               break;
   24070              : 
   24071              :             case 2:
   24072              :               if (
   24073              : #line 3367 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24074              : (TARGET_SSE2))
   24075              :                 return 2205; /* sssubv4qi3 */
   24076              :               break;
   24077              : 
   24078              :             case 3:
   24079              :               if (
   24080              : #line 3367 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24081              : (TARGET_SSE2))
   24082              :                 return 2209; /* sssubv2qi3 */
   24083              :               break;
   24084              : 
   24085              :             case 4:
   24086              :               if (
   24087              : #line 3367 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24088              : (TARGET_SSE2))
   24089              :                 return 2213; /* sssubv2hi3 */
   24090              :               break;
   24091              : 
   24092              :             default:
   24093              :               break;
   24094              :             }
   24095              :           break;
   24096              : 
   24097              :         case VEC_SELECT:
   24098              :           if (pattern108 (x2) == 0
   24099              :               && 
   24100              : #line 22970 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24101              : ((TARGET_MMX || TARGET_MMX_WITH_SSE) && TARGET_SSSE3))
   24102              :             return 8643; /* ssse3_phsubswv4hi3 */
   24103              :           break;
   24104              : 
   24105              :         default:
   24106              :           break;
   24107              :         }
   24108              :       break;
   24109              : 
   24110              :     case US_MINUS:
   24111              :       x3 = XEXP (x1, 0);
   24112              :       operands[0] = x3;
   24113              :       switch (pattern47 (x2))
   24114              :         {
   24115              :         case 0:
   24116              :           if (
   24117              : #line 3351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24118              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
   24119              :    && ix86_binary_operator_ok (US_MINUS, V8QImode, operands)))
   24120              :             return 2198; /* *mmx_ussubv8qi3 */
   24121              :           break;
   24122              : 
   24123              :         case 1:
   24124              :           if (
   24125              : #line 3351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24126              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
   24127              :    && ix86_binary_operator_ok (US_MINUS, V4HImode, operands)))
   24128              :             return 2202; /* *mmx_ussubv4hi3 */
   24129              :           break;
   24130              : 
   24131              :         case 2:
   24132              :           if (
   24133              : #line 3367 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24134              : (TARGET_SSE2))
   24135              :             return 2206; /* ussubv4qi3 */
   24136              :           break;
   24137              : 
   24138              :         case 3:
   24139              :           if (
   24140              : #line 3367 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24141              : (TARGET_SSE2))
   24142              :             return 2210; /* ussubv2qi3 */
   24143              :           break;
   24144              : 
   24145              :         case 4:
   24146              :           if (
   24147              : #line 3367 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24148              : (TARGET_SSE2))
   24149              :             return 2214; /* ussubv2hi3 */
   24150              :           break;
   24151              : 
   24152              :         default:
   24153              :           break;
   24154              :         }
   24155              :       break;
   24156              : 
   24157              :     case TRUNCATE:
   24158              :       res = recog_70 (x1, insn, pnum_clobbers);
   24159              :       if (res >= 0)
   24160              :         return res;
   24161              :       break;
   24162              : 
   24163              :     case FMA:
   24164              :       res = recog_71 (x1, insn, pnum_clobbers);
   24165              :       if (res >= 0)
   24166              :         return res;
   24167              :       break;
   24168              : 
   24169              :     case SS_TRUNCATE:
   24170              :       switch (pattern11 (x1))
   24171              :         {
   24172              :         case 0:
   24173              :           if (
   24174              : #line 15725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24175              : (TARGET_AVX512VL))
   24176              :             return 7332; /* *avx512vl_ss_truncatev2div2qi2_store_1 */
   24177              :           break;
   24178              : 
   24179              :         case 1:
   24180              :           if (
   24181              : #line 15820 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24182              : (TARGET_AVX512VL))
   24183              :             return 7347; /* *avx512vl_ss_truncatev4siv4qi2_store_1 */
   24184              :           break;
   24185              : 
   24186              :         case 2:
   24187              :           if (
   24188              : #line 15820 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24189              : (TARGET_AVX512VL))
   24190              :             return 7350; /* *avx512vl_ss_truncatev4div4qi2_store_1 */
   24191              :           break;
   24192              : 
   24193              :         case 3:
   24194              :           if ((
   24195              : #line 15918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24196              : (TARGET_AVX512VL) && 
   24197              : #line 15912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24198              : (TARGET_AVX512BW)))
   24199              :             return 7377; /* *avx512vl_ss_truncatev8hiv8qi2_store_1 */
   24200              :           break;
   24201              : 
   24202              :         case 4:
   24203              :           if (
   24204              : #line 15918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24205              : (TARGET_AVX512VL))
   24206              :             return 7380; /* *avx512vl_ss_truncatev8siv8qi2_store_1 */
   24207              :           break;
   24208              : 
   24209              :         case 5:
   24210              :           if (
   24211              : #line 16434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24212              : (TARGET_AVX512F))
   24213              :             return 7484; /* *avx512f_ss_truncatev8div16qi2_store_1 */
   24214              :           break;
   24215              : 
   24216              :         case 6:
   24217              :           if (
   24218              : #line 16080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24219              : (TARGET_AVX512VL))
   24220              :             return 7417; /* *avx512vl_ss_truncatev4siv4hi2_store_1 */
   24221              :           break;
   24222              : 
   24223              :         case 7:
   24224              :           if (
   24225              : #line 16080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24226              : (TARGET_AVX512VL))
   24227              :             return 7420; /* *avx512vl_ss_truncatev4div4hi2_store_1 */
   24228              :           break;
   24229              : 
   24230              :         case 8:
   24231              :           if (
   24232              : #line 16171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24233              : (TARGET_AVX512VL))
   24234              :             return 7447; /* *avx512vl_ss_truncatev2div2hi2_store_1 */
   24235              :           break;
   24236              : 
   24237              :         case 9:
   24238              :           if (
   24239              : #line 16321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24240              : (TARGET_AVX512VL))
   24241              :             return 7466; /* *avx512vl_ss_truncatev2div2si2_store_1 */
   24242              :           break;
   24243              : 
   24244              :         default:
   24245              :           break;
   24246              :         }
   24247              :       break;
   24248              : 
   24249              :     case US_TRUNCATE:
   24250              :       switch (pattern11 (x1))
   24251              :         {
   24252              :         case 0:
   24253              :           if (
   24254              : #line 15725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24255              : (TARGET_AVX512VL))
   24256              :             return 7334; /* *avx512vl_us_truncatev2div2qi2_store_1 */
   24257              :           break;
   24258              : 
   24259              :         case 1:
   24260              :           if (
   24261              : #line 15820 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24262              : (TARGET_AVX512VL))
   24263              :             return 7349; /* *avx512vl_us_truncatev4siv4qi2_store_1 */
   24264              :           break;
   24265              : 
   24266              :         case 2:
   24267              :           if (
   24268              : #line 15820 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24269              : (TARGET_AVX512VL))
   24270              :             return 7352; /* *avx512vl_us_truncatev4div4qi2_store_1 */
   24271              :           break;
   24272              : 
   24273              :         case 3:
   24274              :           if ((
   24275              : #line 15918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24276              : (TARGET_AVX512VL) && 
   24277              : #line 15912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24278              : (TARGET_AVX512BW)))
   24279              :             return 7379; /* *avx512vl_us_truncatev8hiv8qi2_store_1 */
   24280              :           break;
   24281              : 
   24282              :         case 4:
   24283              :           if (
   24284              : #line 15918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24285              : (TARGET_AVX512VL))
   24286              :             return 7382; /* *avx512vl_us_truncatev8siv8qi2_store_1 */
   24287              :           break;
   24288              : 
   24289              :         case 5:
   24290              :           if (
   24291              : #line 16434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24292              : (TARGET_AVX512F))
   24293              :             return 7486; /* *avx512f_us_truncatev8div16qi2_store_1 */
   24294              :           break;
   24295              : 
   24296              :         case 6:
   24297              :           if (
   24298              : #line 16080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24299              : (TARGET_AVX512VL))
   24300              :             return 7419; /* *avx512vl_us_truncatev4siv4hi2_store_1 */
   24301              :           break;
   24302              : 
   24303              :         case 7:
   24304              :           if (
   24305              : #line 16080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24306              : (TARGET_AVX512VL))
   24307              :             return 7422; /* *avx512vl_us_truncatev4div4hi2_store_1 */
   24308              :           break;
   24309              : 
   24310              :         case 8:
   24311              :           if (
   24312              : #line 16171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24313              : (TARGET_AVX512VL))
   24314              :             return 7449; /* *avx512vl_us_truncatev2div2hi2_store_1 */
   24315              :           break;
   24316              : 
   24317              :         case 9:
   24318              :           if (
   24319              : #line 16321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24320              : (TARGET_AVX512VL))
   24321              :             return 7468; /* *avx512vl_us_truncatev2div2si2_store_1 */
   24322              :           break;
   24323              : 
   24324              :         default:
   24325              :           break;
   24326              :         }
   24327              :       break;
   24328              : 
   24329              :     default:
   24330              :       break;
   24331              :     }
   24332              :   x3 = XEXP (x1, 0);
   24333              :   operands[0] = x3;
   24334              :   operands[1] = x2;
   24335              :   switch (GET_MODE (operands[0]))
   24336              :     {
   24337              :     case E_XImode:
   24338              :       if (nonimmediate_operand (operands[0], E_XImode)
   24339              :           && nonimmediate_or_sse_const_operand (operands[1], E_XImode)
   24340              :           && 
   24341              : #line 2468 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24342              : (TARGET_AVX512F
   24343              :    && (register_operand (operands[0], XImode)
   24344              :        || register_operand (operands[1], XImode))))
   24345              :         return 96; /* *movxi_internal_avx512f */
   24346              :       break;
   24347              : 
   24348              :     case E_OImode:
   24349              :       if (nonimmediate_operand (operands[0], E_OImode)
   24350              :           && nonimmediate_or_sse_const_operand (operands[1], E_OImode)
   24351              :           && 
   24352              : #line 2491 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24353              : (TARGET_AVX
   24354              :    && (register_operand (operands[0], OImode)
   24355              :        || register_operand (operands[1], OImode))))
   24356              :         return 97; /* *movoi_internal_avx */
   24357              :       break;
   24358              : 
   24359              :     case E_SImode:
   24360              :       if (register_operand (operands[0], E_SImode)
   24361              :           && address_no_seg_operand (operands[1], E_SImode)
   24362              :           && 
   24363              : #line 6381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24364              : (ix86_hardreg_mov_ok (operands[0], operands[1])))
   24365              :         return 268; /* *leasi */
   24366              :       break;
   24367              : 
   24368              :     case E_DImode:
   24369              :       if (register_operand (operands[0], E_DImode)
   24370              :           && address_no_seg_operand (operands[1], E_DImode)
   24371              :           && (
   24372              : #line 6381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24373              : (ix86_hardreg_mov_ok (operands[0], operands[1])) && 
   24374              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24375              : (TARGET_64BIT)))
   24376              :         return 269; /* *leadi */
   24377              :       break;
   24378              : 
   24379              :     default:
   24380              :       break;
   24381              :     }
   24382              :   switch (GET_CODE (x2))
   24383              :     {
   24384              :     case PLUS:
   24385              :       res = recog_72 (x1, insn, pnum_clobbers);
   24386              :       if (res >= 0)
   24387              :         return res;
   24388              :       break;
   24389              : 
   24390              :     case ZERO_EXTEND:
   24391              :       res = recog_80 (x1, insn, pnum_clobbers);
   24392              :       if (res >= 0)
   24393              :         return res;
   24394              :       break;
   24395              : 
   24396              :     case COMPARE:
   24397              :       res = recog_81 (x1, insn, pnum_clobbers);
   24398              :       if (res >= 0)
   24399              :         return res;
   24400              :       break;
   24401              : 
   24402              :     case IOR:
   24403              :       res = recog_85 (x1, insn, pnum_clobbers);
   24404              :       if (res >= 0)
   24405              :         return res;
   24406              :       break;
   24407              : 
   24408              :     case XOR:
   24409              :       res = recog_86 (x1, insn, pnum_clobbers);
   24410              :       if (res >= 0)
   24411              :         return res;
   24412              :       break;
   24413              : 
   24414              :     case MINUS:
   24415              :       res = recog_88 (x1, insn, pnum_clobbers);
   24416              :       if (res >= 0)
   24417              :         return res;
   24418              :       break;
   24419              : 
   24420              :     case IF_THEN_ELSE:
   24421              :       res = recog_91 (x1, insn, pnum_clobbers);
   24422              :       if (res >= 0)
   24423              :         return res;
   24424              :       break;
   24425              : 
   24426              :     case MULT:
   24427              :       res = recog_92 (x1, insn, pnum_clobbers);
   24428              :       if (res >= 0)
   24429              :         return res;
   24430              :       break;
   24431              : 
   24432              :     case SMUL_HIGHPART:
   24433              :       switch (pattern13 (x1, pnum_clobbers))
   24434              :         {
   24435              :         case 0:
   24436              :           if (
   24437              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24438              : (!TARGET_64BIT))
   24439              :             {
   24440              :               *pnum_clobbers = 2;
   24441              :               return 655; /* smulsi3_highpart */
   24442              :             }
   24443              :           break;
   24444              : 
   24445              :         case 1:
   24446              :           if (
   24447              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24448              : (TARGET_64BIT))
   24449              :             {
   24450              :               *pnum_clobbers = 2;
   24451              :               return 657; /* smuldi3_highpart */
   24452              :             }
   24453              :           break;
   24454              : 
   24455              :         default:
   24456              :           break;
   24457              :         }
   24458              :       break;
   24459              : 
   24460              :     case UMUL_HIGHPART:
   24461              :       switch (pattern13 (x1, pnum_clobbers))
   24462              :         {
   24463              :         case 0:
   24464              :           if (
   24465              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24466              : (!TARGET_64BIT))
   24467              :             {
   24468              :               *pnum_clobbers = 2;
   24469              :               return 656; /* umulsi3_highpart */
   24470              :             }
   24471              :           break;
   24472              : 
   24473              :         case 1:
   24474              :           if (
   24475              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24476              : (TARGET_64BIT))
   24477              :             {
   24478              :               *pnum_clobbers = 2;
   24479              :               return 658; /* umuldi3_highpart */
   24480              :             }
   24481              :           break;
   24482              : 
   24483              :         default:
   24484              :           break;
   24485              :         }
   24486              :       break;
   24487              : 
   24488              :     case TRUNCATE:
   24489              :       res = recog_93 (x1, insn, pnum_clobbers);
   24490              :       if (res >= 0)
   24491              :         return res;
   24492              :       break;
   24493              : 
   24494              :     case AND:
   24495              :       res = recog_95 (x1, insn, pnum_clobbers);
   24496              :       if (res >= 0)
   24497              :         return res;
   24498              :       break;
   24499              : 
   24500              :     case NOT:
   24501              :       res = recog_96 (x1, insn, pnum_clobbers);
   24502              :       if (res >= 0)
   24503              :         return res;
   24504              :       break;
   24505              : 
   24506              :     case NEG:
   24507              :       res = recog_97 (x1, insn, pnum_clobbers);
   24508              :       if (res >= 0)
   24509              :         return res;
   24510              :       break;
   24511              : 
   24512              :     case ABS:
   24513              :       res = recog_98 (x1, insn, pnum_clobbers);
   24514              :       if (res >= 0)
   24515              :         return res;
   24516              :       break;
   24517              : 
   24518              :     case ASHIFT:
   24519              :       res = recog_100 (x1, insn, pnum_clobbers);
   24520              :       if (res >= 0)
   24521              :         return res;
   24522              :       break;
   24523              : 
   24524              :     case LSHIFTRT:
   24525              :       res = recog_102 (x1, insn, pnum_clobbers);
   24526              :       if (res >= 0)
   24527              :         return res;
   24528              :       break;
   24529              : 
   24530              :     case ASHIFTRT:
   24531              :       res = recog_104 (x1, insn, pnum_clobbers);
   24532              :       if (res >= 0)
   24533              :         return res;
   24534              :       break;
   24535              : 
   24536              :     case SUBREG:
   24537              :       res = recog_105 (x1, insn, pnum_clobbers);
   24538              :       if (res >= 0)
   24539              :         return res;
   24540              :       break;
   24541              : 
   24542              :     case ROTATE:
   24543              :       res = recog_106 (x1, insn, pnum_clobbers);
   24544              :       if (res >= 0)
   24545              :         return res;
   24546              :       break;
   24547              : 
   24548              :     case ROTATERT:
   24549              :       res = recog_107 (x1, insn, pnum_clobbers);
   24550              :       if (res >= 0)
   24551              :         return res;
   24552              :       break;
   24553              : 
   24554              :     case ZERO_EXTRACT:
   24555              :       res = recog_109 (x1, insn, pnum_clobbers);
   24556              :       if (res >= 0)
   24557              :         return res;
   24558              :       break;
   24559              : 
   24560              :     case NE:
   24561              :     case EQ:
   24562              :     case GE:
   24563              :     case GT:
   24564              :     case LE:
   24565              :     case LT:
   24566              :     case LTGT:
   24567              :     case GEU:
   24568              :     case GTU:
   24569              :     case LEU:
   24570              :     case LTU:
   24571              :     case UNORDERED:
   24572              :     case ORDERED:
   24573              :     case UNEQ:
   24574              :     case UNGE:
   24575              :     case UNGT:
   24576              :     case UNLE:
   24577              :     case UNLT:
   24578              :       res = recog_110 (x1, insn, pnum_clobbers);
   24579              :       if (res >= 0)
   24580              :         return res;
   24581              :       break;
   24582              : 
   24583              :     case UNSPEC:
   24584              :       res = recog_114 (x1, insn, pnum_clobbers);
   24585              :       if (res >= 0)
   24586              :         return res;
   24587              :       break;
   24588              : 
   24589              :     case CALL:
   24590              :       res = recog_115 (x1, insn, pnum_clobbers);
   24591              :       if (res >= 0)
   24592              :         return res;
   24593              :       break;
   24594              : 
   24595              :     case FFS:
   24596              :       if (pnum_clobbers != NULL
   24597              :           && GET_MODE (x2) == E_SImode)
   24598              :         {
   24599              :           operands[0] = x3;
   24600              :           if (register_operand (operands[0], E_SImode))
   24601              :             {
   24602              :               x4 = XEXP (x2, 0);
   24603              :               operands[1] = x4;
   24604              :               if (nonimmediate_operand (operands[1], E_SImode)
   24605              :                   && 
   24606              : #line 21336 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24607              : (!TARGET_CMOVE))
   24608              :                 {
   24609              :                   *pnum_clobbers = 2;
   24610              :                   return 1539; /* ffssi2_no_cmove */
   24611              :                 }
   24612              :             }
   24613              :         }
   24614              :       break;
   24615              : 
   24616              :     case CTZ:
   24617              :       res = recog_116 (x1, insn, pnum_clobbers);
   24618              :       if (res >= 0)
   24619              :         return res;
   24620              :       break;
   24621              : 
   24622              :     case SIGN_EXTEND:
   24623              :       res = recog_117 (x1, insn, pnum_clobbers);
   24624              :       if (res >= 0)
   24625              :         return res;
   24626              :       break;
   24627              : 
   24628              :     case CLZ:
   24629              :       res = recog_118 (x1, insn, pnum_clobbers);
   24630              :       if (res >= 0)
   24631              :         return res;
   24632              :       break;
   24633              : 
   24634              :     case POPCOUNT:
   24635              :       res = recog_119 (x1, insn, pnum_clobbers);
   24636              :       if (res >= 0)
   24637              :         return res;
   24638              :       break;
   24639              : 
   24640              :     case BSWAP:
   24641              :       res = recog_360 (x1, insn, pnum_clobbers);
   24642              :       if (res >= 0)
   24643              :         return res;
   24644              :       break;
   24645              : 
   24646              :     case SIGN_EXTRACT:
   24647              :       res = recog_120 (x1, insn, pnum_clobbers);
   24648              :       if (res >= 0)
   24649              :         return res;
   24650              :       break;
   24651              : 
   24652              :     case SMAX:
   24653              :       switch (pattern20 (x1, pnum_clobbers))
   24654              :         {
   24655              :         case 0:
   24656              :           if ((
   24657              : #line 27359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24658              : (TARGET_CMOVE
   24659              :    && ix86_pre_reload_split ()) && 
   24660              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24661              : (!TARGET_64BIT)))
   24662              :             {
   24663              :               *pnum_clobbers = 1;
   24664              :               return 1865; /* *smaxdi3_doubleword */
   24665              :             }
   24666              :           if ((
   24667              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24668              : (TARGET_CMOVE
   24669              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24670              :    && ix86_pre_reload_split ()) && 
   24671              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24672              : (TARGET_64BIT)))
   24673              :             {
   24674              :               *pnum_clobbers = 1;
   24675              :               return 1885; /* *smaxdi3_1 */
   24676              :             }
   24677              :           break;
   24678              : 
   24679              :         case 1:
   24680              :           if (
   24681              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24682              : (TARGET_CMOVE
   24683              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24684              :    && ix86_pre_reload_split ()))
   24685              :             {
   24686              :               *pnum_clobbers = 1;
   24687              :               return 1881; /* *smaxsi3_1 */
   24688              :             }
   24689              :           break;
   24690              : 
   24691              :         default:
   24692              :           break;
   24693              :         }
   24694              :       break;
   24695              : 
   24696              :     case SMIN:
   24697              :       switch (pattern20 (x1, pnum_clobbers))
   24698              :         {
   24699              :         case 0:
   24700              :           if ((
   24701              : #line 27359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24702              : (TARGET_CMOVE
   24703              :    && ix86_pre_reload_split ()) && 
   24704              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24705              : (!TARGET_64BIT)))
   24706              :             {
   24707              :               *pnum_clobbers = 1;
   24708              :               return 1866; /* *smindi3_doubleword */
   24709              :             }
   24710              :           if ((
   24711              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24712              : (TARGET_CMOVE
   24713              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24714              :    && ix86_pre_reload_split ()) && 
   24715              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24716              : (TARGET_64BIT)))
   24717              :             {
   24718              :               *pnum_clobbers = 1;
   24719              :               return 1886; /* *smindi3_1 */
   24720              :             }
   24721              :           break;
   24722              : 
   24723              :         case 1:
   24724              :           if (
   24725              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24726              : (TARGET_CMOVE
   24727              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24728              :    && ix86_pre_reload_split ()))
   24729              :             {
   24730              :               *pnum_clobbers = 1;
   24731              :               return 1882; /* *sminsi3_1 */
   24732              :             }
   24733              :           break;
   24734              : 
   24735              :         default:
   24736              :           break;
   24737              :         }
   24738              :       break;
   24739              : 
   24740              :     case UMAX:
   24741              :       switch (pattern22 (x1, pnum_clobbers))
   24742              :         {
   24743              :         case 0:
   24744              :           if ((
   24745              : #line 27359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24746              : (TARGET_CMOVE
   24747              :    && ix86_pre_reload_split ()) && 
   24748              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24749              : (!TARGET_64BIT)))
   24750              :             {
   24751              :               *pnum_clobbers = 1;
   24752              :               return 1867; /* *umaxdi3_doubleword */
   24753              :             }
   24754              :           if ((
   24755              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24756              : (TARGET_CMOVE
   24757              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24758              :    && ix86_pre_reload_split ()) && 
   24759              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24760              : (TARGET_64BIT)))
   24761              :             {
   24762              :               *pnum_clobbers = 1;
   24763              :               return 1887; /* *umaxdi3_1 */
   24764              :             }
   24765              :           break;
   24766              : 
   24767              :         case 1:
   24768              :           if (
   24769              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24770              : (TARGET_CMOVE
   24771              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24772              :    && ix86_pre_reload_split ()))
   24773              :             {
   24774              :               *pnum_clobbers = 1;
   24775              :               return 1883; /* *umaxsi3_1 */
   24776              :             }
   24777              :           break;
   24778              : 
   24779              :         case 2:
   24780              :           x5 = XEXP (x2, 1);
   24781              :           if (rtx_equal_p (x5, operands[1])
   24782              :               && 
   24783              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24784              : (TARGET_CMOVE
   24785              :    && ix86_pre_reload_split ()))
   24786              :             {
   24787              :               *pnum_clobbers = 1;
   24788              :               return 1893; /* *plus_within_umaxsi3_1 */
   24789              :             }
   24790              :           if (rtx_equal_p (x5, operands[2])
   24791              :               && 
   24792              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24793              : (TARGET_CMOVE
   24794              :    && ix86_pre_reload_split ()))
   24795              :             {
   24796              :               *pnum_clobbers = 1;
   24797              :               return 1894; /* *plus_within_umaxsi3_2 */
   24798              :             }
   24799              :           break;
   24800              : 
   24801              :         case 3:
   24802              :           x5 = XEXP (x2, 1);
   24803              :           if (rtx_equal_p (x5, operands[1])
   24804              :               && (
   24805              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24806              : (TARGET_CMOVE
   24807              :    && ix86_pre_reload_split ()) && 
   24808              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24809              : (TARGET_64BIT)))
   24810              :             {
   24811              :               *pnum_clobbers = 1;
   24812              :               return 1897; /* *plus_within_umaxdi3_1 */
   24813              :             }
   24814              :           if (rtx_equal_p (x5, operands[2])
   24815              :               && (
   24816              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24817              : (TARGET_CMOVE
   24818              :    && ix86_pre_reload_split ()) && 
   24819              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24820              : (TARGET_64BIT)))
   24821              :             {
   24822              :               *pnum_clobbers = 1;
   24823              :               return 1898; /* *plus_within_umaxdi3_2 */
   24824              :             }
   24825              :           break;
   24826              : 
   24827              :         case 4:
   24828              :           if (
   24829              : #line 27631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24830              : (TARGET_CMOVE
   24831              :    && ix86_pre_reload_split ()))
   24832              :             {
   24833              :               *pnum_clobbers = 1;
   24834              :               return 1903; /* *minus_within_umaxsi3 */
   24835              :             }
   24836              :           break;
   24837              : 
   24838              :         case 5:
   24839              :           if ((
   24840              : #line 27631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24841              : (TARGET_CMOVE
   24842              :    && ix86_pre_reload_split ()) && 
   24843              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24844              : (TARGET_64BIT)))
   24845              :             {
   24846              :               *pnum_clobbers = 1;
   24847              :               return 1905; /* *minus_within_umaxdi3 */
   24848              :             }
   24849              :           break;
   24850              : 
   24851              :         default:
   24852              :           break;
   24853              :         }
   24854              :       break;
   24855              : 
   24856              :     case UMIN:
   24857              :       switch (pattern22 (x1, pnum_clobbers))
   24858              :         {
   24859              :         case 0:
   24860              :           if ((
   24861              : #line 27359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24862              : (TARGET_CMOVE
   24863              :    && ix86_pre_reload_split ()) && 
   24864              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24865              : (!TARGET_64BIT)))
   24866              :             {
   24867              :               *pnum_clobbers = 1;
   24868              :               return 1868; /* *umindi3_doubleword */
   24869              :             }
   24870              :           if ((
   24871              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24872              : (TARGET_CMOVE
   24873              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24874              :    && ix86_pre_reload_split ()) && 
   24875              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24876              : (TARGET_64BIT)))
   24877              :             {
   24878              :               *pnum_clobbers = 1;
   24879              :               return 1888; /* *umindi3_1 */
   24880              :             }
   24881              :           break;
   24882              : 
   24883              :         case 1:
   24884              :           if (
   24885              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24886              : (TARGET_CMOVE
   24887              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   24888              :    && ix86_pre_reload_split ()))
   24889              :             {
   24890              :               *pnum_clobbers = 1;
   24891              :               return 1884; /* *uminsi3_1 */
   24892              :             }
   24893              :           break;
   24894              : 
   24895              :         case 2:
   24896              :           x5 = XEXP (x2, 1);
   24897              :           if (rtx_equal_p (x5, operands[1])
   24898              :               && 
   24899              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24900              : (TARGET_CMOVE
   24901              :    && ix86_pre_reload_split ()))
   24902              :             {
   24903              :               *pnum_clobbers = 1;
   24904              :               return 1895; /* *plus_within_uminsi3_1 */
   24905              :             }
   24906              :           if (rtx_equal_p (x5, operands[2])
   24907              :               && 
   24908              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24909              : (TARGET_CMOVE
   24910              :    && ix86_pre_reload_split ()))
   24911              :             {
   24912              :               *pnum_clobbers = 1;
   24913              :               return 1896; /* *plus_within_uminsi3_2 */
   24914              :             }
   24915              :           break;
   24916              : 
   24917              :         case 3:
   24918              :           x5 = XEXP (x2, 1);
   24919              :           if (rtx_equal_p (x5, operands[1])
   24920              :               && (
   24921              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24922              : (TARGET_CMOVE
   24923              :    && ix86_pre_reload_split ()) && 
   24924              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24925              : (TARGET_64BIT)))
   24926              :             {
   24927              :               *pnum_clobbers = 1;
   24928              :               return 1899; /* *plus_within_umindi3_1 */
   24929              :             }
   24930              :           if (rtx_equal_p (x5, operands[2])
   24931              :               && (
   24932              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24933              : (TARGET_CMOVE
   24934              :    && ix86_pre_reload_split ()) && 
   24935              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24936              : (TARGET_64BIT)))
   24937              :             {
   24938              :               *pnum_clobbers = 1;
   24939              :               return 1900; /* *plus_within_umindi3_2 */
   24940              :             }
   24941              :           break;
   24942              : 
   24943              :         case 4:
   24944              :           if (
   24945              : #line 27631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24946              : (TARGET_CMOVE
   24947              :    && ix86_pre_reload_split ()))
   24948              :             {
   24949              :               *pnum_clobbers = 1;
   24950              :               return 1904; /* *minus_within_uminsi3 */
   24951              :             }
   24952              :           break;
   24953              : 
   24954              :         case 5:
   24955              :           if ((
   24956              : #line 27631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24957              : (TARGET_CMOVE
   24958              :    && ix86_pre_reload_split ()) && 
   24959              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24960              : (TARGET_64BIT)))
   24961              :             {
   24962              :               *pnum_clobbers = 1;
   24963              :               return 1906; /* *minus_within_umindi3 */
   24964              :             }
   24965              :           break;
   24966              : 
   24967              :         default:
   24968              :           break;
   24969              :         }
   24970              :       break;
   24971              : 
   24972              :     case UNSPEC_VOLATILE:
   24973              :       res = recog_121 (x1, insn, pnum_clobbers);
   24974              :       if (res >= 0)
   24975              :         return res;
   24976              :       break;
   24977              : 
   24978              :     case VEC_SELECT:
   24979              :       res = recog_124 (x1, insn, pnum_clobbers);
   24980              :       if (res >= 0)
   24981              :         return res;
   24982              :       break;
   24983              : 
   24984              :     case FIX:
   24985              :       switch (pattern25 (x1))
   24986              :         {
   24987              :         case 0:
   24988              :           if (
   24989              : #line 8335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24990              : (TARGET_AVX512FP16))
   24991              :             return 4744; /* avx512fp16_fix_truncsi2 */
   24992              :           break;
   24993              : 
   24994              :         case 1:
   24995              :           if (
   24996              : #line 8929 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24997              : (TARGET_SSE))
   24998              :             return 4843; /* sse_cvttss2si */
   24999              :           break;
   25000              : 
   25001              :         case 2:
   25002              :           if (
   25003              : #line 9474 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25004              : (TARGET_SSE2))
   25005              :             return 4978; /* sse2_cvttsd2si */
   25006              :           break;
   25007              : 
   25008              :         case 3:
   25009              :           if ((
   25010              : #line 8335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25011              : (TARGET_AVX512FP16) && 
   25012              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25013              : (TARGET_64BIT)))
   25014              :             return 4748; /* avx512fp16_fix_truncdi2 */
   25015              :           break;
   25016              : 
   25017              :         case 4:
   25018              :           if ((
   25019              : #line 8929 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25020              : (TARGET_SSE) && 
   25021              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25022              : (TARGET_64BIT)))
   25023              :             return 4845; /* sse_cvttss2siq */
   25024              :           break;
   25025              : 
   25026              :         case 5:
   25027              :           if ((
   25028              : #line 9474 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25029              : (TARGET_SSE2) && 
   25030              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25031              : (TARGET_64BIT)))
   25032              :             return 4980; /* sse2_cvttsd2siq */
   25033              :           break;
   25034              : 
   25035              :         case 6:
   25036              :           if (
   25037              : #line 8345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25038              : (TARGET_AVX512FP16))
   25039              :             return 4752; /* avx512fp16_fix_truncsi2_mem */
   25040              :           break;
   25041              : 
   25042              :         case 7:
   25043              :           if ((
   25044              : #line 8345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25045              : (TARGET_AVX512FP16) && 
   25046              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25047              : (TARGET_64BIT)))
   25048              :             return 4754; /* avx512fp16_fix_truncdi2_mem */
   25049              :           break;
   25050              : 
   25051              :         default:
   25052              :           break;
   25053              :         }
   25054              :       break;
   25055              : 
   25056              :     case UNSIGNED_FIX:
   25057              :       switch (pattern25 (x1))
   25058              :         {
   25059              :         case 0:
   25060              :           if (
   25061              : #line 8335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25062              : (TARGET_AVX512FP16))
   25063              :             return 4746; /* avx512fp16_fixuns_truncsi2 */
   25064              :           break;
   25065              : 
   25066              :         case 1:
   25067              :           if (
   25068              : #line 9379 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25069              : (TARGET_AVX512F))
   25070              :             return 4952; /* avx512f_vcvttss2usi */
   25071              :           break;
   25072              : 
   25073              :         case 2:
   25074              :           if (
   25075              : #line 9415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25076              : (TARGET_AVX512F))
   25077              :             return 4964; /* avx512f_vcvttsd2usi */
   25078              :           break;
   25079              : 
   25080              :         case 3:
   25081              :           if ((
   25082              : #line 8335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25083              : (TARGET_AVX512FP16) && 
   25084              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25085              : (TARGET_64BIT)))
   25086              :             return 4750; /* avx512fp16_fixuns_truncdi2 */
   25087              :           break;
   25088              : 
   25089              :         case 4:
   25090              :           if ((
   25091              : #line 9379 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25092              : (TARGET_AVX512F) && 
   25093              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25094              : (TARGET_64BIT)))
   25095              :             return 4954; /* avx512f_vcvttss2usiq */
   25096              :           break;
   25097              : 
   25098              :         case 5:
   25099              :           if ((
   25100              : #line 9415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25101              : (TARGET_AVX512F) && 
   25102              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25103              : (TARGET_64BIT)))
   25104              :             return 4966; /* avx512f_vcvttsd2usiq */
   25105              :           break;
   25106              : 
   25107              :         case 6:
   25108              :           if (
   25109              : #line 8345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25110              : (TARGET_AVX512FP16))
   25111              :             return 4753; /* avx512fp16_fixuns_truncsi2_mem */
   25112              :           break;
   25113              : 
   25114              :         case 7:
   25115              :           if ((
   25116              : #line 8345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25117              : (TARGET_AVX512FP16) && 
   25118              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25119              : (TARGET_64BIT)))
   25120              :             return 4755; /* avx512fp16_fixuns_truncdi2_mem */
   25121              :           break;
   25122              : 
   25123              :         default:
   25124              :           break;
   25125              :         }
   25126              :       break;
   25127              : 
   25128              :     default:
   25129              :       break;
   25130              :     }
   25131              :   operands[0] = x3;
   25132              :   res = recog_329 (x1, insn, pnum_clobbers);
   25133              :   if (res >= 0)
   25134              :     return res;
   25135              :   switch (GET_CODE (x2))
   25136              :     {
   25137              :     case VEC_MERGE:
   25138              :       return recog_326 (x1, insn, pnum_clobbers);
   25139              : 
   25140              :     case UNSPEC:
   25141              :       return recog_323 (x1, insn, pnum_clobbers);
   25142              : 
   25143              :     case VEC_CONCAT:
   25144              :       return recog_322 (x1, insn, pnum_clobbers);
   25145              : 
   25146              :     case PLUS:
   25147              :       return recog_324 (x1, insn, pnum_clobbers);
   25148              : 
   25149              :     case MINUS:
   25150              :       return recog_349 (x1, insn, pnum_clobbers);
   25151              : 
   25152              :     case MULT:
   25153              :       return recog_337 (x1, insn, pnum_clobbers);
   25154              : 
   25155              :     case DIV:
   25156              :       return recog_356 (x1, insn, pnum_clobbers);
   25157              : 
   25158              :     case SQRT:
   25159              :       return recog_342 (x1, insn, pnum_clobbers);
   25160              : 
   25161              :     case SMAX:
   25162              :       return recog_346 (x1, insn, pnum_clobbers);
   25163              : 
   25164              :     case SMIN:
   25165              :       return recog_345 (x1, insn, pnum_clobbers);
   25166              : 
   25167              :     case NE:
   25168              :     case EQ:
   25169              :     case GE:
   25170              :     case GT:
   25171              :     case LE:
   25172              :     case LT:
   25173              :     case LTGT:
   25174              :     case GEU:
   25175              :     case GTU:
   25176              :     case LEU:
   25177              :     case LTU:
   25178              :     case UNORDERED:
   25179              :     case ORDERED:
   25180              :     case UNEQ:
   25181              :     case UNGE:
   25182              :     case UNGT:
   25183              :     case UNLE:
   25184              :     case UNLT:
   25185              :       return recog_344 (x1, insn, pnum_clobbers);
   25186              : 
   25187              :     case FMA:
   25188              :       return recog_330 (x1, insn, pnum_clobbers);
   25189              : 
   25190              :     case FLOAT:
   25191              :       return recog_336 (x1, insn, pnum_clobbers);
   25192              : 
   25193              :     case UNSIGNED_FLOAT:
   25194              :       return recog_341 (x1, insn, pnum_clobbers);
   25195              : 
   25196              :     case FIX:
   25197              :       return recog_350 (x1, insn, pnum_clobbers);
   25198              : 
   25199              :     case UNSIGNED_FIX:
   25200              :       return recog_351 (x1, insn, pnum_clobbers);
   25201              : 
   25202              :     case FLOAT_EXTEND:
   25203              :       return recog_331 (x1, insn, pnum_clobbers);
   25204              : 
   25205              :     case FLOAT_TRUNCATE:
   25206              :       return recog_354 (x1, insn, pnum_clobbers);
   25207              : 
   25208              :     case VEC_SELECT:
   25209              :       return recog_325 (x1, insn, pnum_clobbers);
   25210              : 
   25211              :     case VEC_DUPLICATE:
   25212              :       return recog_327 (x1, insn, pnum_clobbers);
   25213              : 
   25214              :     case AND:
   25215              :     case IOR:
   25216              :     case XOR:
   25217              :     case NOT:
   25218              :       return recog_348 (x1, insn, pnum_clobbers);
   25219              : 
   25220              :     case SS_TRUNCATE:
   25221              :       operands[0] = x3;
   25222              :       switch (pattern53 (x2))
   25223              :         {
   25224              :         case 0:
   25225              :           if (!
   25226              : #line 15313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25227              : (TARGET_AVX512F))
   25228              :             return -1;
   25229              :           return 7260; /* *avx512f_ss_truncatev16siv16qi2 */
   25230              : 
   25231              :         case 1:
   25232              :           if (!(
   25233              : #line 15575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25234              : (TARGET_AVX512VL) && 
   25235              : #line 15549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25236              : (TARGET_AVX512BW)))
   25237              :             return -1;
   25238              :           return 7302; /* *avx512vl_ss_truncatev16hiv16qi2 */
   25239              : 
   25240              :         case 2:
   25241              :           if (!
   25242              : #line 15313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25243              : (TARGET_AVX512F))
   25244              :             return -1;
   25245              :           return 7263; /* *avx512f_ss_truncatev16siv16hi2 */
   25246              : 
   25247              :         case 3:
   25248              :           if (!
   25249              : #line 15313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25250              : (TARGET_AVX512F))
   25251              :             return -1;
   25252              :           return 7266; /* *avx512f_ss_truncatev8div8si2 */
   25253              : 
   25254              :         case 4:
   25255              :           if (!
   25256              : #line 15313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25257              : (TARGET_AVX512F))
   25258              :             return -1;
   25259              :           return 7269; /* *avx512f_ss_truncatev8div8hi2 */
   25260              : 
   25261              :         case 5:
   25262              :           if (!
   25263              : #line 15575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25264              : (TARGET_AVX512VL))
   25265              :             return -1;
   25266              :           return 7299; /* *avx512vl_ss_truncatev8siv8hi2 */
   25267              : 
   25268              :         case 6:
   25269              :           if (!
   25270              : #line 15486 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25271              : (TARGET_AVX512BW))
   25272              :             return -1;
   25273              :           return 7289; /* avx512bw_ss_truncatev32hiv32qi2 */
   25274              : 
   25275              :         case 7:
   25276              :           if (!
   25277              : #line 15575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25278              : (TARGET_AVX512VL))
   25279              :             return -1;
   25280              :           return 7296; /* *avx512vl_ss_truncatev4div4si2 */
   25281              : 
   25282              :         default:
   25283              :           return -1;
   25284              :         }
   25285              : 
   25286              :     case TRUNCATE:
   25287              :       return recog_343 (x1, insn, pnum_clobbers);
   25288              : 
   25289              :     case US_TRUNCATE:
   25290              :       operands[0] = x3;
   25291              :       switch (pattern53 (x2))
   25292              :         {
   25293              :         case 0:
   25294              :           if (!
   25295              : #line 15313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25296              : (TARGET_AVX512F))
   25297              :             return -1;
   25298              :           return 7262; /* *avx512f_us_truncatev16siv16qi2 */
   25299              : 
   25300              :         case 1:
   25301              :           if (!(
   25302              : #line 15575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25303              : (TARGET_AVX512VL) && 
   25304              : #line 15549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25305              : (TARGET_AVX512BW)))
   25306              :             return -1;
   25307              :           return 7304; /* *avx512vl_us_truncatev16hiv16qi2 */
   25308              : 
   25309              :         case 2:
   25310              :           if (!
   25311              : #line 15313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25312              : (TARGET_AVX512F))
   25313              :             return -1;
   25314              :           return 7265; /* *avx512f_us_truncatev16siv16hi2 */
   25315              : 
   25316              :         case 3:
   25317              :           if (!
   25318              : #line 15313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25319              : (TARGET_AVX512F))
   25320              :             return -1;
   25321              :           return 7268; /* *avx512f_us_truncatev8div8si2 */
   25322              : 
   25323              :         case 4:
   25324              :           if (!
   25325              : #line 15313 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25326              : (TARGET_AVX512F))
   25327              :             return -1;
   25328              :           return 7271; /* *avx512f_us_truncatev8div8hi2 */
   25329              : 
   25330              :         case 5:
   25331              :           if (!
   25332              : #line 15575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25333              : (TARGET_AVX512VL))
   25334              :             return -1;
   25335              :           return 7301; /* *avx512vl_us_truncatev8siv8hi2 */
   25336              : 
   25337              :         case 6:
   25338              :           if (!
   25339              : #line 15486 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25340              : (TARGET_AVX512BW))
   25341              :             return -1;
   25342              :           return 7291; /* avx512bw_us_truncatev32hiv32qi2 */
   25343              : 
   25344              :         case 7:
   25345              :           if (!
   25346              : #line 15575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25347              : (TARGET_AVX512VL))
   25348              :             return -1;
   25349              :           return 7298; /* *avx512vl_us_truncatev4div4si2 */
   25350              : 
   25351              :         default:
   25352              :           return -1;
   25353              :         }
   25354              : 
   25355              :     case SS_PLUS:
   25356              :       return recog_328 (x1, insn, pnum_clobbers);
   25357              : 
   25358              :     case US_PLUS:
   25359              :       operands[0] = x3;
   25360              :       switch (pattern54 (x2))
   25361              :         {
   25362              :         case 0:
   25363              :           if (!(
   25364              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25365              : (TARGET_SSE2 && 1 && 1
   25366              :    && ix86_binary_operator_ok (US_PLUS, V64QImode, operands)) && 
   25367              : #line 732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25368              : (TARGET_AVX512BW)))
   25369              :             return -1;
   25370              :           return 7549; /* *avx512bw_usaddv64qi3 */
   25371              : 
   25372              :         case 1:
   25373              :           if (!(
   25374              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25375              : (TARGET_SSE2 && 1 && 1
   25376              :    && ix86_binary_operator_ok (US_PLUS, V32QImode, operands)) && 
   25377              : #line 732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25378              : (TARGET_AVX2)))
   25379              :             return -1;
   25380              :           return 7557; /* *avx2_usaddv32qi3 */
   25381              : 
   25382              :         case 2:
   25383              :           if (!
   25384              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25385              : (TARGET_SSE2 && 1 && 1
   25386              :    && ix86_binary_operator_ok (US_PLUS, V16QImode, operands)))
   25387              :             return -1;
   25388              :           return 7565; /* *sse2_usaddv16qi3 */
   25389              : 
   25390              :         case 3:
   25391              :           if (!(
   25392              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25393              : (TARGET_SSE2 && 1 && 1
   25394              :    && ix86_binary_operator_ok (US_PLUS, V32HImode, operands)) && 
   25395              : #line 733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25396              : (TARGET_AVX512BW)))
   25397              :             return -1;
   25398              :           return 7573; /* *avx512bw_usaddv32hi3 */
   25399              : 
   25400              :         case 4:
   25401              :           if (!(
   25402              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25403              : (TARGET_SSE2 && 1 && 1
   25404              :    && ix86_binary_operator_ok (US_PLUS, V16HImode, operands)) && 
   25405              : #line 733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25406              : (TARGET_AVX2)))
   25407              :             return -1;
   25408              :           return 7581; /* *avx2_usaddv16hi3 */
   25409              : 
   25410              :         case 5:
   25411              :           if (!
   25412              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25413              : (TARGET_SSE2 && 1 && 1
   25414              :    && ix86_binary_operator_ok (US_PLUS, V8HImode, operands)))
   25415              :             return -1;
   25416              :           return 7589; /* *sse2_usaddv8hi3 */
   25417              : 
   25418              :         default:
   25419              :           return -1;
   25420              :         }
   25421              : 
   25422              :     case SS_MINUS:
   25423              :       operands[0] = x3;
   25424              :       x4 = XEXP (x2, 0);
   25425              :       switch (GET_CODE (x4))
   25426              :         {
   25427              :         case REG:
   25428              :         case SUBREG:
   25429              :         case MEM:
   25430              :           switch (pattern54 (x2))
   25431              :             {
   25432              :             case 0:
   25433              :               if (!(
   25434              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25435              : (TARGET_SSE2 && 1 && 1
   25436              :    && ix86_binary_operator_ok (SS_MINUS, V64QImode, operands)) && 
   25437              : #line 732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25438              : (TARGET_AVX512BW)))
   25439              :                 return -1;
   25440              :               return 7551; /* *avx512bw_sssubv64qi3 */
   25441              : 
   25442              :             case 1:
   25443              :               if (!(
   25444              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25445              : (TARGET_SSE2 && 1 && 1
   25446              :    && ix86_binary_operator_ok (SS_MINUS, V32QImode, operands)) && 
   25447              : #line 732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25448              : (TARGET_AVX2)))
   25449              :                 return -1;
   25450              :               return 7559; /* *avx2_sssubv32qi3 */
   25451              : 
   25452              :             case 2:
   25453              :               if (!
   25454              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25455              : (TARGET_SSE2 && 1 && 1
   25456              :    && ix86_binary_operator_ok (SS_MINUS, V16QImode, operands)))
   25457              :                 return -1;
   25458              :               return 7567; /* *sse2_sssubv16qi3 */
   25459              : 
   25460              :             case 3:
   25461              :               if (!(
   25462              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25463              : (TARGET_SSE2 && 1 && 1
   25464              :    && ix86_binary_operator_ok (SS_MINUS, V32HImode, operands)) && 
   25465              : #line 733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25466              : (TARGET_AVX512BW)))
   25467              :                 return -1;
   25468              :               return 7575; /* *avx512bw_sssubv32hi3 */
   25469              : 
   25470              :             case 4:
   25471              :               if (!(
   25472              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25473              : (TARGET_SSE2 && 1 && 1
   25474              :    && ix86_binary_operator_ok (SS_MINUS, V16HImode, operands)) && 
   25475              : #line 733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25476              : (TARGET_AVX2)))
   25477              :                 return -1;
   25478              :               return 7583; /* *avx2_sssubv16hi3 */
   25479              : 
   25480              :             case 5:
   25481              :               if (!
   25482              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25483              : (TARGET_SSE2 && 1 && 1
   25484              :    && ix86_binary_operator_ok (SS_MINUS, V8HImode, operands)))
   25485              :                 return -1;
   25486              :               return 7591; /* *sse2_sssubv8hi3 */
   25487              : 
   25488              :             default:
   25489              :               return -1;
   25490              :             }
   25491              : 
   25492              :         case VEC_SELECT:
   25493              :           switch (pattern205 (x2))
   25494              :             {
   25495              :             case 0:
   25496              :               if (!
   25497              : #line 22922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25498              : (TARGET_AVX2))
   25499              :                 return -1;
   25500              :               return 8635; /* avx2_phsubswv16hi3 */
   25501              : 
   25502              :             case 1:
   25503              :               if (!
   25504              : #line 22945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25505              : (TARGET_SSSE3))
   25506              :                 return -1;
   25507              :               return 8639; /* ssse3_phsubswv8hi3 */
   25508              : 
   25509              :             default:
   25510              :               return -1;
   25511              :             }
   25512              : 
   25513              :         default:
   25514              :           return -1;
   25515              :         }
   25516              : 
   25517              :     case US_MINUS:
   25518              :       operands[0] = x3;
   25519              :       switch (pattern54 (x2))
   25520              :         {
   25521              :         case 0:
   25522              :           if (!(
   25523              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25524              : (TARGET_SSE2 && 1 && 1
   25525              :    && ix86_binary_operator_ok (US_MINUS, V64QImode, operands)) && 
   25526              : #line 732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25527              : (TARGET_AVX512BW)))
   25528              :             return -1;
   25529              :           return 7553; /* *avx512bw_ussubv64qi3 */
   25530              : 
   25531              :         case 1:
   25532              :           if (!(
   25533              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25534              : (TARGET_SSE2 && 1 && 1
   25535              :    && ix86_binary_operator_ok (US_MINUS, V32QImode, operands)) && 
   25536              : #line 732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25537              : (TARGET_AVX2)))
   25538              :             return -1;
   25539              :           return 7561; /* *avx2_ussubv32qi3 */
   25540              : 
   25541              :         case 2:
   25542              :           if (!
   25543              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25544              : (TARGET_SSE2 && 1 && 1
   25545              :    && ix86_binary_operator_ok (US_MINUS, V16QImode, operands)))
   25546              :             return -1;
   25547              :           return 7569; /* *sse2_ussubv16qi3 */
   25548              : 
   25549              :         case 3:
   25550              :           if (!(
   25551              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25552              : (TARGET_SSE2 && 1 && 1
   25553              :    && ix86_binary_operator_ok (US_MINUS, V32HImode, operands)) && 
   25554              : #line 733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25555              : (TARGET_AVX512BW)))
   25556              :             return -1;
   25557              :           return 7577; /* *avx512bw_ussubv32hi3 */
   25558              : 
   25559              :         case 4:
   25560              :           if (!(
   25561              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25562              : (TARGET_SSE2 && 1 && 1
   25563              :    && ix86_binary_operator_ok (US_MINUS, V16HImode, operands)) && 
   25564              : #line 733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25565              : (TARGET_AVX2)))
   25566              :             return -1;
   25567              :           return 7585; /* *avx2_ussubv16hi3 */
   25568              : 
   25569              :         case 5:
   25570              :           if (!
   25571              : #line 16643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25572              : (TARGET_SSE2 && 1 && 1
   25573              :    && ix86_binary_operator_ok (US_MINUS, V8HImode, operands)))
   25574              :             return -1;
   25575              :           return 7593; /* *sse2_ussubv8hi3 */
   25576              : 
   25577              :         default:
   25578              :           return -1;
   25579              :         }
   25580              : 
   25581              :     case ASHIFTRT:
   25582              :       return recog_332 (x1, insn, pnum_clobbers);
   25583              : 
   25584              :     case ASHIFT:
   25585              :       return recog_334 (x1, insn, pnum_clobbers);
   25586              : 
   25587              :     case LSHIFTRT:
   25588              :       return recog_333 (x1, insn, pnum_clobbers);
   25589              : 
   25590              :     case ROTATE:
   25591              :       return recog_358 (x1, insn, pnum_clobbers);
   25592              : 
   25593              :     case ROTATERT:
   25594              :       return recog_357 (x1, insn, pnum_clobbers);
   25595              : 
   25596              :     case UMAX:
   25597              :       return recog_353 (x1, insn, pnum_clobbers);
   25598              : 
   25599              :     case UMIN:
   25600              :       return recog_352 (x1, insn, pnum_clobbers);
   25601              : 
   25602              :     case ABS:
   25603              :       return recog_340 (x1, insn, pnum_clobbers);
   25604              : 
   25605              :     case SIGN_EXTEND:
   25606              :       return recog_347 (x1, insn, pnum_clobbers);
   25607              : 
   25608              :     case ZERO_EXTEND:
   25609              :       return recog_338 (x1, insn, pnum_clobbers);
   25610              : 
   25611              :     case IF_THEN_ELSE:
   25612              :       return recog_335 (x1, insn, pnum_clobbers);
   25613              : 
   25614              :     case CLZ:
   25615              :       return recog_355 (x1, insn, pnum_clobbers);
   25616              : 
   25617              :     case POPCOUNT:
   25618              :       return recog_339 (x1, insn, pnum_clobbers);
   25619              : 
   25620              :     default:
   25621              :       return -1;
   25622              :     }
   25623              : }
   25624              : 
   25625              :  rtx_insn *
   25626              : split_39 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25627              : {
   25628              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25629              :   rtx x2, x3, x4, x5, x6, x7, x8;
   25630              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25631              :   x2 = XVECEXP (x1, 0, 0);
   25632              :   x3 = XEXP (x2, 0);
   25633              :   operands[0] = x3;
   25634              :   x4 = XEXP (x2, 1);
   25635              :   x5 = XEXP (x4, 0);
   25636              :   switch (GET_CODE (x5))
   25637              :     {
   25638              :     case LSHIFTRT:
   25639              :       if (GET_MODE (x5) != E_SImode)
   25640              :         return NULL;
   25641              :       x6 = XVECEXP (x1, 0, 1);
   25642              :       if (pattern236 (x6, 
   25643              : E_CCmode, 
   25644              : 17) != 0
   25645              :           || !mask_reg_operand (operands[0], E_DImode)
   25646              :           || GET_MODE (x4) != E_DImode)
   25647              :         return NULL;
   25648              :       x7 = XEXP (x5, 0);
   25649              :       operands[1] = x7;
   25650              :       if (!mask_reg_operand (operands[1], E_SImode))
   25651              :         return NULL;
   25652              :       x8 = XEXP (x5, 1);
   25653              :       operands[2] = x8;
   25654              :       if (!const_0_to_31_operand (operands[2], E_VOIDmode)
   25655              :           || !
   25656              : #line 2343 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25657              : (TARGET_AVX512BW && reload_completed))
   25658              :         return NULL;
   25659              :       return gen_split_1282 (insn, operands);
   25660              : 
   25661              :     case UNSPEC:
   25662              :       if (pattern354 (x1) != 0)
   25663              :         return NULL;
   25664              :       switch (pattern1052 (x1))
   25665              :         {
   25666              :         case 0:
   25667              :           if (!(
   25668              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25669              : (TARGET_AVX512F
   25670              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   25671              :    && (GET_MODE_NUNITS (V16SImode)
   25672              :        < GET_MODE_PRECISION (HImode))
   25673              :    && ix86_pre_reload_split ()) && 
   25674              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25675              : ( 1)))
   25676              :             return NULL;
   25677              :           return gen_split_1402 (insn, operands);
   25678              : 
   25679              :         case 1:
   25680              :           if (!((
   25681              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25682              : (TARGET_AVX512F
   25683              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   25684              :    && (GET_MODE_NUNITS (V16HFmode)
   25685              :        < GET_MODE_PRECISION (HImode))
   25686              :    && ix86_pre_reload_split ()) && 
   25687              : #line 321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25688              : (TARGET_AVX512FP16 && TARGET_AVX512VL)) && 
   25689              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25690              : ( 1)))
   25691              :             return NULL;
   25692              :           return gen_split_1423 (insn, operands);
   25693              : 
   25694              :         case 2:
   25695              :           if (!(
   25696              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25697              : (TARGET_AVX512F
   25698              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   25699              :    && (GET_MODE_NUNITS (V16SFmode)
   25700              :        < GET_MODE_PRECISION (HImode))
   25701              :    && ix86_pre_reload_split ()) && 
   25702              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25703              : ( 1)))
   25704              :             return NULL;
   25705              :           return gen_split_1429 (insn, operands);
   25706              : 
   25707              :         case 3:
   25708              :           if (!((
   25709              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25710              : (TARGET_AVX512BW
   25711              :   && (GET_MODE_NUNITS (V16QImode)
   25712              :       < GET_MODE_PRECISION (HImode))
   25713              :   && ix86_pre_reload_split ()) && 
   25714              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25715              : (TARGET_AVX512VL)) && 
   25716              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25717              : ( 1)))
   25718              :             return NULL;
   25719              :           return gen_split_1465 (insn, operands);
   25720              : 
   25721              :         case 4:
   25722              :           if (!((
   25723              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25724              : (TARGET_AVX512BW
   25725              :   && (GET_MODE_NUNITS (V16HImode)
   25726              :       < GET_MODE_PRECISION (HImode))
   25727              :   && ix86_pre_reload_split ()) && 
   25728              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25729              : (TARGET_AVX512VL)) && 
   25730              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25731              : ( 1)))
   25732              :             return NULL;
   25733              :           return gen_split_1474 (insn, operands);
   25734              : 
   25735              :         case 5:
   25736              :           if (!((
   25737              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25738              : (TARGET_AVX512F
   25739              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   25740              :    && (GET_MODE_NUNITS (V8SImode)
   25741              :        < GET_MODE_PRECISION (HImode))
   25742              :    && ix86_pre_reload_split ()) && 
   25743              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25744              : (TARGET_AVX512VL)) && 
   25745              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25746              : ( 1)))
   25747              :             return NULL;
   25748              :           return gen_split_1405 (insn, operands);
   25749              : 
   25750              :         case 6:
   25751              :           if (!((
   25752              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25753              : (TARGET_AVX512F
   25754              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   25755              :    && (GET_MODE_NUNITS (V4SImode)
   25756              :        < GET_MODE_PRECISION (HImode))
   25757              :    && ix86_pre_reload_split ()) && 
   25758              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25759              : (TARGET_AVX512VL)) && 
   25760              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25761              : ( 1)))
   25762              :             return NULL;
   25763              :           return gen_split_1408 (insn, operands);
   25764              : 
   25765              :         case 7:
   25766              :           if (!(
   25767              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25768              : (TARGET_AVX512F
   25769              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   25770              :    && (GET_MODE_NUNITS (V8DImode)
   25771              :        < GET_MODE_PRECISION (HImode))
   25772              :    && ix86_pre_reload_split ()) && 
   25773              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25774              : ( 1)))
   25775              :             return NULL;
   25776              :           return gen_split_1411 (insn, operands);
   25777              : 
   25778              :         case 8:
   25779              :           if (!((
   25780              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25781              : (TARGET_AVX512F
   25782              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   25783              :    && (GET_MODE_NUNITS (V4DImode)
   25784              :        < GET_MODE_PRECISION (HImode))
   25785              :    && ix86_pre_reload_split ()) && 
   25786              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25787              : (TARGET_AVX512VL)) && 
   25788              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25789              : ( 1)))
   25790              :             return NULL;
   25791              :           return gen_split_1414 (insn, operands);
   25792              : 
   25793              :         case 9:
   25794              :           if (!((
   25795              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25796              : (TARGET_AVX512F
   25797              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   25798              :    && (GET_MODE_NUNITS (V2DImode)
   25799              :        < GET_MODE_PRECISION (HImode))
   25800              :    && ix86_pre_reload_split ()) && 
   25801              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25802              : (TARGET_AVX512VL)) && 
   25803              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25804              : ( 1)))
   25805              :             return NULL;
   25806              :           return gen_split_1417 (insn, operands);
   25807              : 
   25808              :         case 10:
   25809              :           if (!((
   25810              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25811              : (TARGET_AVX512F
   25812              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   25813              :    && (GET_MODE_NUNITS (V8HFmode)
   25814              :        < GET_MODE_PRECISION (HImode))
   25815              :    && ix86_pre_reload_split ()) && 
   25816              : #line 322 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25817              : (TARGET_AVX512FP16 && TARGET_AVX512VL)) && 
   25818              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25819              : ( 1)))
   25820              :             return NULL;
   25821              :           return gen_split_1426 (insn, operands);
   25822              : 
   25823              :         case 11:
   25824              :           if (!((
   25825              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25826              : (TARGET_AVX512F
   25827              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   25828              :    && (GET_MODE_NUNITS (V8SFmode)
   25829              :        < GET_MODE_PRECISION (HImode))
   25830              :    && ix86_pre_reload_split ()) && 
   25831              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25832              : (TARGET_AVX512VL)) && 
   25833              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25834              : ( 1)))
   25835              :             return NULL;
   25836              :           return gen_split_1432 (insn, operands);
   25837              : 
   25838              :         case 12:
   25839              :           if (!((
   25840              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25841              : (TARGET_AVX512F
   25842              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   25843              :    && (GET_MODE_NUNITS (V4SFmode)
   25844              :        < GET_MODE_PRECISION (HImode))
   25845              :    && ix86_pre_reload_split ()) && 
   25846              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25847              : (TARGET_AVX512VL)) && 
   25848              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25849              : ( 1)))
   25850              :             return NULL;
   25851              :           return gen_split_1435 (insn, operands);
   25852              : 
   25853              :         case 13:
   25854              :           if (!(
   25855              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25856              : (TARGET_AVX512F
   25857              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   25858              :    && (GET_MODE_NUNITS (V8DFmode)
   25859              :        < GET_MODE_PRECISION (HImode))
   25860              :    && ix86_pre_reload_split ()) && 
   25861              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25862              : ( 1)))
   25863              :             return NULL;
   25864              :           return gen_split_1438 (insn, operands);
   25865              : 
   25866              :         case 14:
   25867              :           if (!((
   25868              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25869              : (TARGET_AVX512F
   25870              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   25871              :    && (GET_MODE_NUNITS (V4DFmode)
   25872              :        < GET_MODE_PRECISION (HImode))
   25873              :    && ix86_pre_reload_split ()) && 
   25874              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25875              : (TARGET_AVX512VL)) && 
   25876              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25877              : ( 1)))
   25878              :             return NULL;
   25879              :           return gen_split_1441 (insn, operands);
   25880              : 
   25881              :         case 15:
   25882              :           if (!((
   25883              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25884              : (TARGET_AVX512F
   25885              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   25886              :    && (GET_MODE_NUNITS (V2DFmode)
   25887              :        < GET_MODE_PRECISION (HImode))
   25888              :    && ix86_pre_reload_split ()) && 
   25889              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25890              : (TARGET_AVX512VL)) && 
   25891              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25892              : ( 1)))
   25893              :             return NULL;
   25894              :           return gen_split_1444 (insn, operands);
   25895              : 
   25896              :         case 16:
   25897              :           if (!((
   25898              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25899              : (TARGET_AVX512BW
   25900              :   && (GET_MODE_NUNITS (V8HImode)
   25901              :       < GET_MODE_PRECISION (HImode))
   25902              :   && ix86_pre_reload_split ()) && 
   25903              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25904              : (TARGET_AVX512VL)) && 
   25905              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25906              : ( 1)))
   25907              :             return NULL;
   25908              :           return gen_split_1477 (insn, operands);
   25909              : 
   25910              :         case 17:
   25911              :           if (!((
   25912              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25913              : (TARGET_AVX512F
   25914              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   25915              :    && (GET_MODE_NUNITS (V32HFmode)
   25916              :        < GET_MODE_PRECISION (HImode))
   25917              :    && ix86_pre_reload_split ()) && 
   25918              : #line 320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25919              : (TARGET_AVX512FP16)) && 
   25920              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25921              : ( 1)))
   25922              :             return NULL;
   25923              :           return gen_split_1420 (insn, operands);
   25924              : 
   25925              :         case 18:
   25926              :           if (!((
   25927              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25928              : (TARGET_AVX512BW
   25929              :   && (GET_MODE_NUNITS (V32QImode)
   25930              :       < GET_MODE_PRECISION (HImode))
   25931              :   && ix86_pre_reload_split ()) && 
   25932              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25933              : (TARGET_AVX512VL)) && 
   25934              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25935              : ( 1)))
   25936              :             return NULL;
   25937              :           return gen_split_1468 (insn, operands);
   25938              : 
   25939              :         case 19:
   25940              :           if (!(
   25941              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25942              : (TARGET_AVX512BW
   25943              :   && (GET_MODE_NUNITS (V32HImode)
   25944              :       < GET_MODE_PRECISION (HImode))
   25945              :   && ix86_pre_reload_split ()) && 
   25946              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25947              : ( 1)))
   25948              :             return NULL;
   25949              :           return gen_split_1471 (insn, operands);
   25950              : 
   25951              :         case 20:
   25952              :           if (!(
   25953              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25954              : (TARGET_AVX512BW
   25955              :   && (GET_MODE_NUNITS (V64QImode)
   25956              :       < GET_MODE_PRECISION (HImode))
   25957              :   && ix86_pre_reload_split ()) && 
   25958              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25959              : ( 1)))
   25960              :             return NULL;
   25961              :           return gen_split_1462 (insn, operands);
   25962              : 
   25963              :         case 21:
   25964              :           if (!(
   25965              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25966              : (TARGET_AVX512F
   25967              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   25968              :    && (GET_MODE_NUNITS (V16SImode)
   25969              :        < GET_MODE_PRECISION (SImode))
   25970              :    && ix86_pre_reload_split ()) && 
   25971              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25972              : ( 1)))
   25973              :             return NULL;
   25974              :           return gen_split_1403 (insn, operands);
   25975              : 
   25976              :         case 22:
   25977              :           if (!((
   25978              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25979              : (TARGET_AVX512F
   25980              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   25981              :    && (GET_MODE_NUNITS (V16HFmode)
   25982              :        < GET_MODE_PRECISION (SImode))
   25983              :    && ix86_pre_reload_split ()) && 
   25984              : #line 321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25985              : (TARGET_AVX512FP16 && TARGET_AVX512VL)) && 
   25986              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25987              : ( 1)))
   25988              :             return NULL;
   25989              :           return gen_split_1424 (insn, operands);
   25990              : 
   25991              :         case 23:
   25992              :           if (!(
   25993              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25994              : (TARGET_AVX512F
   25995              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   25996              :    && (GET_MODE_NUNITS (V16SFmode)
   25997              :        < GET_MODE_PRECISION (SImode))
   25998              :    && ix86_pre_reload_split ()) && 
   25999              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26000              : ( 1)))
   26001              :             return NULL;
   26002              :           return gen_split_1430 (insn, operands);
   26003              : 
   26004              :         case 24:
   26005              :           if (!((
   26006              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26007              : (TARGET_AVX512BW
   26008              :   && (GET_MODE_NUNITS (V16QImode)
   26009              :       < GET_MODE_PRECISION (SImode))
   26010              :   && ix86_pre_reload_split ()) && 
   26011              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26012              : (TARGET_AVX512VL)) && 
   26013              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26014              : ( 1)))
   26015              :             return NULL;
   26016              :           return gen_split_1466 (insn, operands);
   26017              : 
   26018              :         case 25:
   26019              :           if (!((
   26020              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26021              : (TARGET_AVX512BW
   26022              :   && (GET_MODE_NUNITS (V16HImode)
   26023              :       < GET_MODE_PRECISION (SImode))
   26024              :   && ix86_pre_reload_split ()) && 
   26025              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26026              : (TARGET_AVX512VL)) && 
   26027              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26028              : ( 1)))
   26029              :             return NULL;
   26030              :           return gen_split_1475 (insn, operands);
   26031              : 
   26032              :         case 26:
   26033              :           if (!((
   26034              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26035              : (TARGET_AVX512F
   26036              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26037              :    && (GET_MODE_NUNITS (V8SImode)
   26038              :        < GET_MODE_PRECISION (SImode))
   26039              :    && ix86_pre_reload_split ()) && 
   26040              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26041              : (TARGET_AVX512VL)) && 
   26042              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26043              : ( 1)))
   26044              :             return NULL;
   26045              :           return gen_split_1406 (insn, operands);
   26046              : 
   26047              :         case 27:
   26048              :           if (!((
   26049              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26050              : (TARGET_AVX512F
   26051              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26052              :    && (GET_MODE_NUNITS (V4SImode)
   26053              :        < GET_MODE_PRECISION (SImode))
   26054              :    && ix86_pre_reload_split ()) && 
   26055              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26056              : (TARGET_AVX512VL)) && 
   26057              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26058              : ( 1)))
   26059              :             return NULL;
   26060              :           return gen_split_1409 (insn, operands);
   26061              : 
   26062              :         case 28:
   26063              :           if (!(
   26064              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26065              : (TARGET_AVX512F
   26066              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26067              :    && (GET_MODE_NUNITS (V8DImode)
   26068              :        < GET_MODE_PRECISION (SImode))
   26069              :    && ix86_pre_reload_split ()) && 
   26070              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26071              : ( 1)))
   26072              :             return NULL;
   26073              :           return gen_split_1412 (insn, operands);
   26074              : 
   26075              :         case 29:
   26076              :           if (!((
   26077              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26078              : (TARGET_AVX512F
   26079              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26080              :    && (GET_MODE_NUNITS (V4DImode)
   26081              :        < GET_MODE_PRECISION (SImode))
   26082              :    && ix86_pre_reload_split ()) && 
   26083              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26084              : (TARGET_AVX512VL)) && 
   26085              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26086              : ( 1)))
   26087              :             return NULL;
   26088              :           return gen_split_1415 (insn, operands);
   26089              : 
   26090              :         case 30:
   26091              :           if (!((
   26092              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26093              : (TARGET_AVX512F
   26094              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26095              :    && (GET_MODE_NUNITS (V2DImode)
   26096              :        < GET_MODE_PRECISION (SImode))
   26097              :    && ix86_pre_reload_split ()) && 
   26098              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26099              : (TARGET_AVX512VL)) && 
   26100              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26101              : ( 1)))
   26102              :             return NULL;
   26103              :           return gen_split_1418 (insn, operands);
   26104              : 
   26105              :         case 31:
   26106              :           if (!((
   26107              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26108              : (TARGET_AVX512F
   26109              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26110              :    && (GET_MODE_NUNITS (V8HFmode)
   26111              :        < GET_MODE_PRECISION (SImode))
   26112              :    && ix86_pre_reload_split ()) && 
   26113              : #line 322 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26114              : (TARGET_AVX512FP16 && TARGET_AVX512VL)) && 
   26115              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26116              : ( 1)))
   26117              :             return NULL;
   26118              :           return gen_split_1427 (insn, operands);
   26119              : 
   26120              :         case 32:
   26121              :           if (!((
   26122              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26123              : (TARGET_AVX512F
   26124              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26125              :    && (GET_MODE_NUNITS (V8SFmode)
   26126              :        < GET_MODE_PRECISION (SImode))
   26127              :    && ix86_pre_reload_split ()) && 
   26128              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26129              : (TARGET_AVX512VL)) && 
   26130              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26131              : ( 1)))
   26132              :             return NULL;
   26133              :           return gen_split_1433 (insn, operands);
   26134              : 
   26135              :         case 33:
   26136              :           if (!((
   26137              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26138              : (TARGET_AVX512F
   26139              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26140              :    && (GET_MODE_NUNITS (V4SFmode)
   26141              :        < GET_MODE_PRECISION (SImode))
   26142              :    && ix86_pre_reload_split ()) && 
   26143              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26144              : (TARGET_AVX512VL)) && 
   26145              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26146              : ( 1)))
   26147              :             return NULL;
   26148              :           return gen_split_1436 (insn, operands);
   26149              : 
   26150              :         case 34:
   26151              :           if (!(
   26152              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26153              : (TARGET_AVX512F
   26154              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26155              :    && (GET_MODE_NUNITS (V8DFmode)
   26156              :        < GET_MODE_PRECISION (SImode))
   26157              :    && ix86_pre_reload_split ()) && 
   26158              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26159              : ( 1)))
   26160              :             return NULL;
   26161              :           return gen_split_1439 (insn, operands);
   26162              : 
   26163              :         case 35:
   26164              :           if (!((
   26165              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26166              : (TARGET_AVX512F
   26167              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26168              :    && (GET_MODE_NUNITS (V4DFmode)
   26169              :        < GET_MODE_PRECISION (SImode))
   26170              :    && ix86_pre_reload_split ()) && 
   26171              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26172              : (TARGET_AVX512VL)) && 
   26173              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26174              : ( 1)))
   26175              :             return NULL;
   26176              :           return gen_split_1442 (insn, operands);
   26177              : 
   26178              :         case 36:
   26179              :           if (!((
   26180              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26181              : (TARGET_AVX512F
   26182              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26183              :    && (GET_MODE_NUNITS (V2DFmode)
   26184              :        < GET_MODE_PRECISION (SImode))
   26185              :    && ix86_pre_reload_split ()) && 
   26186              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26187              : (TARGET_AVX512VL)) && 
   26188              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26189              : ( 1)))
   26190              :             return NULL;
   26191              :           return gen_split_1445 (insn, operands);
   26192              : 
   26193              :         case 37:
   26194              :           if (!((
   26195              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26196              : (TARGET_AVX512BW
   26197              :   && (GET_MODE_NUNITS (V8HImode)
   26198              :       < GET_MODE_PRECISION (SImode))
   26199              :   && ix86_pre_reload_split ()) && 
   26200              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26201              : (TARGET_AVX512VL)) && 
   26202              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26203              : ( 1)))
   26204              :             return NULL;
   26205              :           return gen_split_1478 (insn, operands);
   26206              : 
   26207              :         case 38:
   26208              :           if (!((
   26209              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26210              : (TARGET_AVX512F
   26211              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26212              :    && (GET_MODE_NUNITS (V32HFmode)
   26213              :        < GET_MODE_PRECISION (SImode))
   26214              :    && ix86_pre_reload_split ()) && 
   26215              : #line 320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26216              : (TARGET_AVX512FP16)) && 
   26217              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26218              : ( 1)))
   26219              :             return NULL;
   26220              :           return gen_split_1421 (insn, operands);
   26221              : 
   26222              :         case 39:
   26223              :           if (!((
   26224              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26225              : (TARGET_AVX512BW
   26226              :   && (GET_MODE_NUNITS (V32QImode)
   26227              :       < GET_MODE_PRECISION (SImode))
   26228              :   && ix86_pre_reload_split ()) && 
   26229              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26230              : (TARGET_AVX512VL)) && 
   26231              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26232              : ( 1)))
   26233              :             return NULL;
   26234              :           return gen_split_1469 (insn, operands);
   26235              : 
   26236              :         case 40:
   26237              :           if (!(
   26238              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26239              : (TARGET_AVX512BW
   26240              :   && (GET_MODE_NUNITS (V32HImode)
   26241              :       < GET_MODE_PRECISION (SImode))
   26242              :   && ix86_pre_reload_split ()) && 
   26243              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26244              : ( 1)))
   26245              :             return NULL;
   26246              :           return gen_split_1472 (insn, operands);
   26247              : 
   26248              :         case 41:
   26249              :           if (!(
   26250              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26251              : (TARGET_AVX512BW
   26252              :   && (GET_MODE_NUNITS (V64QImode)
   26253              :       < GET_MODE_PRECISION (SImode))
   26254              :   && ix86_pre_reload_split ()) && 
   26255              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26256              : ( 1)))
   26257              :             return NULL;
   26258              :           return gen_split_1463 (insn, operands);
   26259              : 
   26260              :         case 42:
   26261              :           if (!(
   26262              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26263              : (TARGET_AVX512F
   26264              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   26265              :    && (GET_MODE_NUNITS (V16SImode)
   26266              :        < GET_MODE_PRECISION (DImode))
   26267              :    && ix86_pre_reload_split ()) && 
   26268              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26269              : ( 1)))
   26270              :             return NULL;
   26271              :           return gen_split_1404 (insn, operands);
   26272              : 
   26273              :         case 43:
   26274              :           if (!((
   26275              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26276              : (TARGET_AVX512F
   26277              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   26278              :    && (GET_MODE_NUNITS (V16HFmode)
   26279              :        < GET_MODE_PRECISION (DImode))
   26280              :    && ix86_pre_reload_split ()) && 
   26281              : #line 321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26282              : (TARGET_AVX512FP16 && TARGET_AVX512VL)) && 
   26283              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26284              : ( 1)))
   26285              :             return NULL;
   26286              :           return gen_split_1425 (insn, operands);
   26287              : 
   26288              :         case 44:
   26289              :           if (!(
   26290              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26291              : (TARGET_AVX512F
   26292              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   26293              :    && (GET_MODE_NUNITS (V16SFmode)
   26294              :        < GET_MODE_PRECISION (DImode))
   26295              :    && ix86_pre_reload_split ()) && 
   26296              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26297              : ( 1)))
   26298              :             return NULL;
   26299              :           return gen_split_1431 (insn, operands);
   26300              : 
   26301              :         case 45:
   26302              :           if (!((
   26303              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26304              : (TARGET_AVX512BW
   26305              :   && (GET_MODE_NUNITS (V16QImode)
   26306              :       < GET_MODE_PRECISION (DImode))
   26307              :   && ix86_pre_reload_split ()) && 
   26308              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26309              : (TARGET_AVX512VL)) && 
   26310              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26311              : ( 1)))
   26312              :             return NULL;
   26313              :           return gen_split_1467 (insn, operands);
   26314              : 
   26315              :         case 46:
   26316              :           if (!((
   26317              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26318              : (TARGET_AVX512BW
   26319              :   && (GET_MODE_NUNITS (V16HImode)
   26320              :       < GET_MODE_PRECISION (DImode))
   26321              :   && ix86_pre_reload_split ()) && 
   26322              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26323              : (TARGET_AVX512VL)) && 
   26324              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26325              : ( 1)))
   26326              :             return NULL;
   26327              :           return gen_split_1476 (insn, operands);
   26328              : 
   26329              :         case 47:
   26330              :           if (!((
   26331              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26332              : (TARGET_AVX512F
   26333              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   26334              :    && (GET_MODE_NUNITS (V8SImode)
   26335              :        < GET_MODE_PRECISION (DImode))
   26336              :    && ix86_pre_reload_split ()) && 
   26337              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26338              : (TARGET_AVX512VL)) && 
   26339              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26340              : ( 1)))
   26341              :             return NULL;
   26342              :           return gen_split_1407 (insn, operands);
   26343              : 
   26344              :         case 48:
   26345              :           if (!((
   26346              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26347              : (TARGET_AVX512F
   26348              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   26349              :    && (GET_MODE_NUNITS (V4SImode)
   26350              :        < GET_MODE_PRECISION (DImode))
   26351              :    && ix86_pre_reload_split ()) && 
   26352              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26353              : (TARGET_AVX512VL)) && 
   26354              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26355              : ( 1)))
   26356              :             return NULL;
   26357              :           return gen_split_1410 (insn, operands);
   26358              : 
   26359              :         case 49:
   26360              :           if (!(
   26361              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26362              : (TARGET_AVX512F
   26363              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   26364              :    && (GET_MODE_NUNITS (V8DImode)
   26365              :        < GET_MODE_PRECISION (DImode))
   26366              :    && ix86_pre_reload_split ()) && 
   26367              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26368              : ( 1)))
   26369              :             return NULL;
   26370              :           return gen_split_1413 (insn, operands);
   26371              : 
   26372              :         case 50:
   26373              :           if (!((
   26374              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26375              : (TARGET_AVX512F
   26376              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   26377              :    && (GET_MODE_NUNITS (V4DImode)
   26378              :        < GET_MODE_PRECISION (DImode))
   26379              :    && ix86_pre_reload_split ()) && 
   26380              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26381              : (TARGET_AVX512VL)) && 
   26382              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26383              : ( 1)))
   26384              :             return NULL;
   26385              :           return gen_split_1416 (insn, operands);
   26386              : 
   26387              :         case 51:
   26388              :           if (!((
   26389              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26390              : (TARGET_AVX512F
   26391              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   26392              :    && (GET_MODE_NUNITS (V2DImode)
   26393              :        < GET_MODE_PRECISION (DImode))
   26394              :    && ix86_pre_reload_split ()) && 
   26395              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26396              : (TARGET_AVX512VL)) && 
   26397              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26398              : ( 1)))
   26399              :             return NULL;
   26400              :           return gen_split_1419 (insn, operands);
   26401              : 
   26402              :         case 52:
   26403              :           if (!((
   26404              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26405              : (TARGET_AVX512F
   26406              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   26407              :    && (GET_MODE_NUNITS (V8HFmode)
   26408              :        < GET_MODE_PRECISION (DImode))
   26409              :    && ix86_pre_reload_split ()) && 
   26410              : #line 322 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26411              : (TARGET_AVX512FP16 && TARGET_AVX512VL)) && 
   26412              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26413              : ( 1)))
   26414              :             return NULL;
   26415              :           return gen_split_1428 (insn, operands);
   26416              : 
   26417              :         case 53:
   26418              :           if (!((
   26419              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26420              : (TARGET_AVX512F
   26421              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   26422              :    && (GET_MODE_NUNITS (V8SFmode)
   26423              :        < GET_MODE_PRECISION (DImode))
   26424              :    && ix86_pre_reload_split ()) && 
   26425              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26426              : (TARGET_AVX512VL)) && 
   26427              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26428              : ( 1)))
   26429              :             return NULL;
   26430              :           return gen_split_1434 (insn, operands);
   26431              : 
   26432              :         case 54:
   26433              :           if (!((
   26434              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26435              : (TARGET_AVX512F
   26436              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   26437              :    && (GET_MODE_NUNITS (V4SFmode)
   26438              :        < GET_MODE_PRECISION (DImode))
   26439              :    && ix86_pre_reload_split ()) && 
   26440              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26441              : (TARGET_AVX512VL)) && 
   26442              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26443              : ( 1)))
   26444              :             return NULL;
   26445              :           return gen_split_1437 (insn, operands);
   26446              : 
   26447              :         case 55:
   26448              :           if (!(
   26449              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26450              : (TARGET_AVX512F
   26451              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   26452              :    && (GET_MODE_NUNITS (V8DFmode)
   26453              :        < GET_MODE_PRECISION (DImode))
   26454              :    && ix86_pre_reload_split ()) && 
   26455              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26456              : ( 1)))
   26457              :             return NULL;
   26458              :           return gen_split_1440 (insn, operands);
   26459              : 
   26460              :         case 56:
   26461              :           if (!((
   26462              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26463              : (TARGET_AVX512F
   26464              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   26465              :    && (GET_MODE_NUNITS (V4DFmode)
   26466              :        < GET_MODE_PRECISION (DImode))
   26467              :    && ix86_pre_reload_split ()) && 
   26468              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26469              : (TARGET_AVX512VL)) && 
   26470              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26471              : ( 1)))
   26472              :             return NULL;
   26473              :           return gen_split_1443 (insn, operands);
   26474              : 
   26475              :         case 57:
   26476              :           if (!((
   26477              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26478              : (TARGET_AVX512F
   26479              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   26480              :    && (GET_MODE_NUNITS (V2DFmode)
   26481              :        < GET_MODE_PRECISION (DImode))
   26482              :    && ix86_pre_reload_split ()) && 
   26483              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26484              : (TARGET_AVX512VL)) && 
   26485              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26486              : ( 1)))
   26487              :             return NULL;
   26488              :           return gen_split_1446 (insn, operands);
   26489              : 
   26490              :         case 58:
   26491              :           if (!((
   26492              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26493              : (TARGET_AVX512BW
   26494              :   && (GET_MODE_NUNITS (V8HImode)
   26495              :       < GET_MODE_PRECISION (DImode))
   26496              :   && ix86_pre_reload_split ()) && 
   26497              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26498              : (TARGET_AVX512VL)) && 
   26499              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26500              : ( 1)))
   26501              :             return NULL;
   26502              :           return gen_split_1479 (insn, operands);
   26503              : 
   26504              :         case 59:
   26505              :           if (!((
   26506              : #line 4662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26507              : (TARGET_AVX512F
   26508              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   26509              :    && (GET_MODE_NUNITS (V32HFmode)
   26510              :        < GET_MODE_PRECISION (DImode))
   26511              :    && ix86_pre_reload_split ()) && 
   26512              : #line 320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26513              : (TARGET_AVX512FP16)) && 
   26514              : #line 4668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26515              : ( 1)))
   26516              :             return NULL;
   26517              :           return gen_split_1422 (insn, operands);
   26518              : 
   26519              :         case 60:
   26520              :           if (!((
   26521              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26522              : (TARGET_AVX512BW
   26523              :   && (GET_MODE_NUNITS (V32QImode)
   26524              :       < GET_MODE_PRECISION (DImode))
   26525              :   && ix86_pre_reload_split ()) && 
   26526              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26527              : (TARGET_AVX512VL)) && 
   26528              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26529              : ( 1)))
   26530              :             return NULL;
   26531              :           return gen_split_1470 (insn, operands);
   26532              : 
   26533              :         case 61:
   26534              :           if (!(
   26535              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26536              : (TARGET_AVX512BW
   26537              :   && (GET_MODE_NUNITS (V32HImode)
   26538              :       < GET_MODE_PRECISION (DImode))
   26539              :   && ix86_pre_reload_split ()) && 
   26540              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26541              : ( 1)))
   26542              :             return NULL;
   26543              :           return gen_split_1473 (insn, operands);
   26544              : 
   26545              :         case 62:
   26546              :           if (!(
   26547              : #line 4853 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26548              : (TARGET_AVX512BW
   26549              :   && (GET_MODE_NUNITS (V64QImode)
   26550              :       < GET_MODE_PRECISION (DImode))
   26551              :   && ix86_pre_reload_split ()) && 
   26552              : #line 4858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26553              : ( 1)))
   26554              :             return NULL;
   26555              :           return gen_split_1464 (insn, operands);
   26556              : 
   26557              :         case 63:
   26558              :           if (!(
   26559              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26560              : (TARGET_AVX512BW
   26561              :    && ix86_pre_reload_split ()
   26562              :    && (GET_MODE_NUNITS (V64QImode)
   26563              :       < GET_MODE_PRECISION (HImode))
   26564              :    && ix86_pre_reload_split ()) && 
   26565              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26566              : ( 1)))
   26567              :             return NULL;
   26568              :           return gen_split_1516 (insn, operands);
   26569              : 
   26570              :         case 64:
   26571              :           if (!((
   26572              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26573              : (TARGET_AVX512BW
   26574              :    && ix86_pre_reload_split ()
   26575              :    && (GET_MODE_NUNITS (V16QImode)
   26576              :       < GET_MODE_PRECISION (HImode))
   26577              :    && ix86_pre_reload_split ()) && 
   26578              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26579              : (TARGET_AVX512VL)) && 
   26580              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26581              : ( 1)))
   26582              :             return NULL;
   26583              :           return gen_split_1519 (insn, operands);
   26584              : 
   26585              :         case 65:
   26586              :           if (!((
   26587              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26588              : (TARGET_AVX512BW
   26589              :    && ix86_pre_reload_split ()
   26590              :    && (GET_MODE_NUNITS (V16HImode)
   26591              :       < GET_MODE_PRECISION (HImode))
   26592              :    && ix86_pre_reload_split ()) && 
   26593              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26594              : (TARGET_AVX512VL)) && 
   26595              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26596              : ( 1)))
   26597              :             return NULL;
   26598              :           return gen_split_1528 (insn, operands);
   26599              : 
   26600              :         case 66:
   26601              :           if (!(
   26602              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26603              : (TARGET_AVX512F
   26604              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   26605              :    && (GET_MODE_NUNITS (V16SImode)
   26606              :        < GET_MODE_PRECISION (HImode))
   26607              :    && ix86_pre_reload_split ()) && 
   26608              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26609              : ( 1)))
   26610              :             return NULL;
   26611              :           return gen_split_1534 (insn, operands);
   26612              : 
   26613              :         case 67:
   26614              :           if (!((
   26615              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26616              : (TARGET_AVX512BW
   26617              :    && ix86_pre_reload_split ()
   26618              :    && (GET_MODE_NUNITS (V32QImode)
   26619              :       < GET_MODE_PRECISION (HImode))
   26620              :    && ix86_pre_reload_split ()) && 
   26621              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26622              : (TARGET_AVX512VL)) && 
   26623              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26624              : ( 1)))
   26625              :             return NULL;
   26626              :           return gen_split_1522 (insn, operands);
   26627              : 
   26628              :         case 68:
   26629              :           if (!(
   26630              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26631              : (TARGET_AVX512BW
   26632              :    && ix86_pre_reload_split ()
   26633              :    && (GET_MODE_NUNITS (V32HImode)
   26634              :       < GET_MODE_PRECISION (HImode))
   26635              :    && ix86_pre_reload_split ()) && 
   26636              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26637              : ( 1)))
   26638              :             return NULL;
   26639              :           return gen_split_1525 (insn, operands);
   26640              : 
   26641              :         case 69:
   26642              :           if (!((
   26643              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26644              : (TARGET_AVX512BW
   26645              :    && ix86_pre_reload_split ()
   26646              :    && (GET_MODE_NUNITS (V8HImode)
   26647              :       < GET_MODE_PRECISION (HImode))
   26648              :    && ix86_pre_reload_split ()) && 
   26649              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26650              : (TARGET_AVX512VL)) && 
   26651              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26652              : ( 1)))
   26653              :             return NULL;
   26654              :           return gen_split_1531 (insn, operands);
   26655              : 
   26656              :         case 70:
   26657              :           if (!((
   26658              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26659              : (TARGET_AVX512F
   26660              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   26661              :    && (GET_MODE_NUNITS (V8SImode)
   26662              :        < GET_MODE_PRECISION (HImode))
   26663              :    && ix86_pre_reload_split ()) && 
   26664              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26665              : (TARGET_AVX512VL)) && 
   26666              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26667              : ( 1)))
   26668              :             return NULL;
   26669              :           return gen_split_1535 (insn, operands);
   26670              : 
   26671              :         case 71:
   26672              :           if (!((
   26673              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26674              : (TARGET_AVX512F
   26675              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   26676              :    && (GET_MODE_NUNITS (V4SImode)
   26677              :        < GET_MODE_PRECISION (HImode))
   26678              :    && ix86_pre_reload_split ()) && 
   26679              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26680              : (TARGET_AVX512VL)) && 
   26681              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26682              : ( 1)))
   26683              :             return NULL;
   26684              :           return gen_split_1536 (insn, operands);
   26685              : 
   26686              :         case 72:
   26687              :           if (!(
   26688              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26689              : (TARGET_AVX512F
   26690              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   26691              :    && (GET_MODE_NUNITS (V8DImode)
   26692              :        < GET_MODE_PRECISION (HImode))
   26693              :    && ix86_pre_reload_split ()) && 
   26694              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26695              : ( 1)))
   26696              :             return NULL;
   26697              :           return gen_split_1537 (insn, operands);
   26698              : 
   26699              :         case 73:
   26700              :           if (!((
   26701              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26702              : (TARGET_AVX512F
   26703              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   26704              :    && (GET_MODE_NUNITS (V4DImode)
   26705              :        < GET_MODE_PRECISION (HImode))
   26706              :    && ix86_pre_reload_split ()) && 
   26707              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26708              : (TARGET_AVX512VL)) && 
   26709              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26710              : ( 1)))
   26711              :             return NULL;
   26712              :           return gen_split_1538 (insn, operands);
   26713              : 
   26714              :         case 74:
   26715              :           if (!((
   26716              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26717              : (TARGET_AVX512F
   26718              :    && (!VALID_MASK_AVX512BW_MODE (HImode) || TARGET_AVX512BW)
   26719              :    && (GET_MODE_NUNITS (V2DImode)
   26720              :        < GET_MODE_PRECISION (HImode))
   26721              :    && ix86_pre_reload_split ()) && 
   26722              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26723              : (TARGET_AVX512VL)) && 
   26724              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26725              : ( 1)))
   26726              :             return NULL;
   26727              :           return gen_split_1539 (insn, operands);
   26728              : 
   26729              :         case 75:
   26730              :           if (!(
   26731              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26732              : (TARGET_AVX512BW
   26733              :    && ix86_pre_reload_split ()
   26734              :    && (GET_MODE_NUNITS (V64QImode)
   26735              :       < GET_MODE_PRECISION (SImode))
   26736              :    && ix86_pre_reload_split ()) && 
   26737              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26738              : ( 1)))
   26739              :             return NULL;
   26740              :           return gen_split_1517 (insn, operands);
   26741              : 
   26742              :         case 76:
   26743              :           if (!((
   26744              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26745              : (TARGET_AVX512BW
   26746              :    && ix86_pre_reload_split ()
   26747              :    && (GET_MODE_NUNITS (V16QImode)
   26748              :       < GET_MODE_PRECISION (SImode))
   26749              :    && ix86_pre_reload_split ()) && 
   26750              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26751              : (TARGET_AVX512VL)) && 
   26752              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26753              : ( 1)))
   26754              :             return NULL;
   26755              :           return gen_split_1520 (insn, operands);
   26756              : 
   26757              :         case 77:
   26758              :           if (!((
   26759              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26760              : (TARGET_AVX512BW
   26761              :    && ix86_pre_reload_split ()
   26762              :    && (GET_MODE_NUNITS (V16HImode)
   26763              :       < GET_MODE_PRECISION (SImode))
   26764              :    && ix86_pre_reload_split ()) && 
   26765              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26766              : (TARGET_AVX512VL)) && 
   26767              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26768              : ( 1)))
   26769              :             return NULL;
   26770              :           return gen_split_1529 (insn, operands);
   26771              : 
   26772              :         case 78:
   26773              :           if (!(
   26774              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26775              : (TARGET_AVX512F
   26776              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26777              :    && (GET_MODE_NUNITS (V16SImode)
   26778              :        < GET_MODE_PRECISION (SImode))
   26779              :    && ix86_pre_reload_split ()) && 
   26780              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26781              : ( 1)))
   26782              :             return NULL;
   26783              :           return gen_split_1540 (insn, operands);
   26784              : 
   26785              :         case 79:
   26786              :           if (!((
   26787              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26788              : (TARGET_AVX512BW
   26789              :    && ix86_pre_reload_split ()
   26790              :    && (GET_MODE_NUNITS (V32QImode)
   26791              :       < GET_MODE_PRECISION (SImode))
   26792              :    && ix86_pre_reload_split ()) && 
   26793              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26794              : (TARGET_AVX512VL)) && 
   26795              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26796              : ( 1)))
   26797              :             return NULL;
   26798              :           return gen_split_1523 (insn, operands);
   26799              : 
   26800              :         case 80:
   26801              :           if (!(
   26802              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26803              : (TARGET_AVX512BW
   26804              :    && ix86_pre_reload_split ()
   26805              :    && (GET_MODE_NUNITS (V32HImode)
   26806              :       < GET_MODE_PRECISION (SImode))
   26807              :    && ix86_pre_reload_split ()) && 
   26808              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26809              : ( 1)))
   26810              :             return NULL;
   26811              :           return gen_split_1526 (insn, operands);
   26812              : 
   26813              :         case 81:
   26814              :           if (!((
   26815              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26816              : (TARGET_AVX512BW
   26817              :    && ix86_pre_reload_split ()
   26818              :    && (GET_MODE_NUNITS (V8HImode)
   26819              :       < GET_MODE_PRECISION (SImode))
   26820              :    && ix86_pre_reload_split ()) && 
   26821              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26822              : (TARGET_AVX512VL)) && 
   26823              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26824              : ( 1)))
   26825              :             return NULL;
   26826              :           return gen_split_1532 (insn, operands);
   26827              : 
   26828              :         case 82:
   26829              :           if (!((
   26830              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26831              : (TARGET_AVX512F
   26832              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26833              :    && (GET_MODE_NUNITS (V8SImode)
   26834              :        < GET_MODE_PRECISION (SImode))
   26835              :    && ix86_pre_reload_split ()) && 
   26836              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26837              : (TARGET_AVX512VL)) && 
   26838              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26839              : ( 1)))
   26840              :             return NULL;
   26841              :           return gen_split_1541 (insn, operands);
   26842              : 
   26843              :         case 83:
   26844              :           if (!((
   26845              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26846              : (TARGET_AVX512F
   26847              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26848              :    && (GET_MODE_NUNITS (V4SImode)
   26849              :        < GET_MODE_PRECISION (SImode))
   26850              :    && ix86_pre_reload_split ()) && 
   26851              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26852              : (TARGET_AVX512VL)) && 
   26853              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26854              : ( 1)))
   26855              :             return NULL;
   26856              :           return gen_split_1542 (insn, operands);
   26857              : 
   26858              :         case 84:
   26859              :           if (!(
   26860              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26861              : (TARGET_AVX512F
   26862              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26863              :    && (GET_MODE_NUNITS (V8DImode)
   26864              :        < GET_MODE_PRECISION (SImode))
   26865              :    && ix86_pre_reload_split ()) && 
   26866              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26867              : ( 1)))
   26868              :             return NULL;
   26869              :           return gen_split_1543 (insn, operands);
   26870              : 
   26871              :         case 85:
   26872              :           if (!((
   26873              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26874              : (TARGET_AVX512F
   26875              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26876              :    && (GET_MODE_NUNITS (V4DImode)
   26877              :        < GET_MODE_PRECISION (SImode))
   26878              :    && ix86_pre_reload_split ()) && 
   26879              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26880              : (TARGET_AVX512VL)) && 
   26881              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26882              : ( 1)))
   26883              :             return NULL;
   26884              :           return gen_split_1544 (insn, operands);
   26885              : 
   26886              :         case 86:
   26887              :           if (!((
   26888              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26889              : (TARGET_AVX512F
   26890              :    && (!VALID_MASK_AVX512BW_MODE (SImode) || TARGET_AVX512BW)
   26891              :    && (GET_MODE_NUNITS (V2DImode)
   26892              :        < GET_MODE_PRECISION (SImode))
   26893              :    && ix86_pre_reload_split ()) && 
   26894              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26895              : (TARGET_AVX512VL)) && 
   26896              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26897              : ( 1)))
   26898              :             return NULL;
   26899              :           return gen_split_1545 (insn, operands);
   26900              : 
   26901              :         case 87:
   26902              :           if (!(
   26903              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26904              : (TARGET_AVX512BW
   26905              :    && ix86_pre_reload_split ()
   26906              :    && (GET_MODE_NUNITS (V64QImode)
   26907              :       < GET_MODE_PRECISION (DImode))
   26908              :    && ix86_pre_reload_split ()) && 
   26909              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26910              : ( 1)))
   26911              :             return NULL;
   26912              :           return gen_split_1518 (insn, operands);
   26913              : 
   26914              :         case 88:
   26915              :           if (!((
   26916              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26917              : (TARGET_AVX512BW
   26918              :    && ix86_pre_reload_split ()
   26919              :    && (GET_MODE_NUNITS (V16QImode)
   26920              :       < GET_MODE_PRECISION (DImode))
   26921              :    && ix86_pre_reload_split ()) && 
   26922              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26923              : (TARGET_AVX512VL)) && 
   26924              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26925              : ( 1)))
   26926              :             return NULL;
   26927              :           return gen_split_1521 (insn, operands);
   26928              : 
   26929              :         case 89:
   26930              :           if (!((
   26931              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26932              : (TARGET_AVX512BW
   26933              :    && ix86_pre_reload_split ()
   26934              :    && (GET_MODE_NUNITS (V16HImode)
   26935              :       < GET_MODE_PRECISION (DImode))
   26936              :    && ix86_pre_reload_split ()) && 
   26937              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26938              : (TARGET_AVX512VL)) && 
   26939              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26940              : ( 1)))
   26941              :             return NULL;
   26942              :           return gen_split_1530 (insn, operands);
   26943              : 
   26944              :         case 90:
   26945              :           if (!(
   26946              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26947              : (TARGET_AVX512F
   26948              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   26949              :    && (GET_MODE_NUNITS (V16SImode)
   26950              :        < GET_MODE_PRECISION (DImode))
   26951              :    && ix86_pre_reload_split ()) && 
   26952              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26953              : ( 1)))
   26954              :             return NULL;
   26955              :           return gen_split_1546 (insn, operands);
   26956              : 
   26957              :         case 91:
   26958              :           if (!((
   26959              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26960              : (TARGET_AVX512BW
   26961              :    && ix86_pre_reload_split ()
   26962              :    && (GET_MODE_NUNITS (V32QImode)
   26963              :       < GET_MODE_PRECISION (DImode))
   26964              :    && ix86_pre_reload_split ()) && 
   26965              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26966              : (TARGET_AVX512VL)) && 
   26967              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26968              : ( 1)))
   26969              :             return NULL;
   26970              :           return gen_split_1524 (insn, operands);
   26971              : 
   26972              :         case 92:
   26973              :           if (!(
   26974              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26975              : (TARGET_AVX512BW
   26976              :    && ix86_pre_reload_split ()
   26977              :    && (GET_MODE_NUNITS (V32HImode)
   26978              :       < GET_MODE_PRECISION (DImode))
   26979              :    && ix86_pre_reload_split ()) && 
   26980              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26981              : ( 1)))
   26982              :             return NULL;
   26983              :           return gen_split_1527 (insn, operands);
   26984              : 
   26985              :         case 93:
   26986              :           if (!((
   26987              : #line 4988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26988              : (TARGET_AVX512BW
   26989              :    && ix86_pre_reload_split ()
   26990              :    && (GET_MODE_NUNITS (V8HImode)
   26991              :       < GET_MODE_PRECISION (DImode))
   26992              :    && ix86_pre_reload_split ()) && 
   26993              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26994              : (TARGET_AVX512VL)) && 
   26995              : #line 4994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26996              : ( 1)))
   26997              :             return NULL;
   26998              :           return gen_split_1533 (insn, operands);
   26999              : 
   27000              :         case 94:
   27001              :           if (!((
   27002              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27003              : (TARGET_AVX512F
   27004              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   27005              :    && (GET_MODE_NUNITS (V8SImode)
   27006              :        < GET_MODE_PRECISION (DImode))
   27007              :    && ix86_pre_reload_split ()) && 
   27008              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27009              : (TARGET_AVX512VL)) && 
   27010              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27011              : ( 1)))
   27012              :             return NULL;
   27013              :           return gen_split_1547 (insn, operands);
   27014              : 
   27015              :         case 95:
   27016              :           if (!((
   27017              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27018              : (TARGET_AVX512F
   27019              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   27020              :    && (GET_MODE_NUNITS (V4SImode)
   27021              :        < GET_MODE_PRECISION (DImode))
   27022              :    && ix86_pre_reload_split ()) && 
   27023              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27024              : (TARGET_AVX512VL)) && 
   27025              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27026              : ( 1)))
   27027              :             return NULL;
   27028              :           return gen_split_1548 (insn, operands);
   27029              : 
   27030              :         case 96:
   27031              :           if (!(
   27032              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27033              : (TARGET_AVX512F
   27034              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   27035              :    && (GET_MODE_NUNITS (V8DImode)
   27036              :        < GET_MODE_PRECISION (DImode))
   27037              :    && ix86_pre_reload_split ()) && 
   27038              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27039              : ( 1)))
   27040              :             return NULL;
   27041              :           return gen_split_1549 (insn, operands);
   27042              : 
   27043              :         case 97:
   27044              :           if (!((
   27045              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27046              : (TARGET_AVX512F
   27047              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   27048              :    && (GET_MODE_NUNITS (V4DImode)
   27049              :        < GET_MODE_PRECISION (DImode))
   27050              :    && ix86_pre_reload_split ()) && 
   27051              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27052              : (TARGET_AVX512VL)) && 
   27053              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27054              : ( 1)))
   27055              :             return NULL;
   27056              :           return gen_split_1550 (insn, operands);
   27057              : 
   27058              :         case 98:
   27059              :           if (!((
   27060              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27061              : (TARGET_AVX512F
   27062              :    && (!VALID_MASK_AVX512BW_MODE (DImode) || TARGET_AVX512BW)
   27063              :    && (GET_MODE_NUNITS (V2DImode)
   27064              :        < GET_MODE_PRECISION (DImode))
   27065              :    && ix86_pre_reload_split ()) && 
   27066              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27067              : (TARGET_AVX512VL)) && 
   27068              : #line 5084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27069              : ( 1)))
   27070              :             return NULL;
   27071              :           return gen_split_1551 (insn, operands);
   27072              : 
   27073              :         default:
   27074              :           return NULL;
   27075              :         }
   27076              : 
   27077              :     default:
   27078              :       return NULL;
   27079              :     }
   27080              : }
   27081              : 
   27082              :  rtx_insn *
   27083              : split_68 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   27084              : {
   27085              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   27086              :   rtx x2, x3, x4;
   27087              :   rtx_insn *res ATTRIBUTE_UNUSED;
   27088              :   x2 = XEXP (x1, 1);
   27089              :   x3 = XEXP (x2, 0);
   27090              :   x4 = XEXP (x3, 0);
   27091              :   switch (GET_CODE (x4))
   27092              :     {
   27093              :     case REG:
   27094              :     case SUBREG:
   27095              :     case MEM:
   27096              :     case NOT:
   27097              :       switch (pattern541 (x2))
   27098              :         {
   27099              :         case 0:
   27100              :           if (!((
   27101              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27102              : ((64 == 64 || TARGET_AVX512VL
   27103              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27104              :    && ix86_pre_reload_split ()
   27105              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27106              :                     STRIP_UNARY (operands[4]))
   27107              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27108              :                        STRIP_UNARY (operands[4]))
   27109              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27110              :                        STRIP_UNARY (operands[3]))
   27111              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27112              :                        STRIP_UNARY (operands[3])))) && 
   27113              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27114              : (TARGET_AVX512F)) && 
   27115              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27116              : ( 1)))
   27117              :             return NULL;
   27118              :           return gen_split_2083 (insn, operands);
   27119              : 
   27120              :         case 1:
   27121              :           if (!((
   27122              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27123              : ((32 == 64 || TARGET_AVX512VL
   27124              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27125              :    && ix86_pre_reload_split ()
   27126              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27127              :                     STRIP_UNARY (operands[4]))
   27128              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27129              :                        STRIP_UNARY (operands[4]))
   27130              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27131              :                        STRIP_UNARY (operands[3]))
   27132              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27133              :                        STRIP_UNARY (operands[3])))) && 
   27134              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27135              : (TARGET_AVX)) && 
   27136              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27137              : ( 1)))
   27138              :             return NULL;
   27139              :           return gen_split_2110 (insn, operands);
   27140              : 
   27141              :         case 2:
   27142              :           if (!(
   27143              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27144              : ((16 == 64 || TARGET_AVX512VL
   27145              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27146              :    && ix86_pre_reload_split ()
   27147              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27148              :                     STRIP_UNARY (operands[4]))
   27149              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27150              :                        STRIP_UNARY (operands[4]))
   27151              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27152              :                        STRIP_UNARY (operands[3]))
   27153              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27154              :                        STRIP_UNARY (operands[3])))) && 
   27155              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27156              : ( 1)))
   27157              :             return NULL;
   27158              :           return gen_split_2137 (insn, operands);
   27159              : 
   27160              :         case 3:
   27161              :           if (!((
   27162              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27163              : ((64 == 64 || TARGET_AVX512VL
   27164              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27165              :    && ix86_pre_reload_split ()
   27166              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27167              :                     STRIP_UNARY (operands[4]))
   27168              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27169              :                        STRIP_UNARY (operands[4]))
   27170              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27171              :                        STRIP_UNARY (operands[3]))
   27172              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27173              :                        STRIP_UNARY (operands[3])))) && 
   27174              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27175              : (TARGET_AVX512F)) && 
   27176              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27177              : ( 1)))
   27178              :             return NULL;
   27179              :           return gen_split_2164 (insn, operands);
   27180              : 
   27181              :         case 4:
   27182              :           if (!((
   27183              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27184              : ((32 == 64 || TARGET_AVX512VL
   27185              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27186              :    && ix86_pre_reload_split ()
   27187              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27188              :                     STRIP_UNARY (operands[4]))
   27189              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27190              :                        STRIP_UNARY (operands[4]))
   27191              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27192              :                        STRIP_UNARY (operands[3]))
   27193              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27194              :                        STRIP_UNARY (operands[3])))) && 
   27195              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27196              : (TARGET_AVX)) && 
   27197              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27198              : ( 1)))
   27199              :             return NULL;
   27200              :           return gen_split_2191 (insn, operands);
   27201              : 
   27202              :         case 5:
   27203              :           if (!(
   27204              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27205              : ((16 == 64 || TARGET_AVX512VL
   27206              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27207              :    && ix86_pre_reload_split ()
   27208              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27209              :                     STRIP_UNARY (operands[4]))
   27210              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27211              :                        STRIP_UNARY (operands[4]))
   27212              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27213              :                        STRIP_UNARY (operands[3]))
   27214              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27215              :                        STRIP_UNARY (operands[3])))) && 
   27216              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27217              : ( 1)))
   27218              :             return NULL;
   27219              :           return gen_split_2218 (insn, operands);
   27220              : 
   27221              :         case 6:
   27222              :           if (!((
   27223              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27224              : ((64 == 64 || TARGET_AVX512VL
   27225              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27226              :    && ix86_pre_reload_split ()
   27227              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27228              :                     STRIP_UNARY (operands[4]))
   27229              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27230              :                        STRIP_UNARY (operands[4]))
   27231              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27232              :                        STRIP_UNARY (operands[3]))
   27233              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27234              :                        STRIP_UNARY (operands[3])))) && 
   27235              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27236              : (TARGET_AVX512F)) && 
   27237              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27238              : ( 1)))
   27239              :             return NULL;
   27240              :           return gen_split_2245 (insn, operands);
   27241              : 
   27242              :         case 7:
   27243              :           if (!((
   27244              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27245              : ((32 == 64 || TARGET_AVX512VL
   27246              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27247              :    && ix86_pre_reload_split ()
   27248              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27249              :                     STRIP_UNARY (operands[4]))
   27250              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27251              :                        STRIP_UNARY (operands[4]))
   27252              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27253              :                        STRIP_UNARY (operands[3]))
   27254              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27255              :                        STRIP_UNARY (operands[3])))) && 
   27256              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27257              : (TARGET_AVX)) && 
   27258              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27259              : ( 1)))
   27260              :             return NULL;
   27261              :           return gen_split_2272 (insn, operands);
   27262              : 
   27263              :         case 8:
   27264              :           if (!(
   27265              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27266              : ((16 == 64 || TARGET_AVX512VL
   27267              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27268              :    && ix86_pre_reload_split ()
   27269              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27270              :                     STRIP_UNARY (operands[4]))
   27271              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27272              :                        STRIP_UNARY (operands[4]))
   27273              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27274              :                        STRIP_UNARY (operands[3]))
   27275              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27276              :                        STRIP_UNARY (operands[3])))) && 
   27277              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27278              : ( 1)))
   27279              :             return NULL;
   27280              :           return gen_split_2299 (insn, operands);
   27281              : 
   27282              :         case 9:
   27283              :           if (!((
   27284              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27285              : ((64 == 64 || TARGET_AVX512VL
   27286              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27287              :    && ix86_pre_reload_split ()
   27288              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27289              :                     STRIP_UNARY (operands[4]))
   27290              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27291              :                        STRIP_UNARY (operands[4]))
   27292              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27293              :                        STRIP_UNARY (operands[3]))
   27294              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27295              :                        STRIP_UNARY (operands[3])))) && 
   27296              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27297              : (TARGET_AVX512F)) && 
   27298              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27299              : ( 1)))
   27300              :             return NULL;
   27301              :           return gen_split_2326 (insn, operands);
   27302              : 
   27303              :         case 10:
   27304              :           if (!((
   27305              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27306              : ((32 == 64 || TARGET_AVX512VL
   27307              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27308              :    && ix86_pre_reload_split ()
   27309              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27310              :                     STRIP_UNARY (operands[4]))
   27311              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27312              :                        STRIP_UNARY (operands[4]))
   27313              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27314              :                        STRIP_UNARY (operands[3]))
   27315              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27316              :                        STRIP_UNARY (operands[3])))) && 
   27317              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27318              : (TARGET_AVX)) && 
   27319              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27320              : ( 1)))
   27321              :             return NULL;
   27322              :           return gen_split_2353 (insn, operands);
   27323              : 
   27324              :         case 11:
   27325              :           if (!((
   27326              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27327              : ((16 == 64 || TARGET_AVX512VL
   27328              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27329              :    && ix86_pre_reload_split ()
   27330              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27331              :                     STRIP_UNARY (operands[4]))
   27332              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27333              :                        STRIP_UNARY (operands[4]))
   27334              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27335              :                        STRIP_UNARY (operands[3]))
   27336              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27337              :                        STRIP_UNARY (operands[3])))) && 
   27338              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27339              : (TARGET_SSE2)) && 
   27340              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27341              : ( 1)))
   27342              :             return NULL;
   27343              :           return gen_split_2380 (insn, operands);
   27344              : 
   27345              :         case 12:
   27346              :           if (!((
   27347              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27348              : ((64 == 64 || TARGET_AVX512VL
   27349              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27350              :    && ix86_pre_reload_split ()
   27351              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27352              :                     STRIP_UNARY (operands[4]))
   27353              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27354              :                        STRIP_UNARY (operands[4]))
   27355              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27356              :                        STRIP_UNARY (operands[3]))
   27357              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27358              :                        STRIP_UNARY (operands[3])))) && 
   27359              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27360              : (TARGET_AVX512F)) && 
   27361              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27362              : ( 1)))
   27363              :             return NULL;
   27364              :           return gen_split_2086 (insn, operands);
   27365              : 
   27366              :         case 13:
   27367              :           if (!((
   27368              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27369              : ((32 == 64 || TARGET_AVX512VL
   27370              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27371              :    && ix86_pre_reload_split ()
   27372              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27373              :                     STRIP_UNARY (operands[4]))
   27374              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27375              :                        STRIP_UNARY (operands[4]))
   27376              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27377              :                        STRIP_UNARY (operands[3]))
   27378              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27379              :                        STRIP_UNARY (operands[3])))) && 
   27380              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27381              : (TARGET_AVX)) && 
   27382              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27383              : ( 1)))
   27384              :             return NULL;
   27385              :           return gen_split_2113 (insn, operands);
   27386              : 
   27387              :         case 14:
   27388              :           if (!(
   27389              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27390              : ((16 == 64 || TARGET_AVX512VL
   27391              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27392              :    && ix86_pre_reload_split ()
   27393              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27394              :                     STRIP_UNARY (operands[4]))
   27395              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27396              :                        STRIP_UNARY (operands[4]))
   27397              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27398              :                        STRIP_UNARY (operands[3]))
   27399              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27400              :                        STRIP_UNARY (operands[3])))) && 
   27401              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27402              : ( 1)))
   27403              :             return NULL;
   27404              :           return gen_split_2140 (insn, operands);
   27405              : 
   27406              :         case 15:
   27407              :           if (!((
   27408              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27409              : ((64 == 64 || TARGET_AVX512VL
   27410              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27411              :    && ix86_pre_reload_split ()
   27412              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27413              :                     STRIP_UNARY (operands[4]))
   27414              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27415              :                        STRIP_UNARY (operands[4]))
   27416              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27417              :                        STRIP_UNARY (operands[3]))
   27418              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27419              :                        STRIP_UNARY (operands[3])))) && 
   27420              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27421              : (TARGET_AVX512F)) && 
   27422              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27423              : ( 1)))
   27424              :             return NULL;
   27425              :           return gen_split_2167 (insn, operands);
   27426              : 
   27427              :         case 16:
   27428              :           if (!((
   27429              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27430              : ((32 == 64 || TARGET_AVX512VL
   27431              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27432              :    && ix86_pre_reload_split ()
   27433              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27434              :                     STRIP_UNARY (operands[4]))
   27435              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27436              :                        STRIP_UNARY (operands[4]))
   27437              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27438              :                        STRIP_UNARY (operands[3]))
   27439              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27440              :                        STRIP_UNARY (operands[3])))) && 
   27441              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27442              : (TARGET_AVX)) && 
   27443              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27444              : ( 1)))
   27445              :             return NULL;
   27446              :           return gen_split_2194 (insn, operands);
   27447              : 
   27448              :         case 17:
   27449              :           if (!(
   27450              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27451              : ((16 == 64 || TARGET_AVX512VL
   27452              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27453              :    && ix86_pre_reload_split ()
   27454              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27455              :                     STRIP_UNARY (operands[4]))
   27456              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27457              :                        STRIP_UNARY (operands[4]))
   27458              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27459              :                        STRIP_UNARY (operands[3]))
   27460              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27461              :                        STRIP_UNARY (operands[3])))) && 
   27462              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27463              : ( 1)))
   27464              :             return NULL;
   27465              :           return gen_split_2221 (insn, operands);
   27466              : 
   27467              :         case 18:
   27468              :           if (!((
   27469              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27470              : ((64 == 64 || TARGET_AVX512VL
   27471              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27472              :    && ix86_pre_reload_split ()
   27473              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27474              :                     STRIP_UNARY (operands[4]))
   27475              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27476              :                        STRIP_UNARY (operands[4]))
   27477              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27478              :                        STRIP_UNARY (operands[3]))
   27479              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27480              :                        STRIP_UNARY (operands[3])))) && 
   27481              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27482              : (TARGET_AVX512F)) && 
   27483              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27484              : ( 1)))
   27485              :             return NULL;
   27486              :           return gen_split_2248 (insn, operands);
   27487              : 
   27488              :         case 19:
   27489              :           if (!((
   27490              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27491              : ((32 == 64 || TARGET_AVX512VL
   27492              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27493              :    && ix86_pre_reload_split ()
   27494              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27495              :                     STRIP_UNARY (operands[4]))
   27496              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27497              :                        STRIP_UNARY (operands[4]))
   27498              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27499              :                        STRIP_UNARY (operands[3]))
   27500              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27501              :                        STRIP_UNARY (operands[3])))) && 
   27502              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27503              : (TARGET_AVX)) && 
   27504              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27505              : ( 1)))
   27506              :             return NULL;
   27507              :           return gen_split_2275 (insn, operands);
   27508              : 
   27509              :         case 20:
   27510              :           if (!(
   27511              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27512              : ((16 == 64 || TARGET_AVX512VL
   27513              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27514              :    && ix86_pre_reload_split ()
   27515              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27516              :                     STRIP_UNARY (operands[4]))
   27517              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27518              :                        STRIP_UNARY (operands[4]))
   27519              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27520              :                        STRIP_UNARY (operands[3]))
   27521              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27522              :                        STRIP_UNARY (operands[3])))) && 
   27523              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27524              : ( 1)))
   27525              :             return NULL;
   27526              :           return gen_split_2302 (insn, operands);
   27527              : 
   27528              :         case 21:
   27529              :           if (!((
   27530              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27531              : ((64 == 64 || TARGET_AVX512VL
   27532              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27533              :    && ix86_pre_reload_split ()
   27534              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27535              :                     STRIP_UNARY (operands[4]))
   27536              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27537              :                        STRIP_UNARY (operands[4]))
   27538              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27539              :                        STRIP_UNARY (operands[3]))
   27540              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27541              :                        STRIP_UNARY (operands[3])))) && 
   27542              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27543              : (TARGET_AVX512F)) && 
   27544              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27545              : ( 1)))
   27546              :             return NULL;
   27547              :           return gen_split_2329 (insn, operands);
   27548              : 
   27549              :         case 22:
   27550              :           if (!((
   27551              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27552              : ((32 == 64 || TARGET_AVX512VL
   27553              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27554              :    && ix86_pre_reload_split ()
   27555              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27556              :                     STRIP_UNARY (operands[4]))
   27557              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27558              :                        STRIP_UNARY (operands[4]))
   27559              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27560              :                        STRIP_UNARY (operands[3]))
   27561              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27562              :                        STRIP_UNARY (operands[3])))) && 
   27563              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27564              : (TARGET_AVX)) && 
   27565              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27566              : ( 1)))
   27567              :             return NULL;
   27568              :           return gen_split_2356 (insn, operands);
   27569              : 
   27570              :         case 23:
   27571              :           if (!((
   27572              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27573              : ((16 == 64 || TARGET_AVX512VL
   27574              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27575              :    && ix86_pre_reload_split ()
   27576              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27577              :                     STRIP_UNARY (operands[4]))
   27578              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27579              :                        STRIP_UNARY (operands[4]))
   27580              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27581              :                        STRIP_UNARY (operands[3]))
   27582              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27583              :                        STRIP_UNARY (operands[3])))) && 
   27584              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27585              : (TARGET_SSE2)) && 
   27586              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27587              : ( 1)))
   27588              :             return NULL;
   27589              :           return gen_split_2383 (insn, operands);
   27590              : 
   27591              :         case 24:
   27592              :           if (!((
   27593              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27594              : ((64 == 64 || TARGET_AVX512VL
   27595              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27596              :    && ix86_pre_reload_split ()
   27597              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27598              :                     STRIP_UNARY (operands[4]))
   27599              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27600              :                        STRIP_UNARY (operands[4]))
   27601              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27602              :                        STRIP_UNARY (operands[3]))
   27603              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27604              :                        STRIP_UNARY (operands[3])))) && 
   27605              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27606              : (TARGET_AVX512F)) && 
   27607              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27608              : ( 1)))
   27609              :             return NULL;
   27610              :           return gen_split_2089 (insn, operands);
   27611              : 
   27612              :         case 25:
   27613              :           if (!((
   27614              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27615              : ((32 == 64 || TARGET_AVX512VL
   27616              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27617              :    && ix86_pre_reload_split ()
   27618              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27619              :                     STRIP_UNARY (operands[4]))
   27620              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27621              :                        STRIP_UNARY (operands[4]))
   27622              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27623              :                        STRIP_UNARY (operands[3]))
   27624              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27625              :                        STRIP_UNARY (operands[3])))) && 
   27626              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27627              : (TARGET_AVX)) && 
   27628              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27629              : ( 1)))
   27630              :             return NULL;
   27631              :           return gen_split_2116 (insn, operands);
   27632              : 
   27633              :         case 26:
   27634              :           if (!(
   27635              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27636              : ((16 == 64 || TARGET_AVX512VL
   27637              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27638              :    && ix86_pre_reload_split ()
   27639              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27640              :                     STRIP_UNARY (operands[4]))
   27641              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27642              :                        STRIP_UNARY (operands[4]))
   27643              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27644              :                        STRIP_UNARY (operands[3]))
   27645              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27646              :                        STRIP_UNARY (operands[3])))) && 
   27647              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27648              : ( 1)))
   27649              :             return NULL;
   27650              :           return gen_split_2143 (insn, operands);
   27651              : 
   27652              :         case 27:
   27653              :           if (!((
   27654              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27655              : ((64 == 64 || TARGET_AVX512VL
   27656              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27657              :    && ix86_pre_reload_split ()
   27658              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27659              :                     STRIP_UNARY (operands[4]))
   27660              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27661              :                        STRIP_UNARY (operands[4]))
   27662              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27663              :                        STRIP_UNARY (operands[3]))
   27664              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27665              :                        STRIP_UNARY (operands[3])))) && 
   27666              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27667              : (TARGET_AVX512F)) && 
   27668              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27669              : ( 1)))
   27670              :             return NULL;
   27671              :           return gen_split_2170 (insn, operands);
   27672              : 
   27673              :         case 28:
   27674              :           if (!((
   27675              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27676              : ((32 == 64 || TARGET_AVX512VL
   27677              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27678              :    && ix86_pre_reload_split ()
   27679              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27680              :                     STRIP_UNARY (operands[4]))
   27681              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27682              :                        STRIP_UNARY (operands[4]))
   27683              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27684              :                        STRIP_UNARY (operands[3]))
   27685              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27686              :                        STRIP_UNARY (operands[3])))) && 
   27687              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27688              : (TARGET_AVX)) && 
   27689              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27690              : ( 1)))
   27691              :             return NULL;
   27692              :           return gen_split_2197 (insn, operands);
   27693              : 
   27694              :         case 29:
   27695              :           if (!(
   27696              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27697              : ((16 == 64 || TARGET_AVX512VL
   27698              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27699              :    && ix86_pre_reload_split ()
   27700              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27701              :                     STRIP_UNARY (operands[4]))
   27702              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27703              :                        STRIP_UNARY (operands[4]))
   27704              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27705              :                        STRIP_UNARY (operands[3]))
   27706              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27707              :                        STRIP_UNARY (operands[3])))) && 
   27708              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27709              : ( 1)))
   27710              :             return NULL;
   27711              :           return gen_split_2224 (insn, operands);
   27712              : 
   27713              :         case 30:
   27714              :           if (!((
   27715              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27716              : ((64 == 64 || TARGET_AVX512VL
   27717              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27718              :    && ix86_pre_reload_split ()
   27719              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27720              :                     STRIP_UNARY (operands[4]))
   27721              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27722              :                        STRIP_UNARY (operands[4]))
   27723              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27724              :                        STRIP_UNARY (operands[3]))
   27725              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27726              :                        STRIP_UNARY (operands[3])))) && 
   27727              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27728              : (TARGET_AVX512F)) && 
   27729              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27730              : ( 1)))
   27731              :             return NULL;
   27732              :           return gen_split_2251 (insn, operands);
   27733              : 
   27734              :         case 31:
   27735              :           if (!((
   27736              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27737              : ((32 == 64 || TARGET_AVX512VL
   27738              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27739              :    && ix86_pre_reload_split ()
   27740              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27741              :                     STRIP_UNARY (operands[4]))
   27742              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27743              :                        STRIP_UNARY (operands[4]))
   27744              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27745              :                        STRIP_UNARY (operands[3]))
   27746              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27747              :                        STRIP_UNARY (operands[3])))) && 
   27748              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27749              : (TARGET_AVX)) && 
   27750              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27751              : ( 1)))
   27752              :             return NULL;
   27753              :           return gen_split_2278 (insn, operands);
   27754              : 
   27755              :         case 32:
   27756              :           if (!(
   27757              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27758              : ((16 == 64 || TARGET_AVX512VL
   27759              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27760              :    && ix86_pre_reload_split ()
   27761              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27762              :                     STRIP_UNARY (operands[4]))
   27763              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27764              :                        STRIP_UNARY (operands[4]))
   27765              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27766              :                        STRIP_UNARY (operands[3]))
   27767              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27768              :                        STRIP_UNARY (operands[3])))) && 
   27769              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27770              : ( 1)))
   27771              :             return NULL;
   27772              :           return gen_split_2305 (insn, operands);
   27773              : 
   27774              :         case 33:
   27775              :           if (!((
   27776              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27777              : ((64 == 64 || TARGET_AVX512VL
   27778              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27779              :    && ix86_pre_reload_split ()
   27780              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27781              :                     STRIP_UNARY (operands[4]))
   27782              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27783              :                        STRIP_UNARY (operands[4]))
   27784              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27785              :                        STRIP_UNARY (operands[3]))
   27786              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27787              :                        STRIP_UNARY (operands[3])))) && 
   27788              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27789              : (TARGET_AVX512F)) && 
   27790              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27791              : ( 1)))
   27792              :             return NULL;
   27793              :           return gen_split_2332 (insn, operands);
   27794              : 
   27795              :         case 34:
   27796              :           if (!((
   27797              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27798              : ((32 == 64 || TARGET_AVX512VL
   27799              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27800              :    && ix86_pre_reload_split ()
   27801              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27802              :                     STRIP_UNARY (operands[4]))
   27803              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27804              :                        STRIP_UNARY (operands[4]))
   27805              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27806              :                        STRIP_UNARY (operands[3]))
   27807              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27808              :                        STRIP_UNARY (operands[3])))) && 
   27809              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27810              : (TARGET_AVX)) && 
   27811              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27812              : ( 1)))
   27813              :             return NULL;
   27814              :           return gen_split_2359 (insn, operands);
   27815              : 
   27816              :         case 35:
   27817              :           if (!((
   27818              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27819              : ((16 == 64 || TARGET_AVX512VL
   27820              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27821              :    && ix86_pre_reload_split ()
   27822              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27823              :                     STRIP_UNARY (operands[4]))
   27824              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27825              :                        STRIP_UNARY (operands[4]))
   27826              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27827              :                        STRIP_UNARY (operands[3]))
   27828              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27829              :                        STRIP_UNARY (operands[3])))) && 
   27830              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27831              : (TARGET_SSE2)) && 
   27832              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27833              : ( 1)))
   27834              :             return NULL;
   27835              :           return gen_split_2386 (insn, operands);
   27836              : 
   27837              :         case 36:
   27838              :           if (!((
   27839              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27840              : ((64 == 64 || TARGET_AVX512VL
   27841              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27842              :    && ix86_pre_reload_split ()) && 
   27843              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27844              : (TARGET_AVX512F)) && 
   27845              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27846              : ( 1)))
   27847              :             return NULL;
   27848              :           return gen_split_3151 (insn, operands);
   27849              : 
   27850              :         case 37:
   27851              :           if (!((
   27852              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27853              : ((32 == 64 || TARGET_AVX512VL
   27854              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27855              :    && ix86_pre_reload_split ()) && 
   27856              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27857              : (TARGET_AVX)) && 
   27858              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27859              : ( 1)))
   27860              :             return NULL;
   27861              :           return gen_split_3160 (insn, operands);
   27862              : 
   27863              :         case 38:
   27864              :           if (!(
   27865              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27866              : ((16 == 64 || TARGET_AVX512VL
   27867              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27868              :    && ix86_pre_reload_split ()) && 
   27869              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27870              : ( 1)))
   27871              :             return NULL;
   27872              :           return gen_split_3169 (insn, operands);
   27873              : 
   27874              :         case 39:
   27875              :           if (!((
   27876              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27877              : ((64 == 64 || TARGET_AVX512VL
   27878              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27879              :    && ix86_pre_reload_split ()) && 
   27880              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27881              : (TARGET_AVX512F)) && 
   27882              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27883              : ( 1)))
   27884              :             return NULL;
   27885              :           return gen_split_3178 (insn, operands);
   27886              : 
   27887              :         case 40:
   27888              :           if (!((
   27889              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27890              : ((32 == 64 || TARGET_AVX512VL
   27891              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27892              :    && ix86_pre_reload_split ()) && 
   27893              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27894              : (TARGET_AVX)) && 
   27895              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27896              : ( 1)))
   27897              :             return NULL;
   27898              :           return gen_split_3187 (insn, operands);
   27899              : 
   27900              :         case 41:
   27901              :           if (!(
   27902              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27903              : ((16 == 64 || TARGET_AVX512VL
   27904              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27905              :    && ix86_pre_reload_split ()) && 
   27906              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27907              : ( 1)))
   27908              :             return NULL;
   27909              :           return gen_split_3196 (insn, operands);
   27910              : 
   27911              :         case 42:
   27912              :           if (!((
   27913              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27914              : ((64 == 64 || TARGET_AVX512VL
   27915              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27916              :    && ix86_pre_reload_split ()) && 
   27917              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27918              : (TARGET_AVX512F)) && 
   27919              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27920              : ( 1)))
   27921              :             return NULL;
   27922              :           return gen_split_3205 (insn, operands);
   27923              : 
   27924              :         case 43:
   27925              :           if (!((
   27926              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27927              : ((32 == 64 || TARGET_AVX512VL
   27928              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27929              :    && ix86_pre_reload_split ()) && 
   27930              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27931              : (TARGET_AVX)) && 
   27932              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27933              : ( 1)))
   27934              :             return NULL;
   27935              :           return gen_split_3214 (insn, operands);
   27936              : 
   27937              :         case 44:
   27938              :           if (!(
   27939              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27940              : ((16 == 64 || TARGET_AVX512VL
   27941              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27942              :    && ix86_pre_reload_split ()) && 
   27943              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27944              : ( 1)))
   27945              :             return NULL;
   27946              :           return gen_split_3223 (insn, operands);
   27947              : 
   27948              :         case 45:
   27949              :           if (!((
   27950              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27951              : ((64 == 64 || TARGET_AVX512VL
   27952              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27953              :    && ix86_pre_reload_split ()) && 
   27954              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27955              : (TARGET_AVX512F)) && 
   27956              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27957              : ( 1)))
   27958              :             return NULL;
   27959              :           return gen_split_3232 (insn, operands);
   27960              : 
   27961              :         case 46:
   27962              :           if (!((
   27963              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27964              : ((32 == 64 || TARGET_AVX512VL
   27965              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27966              :    && ix86_pre_reload_split ()) && 
   27967              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27968              : (TARGET_AVX)) && 
   27969              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27970              : ( 1)))
   27971              :             return NULL;
   27972              :           return gen_split_3241 (insn, operands);
   27973              : 
   27974              :         case 47:
   27975              :           if (!((
   27976              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27977              : ((16 == 64 || TARGET_AVX512VL
   27978              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27979              :    && ix86_pre_reload_split ()) && 
   27980              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27981              : (TARGET_SSE2)) && 
   27982              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27983              : ( 1)))
   27984              :             return NULL;
   27985              :           return gen_split_3250 (insn, operands);
   27986              : 
   27987              :         default:
   27988              :           return NULL;
   27989              :         }
   27990              : 
   27991              :     case AND:
   27992              :       switch (pattern542 (x2))
   27993              :         {
   27994              :         case 0:
   27995              :           if (!((
   27996              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27997              : ((64 == 64 || TARGET_AVX512VL
   27998              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27999              :    && ix86_pre_reload_split ()
   28000              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28001              :                     STRIP_UNARY (operands[4]))
   28002              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28003              :                        STRIP_UNARY (operands[4]))
   28004              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28005              :                        STRIP_UNARY (operands[3]))
   28006              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28007              :                        STRIP_UNARY (operands[3])))) && 
   28008              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28009              : (TARGET_AVX512F)) && 
   28010              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28011              : ( 1)))
   28012              :             return NULL;
   28013              :           return gen_split_2731 (insn, operands);
   28014              : 
   28015              :         case 1:
   28016              :           if (!((
   28017              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28018              : ((32 == 64 || TARGET_AVX512VL
   28019              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28020              :    && ix86_pre_reload_split ()
   28021              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28022              :                     STRIP_UNARY (operands[4]))
   28023              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28024              :                        STRIP_UNARY (operands[4]))
   28025              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28026              :                        STRIP_UNARY (operands[3]))
   28027              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28028              :                        STRIP_UNARY (operands[3])))) && 
   28029              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28030              : (TARGET_AVX)) && 
   28031              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28032              : ( 1)))
   28033              :             return NULL;
   28034              :           return gen_split_2758 (insn, operands);
   28035              : 
   28036              :         case 2:
   28037              :           if (!(
   28038              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28039              : ((16 == 64 || TARGET_AVX512VL
   28040              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28041              :    && ix86_pre_reload_split ()
   28042              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28043              :                     STRIP_UNARY (operands[4]))
   28044              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28045              :                        STRIP_UNARY (operands[4]))
   28046              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28047              :                        STRIP_UNARY (operands[3]))
   28048              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28049              :                        STRIP_UNARY (operands[3])))) && 
   28050              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28051              : ( 1)))
   28052              :             return NULL;
   28053              :           return gen_split_2785 (insn, operands);
   28054              : 
   28055              :         case 3:
   28056              :           if (!((
   28057              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28058              : ((64 == 64 || TARGET_AVX512VL
   28059              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28060              :    && ix86_pre_reload_split ()
   28061              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28062              :                     STRIP_UNARY (operands[4]))
   28063              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28064              :                        STRIP_UNARY (operands[4]))
   28065              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28066              :                        STRIP_UNARY (operands[3]))
   28067              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28068              :                        STRIP_UNARY (operands[3])))) && 
   28069              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28070              : (TARGET_AVX512F)) && 
   28071              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28072              : ( 1)))
   28073              :             return NULL;
   28074              :           return gen_split_2812 (insn, operands);
   28075              : 
   28076              :         case 4:
   28077              :           if (!((
   28078              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28079              : ((32 == 64 || TARGET_AVX512VL
   28080              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28081              :    && ix86_pre_reload_split ()
   28082              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28083              :                     STRIP_UNARY (operands[4]))
   28084              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28085              :                        STRIP_UNARY (operands[4]))
   28086              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28087              :                        STRIP_UNARY (operands[3]))
   28088              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28089              :                        STRIP_UNARY (operands[3])))) && 
   28090              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28091              : (TARGET_AVX)) && 
   28092              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28093              : ( 1)))
   28094              :             return NULL;
   28095              :           return gen_split_2839 (insn, operands);
   28096              : 
   28097              :         case 5:
   28098              :           if (!(
   28099              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28100              : ((16 == 64 || TARGET_AVX512VL
   28101              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28102              :    && ix86_pre_reload_split ()
   28103              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28104              :                     STRIP_UNARY (operands[4]))
   28105              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28106              :                        STRIP_UNARY (operands[4]))
   28107              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28108              :                        STRIP_UNARY (operands[3]))
   28109              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28110              :                        STRIP_UNARY (operands[3])))) && 
   28111              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28112              : ( 1)))
   28113              :             return NULL;
   28114              :           return gen_split_2866 (insn, operands);
   28115              : 
   28116              :         case 6:
   28117              :           if (!((
   28118              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28119              : ((64 == 64 || TARGET_AVX512VL
   28120              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28121              :    && ix86_pre_reload_split ()
   28122              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28123              :                     STRIP_UNARY (operands[4]))
   28124              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28125              :                        STRIP_UNARY (operands[4]))
   28126              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28127              :                        STRIP_UNARY (operands[3]))
   28128              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28129              :                        STRIP_UNARY (operands[3])))) && 
   28130              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28131              : (TARGET_AVX512F)) && 
   28132              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28133              : ( 1)))
   28134              :             return NULL;
   28135              :           return gen_split_2893 (insn, operands);
   28136              : 
   28137              :         case 7:
   28138              :           if (!((
   28139              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28140              : ((32 == 64 || TARGET_AVX512VL
   28141              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28142              :    && ix86_pre_reload_split ()
   28143              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28144              :                     STRIP_UNARY (operands[4]))
   28145              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28146              :                        STRIP_UNARY (operands[4]))
   28147              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28148              :                        STRIP_UNARY (operands[3]))
   28149              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28150              :                        STRIP_UNARY (operands[3])))) && 
   28151              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28152              : (TARGET_AVX)) && 
   28153              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28154              : ( 1)))
   28155              :             return NULL;
   28156              :           return gen_split_2920 (insn, operands);
   28157              : 
   28158              :         case 8:
   28159              :           if (!(
   28160              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28161              : ((16 == 64 || TARGET_AVX512VL
   28162              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28163              :    && ix86_pre_reload_split ()
   28164              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28165              :                     STRIP_UNARY (operands[4]))
   28166              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28167              :                        STRIP_UNARY (operands[4]))
   28168              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28169              :                        STRIP_UNARY (operands[3]))
   28170              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28171              :                        STRIP_UNARY (operands[3])))) && 
   28172              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28173              : ( 1)))
   28174              :             return NULL;
   28175              :           return gen_split_2947 (insn, operands);
   28176              : 
   28177              :         case 9:
   28178              :           if (!((
   28179              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28180              : ((64 == 64 || TARGET_AVX512VL
   28181              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28182              :    && ix86_pre_reload_split ()
   28183              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28184              :                     STRIP_UNARY (operands[4]))
   28185              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28186              :                        STRIP_UNARY (operands[4]))
   28187              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28188              :                        STRIP_UNARY (operands[3]))
   28189              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28190              :                        STRIP_UNARY (operands[3])))) && 
   28191              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28192              : (TARGET_AVX512F)) && 
   28193              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28194              : ( 1)))
   28195              :             return NULL;
   28196              :           return gen_split_2974 (insn, operands);
   28197              : 
   28198              :         case 10:
   28199              :           if (!((
   28200              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28201              : ((32 == 64 || TARGET_AVX512VL
   28202              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28203              :    && ix86_pre_reload_split ()
   28204              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28205              :                     STRIP_UNARY (operands[4]))
   28206              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28207              :                        STRIP_UNARY (operands[4]))
   28208              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28209              :                        STRIP_UNARY (operands[3]))
   28210              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28211              :                        STRIP_UNARY (operands[3])))) && 
   28212              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28213              : (TARGET_AVX)) && 
   28214              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28215              : ( 1)))
   28216              :             return NULL;
   28217              :           return gen_split_3001 (insn, operands);
   28218              : 
   28219              :         case 11:
   28220              :           if (!((
   28221              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28222              : ((16 == 64 || TARGET_AVX512VL
   28223              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28224              :    && ix86_pre_reload_split ()
   28225              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28226              :                     STRIP_UNARY (operands[4]))
   28227              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28228              :                        STRIP_UNARY (operands[4]))
   28229              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28230              :                        STRIP_UNARY (operands[3]))
   28231              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28232              :                        STRIP_UNARY (operands[3])))) && 
   28233              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28234              : (TARGET_SSE2)) && 
   28235              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28236              : ( 1)))
   28237              :             return NULL;
   28238              :           return gen_split_3028 (insn, operands);
   28239              : 
   28240              :         default:
   28241              :           return NULL;
   28242              :         }
   28243              : 
   28244              :     case IOR:
   28245              :       switch (pattern542 (x2))
   28246              :         {
   28247              :         case 0:
   28248              :           if (!((
   28249              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28250              : ((64 == 64 || TARGET_AVX512VL
   28251              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28252              :    && ix86_pre_reload_split ()
   28253              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28254              :                     STRIP_UNARY (operands[4]))
   28255              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28256              :                        STRIP_UNARY (operands[4]))
   28257              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28258              :                        STRIP_UNARY (operands[3]))
   28259              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28260              :                        STRIP_UNARY (operands[3])))) && 
   28261              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28262              : (TARGET_AVX512F)) && 
   28263              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28264              : ( 1)))
   28265              :             return NULL;
   28266              :           return gen_split_2734 (insn, operands);
   28267              : 
   28268              :         case 1:
   28269              :           if (!((
   28270              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28271              : ((32 == 64 || TARGET_AVX512VL
   28272              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28273              :    && ix86_pre_reload_split ()
   28274              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28275              :                     STRIP_UNARY (operands[4]))
   28276              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28277              :                        STRIP_UNARY (operands[4]))
   28278              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28279              :                        STRIP_UNARY (operands[3]))
   28280              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28281              :                        STRIP_UNARY (operands[3])))) && 
   28282              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28283              : (TARGET_AVX)) && 
   28284              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28285              : ( 1)))
   28286              :             return NULL;
   28287              :           return gen_split_2761 (insn, operands);
   28288              : 
   28289              :         case 2:
   28290              :           if (!(
   28291              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28292              : ((16 == 64 || TARGET_AVX512VL
   28293              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28294              :    && ix86_pre_reload_split ()
   28295              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28296              :                     STRIP_UNARY (operands[4]))
   28297              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28298              :                        STRIP_UNARY (operands[4]))
   28299              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28300              :                        STRIP_UNARY (operands[3]))
   28301              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28302              :                        STRIP_UNARY (operands[3])))) && 
   28303              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28304              : ( 1)))
   28305              :             return NULL;
   28306              :           return gen_split_2788 (insn, operands);
   28307              : 
   28308              :         case 3:
   28309              :           if (!((
   28310              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28311              : ((64 == 64 || TARGET_AVX512VL
   28312              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28313              :    && ix86_pre_reload_split ()
   28314              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28315              :                     STRIP_UNARY (operands[4]))
   28316              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28317              :                        STRIP_UNARY (operands[4]))
   28318              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28319              :                        STRIP_UNARY (operands[3]))
   28320              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28321              :                        STRIP_UNARY (operands[3])))) && 
   28322              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28323              : (TARGET_AVX512F)) && 
   28324              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28325              : ( 1)))
   28326              :             return NULL;
   28327              :           return gen_split_2815 (insn, operands);
   28328              : 
   28329              :         case 4:
   28330              :           if (!((
   28331              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28332              : ((32 == 64 || TARGET_AVX512VL
   28333              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28334              :    && ix86_pre_reload_split ()
   28335              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28336              :                     STRIP_UNARY (operands[4]))
   28337              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28338              :                        STRIP_UNARY (operands[4]))
   28339              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28340              :                        STRIP_UNARY (operands[3]))
   28341              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28342              :                        STRIP_UNARY (operands[3])))) && 
   28343              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28344              : (TARGET_AVX)) && 
   28345              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28346              : ( 1)))
   28347              :             return NULL;
   28348              :           return gen_split_2842 (insn, operands);
   28349              : 
   28350              :         case 5:
   28351              :           if (!(
   28352              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28353              : ((16 == 64 || TARGET_AVX512VL
   28354              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28355              :    && ix86_pre_reload_split ()
   28356              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28357              :                     STRIP_UNARY (operands[4]))
   28358              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28359              :                        STRIP_UNARY (operands[4]))
   28360              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28361              :                        STRIP_UNARY (operands[3]))
   28362              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28363              :                        STRIP_UNARY (operands[3])))) && 
   28364              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28365              : ( 1)))
   28366              :             return NULL;
   28367              :           return gen_split_2869 (insn, operands);
   28368              : 
   28369              :         case 6:
   28370              :           if (!((
   28371              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28372              : ((64 == 64 || TARGET_AVX512VL
   28373              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28374              :    && ix86_pre_reload_split ()
   28375              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28376              :                     STRIP_UNARY (operands[4]))
   28377              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28378              :                        STRIP_UNARY (operands[4]))
   28379              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28380              :                        STRIP_UNARY (operands[3]))
   28381              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28382              :                        STRIP_UNARY (operands[3])))) && 
   28383              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28384              : (TARGET_AVX512F)) && 
   28385              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28386              : ( 1)))
   28387              :             return NULL;
   28388              :           return gen_split_2896 (insn, operands);
   28389              : 
   28390              :         case 7:
   28391              :           if (!((
   28392              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28393              : ((32 == 64 || TARGET_AVX512VL
   28394              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28395              :    && ix86_pre_reload_split ()
   28396              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28397              :                     STRIP_UNARY (operands[4]))
   28398              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28399              :                        STRIP_UNARY (operands[4]))
   28400              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28401              :                        STRIP_UNARY (operands[3]))
   28402              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28403              :                        STRIP_UNARY (operands[3])))) && 
   28404              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28405              : (TARGET_AVX)) && 
   28406              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28407              : ( 1)))
   28408              :             return NULL;
   28409              :           return gen_split_2923 (insn, operands);
   28410              : 
   28411              :         case 8:
   28412              :           if (!(
   28413              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28414              : ((16 == 64 || TARGET_AVX512VL
   28415              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28416              :    && ix86_pre_reload_split ()
   28417              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28418              :                     STRIP_UNARY (operands[4]))
   28419              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28420              :                        STRIP_UNARY (operands[4]))
   28421              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28422              :                        STRIP_UNARY (operands[3]))
   28423              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28424              :                        STRIP_UNARY (operands[3])))) && 
   28425              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28426              : ( 1)))
   28427              :             return NULL;
   28428              :           return gen_split_2950 (insn, operands);
   28429              : 
   28430              :         case 9:
   28431              :           if (!((
   28432              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28433              : ((64 == 64 || TARGET_AVX512VL
   28434              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28435              :    && ix86_pre_reload_split ()
   28436              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28437              :                     STRIP_UNARY (operands[4]))
   28438              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28439              :                        STRIP_UNARY (operands[4]))
   28440              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28441              :                        STRIP_UNARY (operands[3]))
   28442              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28443              :                        STRIP_UNARY (operands[3])))) && 
   28444              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28445              : (TARGET_AVX512F)) && 
   28446              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28447              : ( 1)))
   28448              :             return NULL;
   28449              :           return gen_split_2977 (insn, operands);
   28450              : 
   28451              :         case 10:
   28452              :           if (!((
   28453              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28454              : ((32 == 64 || TARGET_AVX512VL
   28455              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28456              :    && ix86_pre_reload_split ()
   28457              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28458              :                     STRIP_UNARY (operands[4]))
   28459              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28460              :                        STRIP_UNARY (operands[4]))
   28461              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28462              :                        STRIP_UNARY (operands[3]))
   28463              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28464              :                        STRIP_UNARY (operands[3])))) && 
   28465              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28466              : (TARGET_AVX)) && 
   28467              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28468              : ( 1)))
   28469              :             return NULL;
   28470              :           return gen_split_3004 (insn, operands);
   28471              : 
   28472              :         case 11:
   28473              :           if (!((
   28474              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28475              : ((16 == 64 || TARGET_AVX512VL
   28476              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28477              :    && ix86_pre_reload_split ()
   28478              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28479              :                     STRIP_UNARY (operands[4]))
   28480              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28481              :                        STRIP_UNARY (operands[4]))
   28482              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28483              :                        STRIP_UNARY (operands[3]))
   28484              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28485              :                        STRIP_UNARY (operands[3])))) && 
   28486              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28487              : (TARGET_SSE2)) && 
   28488              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28489              : ( 1)))
   28490              :             return NULL;
   28491              :           return gen_split_3031 (insn, operands);
   28492              : 
   28493              :         default:
   28494              :           return NULL;
   28495              :         }
   28496              : 
   28497              :     case XOR:
   28498              :       switch (pattern542 (x2))
   28499              :         {
   28500              :         case 0:
   28501              :           if (!((
   28502              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28503              : ((64 == 64 || TARGET_AVX512VL
   28504              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28505              :    && ix86_pre_reload_split ()
   28506              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28507              :                     STRIP_UNARY (operands[4]))
   28508              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28509              :                        STRIP_UNARY (operands[4]))
   28510              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28511              :                        STRIP_UNARY (operands[3]))
   28512              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28513              :                        STRIP_UNARY (operands[3])))) && 
   28514              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28515              : (TARGET_AVX512F)) && 
   28516              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28517              : ( 1)))
   28518              :             return NULL;
   28519              :           return gen_split_2737 (insn, operands);
   28520              : 
   28521              :         case 1:
   28522              :           if (!((
   28523              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28524              : ((32 == 64 || TARGET_AVX512VL
   28525              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28526              :    && ix86_pre_reload_split ()
   28527              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28528              :                     STRIP_UNARY (operands[4]))
   28529              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28530              :                        STRIP_UNARY (operands[4]))
   28531              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28532              :                        STRIP_UNARY (operands[3]))
   28533              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28534              :                        STRIP_UNARY (operands[3])))) && 
   28535              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28536              : (TARGET_AVX)) && 
   28537              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28538              : ( 1)))
   28539              :             return NULL;
   28540              :           return gen_split_2764 (insn, operands);
   28541              : 
   28542              :         case 2:
   28543              :           if (!(
   28544              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28545              : ((16 == 64 || TARGET_AVX512VL
   28546              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28547              :    && ix86_pre_reload_split ()
   28548              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28549              :                     STRIP_UNARY (operands[4]))
   28550              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28551              :                        STRIP_UNARY (operands[4]))
   28552              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28553              :                        STRIP_UNARY (operands[3]))
   28554              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28555              :                        STRIP_UNARY (operands[3])))) && 
   28556              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28557              : ( 1)))
   28558              :             return NULL;
   28559              :           return gen_split_2791 (insn, operands);
   28560              : 
   28561              :         case 3:
   28562              :           if (!((
   28563              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28564              : ((64 == 64 || TARGET_AVX512VL
   28565              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28566              :    && ix86_pre_reload_split ()
   28567              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28568              :                     STRIP_UNARY (operands[4]))
   28569              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28570              :                        STRIP_UNARY (operands[4]))
   28571              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28572              :                        STRIP_UNARY (operands[3]))
   28573              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28574              :                        STRIP_UNARY (operands[3])))) && 
   28575              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28576              : (TARGET_AVX512F)) && 
   28577              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28578              : ( 1)))
   28579              :             return NULL;
   28580              :           return gen_split_2818 (insn, operands);
   28581              : 
   28582              :         case 4:
   28583              :           if (!((
   28584              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28585              : ((32 == 64 || TARGET_AVX512VL
   28586              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28587              :    && ix86_pre_reload_split ()
   28588              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28589              :                     STRIP_UNARY (operands[4]))
   28590              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28591              :                        STRIP_UNARY (operands[4]))
   28592              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28593              :                        STRIP_UNARY (operands[3]))
   28594              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28595              :                        STRIP_UNARY (operands[3])))) && 
   28596              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28597              : (TARGET_AVX)) && 
   28598              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28599              : ( 1)))
   28600              :             return NULL;
   28601              :           return gen_split_2845 (insn, operands);
   28602              : 
   28603              :         case 5:
   28604              :           if (!(
   28605              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28606              : ((16 == 64 || TARGET_AVX512VL
   28607              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28608              :    && ix86_pre_reload_split ()
   28609              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28610              :                     STRIP_UNARY (operands[4]))
   28611              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28612              :                        STRIP_UNARY (operands[4]))
   28613              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28614              :                        STRIP_UNARY (operands[3]))
   28615              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28616              :                        STRIP_UNARY (operands[3])))) && 
   28617              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28618              : ( 1)))
   28619              :             return NULL;
   28620              :           return gen_split_2872 (insn, operands);
   28621              : 
   28622              :         case 6:
   28623              :           if (!((
   28624              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28625              : ((64 == 64 || TARGET_AVX512VL
   28626              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28627              :    && ix86_pre_reload_split ()
   28628              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28629              :                     STRIP_UNARY (operands[4]))
   28630              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28631              :                        STRIP_UNARY (operands[4]))
   28632              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28633              :                        STRIP_UNARY (operands[3]))
   28634              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28635              :                        STRIP_UNARY (operands[3])))) && 
   28636              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28637              : (TARGET_AVX512F)) && 
   28638              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28639              : ( 1)))
   28640              :             return NULL;
   28641              :           return gen_split_2899 (insn, operands);
   28642              : 
   28643              :         case 7:
   28644              :           if (!((
   28645              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28646              : ((32 == 64 || TARGET_AVX512VL
   28647              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28648              :    && ix86_pre_reload_split ()
   28649              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28650              :                     STRIP_UNARY (operands[4]))
   28651              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28652              :                        STRIP_UNARY (operands[4]))
   28653              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28654              :                        STRIP_UNARY (operands[3]))
   28655              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28656              :                        STRIP_UNARY (operands[3])))) && 
   28657              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28658              : (TARGET_AVX)) && 
   28659              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28660              : ( 1)))
   28661              :             return NULL;
   28662              :           return gen_split_2926 (insn, operands);
   28663              : 
   28664              :         case 8:
   28665              :           if (!(
   28666              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28667              : ((16 == 64 || TARGET_AVX512VL
   28668              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28669              :    && ix86_pre_reload_split ()
   28670              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28671              :                     STRIP_UNARY (operands[4]))
   28672              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28673              :                        STRIP_UNARY (operands[4]))
   28674              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28675              :                        STRIP_UNARY (operands[3]))
   28676              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28677              :                        STRIP_UNARY (operands[3])))) && 
   28678              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28679              : ( 1)))
   28680              :             return NULL;
   28681              :           return gen_split_2953 (insn, operands);
   28682              : 
   28683              :         case 9:
   28684              :           if (!((
   28685              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28686              : ((64 == 64 || TARGET_AVX512VL
   28687              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28688              :    && ix86_pre_reload_split ()
   28689              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28690              :                     STRIP_UNARY (operands[4]))
   28691              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28692              :                        STRIP_UNARY (operands[4]))
   28693              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28694              :                        STRIP_UNARY (operands[3]))
   28695              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28696              :                        STRIP_UNARY (operands[3])))) && 
   28697              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28698              : (TARGET_AVX512F)) && 
   28699              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28700              : ( 1)))
   28701              :             return NULL;
   28702              :           return gen_split_2980 (insn, operands);
   28703              : 
   28704              :         case 10:
   28705              :           if (!((
   28706              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28707              : ((32 == 64 || TARGET_AVX512VL
   28708              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28709              :    && ix86_pre_reload_split ()
   28710              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28711              :                     STRIP_UNARY (operands[4]))
   28712              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28713              :                        STRIP_UNARY (operands[4]))
   28714              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28715              :                        STRIP_UNARY (operands[3]))
   28716              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28717              :                        STRIP_UNARY (operands[3])))) && 
   28718              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28719              : (TARGET_AVX)) && 
   28720              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28721              : ( 1)))
   28722              :             return NULL;
   28723              :           return gen_split_3007 (insn, operands);
   28724              : 
   28725              :         case 11:
   28726              :           if (!((
   28727              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28728              : ((16 == 64 || TARGET_AVX512VL
   28729              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28730              :    && ix86_pre_reload_split ()
   28731              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28732              :                     STRIP_UNARY (operands[4]))
   28733              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28734              :                        STRIP_UNARY (operands[4]))
   28735              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28736              :                        STRIP_UNARY (operands[3]))
   28737              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28738              :                        STRIP_UNARY (operands[3])))) && 
   28739              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28740              : (TARGET_SSE2)) && 
   28741              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28742              : ( 1)))
   28743              :             return NULL;
   28744              :           return gen_split_3034 (insn, operands);
   28745              : 
   28746              :         default:
   28747              :           return NULL;
   28748              :         }
   28749              : 
   28750              :     default:
   28751              :       return NULL;
   28752              :     }
   28753              : }
   28754              : 
   28755              :  rtx_insn *
   28756              : split_76 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   28757              : {
   28758              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   28759              :   rtx x2, x3, x4, x5;
   28760              :   rtx_insn *res ATTRIBUTE_UNUSED;
   28761              :   x2 = XEXP (x1, 1);
   28762              :   x3 = XEXP (x2, 1);
   28763              :   x4 = XVECEXP (x3, 0, 0);
   28764              :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   28765              :     return NULL;
   28766              :   x5 = XVECEXP (x3, 0, 1);
   28767              :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   28768              :     return NULL;
   28769              :   switch (GET_MODE (operands[0]))
   28770              :     {
   28771              :     case E_V2DFmode:
   28772              :       if (!nonimmediate_operand (operands[0], E_V2DFmode)
   28773              :           || GET_MODE (x2) != E_V2DFmode)
   28774              :         return NULL;
   28775              :       switch (GET_MODE (operands[1]))
   28776              :         {
   28777              :         case E_V8DFmode:
   28778              :           if (!register_operand (operands[1], E_V8DFmode)
   28779              :               || !
   28780              : #line 12798 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28781              : (TARGET_AVX512DQ
   28782              :    && reload_completed
   28783              :    && (TARGET_AVX512VL
   28784              :        || REG_P (operands[0])
   28785              :        || !EXT_REX_SSE_REG_P (operands[1]))))
   28786              :             return NULL;
   28787              :           return gen_split_1641 (insn, operands);
   28788              : 
   28789              :         case E_V4DFmode:
   28790              :           if (!nonimmediate_operand (operands[1], E_V4DFmode)
   28791              :               || !
   28792              : #line 13214 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28793              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))
   28794              :    && reload_completed))
   28795              :             return NULL;
   28796              :           return gen_split_1650 (insn, operands);
   28797              : 
   28798              :         default:
   28799              :           return NULL;
   28800              :         }
   28801              : 
   28802              :     case E_V2DImode:
   28803              :       if (!nonimmediate_operand (operands[0], E_V2DImode)
   28804              :           || GET_MODE (x2) != E_V2DImode)
   28805              :         return NULL;
   28806              :       switch (GET_MODE (operands[1]))
   28807              :         {
   28808              :         case E_V8DImode:
   28809              :           if (!register_operand (operands[1], E_V8DImode)
   28810              :               || !
   28811              : #line 12798 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28812              : (TARGET_AVX512DQ
   28813              :    && reload_completed
   28814              :    && (TARGET_AVX512VL
   28815              :        || REG_P (operands[0])
   28816              :        || !EXT_REX_SSE_REG_P (operands[1]))))
   28817              :             return NULL;
   28818              :           return gen_split_1642 (insn, operands);
   28819              : 
   28820              :         case E_V4DImode:
   28821              :           if (!nonimmediate_operand (operands[1], E_V4DImode)
   28822              :               || !
   28823              : #line 13214 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28824              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))
   28825              :    && reload_completed))
   28826              :             return NULL;
   28827              :           return gen_split_1649 (insn, operands);
   28828              : 
   28829              :         default:
   28830              :           return NULL;
   28831              :         }
   28832              : 
   28833              :     default:
   28834              :       return NULL;
   28835              :     }
   28836              : }
   28837              : 
   28838              :  rtx_insn *
   28839              : split_78 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   28840              : {
   28841              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   28842              :   rtx x2, x3, x4, x5, x6, x7;
   28843              :   rtx_insn *res ATTRIBUTE_UNUSED;
   28844              :   x2 = XEXP (x1, 1);
   28845              :   x3 = XEXP (x2, 1);
   28846              :   if (pattern845 (x3) != 0)
   28847              :     return NULL;
   28848              :   x4 = XVECEXP (x3, 0, 4);
   28849              :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
   28850              :     return NULL;
   28851              :   x5 = XVECEXP (x3, 0, 5);
   28852              :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
   28853              :     return NULL;
   28854              :   x6 = XVECEXP (x3, 0, 6);
   28855              :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
   28856              :     return NULL;
   28857              :   x7 = XVECEXP (x3, 0, 7);
   28858              :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
   28859              :     return NULL;
   28860              :   switch (pattern1545 (x2))
   28861              :     {
   28862              :     case 0:
   28863              :       if (!
   28864              : #line 13166 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28865              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))
   28866              :    && reload_completed
   28867              :    && (TARGET_AVX512VL
   28868              :        || REG_P (operands[0])
   28869              :        || !EXT_REX_SSE_REG_P (operands[1]))))
   28870              :         return NULL;
   28871              :       return gen_split_1647 (insn, operands);
   28872              : 
   28873              :     case 1:
   28874              :       if (!
   28875              : #line 13166 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28876              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))
   28877              :    && reload_completed
   28878              :    && (TARGET_AVX512VL
   28879              :        || REG_P (operands[0])
   28880              :        || !EXT_REX_SSE_REG_P (operands[1]))))
   28881              :         return NULL;
   28882              :       return gen_split_1648 (insn, operands);
   28883              : 
   28884              :     case 2:
   28885              :       if (!(
   28886              : #line 13406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28887              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   28888              : #line 13408 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28889              : ( reload_completed)))
   28890              :         return NULL;
   28891              :       return gen_split_1656 (insn, operands);
   28892              : 
   28893              :     case 3:
   28894              :       if (!(
   28895              : #line 13406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28896              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   28897              : #line 13408 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28898              : ( reload_completed)))
   28899              :         return NULL;
   28900              :       return gen_split_1657 (insn, operands);
   28901              : 
   28902              :     case 4:
   28903              :       if (!(
   28904              : #line 13406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28905              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   28906              : #line 13408 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28907              : ( reload_completed)))
   28908              :         return NULL;
   28909              :       return gen_split_1658 (insn, operands);
   28910              : 
   28911              :     default:
   28912              :       return NULL;
   28913              :     }
   28914              : }
   28915              : 
   28916              :  rtx_insn *
   28917              : split_80 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   28918              : {
   28919              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   28920              :   rtx x2, x3, x4, x5, x6, x7;
   28921              :   rtx_insn *res ATTRIBUTE_UNUSED;
   28922              :   x2 = XEXP (x1, 1);
   28923              :   x3 = XEXP (x2, 1);
   28924              :   switch (GET_CODE (x3))
   28925              :     {
   28926              :     case VEC_SELECT:
   28927              :       if (GET_MODE (x3) != E_DFmode)
   28928              :         return NULL;
   28929              :       x4 = XEXP (x3, 1);
   28930              :       if (GET_CODE (x4) != PARALLEL
   28931              :           || XVECLEN (x4, 0) != 1)
   28932              :         return NULL;
   28933              :       x5 = XVECEXP (x4, 0, 0);
   28934              :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   28935              :           || !memory_operand (operands[0], E_V2DFmode)
   28936              :           || GET_MODE (x2) != E_V2DFmode
   28937              :           || !register_operand (operands[1], E_DFmode))
   28938              :         return NULL;
   28939              :       x6 = XEXP (x3, 0);
   28940              :       if (!rtx_equal_p (x6, operands[0])
   28941              :           || !
   28942              : #line 15161 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28943              : (TARGET_SSE2 && reload_completed))
   28944              :         return NULL;
   28945              :       return gen_split_3258 (insn, operands);
   28946              : 
   28947              :     case UNSPEC:
   28948              :       if (XVECLEN (x3, 0) != 1
   28949              :           || XINT (x3, 1) != 148)
   28950              :         return NULL;
   28951              :       x7 = XVECEXP (x3, 0, 0);
   28952              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   28953              :         return NULL;
   28954              :       switch (GET_MODE (operands[0]))
   28955              :         {
   28956              :         case E_V8SImode:
   28957              :           if (pattern1041 (x2, 
   28958              : E_V4SImode, 
   28959              : E_V8SImode) != 0
   28960              :               || !(
   28961              : #line 29514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28962              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   28963              : #line 29516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28964              : ( reload_completed)))
   28965              :             return NULL;
   28966              :           return gen_split_3875 (insn, operands);
   28967              : 
   28968              :         case E_V8SFmode:
   28969              :           if (pattern1041 (x2, 
   28970              : E_V4SFmode, 
   28971              : E_V8SFmode) != 0
   28972              :               || !(
   28973              : #line 29514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28974              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   28975              : #line 29516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28976              : ( reload_completed)))
   28977              :             return NULL;
   28978              :           return gen_split_3876 (insn, operands);
   28979              : 
   28980              :         case E_V4DFmode:
   28981              :           if (pattern1041 (x2, 
   28982              : E_V2DFmode, 
   28983              : E_V4DFmode) != 0
   28984              :               || !(
   28985              : #line 29514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28986              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   28987              : #line 29516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28988              : ( reload_completed)))
   28989              :             return NULL;
   28990              :           return gen_split_3877 (insn, operands);
   28991              : 
   28992              :         case E_V16SImode:
   28993              :           if (pattern1041 (x2, 
   28994              : E_V8SImode, 
   28995              : E_V16SImode) != 0
   28996              :               || !(
   28997              : #line 30856 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28998              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   28999              : #line 30858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29000              : ( reload_completed)))
   29001              :             return NULL;
   29002              :           return gen_split_3923 (insn, operands);
   29003              : 
   29004              :         case E_V16SFmode:
   29005              :           if (pattern1041 (x2, 
   29006              : E_V8SFmode, 
   29007              : E_V16SFmode) != 0
   29008              :               || !(
   29009              : #line 30856 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29010              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   29011              : #line 30858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29012              : ( reload_completed)))
   29013              :             return NULL;
   29014              :           return gen_split_3924 (insn, operands);
   29015              : 
   29016              :         case E_V8DFmode:
   29017              :           if (pattern1041 (x2, 
   29018              : E_V4DFmode, 
   29019              : E_V8DFmode) != 0
   29020              :               || !(
   29021              : #line 30856 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29022              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   29023              : #line 30858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29024              : ( reload_completed)))
   29025              :             return NULL;
   29026              :           return gen_split_3925 (insn, operands);
   29027              : 
   29028              :         default:
   29029              :           return NULL;
   29030              :         }
   29031              : 
   29032              :     default:
   29033              :       return NULL;
   29034              :     }
   29035              : }
   29036              : 
   29037              :  rtx_insn *
   29038              : split_84 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   29039              : {
   29040              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   29041              :   rtx_insn *res ATTRIBUTE_UNUSED;
   29042              :   switch (GET_MODE (operands[0]))
   29043              :     {
   29044              :     case E_V64QImode:
   29045              :       if (!register_operand (operands[0], E_V64QImode))
   29046              :         return NULL;
   29047              :       if (int_float_vector_all_ones_operand (operands[1], E_V64QImode)
   29048              :           && (
   29049              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29050              : (TARGET_AVX512F && reload_completed
   29051              :   && (64 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29052              :   && optimize_insn_for_speed_p ()) && 
   29053              : #line 287 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29054              : (TARGET_AVX512F)))
   29055              :         return gen_split_1173 (insn, operands);
   29056              :       if (!ternlog_operand (operands[1], E_V64QImode)
   29057              :           || !((
   29058              : #line 14072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29059              : ((64 == 64 || TARGET_AVX512VL
   29060              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29061              :    && ix86_pre_reload_split ()) && 
   29062              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29063              : (TARGET_AVX512F)) && 
   29064              : #line 14076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29065              : ( 1)))
   29066              :         return NULL;
   29067              :       return gen_split_1717 (insn, operands);
   29068              : 
   29069              :     case E_V32QImode:
   29070              :       if (!register_operand (operands[0], E_V32QImode))
   29071              :         return NULL;
   29072              :       if (int_float_vector_all_ones_operand (operands[1], E_V32QImode)
   29073              :           && (
   29074              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29075              : (TARGET_AVX512F && reload_completed
   29076              :   && (32 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29077              :   && optimize_insn_for_speed_p ()) && 
   29078              : #line 287 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29079              : (TARGET_AVX)))
   29080              :         return gen_split_1174 (insn, operands);
   29081              :       if (!ternlog_operand (operands[1], E_V32QImode)
   29082              :           || !((
   29083              : #line 14072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29084              : ((32 == 64 || TARGET_AVX512VL
   29085              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29086              :    && ix86_pre_reload_split ()) && 
   29087              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29088              : (TARGET_AVX)) && 
   29089              : #line 14076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29090              : ( 1)))
   29091              :         return NULL;
   29092              :       return gen_split_1718 (insn, operands);
   29093              : 
   29094              :     case E_V16QImode:
   29095              :       if (!register_operand (operands[0], E_V16QImode))
   29096              :         return NULL;
   29097              :       if (int_float_vector_all_ones_operand (operands[1], E_V16QImode)
   29098              :           && 
   29099              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29100              : (TARGET_AVX512F && reload_completed
   29101              :   && (16 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29102              :   && optimize_insn_for_speed_p ()))
   29103              :         return gen_split_1175 (insn, operands);
   29104              :       if (!ternlog_operand (operands[1], E_V16QImode)
   29105              :           || !(
   29106              : #line 14072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29107              : ((16 == 64 || TARGET_AVX512VL
   29108              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29109              :    && ix86_pre_reload_split ()) && 
   29110              : #line 14076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29111              : ( 1)))
   29112              :         return NULL;
   29113              :       return gen_split_1719 (insn, operands);
   29114              : 
   29115              :     case E_V32HImode:
   29116              :       if (!register_operand (operands[0], E_V32HImode))
   29117              :         return NULL;
   29118              :       if (int_float_vector_all_ones_operand (operands[1], E_V32HImode)
   29119              :           && (
   29120              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29121              : (TARGET_AVX512F && reload_completed
   29122              :   && (64 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29123              :   && optimize_insn_for_speed_p ()) && 
   29124              : #line 288 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29125              : (TARGET_AVX512F)))
   29126              :         return gen_split_1176 (insn, operands);
   29127              :       if (!ternlog_operand (operands[1], E_V32HImode)
   29128              :           || !((
   29129              : #line 14072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29130              : ((64 == 64 || TARGET_AVX512VL
   29131              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29132              :    && ix86_pre_reload_split ()) && 
   29133              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29134              : (TARGET_AVX512F)) && 
   29135              : #line 14076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29136              : ( 1)))
   29137              :         return NULL;
   29138              :       return gen_split_1720 (insn, operands);
   29139              : 
   29140              :     case E_V16HImode:
   29141              :       if (!register_operand (operands[0], E_V16HImode))
   29142              :         return NULL;
   29143              :       if (int_float_vector_all_ones_operand (operands[1], E_V16HImode)
   29144              :           && (
   29145              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29146              : (TARGET_AVX512F && reload_completed
   29147              :   && (32 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29148              :   && optimize_insn_for_speed_p ()) && 
   29149              : #line 288 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29150              : (TARGET_AVX)))
   29151              :         return gen_split_1177 (insn, operands);
   29152              :       if (!ternlog_operand (operands[1], E_V16HImode)
   29153              :           || !((
   29154              : #line 14072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29155              : ((32 == 64 || TARGET_AVX512VL
   29156              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29157              :    && ix86_pre_reload_split ()) && 
   29158              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29159              : (TARGET_AVX)) && 
   29160              : #line 14076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29161              : ( 1)))
   29162              :         return NULL;
   29163              :       return gen_split_1721 (insn, operands);
   29164              : 
   29165              :     case E_V8HImode:
   29166              :       if (!register_operand (operands[0], E_V8HImode))
   29167              :         return NULL;
   29168              :       if (int_float_vector_all_ones_operand (operands[1], E_V8HImode)
   29169              :           && 
   29170              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29171              : (TARGET_AVX512F && reload_completed
   29172              :   && (16 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29173              :   && optimize_insn_for_speed_p ()))
   29174              :         return gen_split_1178 (insn, operands);
   29175              :       if (!ternlog_operand (operands[1], E_V8HImode)
   29176              :           || !(
   29177              : #line 14072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29178              : ((16 == 64 || TARGET_AVX512VL
   29179              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29180              :    && ix86_pre_reload_split ()) && 
   29181              : #line 14076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29182              : ( 1)))
   29183              :         return NULL;
   29184              :       return gen_split_1722 (insn, operands);
   29185              : 
   29186              :     case E_V16SImode:
   29187              :       if (!register_operand (operands[0], E_V16SImode))
   29188              :         return NULL;
   29189              :       if (int_float_vector_all_ones_operand (operands[1], E_V16SImode)
   29190              :           && (
   29191              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29192              : (TARGET_AVX512F && reload_completed
   29193              :   && (64 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29194              :   && optimize_insn_for_speed_p ()) && 
   29195              : #line 289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29196              : (TARGET_AVX512F)))
   29197              :         return gen_split_1179 (insn, operands);
   29198              :       if (!ternlog_operand (operands[1], E_V16SImode)
   29199              :           || !((
   29200              : #line 14072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29201              : ((64 == 64 || TARGET_AVX512VL
   29202              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29203              :    && ix86_pre_reload_split ()) && 
   29204              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29205              : (TARGET_AVX512F)) && 
   29206              : #line 14076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29207              : ( 1)))
   29208              :         return NULL;
   29209              :       return gen_split_1723 (insn, operands);
   29210              : 
   29211              :     case E_V8SImode:
   29212              :       if (!register_operand (operands[0], E_V8SImode))
   29213              :         return NULL;
   29214              :       if (int_float_vector_all_ones_operand (operands[1], E_V8SImode)
   29215              :           && (
   29216              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29217              : (TARGET_AVX512F && reload_completed
   29218              :   && (32 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29219              :   && optimize_insn_for_speed_p ()) && 
   29220              : #line 289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29221              : (TARGET_AVX)))
   29222              :         return gen_split_1180 (insn, operands);
   29223              :       if (!ternlog_operand (operands[1], E_V8SImode)
   29224              :           || !((
   29225              : #line 14072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29226              : ((32 == 64 || TARGET_AVX512VL
   29227              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29228              :    && ix86_pre_reload_split ()) && 
   29229              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29230              : (TARGET_AVX)) && 
   29231              : #line 14076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29232              : ( 1)))
   29233              :         return NULL;
   29234              :       return gen_split_1724 (insn, operands);
   29235              : 
   29236              :     case E_V4SImode:
   29237              :       if (!register_operand (operands[0], E_V4SImode))
   29238              :         return NULL;
   29239              :       if (int_float_vector_all_ones_operand (operands[1], E_V4SImode)
   29240              :           && 
   29241              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29242              : (TARGET_AVX512F && reload_completed
   29243              :   && (16 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29244              :   && optimize_insn_for_speed_p ()))
   29245              :         return gen_split_1181 (insn, operands);
   29246              :       if (!ternlog_operand (operands[1], E_V4SImode)
   29247              :           || !(
   29248              : #line 14072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29249              : ((16 == 64 || TARGET_AVX512VL
   29250              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29251              :    && ix86_pre_reload_split ()) && 
   29252              : #line 14076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29253              : ( 1)))
   29254              :         return NULL;
   29255              :       return gen_split_1725 (insn, operands);
   29256              : 
   29257              :     case E_V8DImode:
   29258              :       if (!register_operand (operands[0], E_V8DImode))
   29259              :         return NULL;
   29260              :       if (int_float_vector_all_ones_operand (operands[1], E_V8DImode)
   29261              :           && (
   29262              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29263              : (TARGET_AVX512F && reload_completed
   29264              :   && (64 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29265              :   && optimize_insn_for_speed_p ()) && 
   29266              : #line 290 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29267              : (TARGET_AVX512F)))
   29268              :         return gen_split_1182 (insn, operands);
   29269              :       if (!ternlog_operand (operands[1], E_V8DImode)
   29270              :           || !((
   29271              : #line 14072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29272              : ((64 == 64 || TARGET_AVX512VL
   29273              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29274              :    && ix86_pre_reload_split ()) && 
   29275              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29276              : (TARGET_AVX512F)) && 
   29277              : #line 14076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29278              : ( 1)))
   29279              :         return NULL;
   29280              :       return gen_split_1726 (insn, operands);
   29281              : 
   29282              :     case E_V4DImode:
   29283              :       if (!register_operand (operands[0], E_V4DImode))
   29284              :         return NULL;
   29285              :       if (int_float_vector_all_ones_operand (operands[1], E_V4DImode)
   29286              :           && (
   29287              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29288              : (TARGET_AVX512F && reload_completed
   29289              :   && (32 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29290              :   && optimize_insn_for_speed_p ()) && 
   29291              : #line 290 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29292              : (TARGET_AVX)))
   29293              :         return gen_split_1183 (insn, operands);
   29294              :       if (!ternlog_operand (operands[1], E_V4DImode)
   29295              :           || !((
   29296              : #line 14072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29297              : ((32 == 64 || TARGET_AVX512VL
   29298              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29299              :    && ix86_pre_reload_split ()) && 
   29300              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29301              : (TARGET_AVX)) && 
   29302              : #line 14076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29303              : ( 1)))
   29304              :         return NULL;
   29305              :       return gen_split_1727 (insn, operands);
   29306              : 
   29307              :     case E_V2DImode:
   29308              :       if (!register_operand (operands[0], E_V2DImode))
   29309              :         return NULL;
   29310              :       if (int_float_vector_all_ones_operand (operands[1], E_V2DImode)
   29311              :           && 
   29312              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29313              : (TARGET_AVX512F && reload_completed
   29314              :   && (16 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29315              :   && optimize_insn_for_speed_p ()))
   29316              :         return gen_split_1184 (insn, operands);
   29317              :       if (!ternlog_operand (operands[1], E_V2DImode)
   29318              :           || !(
   29319              : #line 14072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29320              : ((16 == 64 || TARGET_AVX512VL
   29321              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29322              :    && ix86_pre_reload_split ()) && 
   29323              : #line 14076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29324              : ( 1)))
   29325              :         return NULL;
   29326              :       return gen_split_1728 (insn, operands);
   29327              : 
   29328              :     case E_V4TImode:
   29329              :       if (!register_operand (operands[0], E_V4TImode)
   29330              :           || !int_float_vector_all_ones_operand (operands[1], E_V4TImode)
   29331              :           || !(
   29332              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29333              : (TARGET_AVX512F && reload_completed
   29334              :   && (64 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29335              :   && optimize_insn_for_speed_p ()) && 
   29336              : #line 291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29337              : (TARGET_AVX512F)))
   29338              :         return NULL;
   29339              :       return gen_split_1185 (insn, operands);
   29340              : 
   29341              :     case E_V2TImode:
   29342              :       if (!register_operand (operands[0], E_V2TImode)
   29343              :           || !int_float_vector_all_ones_operand (operands[1], E_V2TImode)
   29344              :           || !(
   29345              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29346              : (TARGET_AVX512F && reload_completed
   29347              :   && (32 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29348              :   && optimize_insn_for_speed_p ()) && 
   29349              : #line 291 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29350              : (TARGET_AVX)))
   29351              :         return NULL;
   29352              :       return gen_split_1186 (insn, operands);
   29353              : 
   29354              :     case E_V1TImode:
   29355              :       if (!register_operand (operands[0], E_V1TImode)
   29356              :           || !int_float_vector_all_ones_operand (operands[1], E_V1TImode)
   29357              :           || !
   29358              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29359              : (TARGET_AVX512F && reload_completed
   29360              :   && (16 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29361              :   && optimize_insn_for_speed_p ()))
   29362              :         return NULL;
   29363              :       return gen_split_1187 (insn, operands);
   29364              : 
   29365              :     case E_V32HFmode:
   29366              :       if (!register_operand (operands[0], E_V32HFmode)
   29367              :           || !int_float_vector_all_ones_operand (operands[1], E_V32HFmode)
   29368              :           || !(
   29369              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29370              : (TARGET_AVX512F && reload_completed
   29371              :   && (64 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29372              :   && optimize_insn_for_speed_p ()) && 
   29373              : #line 292 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29374              : (TARGET_AVX512F)))
   29375              :         return NULL;
   29376              :       return gen_split_1188 (insn, operands);
   29377              : 
   29378              :     case E_V16HFmode:
   29379              :       if (!register_operand (operands[0], E_V16HFmode)
   29380              :           || !int_float_vector_all_ones_operand (operands[1], E_V16HFmode)
   29381              :           || !(
   29382              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29383              : (TARGET_AVX512F && reload_completed
   29384              :   && (32 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29385              :   && optimize_insn_for_speed_p ()) && 
   29386              : #line 292 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29387              : (TARGET_AVX)))
   29388              :         return NULL;
   29389              :       return gen_split_1189 (insn, operands);
   29390              : 
   29391              :     case E_V8HFmode:
   29392              :       if (!register_operand (operands[0], E_V8HFmode)
   29393              :           || !int_float_vector_all_ones_operand (operands[1], E_V8HFmode)
   29394              :           || !
   29395              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29396              : (TARGET_AVX512F && reload_completed
   29397              :   && (16 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29398              :   && optimize_insn_for_speed_p ()))
   29399              :         return NULL;
   29400              :       return gen_split_1190 (insn, operands);
   29401              : 
   29402              :     case E_V32BFmode:
   29403              :       if (!register_operand (operands[0], E_V32BFmode)
   29404              :           || !int_float_vector_all_ones_operand (operands[1], E_V32BFmode)
   29405              :           || !(
   29406              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29407              : (TARGET_AVX512F && reload_completed
   29408              :   && (64 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29409              :   && optimize_insn_for_speed_p ()) && 
   29410              : #line 293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29411              : (TARGET_AVX512F)))
   29412              :         return NULL;
   29413              :       return gen_split_1191 (insn, operands);
   29414              : 
   29415              :     case E_V16BFmode:
   29416              :       if (!register_operand (operands[0], E_V16BFmode)
   29417              :           || !int_float_vector_all_ones_operand (operands[1], E_V16BFmode)
   29418              :           || !(
   29419              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29420              : (TARGET_AVX512F && reload_completed
   29421              :   && (32 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29422              :   && optimize_insn_for_speed_p ()) && 
   29423              : #line 293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29424              : (TARGET_AVX)))
   29425              :         return NULL;
   29426              :       return gen_split_1192 (insn, operands);
   29427              : 
   29428              :     case E_V8BFmode:
   29429              :       if (!register_operand (operands[0], E_V8BFmode)
   29430              :           || !int_float_vector_all_ones_operand (operands[1], E_V8BFmode)
   29431              :           || !
   29432              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29433              : (TARGET_AVX512F && reload_completed
   29434              :   && (16 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29435              :   && optimize_insn_for_speed_p ()))
   29436              :         return NULL;
   29437              :       return gen_split_1193 (insn, operands);
   29438              : 
   29439              :     case E_V16SFmode:
   29440              :       if (!register_operand (operands[0], E_V16SFmode)
   29441              :           || !int_float_vector_all_ones_operand (operands[1], E_V16SFmode)
   29442              :           || !(
   29443              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29444              : (TARGET_AVX512F && reload_completed
   29445              :   && (64 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29446              :   && optimize_insn_for_speed_p ()) && 
   29447              : #line 294 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29448              : (TARGET_AVX512F)))
   29449              :         return NULL;
   29450              :       return gen_split_1194 (insn, operands);
   29451              : 
   29452              :     case E_V8SFmode:
   29453              :       if (!register_operand (operands[0], E_V8SFmode)
   29454              :           || !int_float_vector_all_ones_operand (operands[1], E_V8SFmode)
   29455              :           || !(
   29456              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29457              : (TARGET_AVX512F && reload_completed
   29458              :   && (32 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29459              :   && optimize_insn_for_speed_p ()) && 
   29460              : #line 294 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29461              : (TARGET_AVX)))
   29462              :         return NULL;
   29463              :       return gen_split_1195 (insn, operands);
   29464              : 
   29465              :     case E_V4SFmode:
   29466              :       if (!register_operand (operands[0], E_V4SFmode))
   29467              :         return NULL;
   29468              :       if (int_float_vector_all_ones_operand (operands[1], E_V4SFmode)
   29469              :           && 
   29470              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29471              : (TARGET_AVX512F && reload_completed
   29472              :   && (16 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29473              :   && optimize_insn_for_speed_p ()))
   29474              :         return gen_split_1196 (insn, operands);
   29475              :       if (!zero_extended_scalar_load_operand (operands[1], E_V4SFmode)
   29476              :           || !
   29477              : #line 1938 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29478              : (TARGET_SSE && reload_completed))
   29479              :         return NULL;
   29480              :       return gen_split_1231 (insn, operands);
   29481              : 
   29482              :     case E_V8DFmode:
   29483              :       if (!register_operand (operands[0], E_V8DFmode)
   29484              :           || !int_float_vector_all_ones_operand (operands[1], E_V8DFmode)
   29485              :           || !(
   29486              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29487              : (TARGET_AVX512F && reload_completed
   29488              :   && (64 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29489              :   && optimize_insn_for_speed_p ()) && 
   29490              : #line 295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29491              : (TARGET_AVX512F)))
   29492              :         return NULL;
   29493              :       return gen_split_1197 (insn, operands);
   29494              : 
   29495              :     case E_V4DFmode:
   29496              :       if (!register_operand (operands[0], E_V4DFmode)
   29497              :           || !int_float_vector_all_ones_operand (operands[1], E_V4DFmode)
   29498              :           || !(
   29499              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29500              : (TARGET_AVX512F && reload_completed
   29501              :   && (32 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29502              :   && optimize_insn_for_speed_p ()) && 
   29503              : #line 295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29504              : (TARGET_AVX)))
   29505              :         return NULL;
   29506              :       return gen_split_1198 (insn, operands);
   29507              : 
   29508              :     case E_V2DFmode:
   29509              :       if (!register_operand (operands[0], E_V2DFmode))
   29510              :         return NULL;
   29511              :       if (int_float_vector_all_ones_operand (operands[1], E_V2DFmode)
   29512              :           && 
   29513              : #line 1542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29514              : (TARGET_AVX512F && reload_completed
   29515              :   && (16 == 64 || EXT_REX_SSE_REG_P (operands[0]))
   29516              :   && optimize_insn_for_speed_p ()))
   29517              :         return gen_split_1199 (insn, operands);
   29518              :       if (!zero_extended_scalar_load_operand (operands[1], E_V2DFmode)
   29519              :           || !
   29520              : #line 1952 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29521              : (TARGET_SSE2 && reload_completed))
   29522              :         return NULL;
   29523              :       return gen_split_1232 (insn, operands);
   29524              : 
   29525              :     default:
   29526              :       return NULL;
   29527              :     }
   29528              : }
   29529              : 
   29530              :  rtx_insn *
   29531              : split_88 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   29532              : {
   29533              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   29534              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   29535              :   rtx x10, x11, x12, x13, x14, x15, x16;
   29536              :   rtx_insn *res ATTRIBUTE_UNUSED;
   29537              :   switch (XVECLEN (x1, 0))
   29538              :     {
   29539              :     case 2:
   29540              :       x2 = XVECEXP (x1, 0, 0);
   29541              :       if (GET_CODE (x2) != SET)
   29542              :         return NULL;
   29543              :       x3 = XEXP (x2, 1);
   29544              :       switch (GET_CODE (x3))
   29545              :         {
   29546              :         case UNSPEC:
   29547              :           x4 = XVECEXP (x1, 0, 1);
   29548              :           if (GET_CODE (x4) != CLOBBER)
   29549              :             return NULL;
   29550              :           x5 = XEXP (x2, 0);
   29551              :           operands[0] = x5;
   29552              :           switch (XVECLEN (x3, 0))
   29553              :             {
   29554              :             case 1:
   29555              :               x6 = XVECEXP (x3, 0, 0);
   29556              :               operands[1] = x6;
   29557              :               switch (XINT (x3, 1))
   29558              :                 {
   29559              :                 case 75:
   29560              :                   if (pattern1070 (x1) != 0
   29561              :                       || !(
   29562              : #line 25597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29563              : (TARGET_USE_FANCY_MATH_387
   29564              :    && (flag_fp_int_builtin_inexact || !flag_trapping_math)
   29565              :    && ix86_pre_reload_split ()) && 
   29566              : #line 25601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29567              : ( 1)))
   29568              :                     return NULL;
   29569              :                   return gen_split_937 (insn, operands);
   29570              : 
   29571              :                 case 76:
   29572              :                   if (pattern1070 (x1) != 0
   29573              :                       || !(
   29574              : #line 25597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29575              : (TARGET_USE_FANCY_MATH_387
   29576              :    && (flag_fp_int_builtin_inexact || !flag_trapping_math)
   29577              :    && ix86_pre_reload_split ()) && 
   29578              : #line 25601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29579              : ( 1)))
   29580              :                     return NULL;
   29581              :                   return gen_split_938 (insn, operands);
   29582              : 
   29583              :                 case 77:
   29584              :                   if (pattern1070 (x1) != 0
   29585              :                       || !(
   29586              : #line 25597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29587              : (TARGET_USE_FANCY_MATH_387
   29588              :    && (flag_fp_int_builtin_inexact || !flag_trapping_math)
   29589              :    && ix86_pre_reload_split ()) && 
   29590              : #line 25601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29591              : ( 1)))
   29592              :                     return NULL;
   29593              :                   return gen_split_939 (insn, operands);
   29594              : 
   29595              :                 case 78:
   29596              :                   if (pattern1070 (x1) != 0
   29597              :                       || !(
   29598              : #line 25597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29599              : (TARGET_USE_FANCY_MATH_387
   29600              :    && (flag_fp_int_builtin_inexact || !flag_trapping_math)
   29601              :    && ix86_pre_reload_split ()) && 
   29602              : #line 25601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29603              : ( 1)))
   29604              :                     return NULL;
   29605              :                   return gen_split_940 (insn, operands);
   29606              : 
   29607              :                 case 79:
   29608              :                   switch (pattern1071 (x1))
   29609              :                     {
   29610              :                     case 0:
   29611              :                       if (!(
   29612              : #line 25714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29613              : (TARGET_USE_FANCY_MATH_387
   29614              :    && flag_unsafe_math_optimizations
   29615              :    && ix86_pre_reload_split ()) && 
   29616              : #line 25718 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29617              : ( 1)))
   29618              :                         return NULL;
   29619              :                       return gen_split_941 (insn, operands);
   29620              : 
   29621              :                     case 1:
   29622              :                       if (!(
   29623              : #line 25714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29624              : (TARGET_USE_FANCY_MATH_387
   29625              :    && flag_unsafe_math_optimizations
   29626              :    && ix86_pre_reload_split ()) && 
   29627              : #line 25718 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29628              : ( 1)))
   29629              :                         return NULL;
   29630              :                       return gen_split_943 (insn, operands);
   29631              : 
   29632              :                     case 2:
   29633              :                       if (!(
   29634              : #line 25714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29635              : (TARGET_USE_FANCY_MATH_387
   29636              :    && flag_unsafe_math_optimizations
   29637              :    && ix86_pre_reload_split ()) && 
   29638              : #line 25718 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29639              : ( 1)))
   29640              :                         return NULL;
   29641              :                       return gen_split_945 (insn, operands);
   29642              : 
   29643              :                     default:
   29644              :                       return NULL;
   29645              :                     }
   29646              : 
   29647              :                 case 80:
   29648              :                   switch (pattern1071 (x1))
   29649              :                     {
   29650              :                     case 0:
   29651              :                       if (!(
   29652              : #line 25714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29653              : (TARGET_USE_FANCY_MATH_387
   29654              :    && flag_unsafe_math_optimizations
   29655              :    && ix86_pre_reload_split ()) && 
   29656              : #line 25718 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29657              : ( 1)))
   29658              :                         return NULL;
   29659              :                       return gen_split_942 (insn, operands);
   29660              : 
   29661              :                     case 1:
   29662              :                       if (!(
   29663              : #line 25714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29664              : (TARGET_USE_FANCY_MATH_387
   29665              :    && flag_unsafe_math_optimizations
   29666              :    && ix86_pre_reload_split ()) && 
   29667              : #line 25718 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29668              : ( 1)))
   29669              :                         return NULL;
   29670              :                       return gen_split_944 (insn, operands);
   29671              : 
   29672              :                     case 2:
   29673              :                       if (!(
   29674              : #line 25714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29675              : (TARGET_USE_FANCY_MATH_387
   29676              :    && flag_unsafe_math_optimizations
   29677              :    && ix86_pre_reload_split ()) && 
   29678              : #line 25718 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29679              : ( 1)))
   29680              :                         return NULL;
   29681              :                       return gen_split_946 (insn, operands);
   29682              : 
   29683              :                     default:
   29684              :                       return NULL;
   29685              :                     }
   29686              : 
   29687              :                 case 119:
   29688              :                   if (GET_MODE (x3) != E_V4SImode
   29689              :                       || !register_operand (operands[0], E_V4SImode)
   29690              :                       || !nonimmediate_operand (operands[1], E_DImode))
   29691              :                     return NULL;
   29692              :                   x7 = XEXP (x4, 0);
   29693              :                   operands[2] = x7;
   29694              :                   if (!scratch_operand (operands[2], E_V4SImode)
   29695              :                       || !(
   29696              : #line 1903 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29697              : (!TARGET_64BIT && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC) && 
   29698              : #line 1905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29699              : ( reload_completed)))
   29700              :                     return NULL;
   29701              :                   return gen_split_1230 (insn, operands);
   29702              : 
   29703              :                 default:
   29704              :                   return NULL;
   29705              :                 }
   29706              : 
   29707              :             case 3:
   29708              :               if (XINT (x3, 1) != 53
   29709              :                   || GET_MODE (x3) != E_V8QImode
   29710              :                   || pattern938 (x1) != 0
   29711              :                   || !
   29712              : #line 23510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29713              : (TARGET_SSSE3 && reload_completed
   29714              :    && SSE_REGNO_P (REGNO (operands[0]))))
   29715              :                 return NULL;
   29716              :               return gen_split_3562 (insn, operands);
   29717              : 
   29718              :             default:
   29719              :               return NULL;
   29720              :             }
   29721              : 
   29722              :         case SMAX:
   29723              :           switch (pattern410 (x1))
   29724              :             {
   29725              :             case 0:
   29726              :               if (((
   29727              : #line 27359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29728              : (TARGET_CMOVE
   29729              :    && ix86_pre_reload_split ()) && 
   29730              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29731              : (!TARGET_64BIT)) && 
   29732              : #line 27362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29733              : ( 1)))
   29734              :                 return gen_split_969 (insn, operands);
   29735              :               if (!((
   29736              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29737              : (TARGET_CMOVE
   29738              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   29739              :    && ix86_pre_reload_split ()) && 
   29740              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29741              : (TARGET_64BIT)) && 
   29742              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29743              : ( 1)))
   29744              :                 return NULL;
   29745              :               return gen_split_989 (insn, operands);
   29746              : 
   29747              :             case 1:
   29748              :               if (!((
   29749              : #line 27359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29750              : (TARGET_CMOVE
   29751              :    && ix86_pre_reload_split ()) && 
   29752              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29753              : (TARGET_64BIT)) && 
   29754              : #line 27362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29755              : ( 1)))
   29756              :                 return NULL;
   29757              :               return gen_split_973 (insn, operands);
   29758              : 
   29759              :             case 2:
   29760              :               if (!(
   29761              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29762              : (TARGET_CMOVE
   29763              :    && (QImode != QImode || !TARGET_PARTIAL_REG_STALL)
   29764              :    && ix86_pre_reload_split ()) && 
   29765              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29766              : ( 1)))
   29767              :                 return NULL;
   29768              :               return gen_split_977 (insn, operands);
   29769              : 
   29770              :             case 3:
   29771              :               if (!(
   29772              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29773              : (TARGET_CMOVE
   29774              :    && (HImode != QImode || !TARGET_PARTIAL_REG_STALL)
   29775              :    && ix86_pre_reload_split ()) && 
   29776              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29777              : ( 1)))
   29778              :                 return NULL;
   29779              :               return gen_split_981 (insn, operands);
   29780              : 
   29781              :             case 4:
   29782              :               if (!(
   29783              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29784              : (TARGET_CMOVE
   29785              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   29786              :    && ix86_pre_reload_split ()) && 
   29787              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29788              : ( 1)))
   29789              :                 return NULL;
   29790              :               return gen_split_985 (insn, operands);
   29791              : 
   29792              :             default:
   29793              :               return NULL;
   29794              :             }
   29795              : 
   29796              :         case SMIN:
   29797              :           switch (pattern410 (x1))
   29798              :             {
   29799              :             case 0:
   29800              :               if (((
   29801              : #line 27359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29802              : (TARGET_CMOVE
   29803              :    && ix86_pre_reload_split ()) && 
   29804              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29805              : (!TARGET_64BIT)) && 
   29806              : #line 27362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29807              : ( 1)))
   29808              :                 return gen_split_970 (insn, operands);
   29809              :               if (!((
   29810              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29811              : (TARGET_CMOVE
   29812              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   29813              :    && ix86_pre_reload_split ()) && 
   29814              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29815              : (TARGET_64BIT)) && 
   29816              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29817              : ( 1)))
   29818              :                 return NULL;
   29819              :               return gen_split_990 (insn, operands);
   29820              : 
   29821              :             case 1:
   29822              :               if (!((
   29823              : #line 27359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29824              : (TARGET_CMOVE
   29825              :    && ix86_pre_reload_split ()) && 
   29826              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29827              : (TARGET_64BIT)) && 
   29828              : #line 27362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29829              : ( 1)))
   29830              :                 return NULL;
   29831              :               return gen_split_974 (insn, operands);
   29832              : 
   29833              :             case 2:
   29834              :               if (!(
   29835              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29836              : (TARGET_CMOVE
   29837              :    && (QImode != QImode || !TARGET_PARTIAL_REG_STALL)
   29838              :    && ix86_pre_reload_split ()) && 
   29839              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29840              : ( 1)))
   29841              :                 return NULL;
   29842              :               return gen_split_978 (insn, operands);
   29843              : 
   29844              :             case 3:
   29845              :               if (!(
   29846              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29847              : (TARGET_CMOVE
   29848              :    && (HImode != QImode || !TARGET_PARTIAL_REG_STALL)
   29849              :    && ix86_pre_reload_split ()) && 
   29850              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29851              : ( 1)))
   29852              :                 return NULL;
   29853              :               return gen_split_982 (insn, operands);
   29854              : 
   29855              :             case 4:
   29856              :               if (!(
   29857              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29858              : (TARGET_CMOVE
   29859              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   29860              :    && ix86_pre_reload_split ()) && 
   29861              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29862              : ( 1)))
   29863              :                 return NULL;
   29864              :               return gen_split_986 (insn, operands);
   29865              : 
   29866              :             default:
   29867              :               return NULL;
   29868              :             }
   29869              : 
   29870              :         case UMAX:
   29871              :           switch (pattern220 (x1))
   29872              :             {
   29873              :             case 0:
   29874              :               if (((
   29875              : #line 27359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29876              : (TARGET_CMOVE
   29877              :    && ix86_pre_reload_split ()) && 
   29878              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29879              : (!TARGET_64BIT)) && 
   29880              : #line 27362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29881              : ( 1)))
   29882              :                 return gen_split_971 (insn, operands);
   29883              :               if (!((
   29884              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29885              : (TARGET_CMOVE
   29886              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   29887              :    && ix86_pre_reload_split ()) && 
   29888              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29889              : (TARGET_64BIT)) && 
   29890              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29891              : ( 1)))
   29892              :                 return NULL;
   29893              :               return gen_split_991 (insn, operands);
   29894              : 
   29895              :             case 1:
   29896              :               if (!((
   29897              : #line 27359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29898              : (TARGET_CMOVE
   29899              :    && ix86_pre_reload_split ()) && 
   29900              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29901              : (TARGET_64BIT)) && 
   29902              : #line 27362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29903              : ( 1)))
   29904              :                 return NULL;
   29905              :               return gen_split_975 (insn, operands);
   29906              : 
   29907              :             case 2:
   29908              :               if (!(
   29909              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29910              : (TARGET_CMOVE
   29911              :    && (QImode != QImode || !TARGET_PARTIAL_REG_STALL)
   29912              :    && ix86_pre_reload_split ()) && 
   29913              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29914              : ( 1)))
   29915              :                 return NULL;
   29916              :               return gen_split_979 (insn, operands);
   29917              : 
   29918              :             case 3:
   29919              :               if (!(
   29920              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29921              : (TARGET_CMOVE
   29922              :    && (HImode != QImode || !TARGET_PARTIAL_REG_STALL)
   29923              :    && ix86_pre_reload_split ()) && 
   29924              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29925              : ( 1)))
   29926              :                 return NULL;
   29927              :               return gen_split_983 (insn, operands);
   29928              : 
   29929              :             case 4:
   29930              :               if (!(
   29931              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29932              : (TARGET_CMOVE
   29933              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   29934              :    && ix86_pre_reload_split ()) && 
   29935              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29936              : ( 1)))
   29937              :                 return NULL;
   29938              :               return gen_split_987 (insn, operands);
   29939              : 
   29940              :             case 5:
   29941              :               x8 = XEXP (x3, 1);
   29942              :               if (rtx_equal_p (x8, operands[1])
   29943              :                   && (
   29944              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29945              : (TARGET_CMOVE
   29946              :    && ix86_pre_reload_split ()) && 
   29947              : #line 27601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29948              : ( 1)))
   29949              :                 return gen_split_993 (insn, operands);
   29950              :               if (!rtx_equal_p (x8, operands[2])
   29951              :                   || !(
   29952              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29953              : (TARGET_CMOVE
   29954              :    && ix86_pre_reload_split ()) && 
   29955              : #line 27601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29956              : ( 1)))
   29957              :                 return NULL;
   29958              :               return gen_split_994 (insn, operands);
   29959              : 
   29960              :             case 6:
   29961              :               x8 = XEXP (x3, 1);
   29962              :               if (rtx_equal_p (x8, operands[1])
   29963              :                   && (
   29964              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29965              : (TARGET_CMOVE
   29966              :    && ix86_pre_reload_split ()) && 
   29967              : #line 27601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29968              : ( 1)))
   29969              :                 return gen_split_997 (insn, operands);
   29970              :               if (!rtx_equal_p (x8, operands[2])
   29971              :                   || !(
   29972              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29973              : (TARGET_CMOVE
   29974              :    && ix86_pre_reload_split ()) && 
   29975              : #line 27601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29976              : ( 1)))
   29977              :                 return NULL;
   29978              :               return gen_split_998 (insn, operands);
   29979              : 
   29980              :             case 7:
   29981              :               x8 = XEXP (x3, 1);
   29982              :               if (rtx_equal_p (x8, operands[1])
   29983              :                   && ((
   29984              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29985              : (TARGET_CMOVE
   29986              :    && ix86_pre_reload_split ()) && 
   29987              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29988              : (TARGET_64BIT)) && 
   29989              : #line 27601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29990              : ( 1)))
   29991              :                 return gen_split_1001 (insn, operands);
   29992              :               if (!rtx_equal_p (x8, operands[2])
   29993              :                   || !((
   29994              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29995              : (TARGET_CMOVE
   29996              :    && ix86_pre_reload_split ()) && 
   29997              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   29998              : (TARGET_64BIT)) && 
   29999              : #line 27601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30000              : ( 1)))
   30001              :                 return NULL;
   30002              :               return gen_split_1002 (insn, operands);
   30003              : 
   30004              :             case 8:
   30005              :               if (!(
   30006              : #line 27631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30007              : (TARGET_CMOVE
   30008              :    && ix86_pre_reload_split ()) && 
   30009              : #line 27634 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30010              : ( 1)))
   30011              :                 return NULL;
   30012              :               return gen_split_1005 (insn, operands);
   30013              : 
   30014              :             case 9:
   30015              :               if (!(
   30016              : #line 27631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30017              : (TARGET_CMOVE
   30018              :    && ix86_pre_reload_split ()) && 
   30019              : #line 27634 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30020              : ( 1)))
   30021              :                 return NULL;
   30022              :               return gen_split_1007 (insn, operands);
   30023              : 
   30024              :             case 10:
   30025              :               if (!((
   30026              : #line 27631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30027              : (TARGET_CMOVE
   30028              :    && ix86_pre_reload_split ()) && 
   30029              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30030              : (TARGET_64BIT)) && 
   30031              : #line 27634 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30032              : ( 1)))
   30033              :                 return NULL;
   30034              :               return gen_split_1009 (insn, operands);
   30035              : 
   30036              :             default:
   30037              :               return NULL;
   30038              :             }
   30039              : 
   30040              :         case UMIN:
   30041              :           switch (pattern220 (x1))
   30042              :             {
   30043              :             case 0:
   30044              :               if (((
   30045              : #line 27359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30046              : (TARGET_CMOVE
   30047              :    && ix86_pre_reload_split ()) && 
   30048              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30049              : (!TARGET_64BIT)) && 
   30050              : #line 27362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30051              : ( 1)))
   30052              :                 return gen_split_972 (insn, operands);
   30053              :               if (!((
   30054              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30055              : (TARGET_CMOVE
   30056              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   30057              :    && ix86_pre_reload_split ()) && 
   30058              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30059              : (TARGET_64BIT)) && 
   30060              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30061              : ( 1)))
   30062              :                 return NULL;
   30063              :               return gen_split_992 (insn, operands);
   30064              : 
   30065              :             case 1:
   30066              :               if (!((
   30067              : #line 27359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30068              : (TARGET_CMOVE
   30069              :    && ix86_pre_reload_split ()) && 
   30070              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30071              : (TARGET_64BIT)) && 
   30072              : #line 27362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30073              : ( 1)))
   30074              :                 return NULL;
   30075              :               return gen_split_976 (insn, operands);
   30076              : 
   30077              :             case 2:
   30078              :               if (!(
   30079              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30080              : (TARGET_CMOVE
   30081              :    && (QImode != QImode || !TARGET_PARTIAL_REG_STALL)
   30082              :    && ix86_pre_reload_split ()) && 
   30083              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30084              : ( 1)))
   30085              :                 return NULL;
   30086              :               return gen_split_980 (insn, operands);
   30087              : 
   30088              :             case 3:
   30089              :               if (!(
   30090              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30091              : (TARGET_CMOVE
   30092              :    && (HImode != QImode || !TARGET_PARTIAL_REG_STALL)
   30093              :    && ix86_pre_reload_split ()) && 
   30094              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30095              : ( 1)))
   30096              :                 return NULL;
   30097              :               return gen_split_984 (insn, operands);
   30098              : 
   30099              :             case 4:
   30100              :               if (!(
   30101              : #line 27417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30102              : (TARGET_CMOVE
   30103              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   30104              :    && ix86_pre_reload_split ()) && 
   30105              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30106              : ( 1)))
   30107              :                 return NULL;
   30108              :               return gen_split_988 (insn, operands);
   30109              : 
   30110              :             case 5:
   30111              :               x8 = XEXP (x3, 1);
   30112              :               if (rtx_equal_p (x8, operands[1])
   30113              :                   && (
   30114              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30115              : (TARGET_CMOVE
   30116              :    && ix86_pre_reload_split ()) && 
   30117              : #line 27601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30118              : ( 1)))
   30119              :                 return gen_split_995 (insn, operands);
   30120              :               if (!rtx_equal_p (x8, operands[2])
   30121              :                   || !(
   30122              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30123              : (TARGET_CMOVE
   30124              :    && ix86_pre_reload_split ()) && 
   30125              : #line 27601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30126              : ( 1)))
   30127              :                 return NULL;
   30128              :               return gen_split_996 (insn, operands);
   30129              : 
   30130              :             case 6:
   30131              :               x8 = XEXP (x3, 1);
   30132              :               if (rtx_equal_p (x8, operands[1])
   30133              :                   && (
   30134              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30135              : (TARGET_CMOVE
   30136              :    && ix86_pre_reload_split ()) && 
   30137              : #line 27601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30138              : ( 1)))
   30139              :                 return gen_split_999 (insn, operands);
   30140              :               if (!rtx_equal_p (x8, operands[2])
   30141              :                   || !(
   30142              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30143              : (TARGET_CMOVE
   30144              :    && ix86_pre_reload_split ()) && 
   30145              : #line 27601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30146              : ( 1)))
   30147              :                 return NULL;
   30148              :               return gen_split_1000 (insn, operands);
   30149              : 
   30150              :             case 7:
   30151              :               x8 = XEXP (x3, 1);
   30152              :               if (rtx_equal_p (x8, operands[1])
   30153              :                   && ((
   30154              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30155              : (TARGET_CMOVE
   30156              :    && ix86_pre_reload_split ()) && 
   30157              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30158              : (TARGET_64BIT)) && 
   30159              : #line 27601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30160              : ( 1)))
   30161              :                 return gen_split_1003 (insn, operands);
   30162              :               if (!rtx_equal_p (x8, operands[2])
   30163              :                   || !((
   30164              : #line 27598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30165              : (TARGET_CMOVE
   30166              :    && ix86_pre_reload_split ()) && 
   30167              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30168              : (TARGET_64BIT)) && 
   30169              : #line 27601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30170              : ( 1)))
   30171              :                 return NULL;
   30172              :               return gen_split_1004 (insn, operands);
   30173              : 
   30174              :             case 8:
   30175              :               if (!(
   30176              : #line 27631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30177              : (TARGET_CMOVE
   30178              :    && ix86_pre_reload_split ()) && 
   30179              : #line 27634 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30180              : ( 1)))
   30181              :                 return NULL;
   30182              :               return gen_split_1006 (insn, operands);
   30183              : 
   30184              :             case 9:
   30185              :               if (!(
   30186              : #line 27631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30187              : (TARGET_CMOVE
   30188              :    && ix86_pre_reload_split ()) && 
   30189              : #line 27634 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30190              : ( 1)))
   30191              :                 return NULL;
   30192              :               return gen_split_1008 (insn, operands);
   30193              : 
   30194              :             case 10:
   30195              :               if (!((
   30196              : #line 27631 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30197              : (TARGET_CMOVE
   30198              :    && ix86_pre_reload_split ()) && 
   30199              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30200              : (TARGET_64BIT)) && 
   30201              : #line 27634 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30202              : ( 1)))
   30203              :                 return NULL;
   30204              :               return gen_split_1010 (insn, operands);
   30205              : 
   30206              :             default:
   30207              :               return NULL;
   30208              :             }
   30209              : 
   30210              :         case PLUS:
   30211              :         case MINUS:
   30212              :         case MULT:
   30213              :         case AND:
   30214              :         case IOR:
   30215              :         case XOR:
   30216              :         case ASHIFT:
   30217              :           return split_38 (x1, insn);
   30218              : 
   30219              :         case COMPARE:
   30220              :           operands[2] = x3;
   30221              :           if (!compare_operator (operands[2], E_VOIDmode))
   30222              :             return NULL;
   30223              :           x9 = XEXP (x3, 0);
   30224              :           if (GET_CODE (x9) != AND)
   30225              :             return NULL;
   30226              :           x8 = XEXP (x3, 1);
   30227              :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   30228              :             return NULL;
   30229              :           x4 = XVECEXP (x1, 0, 1);
   30230              :           if (GET_CODE (x4) != SET)
   30231              :             return NULL;
   30232              :           x10 = XEXP (x4, 1);
   30233              :           if (GET_CODE (x10) != AND)
   30234              :             return NULL;
   30235              :           x5 = XEXP (x2, 0);
   30236              :           operands[0] = x5;
   30237              :           if (!flags_reg_operand (operands[0], E_VOIDmode))
   30238              :             return NULL;
   30239              :           x11 = XEXP (x9, 0);
   30240              :           operands[3] = x11;
   30241              :           if (!aligned_operand (operands[3], E_VOIDmode))
   30242              :             return NULL;
   30243              :           x12 = XEXP (x9, 1);
   30244              :           operands[4] = x12;
   30245              :           if (!const_int_operand (operands[4], E_VOIDmode))
   30246              :             return NULL;
   30247              :           x7 = XEXP (x4, 0);
   30248              :           operands[1] = x7;
   30249              :           if (!register_operand (operands[1], E_VOIDmode))
   30250              :             return NULL;
   30251              :           x13 = XEXP (x10, 0);
   30252              :           if (!rtx_equal_p (x13, operands[3]))
   30253              :             return NULL;
   30254              :           x14 = XEXP (x10, 1);
   30255              :           if (!rtx_equal_p (x14, operands[4])
   30256              :               || !
   30257              : #line 28247 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30258              : (! TARGET_PARTIAL_REG_STALL && reload_completed
   30259              :    && optimize_insn_for_speed_p ()
   30260              :    && ((GET_MODE (operands[1]) == HImode && ! TARGET_FAST_PREFIX)
   30261              :        || (GET_MODE (operands[1]) == QImode && TARGET_PROMOTE_QImode))
   30262              :    /* Ensure that the operand will remain sign-extended immediate.  */
   30263              :    && ix86_match_ccmode (insn, INTVAL (operands[4]) >= 0 ? CCNOmode : CCZmode)))
   30264              :             return NULL;
   30265              :           return gen_split_1012 (insn, operands);
   30266              : 
   30267              :         case NEG:
   30268              :           return split_40 (x1, insn);
   30269              : 
   30270              :         case ABS:
   30271              :           x4 = XVECEXP (x1, 0, 1);
   30272              :           if (GET_CODE (x4) != USE)
   30273              :             return NULL;
   30274              :           x5 = XEXP (x2, 0);
   30275              :           operands[0] = x5;
   30276              :           x9 = XEXP (x3, 0);
   30277              :           operands[1] = x9;
   30278              :           switch (pattern844 (x1))
   30279              :             {
   30280              :             case 0:
   30281              :               if (!(
   30282              : #line 706 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30283              : (TARGET_MMX_WITH_SSE) && 
   30284              : #line 708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30285              : ( reload_completed)))
   30286              :                 return NULL;
   30287              :               return gen_split_1069 (insn, operands);
   30288              : 
   30289              :             case 1:
   30290              :               if (!(
   30291              : #line 2263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30292              : (TARGET_SSE) && 
   30293              : #line 2265 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30294              : ( reload_completed)))
   30295              :                 return NULL;
   30296              :               return gen_split_1078 (insn, operands);
   30297              : 
   30298              :             case 2:
   30299              :               if (!((
   30300              : #line 2263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30301              : (TARGET_SSE) && 
   30302              : #line 2248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30303              : (TARGET_MMX_WITH_SSE)) && 
   30304              : #line 2265 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30305              : ( reload_completed)))
   30306              :                 return NULL;
   30307              :               return gen_split_1080 (insn, operands);
   30308              : 
   30309              :             case 3:
   30310              :               if (!(
   30311              : #line 2263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30312              : (TARGET_SSE) && 
   30313              : #line 2265 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30314              : ( reload_completed)))
   30315              :                 return NULL;
   30316              :               return gen_split_1082 (insn, operands);
   30317              : 
   30318              :             case 4:
   30319              :               if (!((
   30320              : #line 2263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30321              : (TARGET_SSE) && 
   30322              : #line 2249 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30323              : (TARGET_MMX_WITH_SSE)) && 
   30324              : #line 2265 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30325              : ( reload_completed)))
   30326              :                 return NULL;
   30327              :               return gen_split_1084 (insn, operands);
   30328              : 
   30329              :             case 5:
   30330              :               if (!((
   30331              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30332              : (TARGET_SSE) && 
   30333              : #line 415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30334              : (TARGET_AVX512F)) && 
   30335              : #line 2611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30336              : ( reload_completed)))
   30337              :                 return NULL;
   30338              :               return gen_split_1307 (insn, operands);
   30339              : 
   30340              :             case 6:
   30341              :               if (!((
   30342              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30343              : (TARGET_SSE) && 
   30344              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30345              : (TARGET_AVX)) && 
   30346              : #line 2611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30347              : ( reload_completed)))
   30348              :                 return NULL;
   30349              :               return gen_split_1309 (insn, operands);
   30350              : 
   30351              :             case 7:
   30352              :               if (!((
   30353              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30354              : (TARGET_SSE) && 
   30355              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30356              : (TARGET_SSE2)) && 
   30357              : #line 2611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30358              : ( reload_completed)))
   30359              :                 return NULL;
   30360              :               return gen_split_1311 (insn, operands);
   30361              : 
   30362              :             case 8:
   30363              :               if (!((
   30364              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30365              : (TARGET_SSE) && 
   30366              : #line 417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30367              : (TARGET_AVX512F)) && 
   30368              : #line 2611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30369              : ( reload_completed)))
   30370              :                 return NULL;
   30371              :               return gen_split_1313 (insn, operands);
   30372              : 
   30373              :             case 9:
   30374              :               if (!((
   30375              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30376              : (TARGET_SSE) && 
   30377              : #line 418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30378              : (TARGET_AVX)) && 
   30379              : #line 2611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30380              : ( reload_completed)))
   30381              :                 return NULL;
   30382              :               return gen_split_1315 (insn, operands);
   30383              : 
   30384              :             case 10:
   30385              :               if (!((
   30386              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30387              : (TARGET_SSE) && 
   30388              : #line 418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30389              : (TARGET_SSE2)) && 
   30390              : #line 2611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30391              : ( reload_completed)))
   30392              :                 return NULL;
   30393              :               return gen_split_1317 (insn, operands);
   30394              : 
   30395              :             case 11:
   30396              :               if (!((
   30397              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30398              : (TARGET_SSE) && 
   30399              : #line 419 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30400              : (TARGET_AVX512F)) && 
   30401              : #line 2611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30402              : ( reload_completed)))
   30403              :                 return NULL;
   30404              :               return gen_split_1319 (insn, operands);
   30405              : 
   30406              :             case 12:
   30407              :               if (!((
   30408              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30409              : (TARGET_SSE) && 
   30410              : #line 419 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30411              : (TARGET_AVX)) && 
   30412              : #line 2611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30413              : ( reload_completed)))
   30414              :                 return NULL;
   30415              :               return gen_split_1321 (insn, operands);
   30416              : 
   30417              :             case 13:
   30418              :               if (!(
   30419              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30420              : (TARGET_SSE) && 
   30421              : #line 2611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30422              : ( reload_completed)))
   30423              :                 return NULL;
   30424              :               return gen_split_1323 (insn, operands);
   30425              : 
   30426              :             case 14:
   30427              :               if (!((
   30428              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30429              : (TARGET_SSE) && 
   30430              : #line 420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30431              : (TARGET_AVX512F)) && 
   30432              : #line 2611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30433              : ( reload_completed)))
   30434              :                 return NULL;
   30435              :               return gen_split_1325 (insn, operands);
   30436              : 
   30437              :             case 15:
   30438              :               if (!((
   30439              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30440              : (TARGET_SSE) && 
   30441              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30442              : (TARGET_AVX)) && 
   30443              : #line 2611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30444              : ( reload_completed)))
   30445              :                 return NULL;
   30446              :               return gen_split_1327 (insn, operands);
   30447              : 
   30448              :             case 16:
   30449              :               if (!((
   30450              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30451              : (TARGET_SSE) && 
   30452              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30453              : (TARGET_SSE2)) && 
   30454              : #line 2611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30455              : ( reload_completed)))
   30456              :                 return NULL;
   30457              :               return gen_split_1329 (insn, operands);
   30458              : 
   30459              :             default:
   30460              :               return NULL;
   30461              :             }
   30462              : 
   30463              :         case LSHIFTRT:
   30464              :           x4 = XVECEXP (x1, 0, 1);
   30465              :           if (GET_CODE (x4) != CLOBBER)
   30466              :             return NULL;
   30467              :           x7 = XEXP (x4, 0);
   30468              :           if (GET_CODE (x7) != REG
   30469              :               || REGNO (x7) != 17
   30470              :               || GET_MODE (x7) != E_CCmode)
   30471              :             return NULL;
   30472              :           x5 = XEXP (x2, 0);
   30473              :           operands[0] = x5;
   30474              :           x9 = XEXP (x3, 0);
   30475              :           operands[1] = x9;
   30476              :           x8 = XEXP (x3, 1);
   30477              :           operands[2] = x8;
   30478              :           switch (GET_MODE (operands[0]))
   30479              :             {
   30480              :             case E_V2QImode:
   30481              :               if (pattern1343 (x3, 
   30482              : E_V2QImode) != 0
   30483              :                   || !
   30484              : #line 4037 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30485              : ((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   30486              :    && reload_completed))
   30487              :                 return NULL;
   30488              :               return gen_split_1104 (insn, operands);
   30489              : 
   30490              :             case E_QImode:
   30491              :               if (pattern1349 (x3, 
   30492              : E_QImode) != 0
   30493              :                   || !
   30494              : #line 2316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30495              : (TARGET_AVX512F && reload_completed))
   30496              :                 return NULL;
   30497              :               return gen_split_1275 (insn, operands);
   30498              : 
   30499              :             case E_HImode:
   30500              :               if (pattern1349 (x3, 
   30501              : E_HImode) != 0
   30502              :                   || !
   30503              : #line 2316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30504              : (TARGET_AVX512F && reload_completed))
   30505              :                 return NULL;
   30506              :               return gen_split_1277 (insn, operands);
   30507              : 
   30508              :             case E_SImode:
   30509              :               if (pattern1349 (x3, 
   30510              : E_SImode) != 0
   30511              :                   || !(
   30512              : #line 2316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30513              : (TARGET_AVX512F && reload_completed) && 
   30514              : #line 2098 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30515              : (TARGET_AVX512BW)))
   30516              :                 return NULL;
   30517              :               return gen_split_1279 (insn, operands);
   30518              : 
   30519              :             case E_DImode:
   30520              :               if (pattern1349 (x3, 
   30521              : E_DImode) != 0
   30522              :                   || !(
   30523              : #line 2316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30524              : (TARGET_AVX512F && reload_completed) && 
   30525              : #line 2098 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30526              : (TARGET_AVX512BW)))
   30527              :                 return NULL;
   30528              :               return gen_split_1281 (insn, operands);
   30529              : 
   30530              :             default:
   30531              :               return NULL;
   30532              :             }
   30533              : 
   30534              :         case ASHIFTRT:
   30535              :           if (GET_MODE (x3) != E_V2QImode)
   30536              :             return NULL;
   30537              :           x4 = XVECEXP (x1, 0, 1);
   30538              :           if (pattern355 (x4) != 0)
   30539              :             return NULL;
   30540              :           x5 = XEXP (x2, 0);
   30541              :           operands[0] = x5;
   30542              :           if (!register_operand (operands[0], E_V2QImode))
   30543              :             return NULL;
   30544              :           x9 = XEXP (x3, 0);
   30545              :           operands[1] = x9;
   30546              :           if (!register_operand (operands[1], E_V2QImode))
   30547              :             return NULL;
   30548              :           x8 = XEXP (x3, 1);
   30549              :           operands[2] = x8;
   30550              :           if (!nonmemory_operand (operands[2], E_QImode)
   30551              :               || !
   30552              : #line 4037 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   30553              : ((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   30554              :    && reload_completed))
   30555              :             return NULL;
   30556              :           return gen_split_1105 (insn, operands);
   30557              : 
   30558              :         case ZERO_EXTEND:
   30559              :           return split_39 (x1, insn);
   30560              : 
   30561              :         case NE:
   30562              :         case EQ:
   30563              :           operands[1] = x3;
   30564              :           switch (pattern562 (x1))
   30565              :             {
   30566              :             case 0:
   30567              :               if (!((
   30568              : #line 2407 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30569              : (TARGET_AVX512BW) && 
   30570              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30571              : (TARGET_AVX512DQ)) && 
   30572              : #line 2409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30573              : ( reload_completed)))
   30574              :                 return NULL;
   30575              :               return gen_split_1283 (insn, operands);
   30576              : 
   30577              :             case 1:
   30578              :               if (!(
   30579              : #line 2407 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30580              : (TARGET_AVX512BW) && 
   30581              : #line 2409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30582              : ( reload_completed)))
   30583              :                 return NULL;
   30584              :               return gen_split_1284 (insn, operands);
   30585              : 
   30586              :             case 2:
   30587              :               if (!(
   30588              : #line 2407 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30589              : (TARGET_AVX512BW) && 
   30590              : #line 2409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30591              : ( reload_completed)))
   30592              :                 return NULL;
   30593              :               return gen_split_1285 (insn, operands);
   30594              : 
   30595              :             case 3:
   30596              :               if (!((
   30597              : #line 2407 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30598              : (TARGET_AVX512BW) && 
   30599              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30600              : (TARGET_AVX512BW && TARGET_64BIT)) && 
   30601              : #line 2409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30602              : ( reload_completed)))
   30603              :                 return NULL;
   30604              :               return gen_split_1286 (insn, operands);
   30605              : 
   30606              :             default:
   30607              :               return NULL;
   30608              :             }
   30609              : 
   30610              :         case IF_THEN_ELSE:
   30611              :           x9 = XEXP (x3, 0);
   30612              :           if (!bt_comparison_operator (x9, E_VOIDmode))
   30613              :             return NULL;
   30614              :           x12 = XEXP (x9, 1);
   30615              :           if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
   30616              :             return NULL;
   30617              :           x4 = XVECEXP (x1, 0, 1);
   30618              :           if (pattern236 (x4, 
   30619              : E_CCmode, 
   30620              : 17) != 0)
   30621              :             return NULL;
   30622              :           switch (pattern1193 (x2))
   30623              :             {
   30624              :             case 0:
   30625              :               if (!((
   30626              : #line 2442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30627              : (TARGET_AVX512BW) && 
   30628              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30629              : (TARGET_AVX512DQ)) && 
   30630              : #line 2444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30631              : ( reload_completed)))
   30632              :                 return NULL;
   30633              :               return gen_split_1287 (insn, operands);
   30634              : 
   30635              :             case 1:
   30636              :               if (!(
   30637              : #line 2442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30638              : (TARGET_AVX512BW) && 
   30639              : #line 2444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30640              : ( reload_completed)))
   30641              :                 return NULL;
   30642              :               return gen_split_1288 (insn, operands);
   30643              : 
   30644              :             case 2:
   30645              :               if (!(
   30646              : #line 2442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30647              : (TARGET_AVX512BW) && 
   30648              : #line 2444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30649              : ( reload_completed)))
   30650              :                 return NULL;
   30651              :               return gen_split_1289 (insn, operands);
   30652              : 
   30653              :             case 3:
   30654              :               if (!((
   30655              : #line 2442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30656              : (TARGET_AVX512BW) && 
   30657              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30658              : (TARGET_AVX512BW && TARGET_64BIT)) && 
   30659              : #line 2444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30660              : ( reload_completed)))
   30661              :                 return NULL;
   30662              :               return gen_split_1290 (insn, operands);
   30663              : 
   30664              :             case 4:
   30665              :               if (!((
   30666              : #line 2478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30667              : (TARGET_AVX512BW && TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL) && 
   30668              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30669              : (TARGET_AVX512DQ)) && 
   30670              : #line 2480 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30671              : ( reload_completed)))
   30672              :                 return NULL;
   30673              :               return gen_split_1291 (insn, operands);
   30674              : 
   30675              :             case 5:
   30676              :               if (!(
   30677              : #line 2478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30678              : (TARGET_AVX512BW && TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL) && 
   30679              : #line 2480 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30680              : ( reload_completed)))
   30681              :                 return NULL;
   30682              :               return gen_split_1292 (insn, operands);
   30683              : 
   30684              :             case 6:
   30685              :               if (!((
   30686              : #line 2478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30687              : (TARGET_AVX512BW && TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL) && 
   30688              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30689              : (TARGET_AVX512BW)) && 
   30690              : #line 2480 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30691              : ( reload_completed)))
   30692              :                 return NULL;
   30693              :               return gen_split_1293 (insn, operands);
   30694              : 
   30695              :             case 7:
   30696              :               if (!((
   30697              : #line 2478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30698              : (TARGET_AVX512BW && TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL) && 
   30699              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30700              : (TARGET_AVX512BW && TARGET_64BIT)) && 
   30701              : #line 2480 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30702              : ( reload_completed)))
   30703              :                 return NULL;
   30704              :               return gen_split_1294 (insn, operands);
   30705              : 
   30706              :             case 8:
   30707              :               if (!((
   30708              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30709              : (TARGET_AVX512BW && TARGET_CMOVE
   30710              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   30711              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30712              : (TARGET_AVX512DQ)) && 
   30713              : #line 2524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30714              : ( reload_completed)))
   30715              :                 return NULL;
   30716              :               return gen_split_1295 (insn, operands);
   30717              : 
   30718              :             case 9:
   30719              :               if (!(
   30720              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30721              : (TARGET_AVX512BW && TARGET_CMOVE
   30722              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   30723              : #line 2524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30724              : ( reload_completed)))
   30725              :                 return NULL;
   30726              :               return gen_split_1298 (insn, operands);
   30727              : 
   30728              :             case 10:
   30729              :               if (!((
   30730              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30731              : (TARGET_AVX512BW && TARGET_CMOVE
   30732              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   30733              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30734              : (TARGET_AVX512BW)) && 
   30735              : #line 2524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30736              : ( reload_completed)))
   30737              :                 return NULL;
   30738              :               return gen_split_1301 (insn, operands);
   30739              : 
   30740              :             case 11:
   30741              :               if (!((
   30742              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30743              : (TARGET_AVX512BW && TARGET_CMOVE
   30744              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   30745              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30746              : (TARGET_AVX512BW && TARGET_64BIT)) && 
   30747              : #line 2524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30748              : ( reload_completed)))
   30749              :                 return NULL;
   30750              :               return gen_split_1304 (insn, operands);
   30751              : 
   30752              :             case 12:
   30753              :               if (!((
   30754              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30755              : (TARGET_AVX512BW && TARGET_CMOVE
   30756              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   30757              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30758              : (TARGET_AVX512DQ)) && 
   30759              : #line 2524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30760              : ( reload_completed)))
   30761              :                 return NULL;
   30762              :               return gen_split_1296 (insn, operands);
   30763              : 
   30764              :             case 13:
   30765              :               if (!(
   30766              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30767              : (TARGET_AVX512BW && TARGET_CMOVE
   30768              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   30769              : #line 2524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30770              : ( reload_completed)))
   30771              :                 return NULL;
   30772              :               return gen_split_1299 (insn, operands);
   30773              : 
   30774              :             case 14:
   30775              :               if (!((
   30776              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30777              : (TARGET_AVX512BW && TARGET_CMOVE
   30778              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   30779              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30780              : (TARGET_AVX512BW)) && 
   30781              : #line 2524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30782              : ( reload_completed)))
   30783              :                 return NULL;
   30784              :               return gen_split_1302 (insn, operands);
   30785              : 
   30786              :             case 15:
   30787              :               if (!((
   30788              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30789              : (TARGET_AVX512BW && TARGET_CMOVE
   30790              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   30791              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30792              : (TARGET_AVX512BW && TARGET_64BIT)) && 
   30793              : #line 2524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30794              : ( reload_completed)))
   30795              :                 return NULL;
   30796              :               return gen_split_1305 (insn, operands);
   30797              : 
   30798              :             case 16:
   30799              :               if (!((
   30800              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30801              : (TARGET_AVX512BW && TARGET_CMOVE
   30802              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && ((((
   30803              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30804              : (TARGET_64BIT) && 
   30805              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30806              : (TARGET_AVX512DQ)) && 
   30807              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30808              : (TARGET_64BIT)) && 
   30809              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30810              : (TARGET_64BIT)) && 
   30811              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30812              : (TARGET_64BIT))) && 
   30813              : #line 2524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30814              : ( reload_completed)))
   30815              :                 return NULL;
   30816              :               return gen_split_1297 (insn, operands);
   30817              : 
   30818              :             case 17:
   30819              :               if (!((
   30820              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30821              : (TARGET_AVX512BW && TARGET_CMOVE
   30822              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   30823              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30824              : (TARGET_64BIT)) && 
   30825              : #line 2524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30826              : ( reload_completed)))
   30827              :                 return NULL;
   30828              :               return gen_split_1300 (insn, operands);
   30829              : 
   30830              :             case 18:
   30831              :               if (!((
   30832              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30833              : (TARGET_AVX512BW && TARGET_CMOVE
   30834              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && ((((
   30835              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30836              : (TARGET_64BIT) && 
   30837              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30838              : (TARGET_AVX512BW)) && 
   30839              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30840              : (TARGET_64BIT)) && 
   30841              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30842              : (TARGET_64BIT)) && 
   30843              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30844              : (TARGET_64BIT))) && 
   30845              : #line 2524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30846              : ( reload_completed)))
   30847              :                 return NULL;
   30848              :               return gen_split_1303 (insn, operands);
   30849              : 
   30850              :             case 19:
   30851              :               if (!((
   30852              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30853              : (TARGET_AVX512BW && TARGET_CMOVE
   30854              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && ((((
   30855              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30856              : (TARGET_64BIT) && 
   30857              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30858              : (TARGET_AVX512BW && TARGET_64BIT)) && 
   30859              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30860              : (TARGET_64BIT)) && 
   30861              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30862              : (TARGET_64BIT)) && 
   30863              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30864              : (TARGET_64BIT))) && 
   30865              : #line 2524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30866              : ( reload_completed)))
   30867              :                 return NULL;
   30868              :               return gen_split_1306 (insn, operands);
   30869              : 
   30870              :             default:
   30871              :               return NULL;
   30872              :             }
   30873              : 
   30874              :         case VEC_MERGE:
   30875              :           if (pattern221 (x1) != 0
   30876              :               || !
   30877              : #line 8701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30878              : (TARGET_SSE2 && reload_completed
   30879              :    && SSE_REG_P (operands[2])))
   30880              :             return NULL;
   30881              :           return gen_split_1600 (insn, operands);
   30882              : 
   30883              :         default:
   30884              :           return NULL;
   30885              :         }
   30886              : 
   30887              :     case 3:
   30888              :       x2 = XVECEXP (x1, 0, 0);
   30889              :       if (GET_CODE (x2) != SET)
   30890              :         return NULL;
   30891              :       x3 = XEXP (x2, 1);
   30892              :       if (GET_CODE (x3) != UNSPEC)
   30893              :         return NULL;
   30894              :       x5 = XEXP (x2, 0);
   30895              :       operands[0] = x5;
   30896              :       switch (XVECLEN (x3, 0))
   30897              :         {
   30898              :         case 5:
   30899              :           if (pattern730 (x1, 
   30900              : 132, 
   30901              : 5) != 0
   30902              :               || pattern1748 (x1) != 0
   30903              :               || !(
   30904              : #line 26459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30905              : (TARGET_SSE4_2
   30906              :    && ix86_pre_reload_split ()) && 
   30907              : #line 26462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30908              : ( 1)))
   30909              :             return NULL;
   30910              :           return gen_split_3791 (insn, operands);
   30911              : 
   30912              :         case 3:
   30913              :           if (pattern730 (x1, 
   30914              : 133, 
   30915              : 3) != 0
   30916              :               || pattern1749 (x1) != 0
   30917              :               || !(
   30918              : #line 26596 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30919              : (TARGET_SSE4_2
   30920              :    && ix86_pre_reload_split ()) && 
   30921              : #line 26599 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30922              : ( 1)))
   30923              :             return NULL;
   30924              :           return gen_split_3792 (insn, operands);
   30925              : 
   30926              :         case 1:
   30927              :           x4 = XVECEXP (x1, 0, 1);
   30928              :           if (GET_CODE (x4) != CLOBBER)
   30929              :             return NULL;
   30930              :           x15 = XVECEXP (x1, 0, 2);
   30931              :           if (GET_CODE (x15) != CLOBBER
   30932              :               || GET_MODE (x3) != E_DImode)
   30933              :             return NULL;
   30934              :           x6 = XVECEXP (x3, 0, 0);
   30935              :           operands[1] = x6;
   30936              :           x7 = XEXP (x4, 0);
   30937              :           operands[2] = x7;
   30938              :           if (!memory_operand (operands[2], E_DImode))
   30939              :             return NULL;
   30940              :           x16 = XEXP (x15, 0);
   30941              :           operands[3] = x16;
   30942              :           if (!scratch_operand (operands[3], E_DFmode))
   30943              :             return NULL;
   30944              :           switch (XINT (x3, 1))
   30945              :             {
   30946              :             case 291:
   30947              :               if (!nonimmediate_operand (operands[0], E_DImode)
   30948              :                   || !memory_operand (operands[1], E_DImode)
   30949              :                   || !(
   30950              : #line 196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   30951              : (!TARGET_64BIT && (TARGET_80387 || TARGET_SSE)) && 
   30952              : #line 198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   30953              : ( reload_completed)))
   30954              :                 return NULL;
   30955              :               return gen_split_3928 (insn, operands);
   30956              : 
   30957              :             case 292:
   30958              :               if (!memory_operand (operands[0], E_DImode)
   30959              :                   || !nonimmediate_operand (operands[1], E_DImode)
   30960              :                   || !(
   30961              : #line 295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   30962              : (!TARGET_64BIT && (TARGET_80387 || TARGET_SSE)) && 
   30963              : #line 297 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   30964              : ( reload_completed)))
   30965              :                 return NULL;
   30966              :               return gen_split_3929 (insn, operands);
   30967              : 
   30968              :             default:
   30969              :               return NULL;
   30970              :             }
   30971              : 
   30972              :         default:
   30973              :           return NULL;
   30974              :         }
   30975              : 
   30976              :     default:
   30977              :       return NULL;
   30978              :     }
   30979              : }
   30980              : 
   30981              :  rtx_insn *
   30982              : peephole2_19 (rtx x1 ATTRIBUTE_UNUSED,
   30983              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   30984              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   30985              : {
   30986              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   30987              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   30988              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   30989              :   rtx x18, x19, x20;
   30990              :   rtx_insn *res ATTRIBUTE_UNUSED;
   30991              :   x2 = PATTERN (peep2_next_insn (1));
   30992              :   if (GET_CODE (x2) != SET)
   30993              :     return NULL;
   30994              :   x3 = XEXP (x2, 1);
   30995              :   if (!ix86_comparison_operator (x3, E_QImode))
   30996              :     return NULL;
   30997              :   x4 = XEXP (x3, 0);
   30998              :   if (GET_CODE (x4) != REG
   30999              :       || REGNO (x4) != 17)
   31000              :     return NULL;
   31001              :   x5 = XEXP (x3, 1);
   31002              :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   31003              :     return NULL;
   31004              :   x6 = XEXP (x2, 0);
   31005              :   switch (GET_CODE (x6))
   31006              :     {
   31007              :     case REG:
   31008              :     case SUBREG:
   31009              :       operands[1] = x6;
   31010              :       if (!register_operand (operands[1], E_QImode))
   31011              :         return NULL;
   31012              :       operands[2] = x3;
   31013              :       x7 = PATTERN (peep2_next_insn (2));
   31014              :       switch (GET_CODE (x7))
   31015              :         {
   31016              :         case SET:
   31017              :           x8 = XEXP (x7, 1);
   31018              :           if (GET_CODE (x8) != ZERO_EXTEND)
   31019              :             return NULL;
   31020              :           x9 = XEXP (x7, 0);
   31021              :           operands[3] = x9;
   31022              :           if (!any_QIreg_operand (operands[3], E_VOIDmode))
   31023              :             return NULL;
   31024              :           x10 = XEXP (x8, 0);
   31025              :           if (!rtx_equal_p (x10, operands[1])
   31026              :               || !
   31027              : #line 20297 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31028              : ((peep2_reg_dead_p (3, operands[1])
   31029              :     || operands_match_p (operands[1], operands[3]))
   31030              :    && ! reg_overlap_mentioned_p (operands[3], operands[0])
   31031              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   31032              :             return NULL;
   31033              :           *pmatch_len_ = 2;
   31034              :           return gen_peephole2_189 (insn, operands);
   31035              : 
   31036              :         case PARALLEL:
   31037              :           if (XVECLEN (x7, 0) != 2)
   31038              :             return NULL;
   31039              :           x11 = XVECEXP (x7, 0, 0);
   31040              :           if (GET_CODE (x11) != SET)
   31041              :             return NULL;
   31042              :           x12 = XEXP (x11, 1);
   31043              :           if (GET_CODE (x12) != AND
   31044              :               || GET_MODE (x12) != E_SImode)
   31045              :             return NULL;
   31046              :           x13 = XEXP (x12, 1);
   31047              :           if (GET_CODE (x13) != CONST_INT
   31048              :               || XWINT (x13, 0) != 255L
   31049              :               || pattern1751 (x7, 
   31050              : E_SImode) != 0)
   31051              :             return NULL;
   31052              :           x14 = XEXP (x12, 0);
   31053              :           if (!rtx_equal_p (x14, operands[3])
   31054              :               || !
   31055              : #line 20369 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31056              : (REGNO (operands[1]) == REGNO (operands[3])
   31057              :    && ! reg_overlap_mentioned_p (operands[3], operands[0])
   31058              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   31059              :             return NULL;
   31060              :           *pmatch_len_ = 2;
   31061              :           return gen_peephole2_192 (insn, operands);
   31062              : 
   31063              :         default:
   31064              :           return NULL;
   31065              :         }
   31066              : 
   31067              :     case STRICT_LOW_PART:
   31068              :       if (peep2_current_count < 4)
   31069              :         return NULL;
   31070              :       x15 = XEXP (x6, 0);
   31071              :       operands[5] = x15;
   31072              :       if (!register_operand (operands[5], E_QImode))
   31073              :         return NULL;
   31074              :       operands[6] = x3;
   31075              :       x7 = PATTERN (peep2_next_insn (2));
   31076              :       if (GET_CODE (x7) != SET)
   31077              :         return NULL;
   31078              :       x8 = XEXP (x7, 1);
   31079              :       if (!ix86_comparison_operator (x8, E_QImode))
   31080              :         return NULL;
   31081              :       operands[2] = x8;
   31082              :       x10 = XEXP (x8, 0);
   31083              :       if (GET_CODE (x10) != REG
   31084              :           || REGNO (x10) != 17)
   31085              :         return NULL;
   31086              :       x16 = XEXP (x8, 1);
   31087              :       if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   31088              :         return NULL;
   31089              :       x9 = XEXP (x7, 0);
   31090              :       operands[1] = x9;
   31091              :       if (!register_operand (operands[1], E_QImode))
   31092              :         return NULL;
   31093              :       x17 = PATTERN (peep2_next_insn (3));
   31094              :       if (GET_CODE (x17) != SET)
   31095              :         return NULL;
   31096              :       x18 = XEXP (x17, 1);
   31097              :       if (GET_CODE (x18) != ZERO_EXTEND)
   31098              :         return NULL;
   31099              :       x19 = XEXP (x17, 0);
   31100              :       operands[3] = x19;
   31101              :       if (!any_QIreg_operand (operands[3], E_VOIDmode))
   31102              :         return NULL;
   31103              :       x20 = XEXP (x18, 0);
   31104              :       if (!rtx_equal_p (x20, operands[1])
   31105              :           || !
   31106              : #line 20442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31107              : ((peep2_reg_dead_p (4, operands[1])
   31108              :     || operands_match_p (operands[1], operands[3]))
   31109              :    && ! reg_overlap_mentioned_p (operands[3], operands[0])
   31110              :    && ! reg_overlap_mentioned_p (operands[3], operands[5])
   31111              :    && ! reg_overlap_mentioned_p (operands[1], operands[5])
   31112              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   31113              :         return NULL;
   31114              :       *pmatch_len_ = 3;
   31115              :       return gen_peephole2_195 (insn, operands);
   31116              : 
   31117              :     default:
   31118              :       return NULL;
   31119              :     }
   31120              : }
   31121              : 
   31122              :  rtx_insn *
   31123              : peephole2_25 (rtx x1 ATTRIBUTE_UNUSED,
   31124              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31125              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31126              : {
   31127              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31128              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31129              :   rtx x10;
   31130              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31131              :   x2 = PATTERN (peep2_next_insn (1));
   31132              :   if (pattern1361 (x2, 
   31133              : E_SImode) != 0)
   31134              :     return NULL;
   31135              :   x3 = XVECEXP (x2, 0, 0);
   31136              :   x4 = XEXP (x3, 1);
   31137              :   x5 = XEXP (x4, 0);
   31138              :   if (!rtx_equal_p (x5, operands[0]))
   31139              :     return NULL;
   31140              :   x6 = XEXP (x3, 0);
   31141              :   if (!rtx_equal_p (x6, operands[0]))
   31142              :     return NULL;
   31143              :   x7 = PATTERN (peep2_next_insn (2));
   31144              :   x8 = XEXP (x7, 1);
   31145              :   if (!rtx_equal_p (x8, operands[0]))
   31146              :     return NULL;
   31147              :   x9 = PATTERN (peep2_next_insn (3));
   31148              :   if (GET_CODE (x9) != SET)
   31149              :     return NULL;
   31150              :   x10 = XEXP (x7, 0);
   31151              :   if (rtx_equal_p (x10, operands[1])
   31152              :       && pattern1850 (x9) == 0
   31153              :       && 
   31154              : #line 28634 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31155              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31156              :    && peep2_reg_dead_p (4, operands[0])
   31157              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31158              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   31159              :    && (SImode != QImode
   31160              :        || immediate_operand (operands[2], QImode)
   31161              :        || any_QIreg_operand (operands[2], QImode))
   31162              :    && ix86_match_ccmode (peep2_next_insn (3),
   31163              :                          (GET_CODE (operands[3]) == PLUS
   31164              :                           || GET_CODE (operands[3]) == MINUS)
   31165              :                          ? CCGOCmode : CCNOmode)))
   31166              :     {
   31167              :       *pmatch_len_ = 3;
   31168              :       res = gen_peephole2_317 (insn, operands);
   31169              :       if (res != NULL_RTX)
   31170              :         return res;
   31171              :     }
   31172              :   if (peep2_current_count < 5
   31173              :       || pattern1851 (x10, 
   31174              : E_SImode) != 0
   31175              :       || !
   31176              : #line 28915 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31177              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31178              :    && peep2_reg_dead_p (3, operands[0])
   31179              :    && peep2_reg_dead_p (5, operands[4])
   31180              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31181              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   31182              :    && !reg_overlap_mentioned_p (operands[4], operands[1])
   31183              :    && (SImode != QImode
   31184              :        || immediate_operand (operands[2], QImode)
   31185              :        || any_QIreg_operand (operands[2], QImode))
   31186              :    && ix86_match_ccmode (peep2_next_insn (4),
   31187              :                          (GET_CODE (operands[3]) == PLUS
   31188              :                           || GET_CODE (operands[3]) == MINUS)
   31189              :                          ? CCGOCmode : CCNOmode)))
   31190              :     return NULL;
   31191              :   *pmatch_len_ = 4;
   31192              :   return gen_peephole2_347 (insn, operands);
   31193              : }
   31194              : 
   31195              :  rtx_insn *
   31196              : peephole2_28 (rtx x1 ATTRIBUTE_UNUSED,
   31197              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31198              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31199              : {
   31200              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31201              :   rtx x2, x3, x4, x5, x6, x7, x8;
   31202              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31203              :   x2 = XEXP (x1, 1);
   31204              :   if (GET_MODE (x2) != E_SImode)
   31205              :     return NULL;
   31206              :   x3 = XEXP (x2, 0);
   31207              :   if (GET_CODE (x3) != AND
   31208              :       || pattern119 (x2) != 0)
   31209              :     return NULL;
   31210              :   x4 = XEXP (x1, 0);
   31211              :   operands[0] = x4;
   31212              :   if (!general_reg_operand (operands[0], E_SImode))
   31213              :     return NULL;
   31214              :   x5 = XEXP (x3, 0);
   31215              :   if (!rtx_equal_p (x5, operands[0]))
   31216              :     return NULL;
   31217              :   x6 = XEXP (x2, 1);
   31218              :   x7 = XEXP (x6, 0);
   31219              :   x8 = XEXP (x7, 0);
   31220              :   if (!rtx_equal_p (x8, operands[0])
   31221              :       || !
   31222              : #line 23025 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31223              : (!(TARGET_USE_XCHGB ||
   31224              :      TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   31225              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   31226              :     return NULL;
   31227              :   *pmatch_len_ = 0;
   31228              :   return gen_peephole2_211 (insn, operands);
   31229              : }
   31230              : 
   31231              :  rtx_insn *
   31232              : peephole2_29 (rtx x1 ATTRIBUTE_UNUSED,
   31233              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31234              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31235              : {
   31236              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31237              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31238              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   31239              :   rtx x18, x19, x20, x21;
   31240              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31241              :   if (peep2_current_count < 2)
   31242              :     return NULL;
   31243              :   x2 = XEXP (x1, 0);
   31244              :   operands[0] = x2;
   31245              :   x3 = XEXP (x1, 1);
   31246              :   x4 = XEXP (x3, 0);
   31247              :   operands[1] = x4;
   31248              :   if (!general_reg_operand (operands[1], E_QImode))
   31249              :     return NULL;
   31250              :   x5 = PATTERN (peep2_next_insn (1));
   31251              :   if (GET_CODE (x5) != PARALLEL
   31252              :       || XVECLEN (x5, 0) != 2)
   31253              :     return NULL;
   31254              :   x6 = XVECEXP (x5, 0, 0);
   31255              :   if (GET_CODE (x6) != SET)
   31256              :     return NULL;
   31257              :   x7 = XVECEXP (x5, 0, 1);
   31258              :   if (GET_CODE (x7) != CLOBBER)
   31259              :     return NULL;
   31260              :   switch (GET_MODE (operands[0]))
   31261              :     {
   31262              :     case E_HImode:
   31263              :       if (!register_operand (operands[0], E_HImode)
   31264              :           || GET_MODE (x3) != E_HImode)
   31265              :         return NULL;
   31266              :       x8 = XEXP (x6, 1);
   31267              :       if (GET_CODE (x8) != UNSPEC
   31268              :           || XVECLEN (x8, 0) != 1
   31269              :           || XINT (x8, 1) != 28
   31270              :           || GET_MODE (x8) != E_CCmode)
   31271              :         return NULL;
   31272              :       x9 = XEXP (x6, 0);
   31273              :       if (GET_CODE (x9) != REG
   31274              :           || REGNO (x9) != 17
   31275              :           || GET_MODE (x9) != E_CCmode)
   31276              :         return NULL;
   31277              :       x10 = XVECEXP (x8, 0, 0);
   31278              :       if (!rtx_equal_p (x10, operands[0]))
   31279              :         return NULL;
   31280              :       x11 = XEXP (x7, 0);
   31281              :       if (!rtx_equal_p (x11, operands[0]))
   31282              :         return NULL;
   31283              :       *pmatch_len_ = 1;
   31284              :       return gen_peephole2_213 (insn, operands);
   31285              : 
   31286              :     case E_SImode:
   31287              :       if (peep2_current_count < 3
   31288              :           || peep2_current_count < 4
   31289              :           || !register_operand (operands[0], E_SImode)
   31290              :           || GET_MODE (x3) != E_SImode)
   31291              :         return NULL;
   31292              :       x8 = XEXP (x6, 1);
   31293              :       if (GET_CODE (x8) != POPCOUNT
   31294              :           || GET_MODE (x8) != E_SImode)
   31295              :         return NULL;
   31296              :       x11 = XEXP (x7, 0);
   31297              :       if (GET_CODE (x11) != REG
   31298              :           || REGNO (x11) != 17
   31299              :           || GET_MODE (x11) != E_CCmode)
   31300              :         return NULL;
   31301              :       x9 = XEXP (x6, 0);
   31302              :       operands[2] = x9;
   31303              :       if (!register_operand (operands[2], E_SImode))
   31304              :         return NULL;
   31305              :       x12 = XEXP (x8, 0);
   31306              :       if (!rtx_equal_p (x12, operands[0]))
   31307              :         return NULL;
   31308              :       x13 = PATTERN (peep2_next_insn (2));
   31309              :       if (GET_CODE (x13) != SET
   31310              :           || pattern1777 (x13) != 0)
   31311              :         return NULL;
   31312              :       x14 = XEXP (x13, 1);
   31313              :       x15 = XEXP (x14, 0);
   31314              :       x16 = XEXP (x15, 0);
   31315              :       operands[3] = x16;
   31316              :       if (!register_operand (operands[3], E_QImode))
   31317              :         return NULL;
   31318              :       x17 = PATTERN (peep2_next_insn (3));
   31319              :       if (GET_CODE (x17) != SET)
   31320              :         return NULL;
   31321              :       x18 = XEXP (x17, 1);
   31322              :       if (GET_CODE (x18) != IF_THEN_ELSE)
   31323              :         return NULL;
   31324              :       x19 = XEXP (x18, 0);
   31325              :       if (!bt_comparison_operator (x19, E_VOIDmode))
   31326              :         return NULL;
   31327              :       operands[4] = x19;
   31328              :       if (pattern1898 (x17) != 0)
   31329              :         return NULL;
   31330              :       x20 = XEXP (x18, 1);
   31331              :       x21 = XEXP (x20, 0);
   31332              :       operands[5] = x21;
   31333              :       if (!
   31334              : #line 23205 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31335              : (REGNO (operands[2]) == REGNO (operands[3])
   31336              :    && peep2_reg_dead_p (3, operands[0])
   31337              :    && peep2_reg_dead_p (3, operands[2])
   31338              :    && peep2_regno_dead_p (4, FLAGS_REG)))
   31339              :         return NULL;
   31340              :       *pmatch_len_ = 3;
   31341              :       return gen_peephole2_214 (insn, operands);
   31342              : 
   31343              :     default:
   31344              :       return NULL;
   31345              :     }
   31346              : }
   31347              : 
   31348              :  rtx_insn *
   31349              : peephole2_33 (rtx x1 ATTRIBUTE_UNUSED,
   31350              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31351              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31352              : {
   31353              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31354              :   rtx x2, x3, x4, x5, x6;
   31355              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31356              :   x2 = XEXP (x1, 0);
   31357              :   if (REGNO (x2) != 17)
   31358              :     return NULL;
   31359              :   x3 = XEXP (x1, 1);
   31360              :   operands[0] = x3;
   31361              :   x4 = PATTERN (peep2_next_insn (1));
   31362              :   if (GET_CODE (x4) != SET)
   31363              :     return NULL;
   31364              :   x5 = XEXP (x4, 1);
   31365              :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   31366              :     return NULL;
   31367              :   x6 = XEXP (x4, 0);
   31368              :   operands[1] = x6;
   31369              :   switch (GET_MODE (operands[1]))
   31370              :     {
   31371              :     case E_QImode:
   31372              :       if (!general_reg_operand (operands[1], E_QImode)
   31373              :           || !
   31374              : #line 27471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31375              : (peep2_regno_dead_p (0, FLAGS_REG)
   31376              :    && !reg_overlap_mentioned_p (operands[1], operands[0])))
   31377              :         return NULL;
   31378              :       *pmatch_len_ = 1;
   31379              :       return gen_peephole2_233 (insn, operands);
   31380              : 
   31381              :     case E_HImode:
   31382              :       if (!general_reg_operand (operands[1], E_HImode)
   31383              :           || !
   31384              : #line 27471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31385              : (peep2_regno_dead_p (0, FLAGS_REG)
   31386              :    && !reg_overlap_mentioned_p (operands[1], operands[0])))
   31387              :         return NULL;
   31388              :       *pmatch_len_ = 1;
   31389              :       return gen_peephole2_234 (insn, operands);
   31390              : 
   31391              :     case E_SImode:
   31392              :       if (!general_reg_operand (operands[1], E_SImode)
   31393              :           || !
   31394              : #line 27471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31395              : (peep2_regno_dead_p (0, FLAGS_REG)
   31396              :    && !reg_overlap_mentioned_p (operands[1], operands[0])))
   31397              :         return NULL;
   31398              :       *pmatch_len_ = 1;
   31399              :       return gen_peephole2_235 (insn, operands);
   31400              : 
   31401              :     case E_DImode:
   31402              :       if (!general_reg_operand (operands[1], E_DImode)
   31403              :           || !(
   31404              : #line 27471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31405              : (peep2_regno_dead_p (0, FLAGS_REG)
   31406              :    && !reg_overlap_mentioned_p (operands[1], operands[0])) && 
   31407              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31408              : (TARGET_64BIT)))
   31409              :         return NULL;
   31410              :       *pmatch_len_ = 1;
   31411              :       return gen_peephole2_236 (insn, operands);
   31412              : 
   31413              :     default:
   31414              :       return NULL;
   31415              :     }
   31416              : }
   31417              : 
   31418              :  rtx_insn *
   31419              : peephole2_35 (rtx x1 ATTRIBUTE_UNUSED,
   31420              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31421              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31422              : {
   31423              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31424              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31425              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   31426              :   rtx x18;
   31427              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31428              :   x2 = XEXP (x1, 1);
   31429              :   operands[1] = x2;
   31430              :   if (!general_operand (operands[1], E_QImode))
   31431              :     return NULL;
   31432              :   x3 = PATTERN (peep2_next_insn (1));
   31433              :   x4 = XVECEXP (x3, 0, 1);
   31434              :   if (GET_CODE (x4) != SET)
   31435              :     return NULL;
   31436              :   x5 = XEXP (x4, 1);
   31437              :   if (GET_CODE (x5) != UNSPEC_VOLATILE
   31438              :       || XVECLEN (x5, 0) != 1
   31439              :       || XINT (x5, 1) != 109
   31440              :       || GET_MODE (x5) != E_QImode)
   31441              :     return NULL;
   31442              :   x6 = XVECEXP (x5, 0, 0);
   31443              :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   31444              :     return NULL;
   31445              :   x7 = XVECEXP (x3, 0, 2);
   31446              :   if (GET_CODE (x7) != SET)
   31447              :     return NULL;
   31448              :   x8 = XEXP (x7, 1);
   31449              :   if (GET_CODE (x8) != UNSPEC_VOLATILE
   31450              :       || XVECLEN (x8, 0) != 1
   31451              :       || XINT (x8, 1) != 109
   31452              :       || GET_MODE (x8) != E_CCZmode)
   31453              :     return NULL;
   31454              :   x9 = XVECEXP (x8, 0, 0);
   31455              :   if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   31456              :     return NULL;
   31457              :   x10 = XEXP (x7, 0);
   31458              :   if (GET_CODE (x10) != REG
   31459              :       || REGNO (x10) != 17
   31460              :       || GET_MODE (x10) != E_CCZmode)
   31461              :     return NULL;
   31462              :   x11 = XVECEXP (x3, 0, 0);
   31463              :   x12 = XEXP (x11, 1);
   31464              :   x13 = XVECEXP (x12, 0, 0);
   31465              :   operands[2] = x13;
   31466              :   if (!memory_operand (operands[2], E_QImode))
   31467              :     return NULL;
   31468              :   x14 = XVECEXP (x12, 0, 2);
   31469              :   operands[3] = x14;
   31470              :   if (!register_operand (operands[3], E_QImode)
   31471              :       || pattern1713 (x3) != 0)
   31472              :     return NULL;
   31473              :   x15 = PATTERN (peep2_next_insn (2));
   31474              :   if (pattern1546 (x15) != 0)
   31475              :     return NULL;
   31476              :   x16 = XEXP (x15, 1);
   31477              :   x17 = XEXP (x16, 0);
   31478              :   operands[5] = x17;
   31479              :   if (!register_operand (operands[5], E_QImode))
   31480              :     return NULL;
   31481              :   x18 = XEXP (x16, 1);
   31482              :   operands[6] = x18;
   31483              :   if (!general_operand (operands[6], E_QImode)
   31484              :       || !
   31485              : #line 521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31486              : ((rtx_equal_p (operands[0], operands[5])
   31487              :     && rtx_equal_p (operands[1], operands[6]))
   31488              :    || (rtx_equal_p (operands[0], operands[6])
   31489              :        && rtx_equal_p (operands[1], operands[5]))))
   31490              :     return NULL;
   31491              :   *pmatch_len_ = 2;
   31492              :   return gen_peephole2_435 (insn, operands);
   31493              : }
   31494              : 
   31495              :  rtx_insn *
   31496              : peephole2_43 (rtx x1 ATTRIBUTE_UNUSED,
   31497              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31498              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31499              : {
   31500              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31501              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31502              :   rtx x10, x11, x12, x13, x14;
   31503              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31504              :   x2 = XVECEXP (x1, 0, 1);
   31505              :   x3 = XEXP (x2, 1);
   31506              :   if (GET_CODE (x3) != PLUS)
   31507              :     return NULL;
   31508              :   x4 = XVECEXP (x1, 0, 0);
   31509              :   x5 = XEXP (x4, 0);
   31510              :   if (GET_MODE (x5) != E_CCCmode)
   31511              :     return NULL;
   31512              :   x6 = XEXP (x4, 1);
   31513              :   if (GET_MODE (x6) != E_CCCmode)
   31514              :     return NULL;
   31515              :   x7 = XEXP (x6, 1);
   31516              :   if (!rtx_equal_p (x7, operands[0]))
   31517              :     return NULL;
   31518              :   x8 = XEXP (x3, 0);
   31519              :   if (!rtx_equal_p (x8, operands[0]))
   31520              :     return NULL;
   31521              :   x9 = XEXP (x3, 1);
   31522              :   if (!rtx_equal_p (x9, operands[1]))
   31523              :     return NULL;
   31524              :   x10 = XEXP (x2, 0);
   31525              :   if (!rtx_equal_p (x10, operands[0]))
   31526              :     return NULL;
   31527              :   x11 = PATTERN (peep2_next_insn (1));
   31528              :   x12 = XEXP (x11, 1);
   31529              :   if (!rtx_equal_p (x12, operands[0]))
   31530              :     return NULL;
   31531              :   x13 = XEXP (x11, 0);
   31532              :   if (!rtx_equal_p (x13, operands[1]))
   31533              :     return NULL;
   31534              :   x14 = XEXP (x6, 0);
   31535              :   switch (GET_MODE (x14))
   31536              :     {
   31537              :     case E_QImode:
   31538              :       if (!general_reg_operand (operands[0], E_QImode)
   31539              :           || !memory_operand (operands[1], E_QImode)
   31540              :           || GET_MODE (x3) != E_QImode
   31541              :           || !
   31542              : #line 10311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31543              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31544              :    && peep2_reg_dead_p (2, operands[0])
   31545              :    && !reg_overlap_mentioned_p (operands[0], operands[1])))
   31546              :         return NULL;
   31547              :       *pmatch_len_ = 1;
   31548              :       return gen_peephole2_120 (insn, operands);
   31549              : 
   31550              :     case E_HImode:
   31551              :       if (!general_reg_operand (operands[0], E_HImode)
   31552              :           || !memory_operand (operands[1], E_HImode)
   31553              :           || GET_MODE (x3) != E_HImode
   31554              :           || !
   31555              : #line 10311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31556              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31557              :    && peep2_reg_dead_p (2, operands[0])
   31558              :    && !reg_overlap_mentioned_p (operands[0], operands[1])))
   31559              :         return NULL;
   31560              :       *pmatch_len_ = 1;
   31561              :       return gen_peephole2_121 (insn, operands);
   31562              : 
   31563              :     case E_SImode:
   31564              :       if (!general_reg_operand (operands[0], E_SImode)
   31565              :           || !memory_operand (operands[1], E_SImode)
   31566              :           || GET_MODE (x3) != E_SImode
   31567              :           || !
   31568              : #line 10311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31569              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31570              :    && peep2_reg_dead_p (2, operands[0])
   31571              :    && !reg_overlap_mentioned_p (operands[0], operands[1])))
   31572              :         return NULL;
   31573              :       *pmatch_len_ = 1;
   31574              :       return gen_peephole2_122 (insn, operands);
   31575              : 
   31576              :     case E_DImode:
   31577              :       if (!general_reg_operand (operands[0], E_DImode)
   31578              :           || !memory_operand (operands[1], E_DImode)
   31579              :           || GET_MODE (x3) != E_DImode
   31580              :           || !(
   31581              : #line 10311 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31582              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31583              :    && peep2_reg_dead_p (2, operands[0])
   31584              :    && !reg_overlap_mentioned_p (operands[0], operands[1])) && 
   31585              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31586              : (TARGET_64BIT)))
   31587              :         return NULL;
   31588              :       *pmatch_len_ = 1;
   31589              :       return gen_peephole2_123 (insn, operands);
   31590              : 
   31591              :     default:
   31592              :       return NULL;
   31593              :     }
   31594              : }
   31595              : 
   31596              :  rtx_insn *
   31597              : peephole2_46 (rtx x1 ATTRIBUTE_UNUSED,
   31598              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31599              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31600              : {
   31601              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31602              :   rtx x2, x3, x4, x5, x6;
   31603              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31604              :   if (peep2_current_count < 2
   31605              :       || pattern248 (x1) != 0)
   31606              :     return NULL;
   31607              :   x2 = PATTERN (peep2_next_insn (1));
   31608              :   if (GET_CODE (x2) != SET)
   31609              :     return NULL;
   31610              :   x3 = XEXP (x2, 1);
   31611              :   if (GET_CODE (x3) != COMPARE
   31612              :       || GET_MODE (x3) != E_CCZmode
   31613              :       || pattern1458 (x2, 
   31614              : 0) != 0)
   31615              :     return NULL;
   31616              :   x4 = XEXP (x3, 0);
   31617              :   if (!rtx_equal_p (x4, operands[1]))
   31618              :     return NULL;
   31619              :   switch (GET_MODE (operands[0]))
   31620              :     {
   31621              :     case E_QImode:
   31622              :       if (!general_reg_operand (operands[0], E_QImode))
   31623              :         return NULL;
   31624              :       x5 = XVECEXP (x1, 0, 0);
   31625              :       x6 = XEXP (x5, 1);
   31626              :       if (GET_MODE (x6) != E_QImode
   31627              :           || !general_reg_operand (operands[1], E_QImode)
   31628              :           || !
   31629              : #line 14902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31630              : (TARGET_APX_NDD))
   31631              :         return NULL;
   31632              :       *pmatch_len_ = 1;
   31633              :       return gen_peephole2_175 (insn, operands);
   31634              : 
   31635              :     case E_HImode:
   31636              :       if (!general_reg_operand (operands[0], E_HImode))
   31637              :         return NULL;
   31638              :       x5 = XVECEXP (x1, 0, 0);
   31639              :       x6 = XEXP (x5, 1);
   31640              :       if (GET_MODE (x6) != E_HImode
   31641              :           || !general_reg_operand (operands[1], E_HImode)
   31642              :           || !
   31643              : #line 14902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31644              : (TARGET_APX_NDD))
   31645              :         return NULL;
   31646              :       *pmatch_len_ = 1;
   31647              :       return gen_peephole2_176 (insn, operands);
   31648              : 
   31649              :     case E_SImode:
   31650              :       if (!general_reg_operand (operands[0], E_SImode))
   31651              :         return NULL;
   31652              :       x5 = XVECEXP (x1, 0, 0);
   31653              :       x6 = XEXP (x5, 1);
   31654              :       if (GET_MODE (x6) != E_SImode
   31655              :           || !general_reg_operand (operands[1], E_SImode)
   31656              :           || !
   31657              : #line 14902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31658              : (TARGET_APX_NDD))
   31659              :         return NULL;
   31660              :       *pmatch_len_ = 1;
   31661              :       return gen_peephole2_177 (insn, operands);
   31662              : 
   31663              :     case E_DImode:
   31664              :       if (!general_reg_operand (operands[0], E_DImode))
   31665              :         return NULL;
   31666              :       x5 = XVECEXP (x1, 0, 0);
   31667              :       x6 = XEXP (x5, 1);
   31668              :       if (GET_MODE (x6) != E_DImode
   31669              :           || !general_reg_operand (operands[1], E_DImode)
   31670              :           || !(
   31671              : #line 14902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31672              : (TARGET_APX_NDD) && 
   31673              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31674              : (TARGET_64BIT)))
   31675              :         return NULL;
   31676              :       *pmatch_len_ = 1;
   31677              :       return gen_peephole2_178 (insn, operands);
   31678              : 
   31679              :     default:
   31680              :       return NULL;
   31681              :     }
   31682              : }
   31683              : 
   31684              :  rtx_insn *
   31685              : peephole2_48 (rtx x1 ATTRIBUTE_UNUSED,
   31686              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31687              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31688              : {
   31689              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31690              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31691              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   31692              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31693              :   if (peep2_current_count < 3)
   31694              :     return NULL;
   31695              :   x2 = XVECEXP (x1, 0, 0);
   31696              :   x3 = XEXP (x2, 0);
   31697              :   operands[5] = x3;
   31698              :   if (!flags_reg_operand (operands[5], E_VOIDmode))
   31699              :     return NULL;
   31700              :   x4 = XEXP (x2, 1);
   31701              :   operands[0] = x4;
   31702              :   x5 = XVECEXP (x1, 0, 1);
   31703              :   operands[4] = x5;
   31704              :   x6 = PATTERN (peep2_next_insn (1));
   31705              :   if (GET_CODE (x6) != SET)
   31706              :     return NULL;
   31707              :   x7 = XEXP (x6, 1);
   31708              :   if (!ix86_comparison_operator (x7, E_QImode))
   31709              :     return NULL;
   31710              :   operands[2] = x7;
   31711              :   x8 = XEXP (x7, 0);
   31712              :   if (GET_CODE (x8) != REG
   31713              :       || REGNO (x8) != 17)
   31714              :     return NULL;
   31715              :   x9 = XEXP (x7, 1);
   31716              :   if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   31717              :     return NULL;
   31718              :   x10 = XEXP (x6, 0);
   31719              :   operands[1] = x10;
   31720              :   if (!register_operand (operands[1], E_QImode))
   31721              :     return NULL;
   31722              :   x11 = PATTERN (peep2_next_insn (2));
   31723              :   switch (GET_CODE (x11))
   31724              :     {
   31725              :     case SET:
   31726              :       x12 = XEXP (x11, 1);
   31727              :       if (GET_CODE (x12) != ZERO_EXTEND)
   31728              :         return NULL;
   31729              :       x13 = XEXP (x11, 0);
   31730              :       operands[3] = x13;
   31731              :       if (!any_QIreg_operand (operands[3], E_VOIDmode))
   31732              :         return NULL;
   31733              :       x14 = XEXP (x12, 0);
   31734              :       if (!rtx_equal_p (x14, operands[1])
   31735              :           || !
   31736              : #line 20317 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31737              : ((peep2_reg_dead_p (3, operands[1])
   31738              :     || operands_match_p (operands[1], operands[3]))
   31739              :    && ! reg_overlap_mentioned_p (operands[3], operands[0])
   31740              :    && ! reg_overlap_mentioned_p (operands[3], operands[4])
   31741              :    && ! reg_set_p (operands[3], operands[4])
   31742              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   31743              :         return NULL;
   31744              :       *pmatch_len_ = 2;
   31745              :       return gen_peephole2_190 (insn, operands);
   31746              : 
   31747              :     case PARALLEL:
   31748              :       if (XVECLEN (x11, 0) != 2)
   31749              :         return NULL;
   31750              :       x15 = XVECEXP (x11, 0, 0);
   31751              :       if (GET_CODE (x15) != SET)
   31752              :         return NULL;
   31753              :       x16 = XEXP (x15, 1);
   31754              :       if (GET_CODE (x16) != ZERO_EXTEND
   31755              :           || pattern1751 (x11, 
   31756              : E_VOIDmode) != 0)
   31757              :         return NULL;
   31758              :       x17 = XEXP (x16, 0);
   31759              :       if (!rtx_equal_p (x17, operands[1])
   31760              :           || !
   31761              : #line 20389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31762              : ((peep2_reg_dead_p (3, operands[1])
   31763              :     || operands_match_p (operands[1], operands[3]))
   31764              :    && ! reg_overlap_mentioned_p (operands[3], operands[0])
   31765              :    && ! reg_overlap_mentioned_p (operands[3], operands[4])
   31766              :    && ! reg_set_p (operands[3], operands[4])
   31767              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   31768              :         return NULL;
   31769              :       *pmatch_len_ = 2;
   31770              :       return gen_peephole2_193 (insn, operands);
   31771              : 
   31772              :     default:
   31773              :       return NULL;
   31774              :     }
   31775              : }
   31776              : 
   31777              :  rtx_insn *
   31778              : peephole2_52 (rtx x1 ATTRIBUTE_UNUSED,
   31779              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31780              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31781              : {
   31782              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31783              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31784              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   31785              :   rtx x18, x19;
   31786              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31787              :   x2 = XVECEXP (x1, 0, 0);
   31788              :   if (GET_CODE (x2) != SET)
   31789              :     return NULL;
   31790              :   x3 = XEXP (x2, 1);
   31791              :   switch (GET_CODE (x3))
   31792              :     {
   31793              :     case REG:
   31794              :       res = peephole2_39 (x1, insn, pmatch_len_);
   31795              :       if (res != NULL_RTX)
   31796              :         return res;
   31797              :       break;
   31798              : 
   31799              :     case CONST_INT:
   31800              :       res = peephole2_41 (x1, insn, pmatch_len_);
   31801              :       if (res != NULL_RTX)
   31802              :         return res;
   31803              :       break;
   31804              : 
   31805              :     case PLUS:
   31806              :       res = peephole2_42 (x1, insn, pmatch_len_);
   31807              :       if (res != NULL_RTX)
   31808              :         return res;
   31809              :       break;
   31810              : 
   31811              :     case COMPARE:
   31812              :       res = peephole2_44 (x1, insn, pmatch_len_);
   31813              :       if (res != NULL_RTX)
   31814              :         return res;
   31815              :       break;
   31816              : 
   31817              :     case MULT:
   31818              :       res = peephole2_45 (x1, insn, pmatch_len_);
   31819              :       if (res != NULL_RTX)
   31820              :         return res;
   31821              :       break;
   31822              : 
   31823              :     case NEG:
   31824              :       res = peephole2_46 (x1, insn, pmatch_len_);
   31825              :       if (res != NULL_RTX)
   31826              :         return res;
   31827              :       break;
   31828              : 
   31829              :     case ASHIFT:
   31830              :       if (pattern248 (x1) == 0)
   31831              :         {
   31832              :           x4 = XEXP (x3, 1);
   31833              :           operands[2] = x4;
   31834              :           if (nonmemory_operand (operands[2], E_QImode))
   31835              :             {
   31836              :               switch (GET_MODE (operands[0]))
   31837              :                 {
   31838              :                 case E_DImode:
   31839              :                   if (register_operand (operands[0], E_DImode)
   31840              :                       && GET_MODE (x3) == E_DImode
   31841              :                       && nonmemory_operand (operands[1], E_DImode)
   31842              :                       && (
   31843              : #line 15685 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31844              : (TARGET_CMOVE) && 
   31845              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31846              : (!TARGET_64BIT)))
   31847              :                     {
   31848              :                       *pmatch_len_ = 0;
   31849              :                       res = gen_peephole2_179 (insn, operands);
   31850              :                       if (res != NULL_RTX)
   31851              :                         return res;
   31852              :                     }
   31853              :                   break;
   31854              : 
   31855              :                 case E_TImode:
   31856              :                   if (register_operand (operands[0], E_TImode)
   31857              :                       && GET_MODE (x3) == E_TImode
   31858              :                       && nonmemory_operand (operands[1], E_TImode)
   31859              :                       && (
   31860              : #line 15685 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31861              : (TARGET_CMOVE) && 
   31862              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31863              : (TARGET_64BIT)))
   31864              :                     {
   31865              :                       *pmatch_len_ = 0;
   31866              :                       res = gen_peephole2_180 (insn, operands);
   31867              :                       if (res != NULL_RTX)
   31868              :                         return res;
   31869              :                     }
   31870              :                   break;
   31871              : 
   31872              :                 default:
   31873              :                   break;
   31874              :                 }
   31875              :             }
   31876              :         }
   31877              :       break;
   31878              : 
   31879              :     case LSHIFTRT:
   31880              :       switch (pattern250 (x1))
   31881              :         {
   31882              :         case 0:
   31883              :           if ((
   31884              : #line 17055 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31885              : (TARGET_CMOVE) && 
   31886              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31887              : (!TARGET_64BIT)))
   31888              :             {
   31889              :               *pmatch_len_ = 0;
   31890              :               res = gen_peephole2_181 (insn, operands);
   31891              :               if (res != NULL_RTX)
   31892              :                 return res;
   31893              :             }
   31894              :           break;
   31895              : 
   31896              :         case 1:
   31897              :           if ((
   31898              : #line 17055 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31899              : (TARGET_CMOVE) && 
   31900              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31901              : (TARGET_64BIT)))
   31902              :             {
   31903              :               *pmatch_len_ = 0;
   31904              :               res = gen_peephole2_183 (insn, operands);
   31905              :               if (res != NULL_RTX)
   31906              :                 return res;
   31907              :             }
   31908              :           break;
   31909              : 
   31910              :         default:
   31911              :           break;
   31912              :         }
   31913              :       break;
   31914              : 
   31915              :     case ASHIFTRT:
   31916              :       switch (pattern250 (x1))
   31917              :         {
   31918              :         case 0:
   31919              :           if ((
   31920              : #line 17055 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31921              : (TARGET_CMOVE) && 
   31922              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31923              : (!TARGET_64BIT)))
   31924              :             {
   31925              :               *pmatch_len_ = 0;
   31926              :               res = gen_peephole2_182 (insn, operands);
   31927              :               if (res != NULL_RTX)
   31928              :                 return res;
   31929              :             }
   31930              :           break;
   31931              : 
   31932              :         case 1:
   31933              :           if ((
   31934              : #line 17055 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31935              : (TARGET_CMOVE) && 
   31936              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31937              : (TARGET_64BIT)))
   31938              :             {
   31939              :               *pmatch_len_ = 0;
   31940              :               res = gen_peephole2_184 (insn, operands);
   31941              :               if (res != NULL_RTX)
   31942              :                 return res;
   31943              :             }
   31944              :           break;
   31945              : 
   31946              :         default:
   31947              :           break;
   31948              :         }
   31949              :       break;
   31950              : 
   31951              :     case NOT:
   31952              :       if (GET_MODE (x3) == E_DImode)
   31953              :         {
   31954              :           x5 = XEXP (x3, 0);
   31955              :           if (GET_CODE (x5) == ZERO_EXTRACT
   31956              :               && pattern376 (x1) == 0)
   31957              :             {
   31958              :               x6 = XEXP (x5, 0);
   31959              :               if (rtx_equal_p (x6, operands[0]))
   31960              :                 {
   31961              :                   x7 = XEXP (x5, 2);
   31962              :                   if (rtx_equal_p (x7, operands[1])
   31963              :                       && 
   31964              : #line 19466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31965              : (TARGET_64BIT && !TARGET_USE_BT))
   31966              :                     {
   31967              :                       *pmatch_len_ = 0;
   31968              :                       res = gen_peephole2_187 (insn, operands);
   31969              :                       if (res != NULL_RTX)
   31970              :                         return res;
   31971              :                     }
   31972              :                 }
   31973              :             }
   31974              :         }
   31975              :       break;
   31976              : 
   31977              :     case POPCOUNT:
   31978              :       res = peephole2_47 (x1, insn, pmatch_len_);
   31979              :       if (res != NULL_RTX)
   31980              :         return res;
   31981              :       break;
   31982              : 
   31983              :     default:
   31984              :       break;
   31985              :     }
   31986              :   if (peep2_current_count >= 2)
   31987              :     {
   31988              :       res = peephole2_48 (x1, insn, pmatch_len_);
   31989              :       if (res != NULL_RTX)
   31990              :         return res;
   31991              :     }
   31992              :   x8 = XVECEXP (x1, 0, 1);
   31993              :   if (GET_CODE (x8) != CLOBBER)
   31994              :     return NULL;
   31995              :   switch (GET_CODE (x3))
   31996              :     {
   31997              :     case COMPARE:
   31998              :     case PLUS:
   31999              :     case MINUS:
   32000              :     case MULT:
   32001              :     case DIV:
   32002              :     case MOD:
   32003              :     case UDIV:
   32004              :     case UMOD:
   32005              :     case AND:
   32006              :     case IOR:
   32007              :     case XOR:
   32008              :     case ASHIFT:
   32009              :     case ROTATE:
   32010              :     case ASHIFTRT:
   32011              :     case LSHIFTRT:
   32012              :     case ROTATERT:
   32013              :     case SMIN:
   32014              :     case SMAX:
   32015              :     case UMIN:
   32016              :     case UMAX:
   32017              :       x9 = XEXP (x2, 0);
   32018              :       operands[0] = x9;
   32019              :       res = peephole2_50 (x1, insn, pmatch_len_);
   32020              :       if (res != NULL_RTX)
   32021              :         return res;
   32022              :       x10 = XEXP (x8, 0);
   32023              :       if (GET_CODE (x10) != REG
   32024              :           || REGNO (x10) != 17
   32025              :           || GET_MODE (x10) != E_CCmode)
   32026              :         return NULL;
   32027              :       switch (GET_CODE (x3))
   32028              :         {
   32029              :         case PLUS:
   32030              :         case MINUS:
   32031              :         case AND:
   32032              :         case IOR:
   32033              :         case XOR:
   32034              :           if (peep2_current_count >= 2)
   32035              :             {
   32036              :               res = peephole2_51 (x1, insn, pmatch_len_);
   32037              :               if (res != NULL_RTX)
   32038              :                 return res;
   32039              :             }
   32040              :           if (GET_CODE (x3) != PLUS
   32041              :               || pattern422 (x2) != 0)
   32042              :             return NULL;
   32043              :           switch (pattern1459 (x2))
   32044              :             {
   32045              :             case 0:
   32046              :               if ((
   32047              : #line 29332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32048              : ((TARGET_SINGLE_PUSH || optimize_insn_for_size_p ())
   32049              :    && INTVAL (operands[0]) == -GET_MODE_SIZE (word_mode)
   32050              :    && !ix86_red_zone_used) && (((((((
   32051              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32052              : (word_mode == SImode) && 
   32053              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32054              : (Pmode == SImode)) && 
   32055              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32056              : (Pmode == SImode)) && 
   32057              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32058              : (Pmode == SImode)) && 
   32059              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32060              : (Pmode == SImode)) && 
   32061              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32062              : (word_mode == SImode)) && 
   32063              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32064              : (Pmode == SImode)) && 
   32065              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32066              : (Pmode == SImode))))
   32067              :                 {
   32068              :                   *pmatch_len_ = 0;
   32069              :                   res = gen_peephole2_387 (insn, operands);
   32070              :                   if (res != NULL_RTX)
   32071              :                     return res;
   32072              :                 }
   32073              :               if ((
   32074              : #line 29332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32075              : ((TARGET_SINGLE_PUSH || optimize_insn_for_size_p ())
   32076              :    && INTVAL (operands[0]) == -GET_MODE_SIZE (word_mode)
   32077              :    && !ix86_red_zone_used) && (((((((
   32078              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32079              : (word_mode == DImode) && 
   32080              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32081              : (Pmode == SImode)) && 
   32082              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32083              : (Pmode == SImode)) && 
   32084              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32085              : (Pmode == SImode)) && 
   32086              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32087              : (Pmode == SImode)) && 
   32088              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32089              : (word_mode == DImode)) && 
   32090              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32091              : (Pmode == SImode)) && 
   32092              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32093              : (Pmode == SImode))))
   32094              :                 {
   32095              :                   *pmatch_len_ = 0;
   32096              :                   res = gen_peephole2_388 (insn, operands);
   32097              :                   if (res != NULL_RTX)
   32098              :                     return res;
   32099              :                 }
   32100              :               if ((
   32101              : #line 29344 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32102              : ((TARGET_DOUBLE_PUSH || optimize_insn_for_size_p ())
   32103              :    && INTVAL (operands[0]) == -2*GET_MODE_SIZE (word_mode)
   32104              :    && !ix86_red_zone_used) && ((((((((((
   32105              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32106              : (word_mode == SImode) && 
   32107              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32108              : (Pmode == SImode)) && 
   32109              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32110              : (Pmode == SImode)) && 
   32111              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32112              : (Pmode == SImode)) && 
   32113              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32114              : (Pmode == SImode)) && 
   32115              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32116              : (word_mode == SImode)) && 
   32117              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32118              : (Pmode == SImode)) && 
   32119              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32120              : (Pmode == SImode)) && 
   32121              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32122              : (word_mode == SImode)) && 
   32123              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32124              : (Pmode == SImode)) && 
   32125              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32126              : (Pmode == SImode))))
   32127              :                 {
   32128              :                   *pmatch_len_ = 0;
   32129              :                   res = gen_peephole2_391 (insn, operands);
   32130              :                   if (res != NULL_RTX)
   32131              :                     return res;
   32132              :                 }
   32133              :               if ((
   32134              : #line 29344 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32135              : ((TARGET_DOUBLE_PUSH || optimize_insn_for_size_p ())
   32136              :    && INTVAL (operands[0]) == -2*GET_MODE_SIZE (word_mode)
   32137              :    && !ix86_red_zone_used) && ((((((((((
   32138              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32139              : (word_mode == DImode) && 
   32140              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32141              : (Pmode == SImode)) && 
   32142              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32143              : (Pmode == SImode)) && 
   32144              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32145              : (Pmode == SImode)) && 
   32146              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32147              : (Pmode == SImode)) && 
   32148              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32149              : (word_mode == DImode)) && 
   32150              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32151              : (Pmode == SImode)) && 
   32152              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32153              : (Pmode == SImode)) && 
   32154              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32155              : (word_mode == DImode)) && 
   32156              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32157              : (Pmode == SImode)) && 
   32158              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32159              : (Pmode == SImode))))
   32160              :                 {
   32161              :                   *pmatch_len_ = 0;
   32162              :                   res = gen_peephole2_392 (insn, operands);
   32163              :                   if (res != NULL_RTX)
   32164              :                     return res;
   32165              :                 }
   32166              :               if ((
   32167              : #line 29400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32168              : (INTVAL (operands[0]) == GET_MODE_SIZE (word_mode)) && (((((((
   32169              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32170              : (word_mode == SImode) && 
   32171              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32172              : (Pmode == SImode)) && 
   32173              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32174              : (Pmode == SImode)) && 
   32175              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32176              : (Pmode == SImode)) && 
   32177              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32178              : (Pmode == SImode)) && 
   32179              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32180              : (word_mode == SImode)) && 
   32181              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32182              : (Pmode == SImode)) && 
   32183              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32184              : (Pmode == SImode))))
   32185              :                 {
   32186              :                   *pmatch_len_ = 0;
   32187              :                   res = gen_peephole2_407 (insn, operands);
   32188              :                   if (res != NULL_RTX)
   32189              :                     return res;
   32190              :                 }
   32191              :               if ((
   32192              : #line 29400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32193              : (INTVAL (operands[0]) == GET_MODE_SIZE (word_mode)) && (((((((
   32194              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32195              : (word_mode == DImode) && 
   32196              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32197              : (Pmode == SImode)) && 
   32198              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32199              : (Pmode == SImode)) && 
   32200              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32201              : (Pmode == SImode)) && 
   32202              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32203              : (Pmode == SImode)) && 
   32204              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32205              : (word_mode == DImode)) && 
   32206              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32207              : (Pmode == SImode)) && 
   32208              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32209              : (Pmode == SImode))))
   32210              :                 {
   32211              :                   *pmatch_len_ = 0;
   32212              :                   res = gen_peephole2_408 (insn, operands);
   32213              :                   if (res != NULL_RTX)
   32214              :                     return res;
   32215              :                 }
   32216              :               if ((
   32217              : #line 29412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32218              : (INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
   32219              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32220              : (word_mode == SImode) && 
   32221              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32222              : (Pmode == SImode)) && 
   32223              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32224              : (Pmode == SImode)) && 
   32225              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32226              : (Pmode == SImode)) && 
   32227              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32228              : (Pmode == SImode)) && 
   32229              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32230              : (word_mode == SImode)) && 
   32231              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32232              : (Pmode == SImode)) && 
   32233              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32234              : (Pmode == SImode)) && 
   32235              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32236              : (word_mode == SImode)) && 
   32237              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32238              : (Pmode == SImode)) && 
   32239              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32240              : (Pmode == SImode))))
   32241              :                 {
   32242              :                   *pmatch_len_ = 0;
   32243              :                   res = gen_peephole2_411 (insn, operands);
   32244              :                   if (res != NULL_RTX)
   32245              :                     return res;
   32246              :                 }
   32247              :               if ((
   32248              : #line 29412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32249              : (INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
   32250              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32251              : (word_mode == DImode) && 
   32252              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32253              : (Pmode == SImode)) && 
   32254              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32255              : (Pmode == SImode)) && 
   32256              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32257              : (Pmode == SImode)) && 
   32258              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32259              : (Pmode == SImode)) && 
   32260              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32261              : (word_mode == DImode)) && 
   32262              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32263              : (Pmode == SImode)) && 
   32264              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32265              : (Pmode == SImode)) && 
   32266              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32267              : (word_mode == DImode)) && 
   32268              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32269              : (Pmode == SImode)) && 
   32270              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32271              : (Pmode == SImode))))
   32272              :                 {
   32273              :                   *pmatch_len_ = 0;
   32274              :                   res = gen_peephole2_412 (insn, operands);
   32275              :                   if (res != NULL_RTX)
   32276              :                     return res;
   32277              :                 }
   32278              :               if ((
   32279              : #line 29422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32280              : (optimize_insn_for_size_p ()
   32281              :    && INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
   32282              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32283              : (word_mode == SImode) && 
   32284              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32285              : (Pmode == SImode)) && 
   32286              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32287              : (Pmode == SImode)) && 
   32288              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32289              : (Pmode == SImode)) && 
   32290              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32291              : (Pmode == SImode)) && 
   32292              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32293              : (word_mode == SImode)) && 
   32294              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32295              : (Pmode == SImode)) && 
   32296              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32297              : (Pmode == SImode)) && 
   32298              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32299              : (word_mode == SImode)) && 
   32300              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32301              : (Pmode == SImode)) && 
   32302              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32303              : (Pmode == SImode))))
   32304              :                 {
   32305              :                   *pmatch_len_ = 0;
   32306              :                   res = gen_peephole2_415 (insn, operands);
   32307              :                   if (res != NULL_RTX)
   32308              :                     return res;
   32309              :                 }
   32310              :               if (!(
   32311              : #line 29422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32312              : (optimize_insn_for_size_p ()
   32313              :    && INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
   32314              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32315              : (word_mode == DImode) && 
   32316              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32317              : (Pmode == SImode)) && 
   32318              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32319              : (Pmode == SImode)) && 
   32320              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32321              : (Pmode == SImode)) && 
   32322              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32323              : (Pmode == SImode)) && 
   32324              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32325              : (word_mode == DImode)) && 
   32326              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32327              : (Pmode == SImode)) && 
   32328              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32329              : (Pmode == SImode)) && 
   32330              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32331              : (word_mode == DImode)) && 
   32332              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32333              : (Pmode == SImode)) && 
   32334              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32335              : (Pmode == SImode))))
   32336              :                 return NULL;
   32337              :               *pmatch_len_ = 0;
   32338              :               return gen_peephole2_416 (insn, operands);
   32339              : 
   32340              :             case 1:
   32341              :               if ((
   32342              : #line 29332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32343              : ((TARGET_SINGLE_PUSH || optimize_insn_for_size_p ())
   32344              :    && INTVAL (operands[0]) == -GET_MODE_SIZE (word_mode)
   32345              :    && !ix86_red_zone_used) && (((((((
   32346              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32347              : (word_mode == SImode) && 
   32348              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32349              : (Pmode == DImode)) && 
   32350              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32351              : (Pmode == DImode)) && 
   32352              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32353              : (Pmode == DImode)) && 
   32354              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32355              : (Pmode == DImode)) && 
   32356              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32357              : (word_mode == SImode)) && 
   32358              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32359              : (Pmode == DImode)) && 
   32360              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32361              : (Pmode == DImode))))
   32362              :                 {
   32363              :                   *pmatch_len_ = 0;
   32364              :                   res = gen_peephole2_389 (insn, operands);
   32365              :                   if (res != NULL_RTX)
   32366              :                     return res;
   32367              :                 }
   32368              :               if ((
   32369              : #line 29332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32370              : ((TARGET_SINGLE_PUSH || optimize_insn_for_size_p ())
   32371              :    && INTVAL (operands[0]) == -GET_MODE_SIZE (word_mode)
   32372              :    && !ix86_red_zone_used) && (((((((
   32373              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32374              : (word_mode == DImode) && 
   32375              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32376              : (Pmode == DImode)) && 
   32377              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32378              : (Pmode == DImode)) && 
   32379              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32380              : (Pmode == DImode)) && 
   32381              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32382              : (Pmode == DImode)) && 
   32383              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32384              : (word_mode == DImode)) && 
   32385              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32386              : (Pmode == DImode)) && 
   32387              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32388              : (Pmode == DImode))))
   32389              :                 {
   32390              :                   *pmatch_len_ = 0;
   32391              :                   res = gen_peephole2_390 (insn, operands);
   32392              :                   if (res != NULL_RTX)
   32393              :                     return res;
   32394              :                 }
   32395              :               if ((
   32396              : #line 29344 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32397              : ((TARGET_DOUBLE_PUSH || optimize_insn_for_size_p ())
   32398              :    && INTVAL (operands[0]) == -2*GET_MODE_SIZE (word_mode)
   32399              :    && !ix86_red_zone_used) && ((((((((((
   32400              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32401              : (word_mode == SImode) && 
   32402              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32403              : (Pmode == DImode)) && 
   32404              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32405              : (Pmode == DImode)) && 
   32406              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32407              : (Pmode == DImode)) && 
   32408              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32409              : (Pmode == DImode)) && 
   32410              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32411              : (word_mode == SImode)) && 
   32412              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32413              : (Pmode == DImode)) && 
   32414              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32415              : (Pmode == DImode)) && 
   32416              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32417              : (word_mode == SImode)) && 
   32418              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32419              : (Pmode == DImode)) && 
   32420              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32421              : (Pmode == DImode))))
   32422              :                 {
   32423              :                   *pmatch_len_ = 0;
   32424              :                   res = gen_peephole2_393 (insn, operands);
   32425              :                   if (res != NULL_RTX)
   32426              :                     return res;
   32427              :                 }
   32428              :               if ((
   32429              : #line 29344 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32430              : ((TARGET_DOUBLE_PUSH || optimize_insn_for_size_p ())
   32431              :    && INTVAL (operands[0]) == -2*GET_MODE_SIZE (word_mode)
   32432              :    && !ix86_red_zone_used) && ((((((((((
   32433              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32434              : (word_mode == DImode) && 
   32435              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32436              : (Pmode == DImode)) && 
   32437              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32438              : (Pmode == DImode)) && 
   32439              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32440              : (Pmode == DImode)) && 
   32441              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32442              : (Pmode == DImode)) && 
   32443              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32444              : (word_mode == DImode)) && 
   32445              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32446              : (Pmode == DImode)) && 
   32447              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32448              : (Pmode == DImode)) && 
   32449              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32450              : (word_mode == DImode)) && 
   32451              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32452              : (Pmode == DImode)) && 
   32453              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32454              : (Pmode == DImode))))
   32455              :                 {
   32456              :                   *pmatch_len_ = 0;
   32457              :                   res = gen_peephole2_394 (insn, operands);
   32458              :                   if (res != NULL_RTX)
   32459              :                     return res;
   32460              :                 }
   32461              :               if ((
   32462              : #line 29400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32463              : (INTVAL (operands[0]) == GET_MODE_SIZE (word_mode)) && (((((((
   32464              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32465              : (word_mode == SImode) && 
   32466              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32467              : (Pmode == DImode)) && 
   32468              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32469              : (Pmode == DImode)) && 
   32470              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32471              : (Pmode == DImode)) && 
   32472              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32473              : (Pmode == DImode)) && 
   32474              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32475              : (word_mode == SImode)) && 
   32476              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32477              : (Pmode == DImode)) && 
   32478              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32479              : (Pmode == DImode))))
   32480              :                 {
   32481              :                   *pmatch_len_ = 0;
   32482              :                   res = gen_peephole2_409 (insn, operands);
   32483              :                   if (res != NULL_RTX)
   32484              :                     return res;
   32485              :                 }
   32486              :               if ((
   32487              : #line 29400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32488              : (INTVAL (operands[0]) == GET_MODE_SIZE (word_mode)) && (((((((
   32489              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32490              : (word_mode == DImode) && 
   32491              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32492              : (Pmode == DImode)) && 
   32493              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32494              : (Pmode == DImode)) && 
   32495              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32496              : (Pmode == DImode)) && 
   32497              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32498              : (Pmode == DImode)) && 
   32499              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32500              : (word_mode == DImode)) && 
   32501              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32502              : (Pmode == DImode)) && 
   32503              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32504              : (Pmode == DImode))))
   32505              :                 {
   32506              :                   *pmatch_len_ = 0;
   32507              :                   res = gen_peephole2_410 (insn, operands);
   32508              :                   if (res != NULL_RTX)
   32509              :                     return res;
   32510              :                 }
   32511              :               if ((
   32512              : #line 29412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32513              : (INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
   32514              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32515              : (word_mode == SImode) && 
   32516              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32517              : (Pmode == DImode)) && 
   32518              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32519              : (Pmode == DImode)) && 
   32520              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32521              : (Pmode == DImode)) && 
   32522              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32523              : (Pmode == DImode)) && 
   32524              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32525              : (word_mode == SImode)) && 
   32526              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32527              : (Pmode == DImode)) && 
   32528              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32529              : (Pmode == DImode)) && 
   32530              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32531              : (word_mode == SImode)) && 
   32532              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32533              : (Pmode == DImode)) && 
   32534              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32535              : (Pmode == DImode))))
   32536              :                 {
   32537              :                   *pmatch_len_ = 0;
   32538              :                   res = gen_peephole2_413 (insn, operands);
   32539              :                   if (res != NULL_RTX)
   32540              :                     return res;
   32541              :                 }
   32542              :               if ((
   32543              : #line 29412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32544              : (INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
   32545              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32546              : (word_mode == DImode) && 
   32547              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32548              : (Pmode == DImode)) && 
   32549              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32550              : (Pmode == DImode)) && 
   32551              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32552              : (Pmode == DImode)) && 
   32553              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32554              : (Pmode == DImode)) && 
   32555              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32556              : (word_mode == DImode)) && 
   32557              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32558              : (Pmode == DImode)) && 
   32559              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32560              : (Pmode == DImode)) && 
   32561              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32562              : (word_mode == DImode)) && 
   32563              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32564              : (Pmode == DImode)) && 
   32565              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32566              : (Pmode == DImode))))
   32567              :                 {
   32568              :                   *pmatch_len_ = 0;
   32569              :                   res = gen_peephole2_414 (insn, operands);
   32570              :                   if (res != NULL_RTX)
   32571              :                     return res;
   32572              :                 }
   32573              :               if ((
   32574              : #line 29422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32575              : (optimize_insn_for_size_p ()
   32576              :    && INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
   32577              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32578              : (word_mode == SImode) && 
   32579              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32580              : (Pmode == DImode)) && 
   32581              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32582              : (Pmode == DImode)) && 
   32583              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32584              : (Pmode == DImode)) && 
   32585              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32586              : (Pmode == DImode)) && 
   32587              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32588              : (word_mode == SImode)) && 
   32589              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32590              : (Pmode == DImode)) && 
   32591              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32592              : (Pmode == DImode)) && 
   32593              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32594              : (word_mode == SImode)) && 
   32595              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32596              : (Pmode == DImode)) && 
   32597              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32598              : (Pmode == DImode))))
   32599              :                 {
   32600              :                   *pmatch_len_ = 0;
   32601              :                   res = gen_peephole2_417 (insn, operands);
   32602              :                   if (res != NULL_RTX)
   32603              :                     return res;
   32604              :                 }
   32605              :               if (!(
   32606              : #line 29422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32607              : (optimize_insn_for_size_p ()
   32608              :    && INTVAL (operands[0]) == 2*GET_MODE_SIZE (word_mode)) && ((((((((((
   32609              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32610              : (word_mode == DImode) && 
   32611              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32612              : (Pmode == DImode)) && 
   32613              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32614              : (Pmode == DImode)) && 
   32615              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32616              : (Pmode == DImode)) && 
   32617              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32618              : (Pmode == DImode)) && 
   32619              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32620              : (word_mode == DImode)) && 
   32621              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32622              : (Pmode == DImode)) && 
   32623              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32624              : (Pmode == DImode)) && 
   32625              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32626              : (word_mode == DImode)) && 
   32627              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32628              : (Pmode == DImode)) && 
   32629              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32630              : (Pmode == DImode))))
   32631              :                 return NULL;
   32632              :               *pmatch_len_ = 0;
   32633              :               return gen_peephole2_418 (insn, operands);
   32634              : 
   32635              :             default:
   32636              :               return NULL;
   32637              :             }
   32638              : 
   32639              :         case MULT:
   32640              :           operands[0] = x9;
   32641              :           x5 = XEXP (x3, 0);
   32642              :           operands[1] = x5;
   32643              :           x4 = XEXP (x3, 1);
   32644              :           operands[2] = x4;
   32645              :           switch (GET_MODE (operands[0]))
   32646              :             {
   32647              :             case E_SImode:
   32648              :               if (!register_operand (operands[0], E_SImode)
   32649              :                   || GET_MODE (x3) != E_SImode)
   32650              :                 return NULL;
   32651              :               if (const359_operand (operands[2], E_SImode))
   32652              :                 {
   32653              :                   if (register_operand (operands[1], E_SImode))
   32654              :                     {
   32655              :                       *pmatch_len_ = 0;
   32656              :                       res = gen_peephole2_420 (insn, operands);
   32657              :                       if (res != NULL_RTX)
   32658              :                         return res;
   32659              :                     }
   32660              :                   if (nonimmediate_operand (operands[1], E_SImode)
   32661              :                       && 
   32662              : #line 29465 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32663              : (optimize_insn_for_speed_p ()
   32664              :    && (!TARGET_PARTIAL_REG_STALL || SImode == SImode)))
   32665              :                     {
   32666              :                       *pmatch_len_ = 0;
   32667              :                       res = gen_peephole2_422 (insn, operands);
   32668              :                       if (res != NULL_RTX)
   32669              :                         return res;
   32670              :                     }
   32671              :                 }
   32672              :               if (memory_operand (operands[1], E_SImode)
   32673              :                   && immediate_operand (operands[2], E_SImode)
   32674              :                   && 
   32675              : #line 29481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32676              : (TARGET_SLOW_IMUL_IMM32_MEM && optimize_insn_for_speed_p ()
   32677              :    && !satisfies_constraint_K (operands[2])))
   32678              :                 {
   32679              :                   *pmatch_len_ = 0;
   32680              :                   res = gen_peephole2_424 (insn, operands);
   32681              :                   if (res != NULL_RTX)
   32682              :                     return res;
   32683              :                 }
   32684              :               if (!nonimmediate_operand (operands[1], E_SImode)
   32685              :                   || !const_int_operand (operands[2], E_SImode)
   32686              :                   || !
   32687              : #line 29513 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32688              : (TARGET_SLOW_IMUL_IMM8 && optimize_insn_for_speed_p ()
   32689              :    && satisfies_constraint_K (operands[2])))
   32690              :                 return NULL;
   32691              :               *pmatch_len_ = 0;
   32692              :               return gen_peephole2_428 (insn, operands);
   32693              : 
   32694              :             case E_DImode:
   32695              :               if (!register_operand (operands[0], E_DImode)
   32696              :                   || GET_MODE (x3) != E_DImode)
   32697              :                 return NULL;
   32698              :               if (const359_operand (operands[2], E_DImode))
   32699              :                 {
   32700              :                   if (register_operand (operands[1], E_DImode)
   32701              :                       && (
   32702              : #line 29451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32703              : (!TARGET_PARTIAL_REG_STALL
   32704              :    || DImode == SImode
   32705              :    || optimize_function_for_size_p (cfun)) && 
   32706              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32707              : (TARGET_64BIT)))
   32708              :                     {
   32709              :                       *pmatch_len_ = 0;
   32710              :                       res = gen_peephole2_421 (insn, operands);
   32711              :                       if (res != NULL_RTX)
   32712              :                         return res;
   32713              :                     }
   32714              :                   if (nonimmediate_operand (operands[1], E_DImode)
   32715              :                       && (
   32716              : #line 29465 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32717              : (optimize_insn_for_speed_p ()
   32718              :    && (!TARGET_PARTIAL_REG_STALL || DImode == SImode)) && 
   32719              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32720              : (TARGET_64BIT)))
   32721              :                     {
   32722              :                       *pmatch_len_ = 0;
   32723              :                       res = gen_peephole2_423 (insn, operands);
   32724              :                       if (res != NULL_RTX)
   32725              :                         return res;
   32726              :                     }
   32727              :                 }
   32728              :               if (memory_operand (operands[1], E_DImode)
   32729              :                   && immediate_operand (operands[2], E_DImode)
   32730              :                   && (
   32731              : #line 29481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32732              : (TARGET_SLOW_IMUL_IMM32_MEM && optimize_insn_for_speed_p ()
   32733              :    && !satisfies_constraint_K (operands[2])) && 
   32734              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32735              : (TARGET_64BIT)))
   32736              :                 {
   32737              :                   *pmatch_len_ = 0;
   32738              :                   res = gen_peephole2_425 (insn, operands);
   32739              :                   if (res != NULL_RTX)
   32740              :                     return res;
   32741              :                 }
   32742              :               if (!nonimmediate_operand (operands[1], E_DImode)
   32743              :                   || !const_int_operand (operands[2], E_DImode)
   32744              :                   || !(
   32745              : #line 29513 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32746              : (TARGET_SLOW_IMUL_IMM8 && optimize_insn_for_speed_p ()
   32747              :    && satisfies_constraint_K (operands[2])) && 
   32748              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32749              : (TARGET_64BIT)))
   32750              :                 return NULL;
   32751              :               *pmatch_len_ = 0;
   32752              :               return gen_peephole2_429 (insn, operands);
   32753              : 
   32754              :             case E_HImode:
   32755              :               if (pattern1365 (x3, 
   32756              : E_HImode) != 0
   32757              :                   || !
   32758              : #line 29513 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32759              : (TARGET_SLOW_IMUL_IMM8 && optimize_insn_for_speed_p ()
   32760              :    && satisfies_constraint_K (operands[2])))
   32761              :                 return NULL;
   32762              :               *pmatch_len_ = 0;
   32763              :               return gen_peephole2_427 (insn, operands);
   32764              : 
   32765              :             default:
   32766              :               return NULL;
   32767              :             }
   32768              : 
   32769              :         case ASHIFT:
   32770              :           if (peep2_current_count < 2)
   32771              :             return NULL;
   32772              :           operands[0] = x9;
   32773              :           if (!register_operand (operands[0], E_VOIDmode))
   32774              :             return NULL;
   32775              :           x5 = XEXP (x3, 0);
   32776              :           operands[1] = x5;
   32777              :           if (!register_operand (operands[1], E_VOIDmode))
   32778              :             return NULL;
   32779              :           x4 = XEXP (x3, 1);
   32780              :           operands[2] = x4;
   32781              :           if (!const_int_operand (operands[2], E_VOIDmode))
   32782              :             return NULL;
   32783              :           x11 = PATTERN (peep2_next_insn (1));
   32784              :           if (pattern421 (x11, 
   32785              : PLUS, 
   32786              : 2) != 0)
   32787              :             return NULL;
   32788              :           x12 = XVECEXP (x11, 0, 1);
   32789              :           if (GET_CODE (x12) != CLOBBER)
   32790              :             return NULL;
   32791              :           x13 = XEXP (x12, 0);
   32792              :           if (GET_CODE (x13) != REG
   32793              :               || REGNO (x13) != 17
   32794              :               || GET_MODE (x13) != E_CCmode)
   32795              :             return NULL;
   32796              :           x14 = XVECEXP (x11, 0, 0);
   32797              :           x15 = XEXP (x14, 0);
   32798              :           operands[3] = x15;
   32799              :           if (!register_operand (operands[3], E_VOIDmode))
   32800              :             return NULL;
   32801              :           x16 = XEXP (x14, 1);
   32802              :           x17 = XEXP (x16, 1);
   32803              :           operands[4] = x17;
   32804              :           if (!x86_64_general_operand (operands[4], E_VOIDmode))
   32805              :             return NULL;
   32806              :           x18 = XEXP (x16, 0);
   32807              :           if (!rtx_equal_p (x18, operands[0]))
   32808              :             return NULL;
   32809              :           if ((
   32810              : #line 29545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32811              : (IN_RANGE (INTVAL (operands[2]), 1, 3)
   32812              :    /* Validate MODE for lea.  */
   32813              :    && ((!TARGET_PARTIAL_REG_STALL
   32814              :         && (GET_MODE (operands[0]) == QImode
   32815              :             || GET_MODE (operands[0]) == HImode))
   32816              :        || GET_MODE (operands[0]) == SImode
   32817              :        || (TARGET_64BIT && GET_MODE (operands[0]) == DImode))
   32818              :    && (rtx_equal_p (operands[0], operands[3])
   32819              :        || peep2_reg_dead_p (2, operands[0]))
   32820              :    /* We reorder load and the shift.  */
   32821              :    && !reg_overlap_mentioned_p (operands[0], operands[4])) && 
   32822              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32823              : (word_mode == SImode)))
   32824              :             {
   32825              :               *pmatch_len_ = 1;
   32826              :               res = gen_peephole2_430 (insn, operands);
   32827              :               if (res != NULL_RTX)
   32828              :                 return res;
   32829              :             }
   32830              :           if (!(
   32831              : #line 29545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32832              : (IN_RANGE (INTVAL (operands[2]), 1, 3)
   32833              :    /* Validate MODE for lea.  */
   32834              :    && ((!TARGET_PARTIAL_REG_STALL
   32835              :         && (GET_MODE (operands[0]) == QImode
   32836              :             || GET_MODE (operands[0]) == HImode))
   32837              :        || GET_MODE (operands[0]) == SImode
   32838              :        || (TARGET_64BIT && GET_MODE (operands[0]) == DImode))
   32839              :    && (rtx_equal_p (operands[0], operands[3])
   32840              :        || peep2_reg_dead_p (2, operands[0]))
   32841              :    /* We reorder load and the shift.  */
   32842              :    && !reg_overlap_mentioned_p (operands[0], operands[4])) && 
   32843              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32844              : (word_mode == DImode)))
   32845              :             return NULL;
   32846              :           *pmatch_len_ = 1;
   32847              :           return gen_peephole2_431 (insn, operands);
   32848              : 
   32849              :         default:
   32850              :           return NULL;
   32851              :         }
   32852              : 
   32853              :     case ZERO_EXTEND:
   32854              :       if (GET_MODE (x3) != E_DImode)
   32855              :         return NULL;
   32856              :       x5 = XEXP (x3, 0);
   32857              :       if (GET_CODE (x5) != MULT
   32858              :           || GET_MODE (x5) != E_SImode
   32859              :           || pattern823 (x1, 
   32860              : E_DImode) != 0)
   32861              :         return NULL;
   32862              :       x6 = XEXP (x5, 0);
   32863              :       operands[1] = x6;
   32864              :       if (!memory_operand (operands[1], E_SImode))
   32865              :         return NULL;
   32866              :       x19 = XEXP (x5, 1);
   32867              :       operands[2] = x19;
   32868              :       if (!immediate_operand (operands[2], E_SImode)
   32869              :           || !
   32870              : #line 29494 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32871              : (TARGET_64BIT
   32872              :    && TARGET_SLOW_IMUL_IMM32_MEM && optimize_insn_for_speed_p ()
   32873              :    && !satisfies_constraint_K (operands[2])))
   32874              :         return NULL;
   32875              :       *pmatch_len_ = 0;
   32876              :       return gen_peephole2_426 (insn, operands);
   32877              : 
   32878              :     default:
   32879              :       return NULL;
   32880              :     }
   32881              : }
        

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.