LCOV - code coverage report
Current view: top level - /mnt/build/buildbot/bld/build-lcov/gcc - insn-recog-7.cc (source / functions) Coverage Total Hit
Test: gcc.info Lines: 88.1 % 3874 3414
Test Date: 2026-04-25 14:20:50 Functions: 94.8 % 192 182
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       226291 : pattern6 (rtx x1, machine_mode i1)
      57              : {
      58       226291 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      59       226291 :   int res ATTRIBUTE_UNUSED;
      60       226291 :   if (!register_operand (operands[0], i1)
      61       207734 :       || GET_MODE (x1) != i1
      62       207676 :       || !register_mmxmem_operand (operands[1], i1)
      63       408900 :       || !register_mmxmem_operand (operands[2], i1))
      64        76412 :     return -1;
      65              :   return 0;
      66              : }
      67              : 
      68              : int
      69        69278 : pattern14 (rtx x1)
      70              : {
      71        69278 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      72        69278 :   int res ATTRIBUTE_UNUSED;
      73        69278 :   switch (GET_MODE (operands[0]))
      74              :     {
      75        40074 :     case E_SImode:
      76        40074 :       if (!nonimmediate_operand (operands[0], E_SImode)
      77        40031 :           || GET_MODE (x1) != E_SImode
      78        80105 :           || !nonimmediate_operand (operands[1], E_SImode))
      79        13173 :         return -1;
      80              :       return 0;
      81              : 
      82        23958 :     case E_DImode:
      83        23958 :       if (!nonimmediate_operand (operands[0], E_DImode)
      84        23936 :           || GET_MODE (x1) != E_DImode
      85        47894 :           || !nonimmediate_operand (operands[1], E_DImode))
      86         6913 :         return -1;
      87              :       return 1;
      88              : 
      89              :     default:
      90              :       return -1;
      91              :     }
      92              : }
      93              : 
      94              : int
      95       209606 : pattern22 (rtx x1, int *pnum_clobbers)
      96              : {
      97       209606 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      98       209606 :   rtx x2, x3, x4, x5, x6, x7;
      99       209606 :   int res ATTRIBUTE_UNUSED;
     100       209606 :   if (pnum_clobbers == NULL)
     101              :     return -1;
     102       207013 :   x2 = XEXP (x1, 0);
     103       207013 :   operands[0] = x2;
     104       207013 :   x3 = XEXP (x1, 1);
     105       207013 :   x4 = XEXP (x3, 0);
     106       207013 :   switch (GET_CODE (x4))
     107              :     {
     108        89142 :     case REG:
     109        89142 :     case SUBREG:
     110        89142 :       return pattern19 (x3); /* [-1, 1] */
     111              : 
     112        47251 :     case PLUS:
     113        47251 :       x5 = XEXP (x4, 0);
     114        47251 :       operands[1] = x5;
     115        47251 :       x6 = XEXP (x4, 1);
     116        47251 :       operands[2] = x6;
     117        47251 :       switch (GET_MODE (operands[0]))
     118              :         {
     119         5140 :         case E_SImode:
     120         5140 :           if (!register_operand (operands[0], E_SImode)
     121         5140 :               || pattern21 (x3, 
     122              : E_SImode) != 0)
     123          183 :             return -1;
     124              :           return 2;
     125              : 
     126        42055 :         case E_DImode:
     127        42055 :           if (!register_operand (operands[0], E_DImode)
     128        42055 :               || pattern21 (x3, 
     129              : E_DImode) != 0)
     130         9961 :             return -1;
     131              :           return 3;
     132              : 
     133              :         default:
     134              :           return -1;
     135              :         }
     136              : 
     137         9472 :     case MINUS:
     138         9472 :       x5 = XEXP (x4, 0);
     139         9472 :       operands[1] = x5;
     140         9472 :       x6 = XEXP (x4, 1);
     141         9472 :       operands[2] = x6;
     142         9472 :       x7 = XEXP (x3, 1);
     143         9472 :       if (!rtx_equal_p (x7, operands[1]))
     144              :         return -1;
     145            0 :       switch (GET_MODE (operands[0]))
     146              :         {
     147            0 :         case E_SImode:
     148            0 :           if (!register_operand (operands[0], E_SImode)
     149            0 :               || pattern21 (x3, 
     150              : E_SImode) != 0)
     151            0 :             return -1;
     152              :           return 4;
     153              : 
     154            0 :         case E_DImode:
     155            0 :           if (!register_operand (operands[0], E_DImode)
     156            0 :               || pattern21 (x3, 
     157              : E_DImode) != 0)
     158            0 :             return -1;
     159              :           return 5;
     160              : 
     161              :         default:
     162              :           return -1;
     163              :         }
     164              : 
     165              :     default:
     166              :       return -1;
     167              :     }
     168              : }
     169              : 
     170              : int
     171      4125479 : pattern38 (rtx x1, int *pnum_clobbers)
     172              : {
     173      4125479 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     174      4125479 :   rtx x2, x3, x4, x5, x6, x7;
     175      4125479 :   int res ATTRIBUTE_UNUSED;
     176      4125479 :   x2 = XEXP (x1, 1);
     177      4125479 :   x3 = XEXP (x2, 0);
     178      4125479 :   operands[1] = x3;
     179      4125479 :   x4 = XEXP (x2, 1);
     180      4125479 :   switch (GET_CODE (x4))
     181              :     {
     182              :     case CONST_INT:
     183              :     case CONST_WIDE_INT:
     184              :     case CONST_POLY_INT:
     185              :     case CONST_FIXED:
     186              :     case CONST_DOUBLE:
     187              :     case CONST_VECTOR:
     188              :     case CONST:
     189              :     case REG:
     190              :     case SUBREG:
     191              :     case LABEL_REF:
     192              :     case SYMBOL_REF:
     193              :     case HIGH:
     194              :       return 0;
     195              : 
     196         3136 :     case AND:
     197         3136 :       if (pnum_clobbers == NULL
     198         3136 :           || GET_MODE (x4) != E_QImode)
     199              :         return -1;
     200         2552 :       x5 = XEXP (x1, 0);
     201         2552 :       operands[0] = x5;
     202         2552 :       if (!register_operand (operands[0], E_TImode)
     203            0 :           || GET_MODE (x2) != E_TImode
     204         2552 :           || !register_operand (operands[1], E_TImode))
     205         2552 :         return -1;
     206            0 :       x6 = XEXP (x4, 0);
     207            0 :       operands[2] = x6;
     208            0 :       if (!register_operand (operands[2], E_QImode))
     209              :         return -1;
     210            0 :       x7 = XEXP (x4, 1);
     211            0 :       operands[3] = x7;
     212            0 :       if (!const_int_operand (operands[3], E_QImode))
     213              :         return -1;
     214              :       return 1;
     215              : 
     216              :     default:
     217              :       return -1;
     218              :     }
     219              : }
     220              : 
     221              : int
     222       693678 : pattern42 (rtx x1)
     223              : {
     224       693678 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     225       693678 :   rtx x2, x3, x4, x5;
     226       693678 :   int res ATTRIBUTE_UNUSED;
     227       693678 :   x2 = XEXP (x1, 1);
     228       693678 :   x3 = XEXP (x2, 0);
     229       693678 :   operands[1] = x3;
     230       693678 :   x4 = XEXP (x1, 0);
     231       693678 :   switch (GET_CODE (x4))
     232              :     {
     233       693665 :     case REG:
     234       693665 :     case SUBREG:
     235       693665 :     case MEM:
     236       693665 :       operands[0] = x4;
     237       693665 :       return 0;
     238              : 
     239           13 :     case STRICT_LOW_PART:
     240           13 :       x5 = XEXP (x4, 0);
     241           13 :       operands[0] = x5;
     242           13 :       res = pattern41 (x2);
     243           13 :       if (res >= 0)
     244           13 :         return res + 1; /* [1, 2] */
     245              :       return -1;
     246              : 
     247              :     default:
     248              :       return -1;
     249              :     }
     250              : }
     251              : 
     252              : int
     253       335128 : pattern48 (rtx x1)
     254              : {
     255       335128 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     256       335128 :   rtx x2, x3, x4, x5, x6, x7, x8;
     257       335128 :   int res ATTRIBUTE_UNUSED;
     258       335128 :   x2 = XEXP (x1, 1);
     259       335128 :   x3 = XEXP (x2, 1);
     260       335128 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     261              :     return -1;
     262       333429 :   x4 = XEXP (x1, 0);
     263       333429 :   operands[0] = x4;
     264       333429 :   if (!flags_reg_operand (operands[0], E_VOIDmode))
     265              :     return -1;
     266       333429 :   operands[1] = x2;
     267       333429 :   if (!compare_operator (operands[1], E_VOIDmode))
     268              :     return -1;
     269       333429 :   x5 = XEXP (x2, 0);
     270       333429 :   x6 = XEXP (x5, 0);
     271       333429 :   operands[2] = x6;
     272       333429 :   if (!int_nonimmediate_operand (operands[2], E_VOIDmode))
     273              :     return -1;
     274       275601 :   x7 = XEXP (x5, 1);
     275       275601 :   operands[3] = x7;
     276       275601 :   if (!const_int_operand (operands[3], E_QImode))
     277              :     return -1;
     278       275601 :   x8 = XEXP (x5, 2);
     279       275601 :   operands[4] = x8;
     280       275601 :   if (!const_int_operand (operands[4], E_QImode))
     281              :     return -1;
     282       265344 :   switch (GET_MODE (x5))
     283              :     {
     284              :     case E_HImode:
     285              :       return 0;
     286              : 
     287              :     case E_SImode:
     288              :       return 1;
     289              : 
     290              :     case E_DImode:
     291              :       return 2;
     292              : 
     293              :     default:
     294              :       return -1;
     295              :     }
     296              : }
     297              : 
     298              : int
     299     11154145 : pattern59 (rtx x1, machine_mode i1)
     300              : {
     301     11154145 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     302     11154145 :   rtx x2, x3;
     303     11154145 :   int res ATTRIBUTE_UNUSED;
     304     11154145 :   x2 = XEXP (x1, 1);
     305     11154145 :   if (GET_MODE (x2) != i1)
     306              :     return -1;
     307      3832307 :   x3 = XEXP (x1, 0);
     308      3832307 :   if (GET_CODE (x3) != REG
     309      3400481 :       || REGNO (x3) != 17
     310      7201602 :       || GET_MODE (x3) != i1)
     311       463012 :     return -1;
     312              :   return 0;
     313              : }
     314              : 
     315              : int
     316          244 : pattern60 (rtx x1, machine_mode i1)
     317              : {
     318          244 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     319          244 :   rtx x2, x3, x4;
     320          244 :   int res ATTRIBUTE_UNUSED;
     321          244 :   x2 = XEXP (x1, 1);
     322          244 :   if (GET_MODE (x2) != i1)
     323              :     return -1;
     324          244 :   x3 = XVECEXP (x2, 0, 0);
     325          244 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     326              :     return -1;
     327          244 :   x4 = XEXP (x1, 0);
     328          244 :   if (GET_CODE (x4) != REG
     329          244 :       || REGNO (x4) != 17
     330          488 :       || GET_MODE (x4) != i1)
     331            0 :     return -1;
     332              :   return 0;
     333              : }
     334              : 
     335              : int
     336        48359 : pattern65 (rtx x1)
     337              : {
     338        48359 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     339        48359 :   rtx x2, x3, x4, x5;
     340        48359 :   int res ATTRIBUTE_UNUSED;
     341        48359 :   x2 = XEXP (x1, 0);
     342        48359 :   operands[0] = x2;
     343        48359 :   x3 = XEXP (x1, 1);
     344        48359 :   x4 = XVECEXP (x3, 0, 0);
     345        48359 :   operands[1] = x4;
     346        48359 :   x5 = XVECEXP (x3, 0, 1);
     347        48359 :   operands[2] = x5;
     348        48359 :   switch (GET_MODE (operands[0]))
     349              :     {
     350          402 :     case E_HFmode:
     351          402 :       return pattern64 (x3, 
     352          402 : E_HFmode); /* [-1, 0] */
     353              : 
     354        31464 :     case E_SFmode:
     355        31464 :       if (pattern64 (x3, 
     356              : E_SFmode) != 0)
     357              :         return -1;
     358              :       return 1;
     359              : 
     360         5602 :     case E_DFmode:
     361         5602 :       if (pattern64 (x3, 
     362              : E_DFmode) != 0)
     363              :         return -1;
     364              :       return 2;
     365              : 
     366              :     default:
     367              :       return -1;
     368              :     }
     369              : }
     370              : 
     371              : int
     372       158576 : pattern74 (rtx x1)
     373              : {
     374       158576 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     375       158576 :   rtx x2, x3, x4, x5, x6, x7, x8;
     376       158576 :   int res ATTRIBUTE_UNUSED;
     377       158576 :   x2 = XEXP (x1, 0);
     378       158576 :   operands[0] = x2;
     379       158576 :   x3 = XEXP (x1, 1);
     380       158576 :   x4 = XVECEXP (x3, 0, 0);
     381       158576 :   switch (GET_CODE (x4))
     382              :     {
     383       146184 :     case CONST_INT:
     384       146184 :     case CONST_WIDE_INT:
     385       146184 :     case CONST_POLY_INT:
     386       146184 :     case CONST_FIXED:
     387       146184 :     case CONST_DOUBLE:
     388       146184 :     case CONST_VECTOR:
     389       146184 :     case CONST:
     390       146184 :     case REG:
     391       146184 :     case SUBREG:
     392       146184 :     case MEM:
     393       146184 :     case LABEL_REF:
     394       146184 :     case SYMBOL_REF:
     395       146184 :     case HIGH:
     396       146184 :       operands[1] = x4;
     397       146184 :       x5 = XVECEXP (x3, 0, 2);
     398       146184 :       if (GET_CODE (x5) != CONST_INT)
     399              :         return -1;
     400              :       return 0;
     401              : 
     402          132 :     case US_MINUS:
     403          132 :       x6 = XEXP (x4, 0);
     404          132 :       operands[1] = x6;
     405          132 :       x7 = XEXP (x4, 1);
     406          132 :       operands[2] = x7;
     407          132 :       x8 = XVECEXP (x3, 0, 1);
     408          132 :       operands[3] = x8;
     409          132 :       x5 = XVECEXP (x3, 0, 2);
     410          132 :       operands[4] = x5;
     411          132 :       if (!const_0_to_7_operand (operands[4], E_SImode))
     412              :         return -1;
     413          132 :       switch (GET_MODE (operands[0]))
     414              :         {
     415           44 :         case E_HImode:
     416           44 :           res = pattern72 (x3);
     417           44 :           if (res >= 0)
     418           16 :             return res + 1; /* [1, 2] */
     419              :           return -1;
     420              : 
     421           22 :         case E_QImode:
     422           22 :           if (pattern73 (x3, 
     423              : E_V8HImode, 
     424              : E_QImode) != 0)
     425              :             return -1;
     426              :           return 3;
     427              : 
     428              :         default:
     429              :           return -1;
     430              :         }
     431              : 
     432              :     default:
     433              :       return -1;
     434              :     }
     435              : }
     436              : 
     437              : int
     438        38933 : pattern93 (rtx x1, int *pnum_clobbers)
     439              : {
     440        38933 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     441        38933 :   rtx x2, x3, x4, x5, x6, x7;
     442        38933 :   int res ATTRIBUTE_UNUSED;
     443        38933 :   if (pnum_clobbers == NULL)
     444              :     return -1;
     445        38933 :   x2 = XEXP (x1, 1);
     446        38933 :   x3 = XEXP (x2, 0);
     447        38933 :   if (GET_MODE (x3) != E_TImode)
     448              :     return -1;
     449        14135 :   x4 = XEXP (x3, 0);
     450        14135 :   if (GET_CODE (x4) != ASHIFT
     451        11145 :       || GET_MODE (x4) != E_TImode)
     452              :     return -1;
     453        11145 :   x5 = XEXP (x4, 0);
     454        11145 :   if (GET_CODE (x5) != ZERO_EXTEND
     455        11125 :       || GET_MODE (x5) != E_TImode)
     456              :     return -1;
     457        11125 :   x6 = XEXP (x3, 1);
     458        11125 :   if (GET_CODE (x6) != ZERO_EXTEND
     459        10974 :       || GET_MODE (x6) != E_TImode)
     460              :     return -1;
     461        10974 :   x7 = XEXP (x1, 0);
     462        10974 :   operands[0] = x7;
     463        10974 :   return pattern92 (x2, 
     464              : E_TImode, 
     465        10974 : E_DImode); /* [-1, 1] */
     466              : }
     467              : 
     468              : int
     469            0 : pattern101 (rtx x1)
     470              : {
     471            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     472            0 :   rtx x2, x3, x4, x5;
     473            0 :   int res ATTRIBUTE_UNUSED;
     474            0 :   x2 = XEXP (x1, 1);
     475            0 :   if (GET_MODE (x2) != E_CCCmode)
     476              :     return -1;
     477            0 :   x3 = XEXP (x1, 0);
     478            0 :   if (GET_CODE (x3) != REG
     479            0 :       || REGNO (x3) != 17
     480            0 :       || GET_MODE (x3) != E_CCCmode)
     481              :     return -1;
     482            0 :   x4 = XVECEXP (x2, 0, 0);
     483            0 :   operands[0] = x4;
     484            0 :   if (!register_operand (operands[0], E_SImode))
     485              :     return -1;
     486            0 :   x5 = XVECEXP (x2, 0, 1);
     487            0 :   operands[1] = x5;
     488            0 :   if (!register_operand (operands[1], E_DImode))
     489              :     return -1;
     490              :   return 0;
     491              : }
     492              : 
     493              : int
     494        11410 : pattern110 (rtx x1, int *pnum_clobbers)
     495              : {
     496        11410 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     497        11410 :   rtx x2, x3, x4, x5;
     498        11410 :   int res ATTRIBUTE_UNUSED;
     499        11410 :   if (pnum_clobbers == NULL)
     500              :     return -1;
     501        11410 :   x2 = XEXP (x1, 0);
     502        11410 :   operands[2] = x2;
     503        11410 :   x3 = XEXP (x2, 0);
     504        11410 :   if (GET_CODE (x3) != REG
     505        11410 :       || REGNO (x3) != 17)
     506              :     return -1;
     507         6708 :   x4 = XEXP (x2, 1);
     508         6708 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     509              :     return -1;
     510         6708 :   x5 = XEXP (x1, 1);
     511         6708 :   operands[1] = x5;
     512         6708 :   switch (GET_MODE (operands[0]))
     513              :     {
     514              :     case E_SImode:
     515              :       return 0;
     516              : 
     517         3110 :     case E_DImode:
     518         3110 :       return 1;
     519              : 
     520              :     default:
     521              :       return -1;
     522              :     }
     523              : }
     524              : 
     525              : int
     526          266 : pattern117 (rtx x1, int *pnum_clobbers, machine_mode i1, machine_mode i2)
     527              : {
     528          266 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     529          266 :   rtx x2, x3;
     530          266 :   int res ATTRIBUTE_UNUSED;
     531          266 :   if (pnum_clobbers == NULL)
     532              :     return -1;
     533          266 :   x2 = XEXP (x1, 0);
     534          266 :   if (GET_MODE (x2) != E_SImode
     535          265 :       || !register_operand (operands[0], i2)
     536          529 :       || GET_MODE (x1) != i2)
     537            3 :     return -1;
     538          263 :   x3 = XEXP (x2, 0);
     539          263 :   operands[1] = x3;
     540          263 :   if (!nonimmediate_operand (operands[1], i1))
     541              :     return -1;
     542              :   return 0;
     543              : }
     544              : 
     545              : int
     546        13885 : pattern123 (rtx x1)
     547              : {
     548        13885 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     549        13885 :   rtx x2, x3, x4;
     550        13885 :   int res ATTRIBUTE_UNUSED;
     551        13885 :   x2 = XEXP (x1, 1);
     552        13885 :   x3 = XEXP (x2, 0);
     553        13885 :   operands[3] = x3;
     554        13885 :   if (!const_int_operand (operands[3], E_QImode))
     555              :     return -1;
     556         3706 :   x4 = XEXP (x2, 1);
     557         3706 :   operands[2] = x4;
     558         3706 :   if (!register_operand (operands[2], E_QImode))
     559              :     return -1;
     560         3231 :   return pattern14 (x1); /* [-1, 1] */
     561              : }
     562              : 
     563              : int
     564         1233 : pattern127 (rtx x1)
     565              : {
     566         1233 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     567         1233 :   rtx x2, x3, x4;
     568         1233 :   int res ATTRIBUTE_UNUSED;
     569         1233 :   x2 = XEXP (x1, 0);
     570         1233 :   operands[0] = x2;
     571         1233 :   x3 = XEXP (x1, 1);
     572         1233 :   x4 = XVECEXP (x3, 0, 0);
     573         1233 :   operands[1] = x4;
     574         1233 :   switch (GET_MODE (operands[0]))
     575              :     {
     576          462 :     case E_SImode:
     577          462 :       if (!memory_operand (operands[0], E_SImode)
     578          439 :           || GET_MODE (x3) != E_SImode
     579          901 :           || !register_operand (operands[1], E_SImode))
     580           85 :         return -1;
     581              :       return 0;
     582              : 
     583          146 :     case E_DImode:
     584          146 :       if (!memory_operand (operands[0], E_DImode)
     585          140 :           || GET_MODE (x3) != E_DImode
     586          286 :           || !register_operand (operands[1], E_DImode))
     587           15 :         return -1;
     588              :       return 1;
     589              : 
     590              :     default:
     591              :       return -1;
     592              :     }
     593              : }
     594              : 
     595              : int
     596        37288 : pattern138 (rtx x1)
     597              : {
     598        37288 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     599        37288 :   rtx x2, x3;
     600        37288 :   int res ATTRIBUTE_UNUSED;
     601        37288 :   x2 = XEXP (x1, 2);
     602        37288 :   if (XWINT (x2, 0) != 1L)
     603              :     return -1;
     604         7936 :   x3 = XEXP (x1, 1);
     605         7936 :   if (!rtx_equal_p (x3, operands[1]))
     606              :     return -1;
     607         1740 :   switch (GET_MODE (operands[0]))
     608              :     {
     609          128 :     case E_V8HFmode:
     610          128 :       return pattern137 (x1, 
     611          128 : E_V8HFmode); /* [-1, 0] */
     612              : 
     613          386 :     case E_V4SFmode:
     614          386 :       if (pattern137 (x1, 
     615              : E_V4SFmode) != 0)
     616              :         return -1;
     617              :       return 1;
     618              : 
     619          386 :     case E_V2DFmode:
     620          386 :       if (pattern137 (x1, 
     621              : E_V2DFmode) != 0)
     622              :         return -1;
     623              :       return 2;
     624              : 
     625              :     default:
     626              :       return -1;
     627              :     }
     628              : }
     629              : 
     630              : int
     631        16918 : pattern148 (rtx x1)
     632              : {
     633        16918 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     634        16918 :   rtx x2, x3, x4, x5, x6;
     635        16918 :   int res ATTRIBUTE_UNUSED;
     636        16918 :   x2 = XEXP (x1, 0);
     637        16918 :   x3 = XEXP (x2, 0);
     638        16918 :   operands[1] = x3;
     639        16918 :   x4 = XEXP (x2, 1);
     640        16918 :   operands[2] = x4;
     641        16918 :   x5 = XEXP (x1, 1);
     642        16918 :   operands[3] = x5;
     643        16918 :   x6 = XEXP (x1, 2);
     644        16918 :   operands[4] = x6;
     645        16918 :   switch (GET_MODE (operands[0]))
     646              :     {
     647         1442 :     case E_V16HImode:
     648         1442 :       return pattern135 (x1, 
     649              : E_HImode, 
     650         1442 : E_V16HImode); /* [-1, 0] */
     651              : 
     652         1177 :     case E_V8HImode:
     653         1177 :       if (pattern135 (x1, 
     654              : E_QImode, 
     655              : E_V8HImode) != 0)
     656              :         return -1;
     657              :       return 1;
     658              : 
     659         2861 :     case E_V8SImode:
     660         2861 :       if (pattern135 (x1, 
     661              : E_QImode, 
     662              : E_V8SImode) != 0)
     663              :         return -1;
     664              :       return 2;
     665              : 
     666         2793 :     case E_V4SImode:
     667         2793 :       if (pattern135 (x1, 
     668              : E_QImode, 
     669              : E_V4SImode) != 0)
     670              :         return -1;
     671              :       return 3;
     672              : 
     673         1679 :     case E_V4DImode:
     674         1679 :       if (pattern135 (x1, 
     675              : E_QImode, 
     676              : E_V4DImode) != 0)
     677              :         return -1;
     678              :       return 4;
     679              : 
     680         1162 :     case E_V2DImode:
     681         1162 :       if (pattern135 (x1, 
     682              : E_QImode, 
     683              : E_V2DImode) != 0)
     684              :         return -1;
     685              :       return 5;
     686              : 
     687         1595 :     case E_V32HImode:
     688         1595 :       if (pattern135 (x1, 
     689              : E_SImode, 
     690              : E_V32HImode) != 0)
     691              :         return -1;
     692              :       return 6;
     693              : 
     694         2785 :     case E_V16SImode:
     695         2785 :       if (pattern135 (x1, 
     696              : E_HImode, 
     697              : E_V16SImode) != 0)
     698              :         return -1;
     699              :       return 7;
     700              : 
     701         1422 :     case E_V8DImode:
     702         1422 :       if (pattern135 (x1, 
     703              : E_QImode, 
     704              : E_V8DImode) != 0)
     705              :         return -1;
     706              :       return 8;
     707              : 
     708              :     default:
     709              :       return -1;
     710              :     }
     711              : }
     712              : 
     713              : int
     714        17399 : pattern159 (rtx x1)
     715              : {
     716        17399 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     717        17399 :   rtx x2, x3, x4, x5;
     718        17399 :   int res ATTRIBUTE_UNUSED;
     719        17399 :   x2 = XEXP (x1, 0);
     720        17399 :   operands[0] = x2;
     721        17399 :   x3 = XEXP (x1, 1);
     722        17399 :   x4 = XVECEXP (x3, 0, 0);
     723        17399 :   operands[1] = x4;
     724        17399 :   x5 = XVECEXP (x3, 0, 1);
     725        17399 :   operands[2] = x5;
     726        17399 :   switch (GET_MODE (operands[0]))
     727              :     {
     728           74 :     case E_V32HFmode:
     729           74 :       return pattern158 (x3, 
     730           74 : E_V32HFmode); /* [-1, 0] */
     731              : 
     732          146 :     case E_V16HFmode:
     733          146 :       if (pattern158 (x3, 
     734              : E_V16HFmode) != 0)
     735              :         return -1;
     736              :       return 1;
     737              : 
     738          192 :     case E_V8HFmode:
     739          192 :       if (pattern158 (x3, 
     740              : E_V8HFmode) != 0)
     741              :         return -1;
     742              :       return 2;
     743              : 
     744          233 :     case E_V16SFmode:
     745          233 :       if (pattern158 (x3, 
     746              : E_V16SFmode) != 0)
     747              :         return -1;
     748              :       return 3;
     749              : 
     750          976 :     case E_V8SFmode:
     751          976 :       if (pattern158 (x3, 
     752              : E_V8SFmode) != 0)
     753              :         return -1;
     754              :       return 4;
     755              : 
     756         6075 :     case E_V4SFmode:
     757         6075 :       if (pattern158 (x3, 
     758              : E_V4SFmode) != 0)
     759              :         return -1;
     760              :       return 5;
     761              : 
     762           18 :     case E_V8DFmode:
     763           18 :       if (pattern158 (x3, 
     764              : E_V8DFmode) != 0)
     765              :         return -1;
     766              :       return 6;
     767              : 
     768          190 :     case E_V4DFmode:
     769          190 :       if (pattern158 (x3, 
     770              : E_V4DFmode) != 0)
     771              :         return -1;
     772              :       return 7;
     773              : 
     774         2971 :     case E_V2DFmode:
     775         2971 :       if (pattern158 (x3, 
     776              : E_V2DFmode) != 0)
     777              :         return -1;
     778              :       return 8;
     779              : 
     780              :     default:
     781              :       return -1;
     782              :     }
     783              : }
     784              : 
     785              : int
     786          520 : pattern171 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
     787              : {
     788          520 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     789          520 :   int res ATTRIBUTE_UNUSED;
     790          520 :   if (!register_operand (operands[0], i3)
     791          510 :       || GET_MODE (x1) != i3
     792          510 :       || !register_operand (operands[1], i2)
     793         1014 :       || !nonimmediate_operand (operands[2], i1))
     794           26 :     return -1;
     795              :   return 0;
     796              : }
     797              : 
     798              : int
     799          295 : pattern176 (rtx x1)
     800              : {
     801          295 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     802          295 :   rtx x2, x3, x4;
     803          295 :   int res ATTRIBUTE_UNUSED;
     804          295 :   if (!register_operand (operands[0], E_V4SImode))
     805              :     return -1;
     806          292 :   x2 = XVECEXP (x1, 0, 0);
     807          292 :   operands[1] = x2;
     808          292 :   if (!register_operand (operands[1], E_V4SImode))
     809              :     return -1;
     810          265 :   x3 = XVECEXP (x1, 0, 1);
     811          265 :   operands[2] = x3;
     812          265 :   if (!register_operand (operands[2], E_V4SImode))
     813              :     return -1;
     814          244 :   x4 = XVECEXP (x1, 0, 2);
     815          244 :   operands[3] = x4;
     816          244 :   if (!vector_operand (operands[3], E_V4SImode))
     817              :     return -1;
     818              :   return 0;
     819              : }
     820              : 
     821              : int
     822         5488 : pattern184 (rtx x1)
     823              : {
     824         5488 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     825         5488 :   rtx x2, x3, x4, x5, x6;
     826         5488 :   int res ATTRIBUTE_UNUSED;
     827         5488 :   x2 = XEXP (x1, 0);
     828         5488 :   operands[0] = x2;
     829         5488 :   x3 = XEXP (x1, 1);
     830         5488 :   x4 = XVECEXP (x3, 0, 0);
     831         5488 :   operands[1] = x4;
     832         5488 :   x5 = XVECEXP (x3, 0, 1);
     833         5488 :   operands[2] = x5;
     834         5488 :   x6 = XVECEXP (x3, 0, 2);
     835         5488 :   operands[3] = x6;
     836         5488 :   switch (GET_MODE (operands[0]))
     837              :     {
     838         2115 :     case E_V8SImode:
     839         2115 :       return pattern178 (x3, 
     840         2115 : E_V8SImode); /* [-1, 0] */
     841              : 
     842         1741 :     case E_V4SImode:
     843         1741 :       if (pattern178 (x3, 
     844              : E_V4SImode) != 0)
     845              :         return -1;
     846              :       return 1;
     847              : 
     848         1632 :     case E_V16SImode:
     849         1632 :       if (pattern178 (x3, 
     850              : E_V16SImode) != 0)
     851              :         return -1;
     852              :       return 2;
     853              : 
     854              :     default:
     855              :       return -1;
     856              :     }
     857              : }
     858              : 
     859              : int
     860      6777718 : pattern190 (rtx x1)
     861              : {
     862      6777718 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     863      6777718 :   rtx x2, x3;
     864      6777718 :   int res ATTRIBUTE_UNUSED;
     865      6777718 :   x2 = XEXP (x1, 0);
     866      6777718 :   operands[1] = x2;
     867      6777718 :   x3 = XEXP (x1, 1);
     868      6777718 :   operands[2] = x3;
     869      6777718 :   switch (GET_MODE (operands[0]))
     870              :     {
     871          815 :     case E_V32HFmode:
     872          815 :       return pattern189 (x1, 
     873          815 : E_V32HFmode); /* [-1, 0] */
     874              : 
     875          896 :     case E_V16HFmode:
     876          896 :       if (pattern189 (x1, 
     877              : E_V16HFmode) != 0)
     878              :         return -1;
     879              :       return 1;
     880              : 
     881         1867 :     case E_V8HFmode:
     882         1867 :       if (pattern189 (x1, 
     883              : E_V8HFmode) != 0)
     884              :         return -1;
     885              :       return 2;
     886              : 
     887          696 :     case E_V16SFmode:
     888          696 :       if (pattern189 (x1, 
     889              : E_V16SFmode) != 0)
     890              :         return -1;
     891              :       return 3;
     892              : 
     893        39952 :     case E_V8SFmode:
     894        39952 :       if (pattern189 (x1, 
     895              : E_V8SFmode) != 0)
     896              :         return -1;
     897              :       return 4;
     898              : 
     899       287758 :     case E_V4SFmode:
     900       287758 :       if (pattern189 (x1, 
     901              : E_V4SFmode) != 0)
     902              :         return -1;
     903              :       return 5;
     904              : 
     905         1440 :     case E_V8DFmode:
     906         1440 :       if (pattern189 (x1, 
     907              : E_V8DFmode) != 0)
     908              :         return -1;
     909              :       return 6;
     910              : 
     911        59475 :     case E_V4DFmode:
     912        59475 :       if (pattern189 (x1, 
     913              : E_V4DFmode) != 0)
     914              :         return -1;
     915              :       return 7;
     916              : 
     917       227031 :     case E_V2DFmode:
     918       227031 :       if (pattern189 (x1, 
     919              : E_V2DFmode) != 0)
     920              :         return -1;
     921              :       return 8;
     922              : 
     923         1035 :     case E_V64QImode:
     924         1035 :       if (pattern189 (x1, 
     925              : E_V64QImode) != 0)
     926              :         return -1;
     927              :       return 9;
     928              : 
     929         8115 :     case E_V32QImode:
     930         8115 :       if (pattern189 (x1, 
     931              : E_V32QImode) != 0)
     932              :         return -1;
     933              :       return 10;
     934              : 
     935        67909 :     case E_V16QImode:
     936        67909 :       if (pattern189 (x1, 
     937              : E_V16QImode) != 0)
     938              :         return -1;
     939              :       return 11;
     940              : 
     941          985 :     case E_V32HImode:
     942          985 :       if (pattern189 (x1, 
     943              : E_V32HImode) != 0)
     944              :         return -1;
     945              :       return 12;
     946              : 
     947         9334 :     case E_V16HImode:
     948         9334 :       if (pattern189 (x1, 
     949              : E_V16HImode) != 0)
     950              :         return -1;
     951              :       return 13;
     952              : 
     953       111532 :     case E_V8HImode:
     954       111532 :       if (pattern189 (x1, 
     955              : E_V8HImode) != 0)
     956              :         return -1;
     957              :       return 14;
     958              : 
     959        11626 :     case E_V16SImode:
     960        11626 :       if (pattern189 (x1, 
     961              : E_V16SImode) != 0)
     962              :         return -1;
     963              :       return 15;
     964              : 
     965        26481 :     case E_V8SImode:
     966        26481 :       if (pattern189 (x1, 
     967              : E_V8SImode) != 0)
     968              :         return -1;
     969              :       return 16;
     970              : 
     971       730623 :     case E_V4SImode:
     972       730623 :       if (pattern189 (x1, 
     973              : E_V4SImode) != 0)
     974              :         return -1;
     975              :       return 17;
     976              : 
     977         5939 :     case E_V8DImode:
     978         5939 :       if (pattern189 (x1, 
     979              : E_V8DImode) != 0)
     980              :         return -1;
     981              :       return 18;
     982              : 
     983        12630 :     case E_V4DImode:
     984        12630 :       if (pattern189 (x1, 
     985              : E_V4DImode) != 0)
     986              :         return -1;
     987              :       return 19;
     988              : 
     989       223282 :     case E_V2DImode:
     990       223282 :       if (pattern189 (x1, 
     991              : E_V2DImode) != 0)
     992              :         return -1;
     993              :       return 20;
     994              : 
     995          206 :     case E_V32BFmode:
     996          206 :       if (pattern12 (x1, 
     997              : E_V32BFmode) != 0)
     998              :         return -1;
     999              :       return 21;
    1000              : 
    1001          206 :     case E_V16BFmode:
    1002          206 :       if (pattern12 (x1, 
    1003              : E_V16BFmode) != 0)
    1004              :         return -1;
    1005              :       return 22;
    1006              : 
    1007          230 :     case E_V8BFmode:
    1008          230 :       if (pattern12 (x1, 
    1009              : E_V8BFmode) != 0)
    1010              :         return -1;
    1011              :       return 23;
    1012              : 
    1013              :     default:
    1014              :       return -1;
    1015              :     }
    1016              : }
    1017              : 
    1018              : int
    1019          190 : pattern208 (rtx x1)
    1020              : {
    1021          190 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1022          190 :   rtx x2, x3;
    1023          190 :   int res ATTRIBUTE_UNUSED;
    1024          190 :   x2 = XEXP (x1, 1);
    1025          190 :   x3 = XEXP (x2, 0);
    1026          190 :   operands[2] = x3;
    1027          190 :   if (!register_operand (operands[2], E_QImode))
    1028              :     return -1;
    1029          184 :   return pattern207 (x1); /* [-1, 3] */
    1030              : }
    1031              : 
    1032              : int
    1033           30 : pattern210 (rtx x1)
    1034              : {
    1035           30 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1036           30 :   rtx x2, x3, x4;
    1037           30 :   int res ATTRIBUTE_UNUSED;
    1038           30 :   x2 = XEXP (x1, 1);
    1039           30 :   x3 = XEXP (x2, 0);
    1040           30 :   operands[3] = x3;
    1041           30 :   if (!const_int_operand (operands[3], E_QImode))
    1042              :     return -1;
    1043           17 :   x4 = XEXP (x2, 1);
    1044           17 :   operands[2] = x4;
    1045           17 :   if (!nonimmediate_operand (operands[2], E_QImode))
    1046              :     return -1;
    1047           17 :   return pattern206 (x1); /* [-1, 3] */
    1048              : }
    1049              : 
    1050              : int
    1051          147 : pattern214 (rtx x1)
    1052              : {
    1053          147 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1054          147 :   rtx x2, x3, x4, x5;
    1055          147 :   int res ATTRIBUTE_UNUSED;
    1056          147 :   x2 = XVECEXP (x1, 0, 1);
    1057          147 :   if (XVECLEN (x2, 0) != 1
    1058          147 :       || XINT (x2, 1) != 111)
    1059              :     return -1;
    1060          147 :   x3 = XVECEXP (x2, 0, 0);
    1061          147 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1062              :     return -1;
    1063          147 :   x4 = XVECEXP (x1, 0, 0);
    1064          147 :   x5 = XEXP (x4, 1);
    1065          147 :   return pattern213 (x5, 
    1066          147 : E_V2SFmode); /* [-1, 0] */
    1067              : }
    1068              : 
    1069              : int
    1070         1011 : pattern217 (rtx x1, machine_mode i1)
    1071              : {
    1072         1011 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1073         1011 :   rtx x2;
    1074         1011 :   int res ATTRIBUTE_UNUSED;
    1075         1011 :   if (GET_MODE (x1) != i1)
    1076              :     return -1;
    1077         1011 :   x2 = XEXP (x1, 0);
    1078         1011 :   if (GET_MODE (x2) != i1
    1079         1011 :       || !nonimmediate_operand (operands[1], i1)
    1080         1668 :       || !general_operand (operands[2], i1))
    1081          354 :     return -1;
    1082              :   return 0;
    1083              : }
    1084              : 
    1085              : int
    1086       564142 : pattern220 (rtx x1)
    1087              : {
    1088       564142 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1089       564142 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1090       564142 :   rtx x10;
    1091       564142 :   int res ATTRIBUTE_UNUSED;
    1092       564142 :   x2 = XVECEXP (x1, 0, 1);
    1093       564142 :   if (GET_CODE (x2) != CLOBBER)
    1094              :     return -1;
    1095       539870 :   x3 = XEXP (x2, 0);
    1096       539870 :   if (GET_CODE (x3) != REG
    1097       539870 :       || REGNO (x3) != 17
    1098      1062573 :       || GET_MODE (x3) != E_CCmode)
    1099              :     return -1;
    1100       522703 :   x4 = XVECEXP (x1, 0, 0);
    1101       522703 :   x5 = XEXP (x4, 0);
    1102       522703 :   operands[0] = x5;
    1103       522703 :   x6 = XEXP (x4, 1);
    1104       522703 :   x7 = XEXP (x6, 0);
    1105       522703 :   switch (GET_CODE (x7))
    1106              :     {
    1107       421509 :     case REG:
    1108       421509 :     case SUBREG:
    1109       421509 :       return pattern216 (x6); /* [-1, 4] */
    1110              : 
    1111        42047 :     case PLUS:
    1112        42047 :       x8 = XEXP (x7, 0);
    1113        42047 :       operands[1] = x8;
    1114        42047 :       x9 = XEXP (x7, 1);
    1115        42047 :       operands[2] = x9;
    1116        42047 :       res = pattern219 (x6);
    1117        42047 :       if (res >= 0)
    1118        29169 :         return res + 5; /* [5, 7] */
    1119              :       return -1;
    1120              : 
    1121         7079 :     case MINUS:
    1122         7079 :       x8 = XEXP (x7, 0);
    1123         7079 :       operands[1] = x8;
    1124         7079 :       x9 = XEXP (x7, 1);
    1125         7079 :       operands[2] = x9;
    1126         7079 :       x10 = XEXP (x6, 1);
    1127         7079 :       if (!rtx_equal_p (x10, operands[1]))
    1128              :         return -1;
    1129           47 :       res = pattern219 (x6);
    1130           47 :       if (res >= 0)
    1131           47 :         return res + 8; /* [8, 10] */
    1132              :       return -1;
    1133              : 
    1134              :     default:
    1135              :       return -1;
    1136              :     }
    1137              : }
    1138              : 
    1139              : int
    1140          696 : pattern232 (rtx x1, machine_mode i1)
    1141              : {
    1142          696 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1143          696 :   int res ATTRIBUTE_UNUSED;
    1144          696 :   if (!register_operand (operands[0], i1)
    1145          696 :       || GET_MODE (x1) != i1
    1146          696 :       || !nonimmediate_operand (operands[1], i1)
    1147         1392 :       || !register_operand (operands[2], i1))
    1148            0 :     return -1;
    1149              :   return 0;
    1150              : }
    1151              : 
    1152              : int
    1153       598427 : pattern239 (rtx x1)
    1154              : {
    1155       598427 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1156       598427 :   rtx x2, x3, x4, x5, x6, x7, x8;
    1157       598427 :   int res ATTRIBUTE_UNUSED;
    1158       598427 :   x2 = XEXP (x1, 1);
    1159       598427 :   if (GET_MODE (x2) != E_QImode)
    1160              :     return -1;
    1161       440514 :   x3 = XEXP (x2, 0);
    1162       440514 :   if (!ix86_comparison_operator (x3, E_VOIDmode))
    1163              :     return -1;
    1164         1155 :   operands[1] = x3;
    1165         1155 :   x4 = XEXP (x3, 0);
    1166         1155 :   if (GET_CODE (x4) != REG
    1167         1155 :       || REGNO (x4) != 17)
    1168              :     return -1;
    1169          536 :   x5 = XEXP (x3, 1);
    1170          536 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1171              :     return -1;
    1172          536 :   x6 = XEXP (x2, 1);
    1173          536 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1174              :     return -1;
    1175            0 :   x7 = XEXP (x1, 0);
    1176            0 :   switch (GET_CODE (x7))
    1177              :     {
    1178            0 :     case REG:
    1179            0 :     case SUBREG:
    1180            0 :     case MEM:
    1181            0 :       operands[0] = x7;
    1182            0 :       if (!nonimmediate_operand (operands[0], E_QImode))
    1183              :         return -1;
    1184              :       return 0;
    1185              : 
    1186            0 :     case STRICT_LOW_PART:
    1187            0 :       x8 = XEXP (x7, 0);
    1188            0 :       operands[0] = x8;
    1189            0 :       if (!register_operand (operands[0], E_QImode))
    1190              :         return -1;
    1191              :       return 1;
    1192              : 
    1193              :     default:
    1194              :       return -1;
    1195              :     }
    1196              : }
    1197              : 
    1198              : int
    1199          697 : pattern255 (rtx x1)
    1200              : {
    1201          697 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1202          697 :   rtx x2, x3, x4, x5;
    1203          697 :   int res ATTRIBUTE_UNUSED;
    1204          697 :   x2 = XEXP (x1, 1);
    1205          697 :   if (GET_MODE (x2) != E_CCmode)
    1206              :     return -1;
    1207           84 :   x3 = XEXP (x1, 0);
    1208           84 :   if (GET_CODE (x3) != REG
    1209           84 :       || REGNO (x3) != 17
    1210          168 :       || GET_MODE (x3) != E_CCmode)
    1211              :     return -1;
    1212           84 :   x4 = XVECEXP (x2, 0, 0);
    1213           84 :   operands[2] = x4;
    1214           84 :   if (!register_operand (operands[2], E_V16QImode))
    1215              :     return -1;
    1216           76 :   x5 = XVECEXP (x2, 0, 1);
    1217           76 :   operands[3] = x5;
    1218           76 :   return 0;
    1219              : }
    1220              : 
    1221              : int
    1222            5 : pattern265 (rtx x1, int *pnum_clobbers)
    1223              : {
    1224            5 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1225            5 :   rtx x2, x3, x4;
    1226            5 :   int res ATTRIBUTE_UNUSED;
    1227            5 :   if (pnum_clobbers == NULL)
    1228              :     return -1;
    1229            5 :   x2 = XEXP (x1, 0);
    1230            5 :   x3 = XEXP (x2, 0);
    1231            5 :   operands[0] = x3;
    1232            5 :   x4 = XEXP (x1, 1);
    1233            5 :   return pattern41 (x4); /* [-1, 1] */
    1234              : }
    1235              : 
    1236              : int
    1237         1087 : pattern270 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    1238              : {
    1239         1087 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1240         1087 :   rtx x2, x3;
    1241         1087 :   int res ATTRIBUTE_UNUSED;
    1242         1087 :   if (!register_operand (operands[0], i3)
    1243         1087 :       || GET_MODE (x1) != i3)
    1244              :     return -1;
    1245         1063 :   x2 = XEXP (x1, 0);
    1246         1063 :   if (GET_MODE (x2) != i2
    1247         1063 :       || !register_operand (operands[1], i1))
    1248          210 :     return -1;
    1249          853 :   x3 = XEXP (x1, 1);
    1250          853 :   if (GET_MODE (x3) != i2
    1251          853 :       || !register_mmxmem_operand (operands[2], i1))
    1252          116 :     return -1;
    1253              :   return 0;
    1254              : }
    1255              : 
    1256              : int
    1257          953 : pattern281 (rtx x1)
    1258              : {
    1259          953 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1260          953 :   rtx x2;
    1261          953 :   int res ATTRIBUTE_UNUSED;
    1262          953 :   if (!register_operand (operands[0], E_SImode)
    1263          953 :       || GET_MODE (x1) != E_SImode)
    1264              :     return -1;
    1265          948 :   x2 = XEXP (x1, 0);
    1266          948 :   switch (GET_MODE (x2))
    1267              :     {
    1268          442 :     case E_QImode:
    1269          442 :       if (!nonimmediate_operand (operands[1], E_QImode))
    1270              :         return -1;
    1271              :       return 0;
    1272              : 
    1273          506 :     case E_HImode:
    1274          506 :       if (!nonimmediate_operand (operands[1], E_HImode))
    1275              :         return -1;
    1276              :       return 1;
    1277              : 
    1278              :     default:
    1279              :       return -1;
    1280              :     }
    1281              : }
    1282              : 
    1283              : int
    1284          584 : pattern288 (rtx x1, machine_mode i1, machine_mode i2)
    1285              : {
    1286          584 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1287          584 :   rtx x2, x3, x4, x5, x6;
    1288          584 :   int res ATTRIBUTE_UNUSED;
    1289          584 :   if (GET_MODE (x1) != i1)
    1290              :     return -1;
    1291          584 :   x2 = XEXP (x1, 0);
    1292          584 :   if (GET_MODE (x2) != i1)
    1293              :     return -1;
    1294          584 :   x3 = XEXP (x1, 1);
    1295          584 :   if (GET_MODE (x3) != i1)
    1296              :     return -1;
    1297          584 :   x4 = XEXP (x3, 0);
    1298          584 :   if (GET_MODE (x4) != i2)
    1299              :     return -1;
    1300          584 :   x5 = XEXP (x4, 0);
    1301          584 :   if (GET_MODE (x5) != i2)
    1302              :     return -1;
    1303          584 :   x6 = XEXP (x5, 0);
    1304          584 :   if (!register_operand (x6, i1))
    1305              :     return -1;
    1306              :   return 0;
    1307              : }
    1308              : 
    1309              : int
    1310            2 : pattern296 (rtx x1)
    1311              : {
    1312            2 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1313            2 :   rtx x2;
    1314            2 :   int res ATTRIBUTE_UNUSED;
    1315            2 :   if (!memory_operand (operands[0], E_SImode)
    1316            2 :       || GET_MODE (x1) != E_SImode)
    1317              :     return -1;
    1318            0 :   x2 = XEXP (x1, 0);
    1319            0 :   switch (GET_MODE (x2))
    1320              :     {
    1321            0 :     case E_V4QImode:
    1322            0 :       switch (GET_MODE (operands[1]))
    1323              :         {
    1324            0 :         case E_V4SImode:
    1325            0 :           if (!register_operand (operands[1], E_V4SImode))
    1326              :             return -1;
    1327              :           return 0;
    1328              : 
    1329            0 :         case E_V4DImode:
    1330            0 :           if (!register_operand (operands[1], E_V4DImode))
    1331              :             return -1;
    1332              :           return 1;
    1333              : 
    1334              :         default:
    1335              :           return -1;
    1336              :         }
    1337              : 
    1338            0 :     case E_V2HImode:
    1339            0 :       if (!register_operand (operands[1], E_V2DImode))
    1340              :         return -1;
    1341              :       return 2;
    1342              : 
    1343              :     default:
    1344              :       return -1;
    1345              :     }
    1346              : }
    1347              : 
    1348              : int
    1349         1134 : pattern308 (rtx x1, machine_mode i1)
    1350              : {
    1351         1134 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1352         1134 :   rtx x2, x3;
    1353         1134 :   int res ATTRIBUTE_UNUSED;
    1354         1134 :   if (!register_operand (operands[0], i1)
    1355         1134 :       || GET_MODE (x1) != i1)
    1356              :     return -1;
    1357         1084 :   x2 = XEXP (x1, 0);
    1358         1084 :   if (GET_MODE (x2) != i1)
    1359              :     return -1;
    1360         1084 :   x3 = XEXP (x2, 0);
    1361         1084 :   if (GET_MODE (x3) != i1
    1362         1084 :       || !register_operand (operands[1], i1)
    1363         1080 :       || !nonimmediate_operand (operands[2], i1)
    1364         2164 :       || !nonimm_or_0_operand (operands[3], i1))
    1365            4 :     return -1;
    1366              :   return 0;
    1367              : }
    1368              : 
    1369              : int
    1370          171 : pattern313 (rtx x1, machine_mode i1)
    1371              : {
    1372          171 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1373          171 :   rtx x2, x3;
    1374          171 :   int res ATTRIBUTE_UNUSED;
    1375          171 :   if (!register_operand (operands[0], i1)
    1376          171 :       || GET_MODE (x1) != i1)
    1377              :     return -1;
    1378          171 :   x2 = XEXP (x1, 0);
    1379          171 :   if (GET_MODE (x2) != i1)
    1380              :     return -1;
    1381          171 :   x3 = XEXP (x2, 0);
    1382          171 :   if (GET_MODE (x3) != E_SImode
    1383          171 :       || !nonimmediate_operand (operands[1], E_HImode)
    1384          180 :       || !const0_operand (operands[2], i1))
    1385          162 :     return -1;
    1386              :   return 0;
    1387              : }
    1388              : 
    1389              : int
    1390        17690 : pattern320 (rtx x1)
    1391              : {
    1392        17690 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1393        17690 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1394        17690 :   rtx x10, x11;
    1395        17690 :   int res ATTRIBUTE_UNUSED;
    1396        17690 :   x2 = XEXP (x1, 2);
    1397        17690 :   switch (GET_CODE (x2))
    1398              :     {
    1399         3937 :     case UNSPEC:
    1400         3937 :       if (XVECLEN (x2, 0) != 3)
    1401              :         return -1;
    1402         3934 :       x3 = XEXP (x1, 0);
    1403         3934 :       operands[1] = x3;
    1404         3934 :       x4 = XEXP (x1, 1);
    1405         3934 :       operands[2] = x4;
    1406         3934 :       x5 = XVECEXP (x2, 0, 0);
    1407         3934 :       operands[3] = x5;
    1408         3934 :       x6 = XVECEXP (x2, 0, 1);
    1409         3934 :       operands[4] = x6;
    1410         3934 :       switch (XINT (x2, 1))
    1411              :         {
    1412              :         case 60:
    1413              :           return 0;
    1414              : 
    1415          389 :         case 158:
    1416          389 :           x7 = XVECEXP (x2, 0, 2);
    1417          389 :           operands[5] = x7;
    1418          389 :           if (!const_0_to_7_operand (operands[5], E_SImode))
    1419              :             return -1;
    1420          389 :           switch (GET_MODE (operands[0]))
    1421              :             {
    1422            0 :             case E_V16QImode:
    1423            0 :               if (pattern318 (x1, 
    1424              : E_V16QImode, 
    1425              : E_HImode) != 0)
    1426              :                 return -1;
    1427              :               return 1;
    1428              : 
    1429            0 :             case E_V8HImode:
    1430            0 :               if (pattern318 (x1, 
    1431              : E_V8HImode, 
    1432              : E_QImode) != 0)
    1433              :                 return -1;
    1434              :               return 2;
    1435              : 
    1436           17 :             case E_V4SImode:
    1437           17 :               if (pattern318 (x1, 
    1438              : E_V4SImode, 
    1439              : E_QImode) != 0)
    1440              :                 return -1;
    1441              :               return 3;
    1442              : 
    1443            0 :             case E_V2DImode:
    1444            0 :               if (pattern318 (x1, 
    1445              : E_V2DImode, 
    1446              : E_QImode) != 0)
    1447              :                 return -1;
    1448              :               return 4;
    1449              : 
    1450           12 :             case E_V32QImode:
    1451           12 :               if (pattern318 (x1, 
    1452              : E_V32QImode, 
    1453              : E_SImode) != 0)
    1454              :                 return -1;
    1455              :               return 5;
    1456              : 
    1457           12 :             case E_V16HImode:
    1458           12 :               if (pattern318 (x1, 
    1459              : E_V16HImode, 
    1460              : E_HImode) != 0)
    1461              :                 return -1;
    1462              :               return 6;
    1463              : 
    1464           12 :             case E_V8SImode:
    1465           12 :               if (pattern318 (x1, 
    1466              : E_V8SImode, 
    1467              : E_QImode) != 0)
    1468              :                 return -1;
    1469              :               return 7;
    1470              : 
    1471           12 :             case E_V4DImode:
    1472           12 :               if (pattern318 (x1, 
    1473              : E_V4DImode, 
    1474              : E_QImode) != 0)
    1475              :                 return -1;
    1476              :               return 8;
    1477              : 
    1478              :             default:
    1479              :               return -1;
    1480              :             }
    1481              : 
    1482              :         default:
    1483              :           return -1;
    1484              :         }
    1485              : 
    1486            2 :     case NOT:
    1487            2 :       x8 = XEXP (x2, 0);
    1488            2 :       if (GET_CODE (x8) != UNSPEC
    1489            0 :           || XVECLEN (x8, 0) != 3
    1490            0 :           || XINT (x8, 1) != 60)
    1491              :         return -1;
    1492            0 :       x3 = XEXP (x1, 0);
    1493            0 :       operands[1] = x3;
    1494            0 :       x4 = XEXP (x1, 1);
    1495            0 :       operands[2] = x4;
    1496            0 :       x9 = XVECEXP (x8, 0, 0);
    1497            0 :       operands[3] = x9;
    1498            0 :       x10 = XVECEXP (x8, 0, 1);
    1499            0 :       operands[4] = x10;
    1500            0 :       x11 = XVECEXP (x8, 0, 2);
    1501            0 :       operands[5] = x11;
    1502            0 :       switch (GET_MODE (operands[0]))
    1503              :         {
    1504            0 :         case E_V8SImode:
    1505            0 :           if (!register_operand (operands[0], E_V8SImode)
    1506            0 :               || GET_MODE (x1) != E_V8SImode
    1507            0 :               || !vector_all_ones_operand (operands[1], E_V8SImode)
    1508            0 :               || !const0_operand (operands[2], E_V8SImode)
    1509            0 :               || GET_MODE (x2) != E_QImode
    1510            0 :               || GET_MODE (x8) != E_QImode)
    1511            0 :             return -1;
    1512            0 :           switch (GET_MODE (operands[3]))
    1513              :             {
    1514            0 :             case E_V8SFmode:
    1515            0 :               if (!register_operand (operands[3], E_V8SFmode)
    1516            0 :                   || !nonimmediate_operand (operands[4], E_V8SFmode)
    1517            0 :                   || !const_0_to_31_operand (operands[5], E_SImode))
    1518            0 :                 return -1;
    1519              :               return 9;
    1520              : 
    1521            0 :             case E_V8SImode:
    1522            0 :               if (!nonimmediate_operand (operands[3], E_V8SImode)
    1523            0 :                   || !nonimmediate_operand (operands[4], E_V8SImode)
    1524            0 :                   || !const_0_to_7_operand (operands[5], E_SImode))
    1525            0 :                 return -1;
    1526              :               return 10;
    1527              : 
    1528              :             default:
    1529              :               return -1;
    1530              :             }
    1531              : 
    1532            0 :         case E_V4SImode:
    1533            0 :           if (!register_operand (operands[0], E_V4SImode)
    1534            0 :               || GET_MODE (x1) != E_V4SImode
    1535            0 :               || !vector_all_ones_operand (operands[1], E_V4SImode)
    1536            0 :               || !const0_operand (operands[2], E_V4SImode)
    1537            0 :               || GET_MODE (x2) != E_QImode
    1538            0 :               || GET_MODE (x8) != E_QImode)
    1539            0 :             return -1;
    1540            0 :           switch (GET_MODE (operands[3]))
    1541              :             {
    1542            0 :             case E_V4SFmode:
    1543            0 :               if (!register_operand (operands[3], E_V4SFmode)
    1544            0 :                   || !nonimmediate_operand (operands[4], E_V4SFmode)
    1545            0 :                   || !const_0_to_31_operand (operands[5], E_SImode))
    1546            0 :                 return -1;
    1547              :               return 11;
    1548              : 
    1549            0 :             case E_V4SImode:
    1550            0 :               if (!nonimmediate_operand (operands[3], E_V4SImode)
    1551            0 :                   || !nonimmediate_operand (operands[4], E_V4SImode)
    1552            0 :                   || !const_0_to_7_operand (operands[5], E_SImode))
    1553            0 :                 return -1;
    1554              :               return 12;
    1555              : 
    1556              :             default:
    1557              :               return -1;
    1558              :             }
    1559              : 
    1560            0 :         case E_V4DImode:
    1561            0 :           if (!register_operand (operands[0], E_V4DImode)
    1562            0 :               || GET_MODE (x1) != E_V4DImode
    1563            0 :               || !vector_all_ones_operand (operands[1], E_V4DImode)
    1564            0 :               || !const0_operand (operands[2], E_V4DImode)
    1565            0 :               || GET_MODE (x2) != E_QImode
    1566            0 :               || GET_MODE (x8) != E_QImode)
    1567            0 :             return -1;
    1568            0 :           switch (GET_MODE (operands[3]))
    1569              :             {
    1570            0 :             case E_V4DFmode:
    1571            0 :               if (!register_operand (operands[3], E_V4DFmode)
    1572            0 :                   || !nonimmediate_operand (operands[4], E_V4DFmode)
    1573            0 :                   || !const_0_to_31_operand (operands[5], E_SImode))
    1574            0 :                 return -1;
    1575              :               return 13;
    1576              : 
    1577            0 :             case E_V4DImode:
    1578            0 :               if (!nonimmediate_operand (operands[3], E_V4DImode)
    1579            0 :                   || !nonimmediate_operand (operands[4], E_V4DImode)
    1580            0 :                   || !const_0_to_7_operand (operands[5], E_SImode))
    1581            0 :                 return -1;
    1582              :               return 14;
    1583              : 
    1584              :             default:
    1585              :               return -1;
    1586              :             }
    1587              : 
    1588            0 :         case E_V2DImode:
    1589            0 :           if (!register_operand (operands[0], E_V2DImode)
    1590            0 :               || GET_MODE (x1) != E_V2DImode
    1591            0 :               || !vector_all_ones_operand (operands[1], E_V2DImode)
    1592            0 :               || !const0_operand (operands[2], E_V2DImode)
    1593            0 :               || GET_MODE (x2) != E_QImode
    1594            0 :               || GET_MODE (x8) != E_QImode)
    1595            0 :             return -1;
    1596            0 :           switch (GET_MODE (operands[3]))
    1597              :             {
    1598            0 :             case E_V2DFmode:
    1599            0 :               if (!register_operand (operands[3], E_V2DFmode)
    1600            0 :                   || !nonimmediate_operand (operands[4], E_V2DFmode)
    1601            0 :                   || !const_0_to_31_operand (operands[5], E_SImode))
    1602            0 :                 return -1;
    1603              :               return 15;
    1604              : 
    1605            0 :             case E_V2DImode:
    1606            0 :               if (!nonimmediate_operand (operands[3], E_V2DImode)
    1607            0 :                   || !nonimmediate_operand (operands[4], E_V2DImode)
    1608            0 :                   || !const_0_to_7_operand (operands[5], E_SImode))
    1609            0 :                 return -1;
    1610              :               return 16;
    1611              : 
    1612              :             default:
    1613              :               return -1;
    1614              :             }
    1615              : 
    1616            0 :         case E_V16QImode:
    1617            0 :           if (pattern319 (x1, 
    1618              : E_V16QImode, 
    1619              : E_HImode) != 0)
    1620              :             return -1;
    1621              :           return 17;
    1622              : 
    1623            0 :         case E_V8HImode:
    1624            0 :           if (pattern319 (x1, 
    1625              : E_V8HImode, 
    1626              : E_QImode) != 0)
    1627              :             return -1;
    1628              :           return 18;
    1629              : 
    1630            0 :         case E_V32QImode:
    1631            0 :           if (pattern319 (x1, 
    1632              : E_V32QImode, 
    1633              : E_SImode) != 0)
    1634              :             return -1;
    1635              :           return 19;
    1636              : 
    1637            0 :         case E_V16HImode:
    1638            0 :           if (pattern319 (x1, 
    1639              : E_V16HImode, 
    1640              : E_HImode) != 0)
    1641              :             return -1;
    1642              :           return 20;
    1643              : 
    1644              :         default:
    1645              :           return -1;
    1646              :         }
    1647              : 
    1648        12118 :     case REG:
    1649        12118 :     case SUBREG:
    1650        12118 :       operands[1] = x2;
    1651        12118 :       x3 = XEXP (x1, 0);
    1652        12118 :       operands[2] = x3;
    1653        12118 :       x4 = XEXP (x1, 1);
    1654        12118 :       operands[3] = x4;
    1655        12118 :       return 21;
    1656              : 
    1657              :     default:
    1658              :       return -1;
    1659              :     }
    1660              : }
    1661              : 
    1662              : int
    1663        46156 : pattern384 (rtx x1, int i1, int i2)
    1664              : {
    1665        46156 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1666        46156 :   rtx x2;
    1667        46156 :   int res ATTRIBUTE_UNUSED;
    1668        46156 :   if (GET_CODE (x1) != UNSPEC
    1669        25942 :       || XVECLEN (x1, 0) != 1
    1670        25942 :       || XINT (x1, 1) != i1)
    1671              :     return -1;
    1672        25942 :   x2 = XVECEXP (x1, 0, 0);
    1673        25942 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + i2])
    1674            0 :     return -1;
    1675              :   return 0;
    1676              : }
    1677              : 
    1678              : int
    1679            0 : pattern388 (rtx x1)
    1680              : {
    1681            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1682            0 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1683            0 :   rtx x10, x11;
    1684            0 :   int res ATTRIBUTE_UNUSED;
    1685            0 :   x2 = XVECEXP (x1, 0, 0);
    1686            0 :   x3 = XEXP (x2, 1);
    1687            0 :   if (GET_MODE (x3) != E_SImode)
    1688              :     return -1;
    1689            0 :   x4 = XVECEXP (x1, 0, 1);
    1690            0 :   if (GET_CODE (x4) != USE)
    1691              :     return -1;
    1692            0 :   x5 = XVECEXP (x1, 0, 2);
    1693            0 :   if (GET_CODE (x5) != CLOBBER)
    1694              :     return -1;
    1695            0 :   x6 = XEXP (x2, 0);
    1696            0 :   operands[0] = x6;
    1697            0 :   if (!register_operand (operands[0], E_SImode))
    1698              :     return -1;
    1699            0 :   x7 = XEXP (x3, 0);
    1700            0 :   operands[3] = x7;
    1701            0 :   x8 = XEXP (x4, 0);
    1702            0 :   operands[4] = x8;
    1703            0 :   x9 = XEXP (x5, 0);
    1704            0 :   operands[1] = x9;
    1705            0 :   x10 = XVECEXP (x1, 0, 3);
    1706            0 :   x11 = XEXP (x10, 0);
    1707            0 :   operands[2] = x11;
    1708            0 :   switch (GET_MODE (operands[3]))
    1709              :     {
    1710            0 :     case E_SFmode:
    1711            0 :       return pattern387 (
    1712              : E_V4SFmode, 
    1713            0 : E_SFmode); /* [-1, 0] */
    1714              : 
    1715            0 :     case E_DFmode:
    1716            0 :       if (pattern387 (
    1717              : E_V2DFmode, 
    1718              : E_DFmode) != 0)
    1719              :         return -1;
    1720              :       return 1;
    1721              : 
    1722              :     default:
    1723              :       return -1;
    1724              :     }
    1725              : }
    1726              : 
    1727              : int
    1728         1801 : pattern404 (rtx x1, machine_mode i1, machine_mode i2)
    1729              : {
    1730         1801 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1731         1801 :   rtx x2;
    1732         1801 :   int res ATTRIBUTE_UNUSED;
    1733         1801 :   if (!nonimmediate_operand (operands[0], i1)
    1734         1801 :       || GET_MODE (x1) != i1)
    1735              :     return -1;
    1736         1795 :   x2 = XEXP (x1, 0);
    1737         1795 :   if (GET_MODE (x2) != i1
    1738         1795 :       || !nonimmediate_operand (operands[1], i2)
    1739         3098 :       || !const_scalar_int_operand (operands[2], i1))
    1740          492 :     return -1;
    1741              :   return 0;
    1742              : }
    1743              : 
    1744              : int
    1745           36 : pattern412 (rtx x1, machine_mode i1, machine_mode i2)
    1746              : {
    1747           36 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1748           36 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1749           36 :   int res ATTRIBUTE_UNUSED;
    1750           36 :   x2 = XEXP (x1, 0);
    1751           36 :   x3 = XEXP (x2, 0);
    1752           36 :   x4 = XEXP (x3, 1);
    1753           36 :   x5 = XVECEXP (x4, 0, 0);
    1754           36 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1755              :     return -1;
    1756           36 :   x6 = XVECEXP (x4, 0, 1);
    1757           36 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    1758              :     return -1;
    1759           36 :   x7 = XVECEXP (x4, 0, 2);
    1760           36 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    1761              :     return -1;
    1762           36 :   x8 = XVECEXP (x4, 0, 3);
    1763           36 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 3]
    1764           36 :       || GET_MODE (x3) != i2)
    1765              :     return -1;
    1766           36 :   x9 = XEXP (x3, 0);
    1767           36 :   if (GET_MODE (x9) != i1)
    1768              :     return -1;
    1769           36 :   switch (GET_MODE (operands[0]))
    1770              :     {
    1771           18 :     case E_V4SImode:
    1772           18 :       return pattern143 (x1, 
    1773           18 : E_V4SImode); /* [-1, 0] */
    1774              : 
    1775           18 :     case E_V4DImode:
    1776           18 :       if (pattern143 (x1, 
    1777              : E_V4DImode) != 0)
    1778              :         return -1;
    1779              :       return 1;
    1780              : 
    1781              :     default:
    1782              :       return -1;
    1783              :     }
    1784              : }
    1785              : 
    1786              : int
    1787      8608165 : pattern420 (rtx x1, machine_mode i1)
    1788              : {
    1789      8608165 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1790      8608165 :   rtx x2, x3, x4, x5, x6, x7, x8;
    1791      8608165 :   int res ATTRIBUTE_UNUSED;
    1792      8608165 :   if (!general_reg_operand (operands[0], i1)
    1793      3683777 :       || GET_CODE (x1) != PARALLEL
    1794      9272198 :       || XVECLEN (x1, 0) != 2)
    1795              :     return -1;
    1796       636924 :   x2 = XVECEXP (x1, 0, 0);
    1797       636924 :   if (GET_CODE (x2) != SET)
    1798              :     return -1;
    1799       633404 :   x3 = XEXP (x2, 1);
    1800       633404 :   if (!commutative_operator (x3, i1))
    1801              :     return -1;
    1802       209380 :   operands[3] = x3;
    1803       209380 :   x4 = XVECEXP (x1, 0, 1);
    1804       209380 :   if (GET_CODE (x4) != CLOBBER)
    1805              :     return -1;
    1806       209366 :   x5 = XEXP (x4, 0);
    1807       209366 :   if (GET_CODE (x5) != REG
    1808       209366 :       || REGNO (x5) != 17
    1809       418732 :       || GET_MODE (x5) != E_CCmode)
    1810              :     return -1;
    1811       209366 :   x6 = XEXP (x3, 1);
    1812       209366 :   operands[2] = x6;
    1813       209366 :   if (!memory_operand (operands[2], i1))
    1814              :     return -1;
    1815        39594 :   x7 = XEXP (x3, 0);
    1816        39594 :   if (!rtx_equal_p (x7, operands[0]))
    1817              :     return -1;
    1818        38522 :   x8 = XEXP (x2, 0);
    1819        38522 :   if (!rtx_equal_p (x8, operands[0]))
    1820              :     return -1;
    1821              :   return 0;
    1822              : }
    1823              : 
    1824              : int
    1825       201794 : pattern433 (rtx x1)
    1826              : {
    1827       201794 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1828       201794 :   rtx x2, x3, x4;
    1829       201794 :   int res ATTRIBUTE_UNUSED;
    1830       201794 :   x2 = XEXP (x1, 0);
    1831       201794 :   x3 = XEXP (x2, 1);
    1832       201794 :   operands[3] = x3;
    1833       201794 :   x4 = XEXP (x1, 1);
    1834       201794 :   operands[4] = x4;
    1835       201794 :   switch (GET_MODE (operands[0]))
    1836              :     {
    1837          169 :     case E_QImode:
    1838          169 :       return pattern432 (x1, 
    1839          169 : E_QImode); /* [-1, 0] */
    1840              : 
    1841          258 :     case E_HImode:
    1842          258 :       if (pattern432 (x1, 
    1843              : E_HImode) != 0)
    1844              :         return -1;
    1845              :       return 1;
    1846              : 
    1847              :     default:
    1848              :       return -1;
    1849              :     }
    1850              : }
    1851              : 
    1852              : int
    1853      1690020 : pattern440 (rtx x1, int i1)
    1854              : {
    1855      1690020 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1856      1690020 :   rtx x2, x3;
    1857      1690020 :   int res ATTRIBUTE_UNUSED;
    1858      1690020 :   x2 = XEXP (x1, 1);
    1859      1690020 :   if (GET_CODE (x2) != CONST
    1860       137173 :       || GET_MODE (x2) != E_SImode)
    1861              :     return -1;
    1862       137173 :   x3 = XEXP (x2, 0);
    1863       137173 :   if (GET_CODE (x3) != UNSPEC
    1864       132538 :       || XVECLEN (x3, 0) != 1
    1865       132538 :       || XINT (x3, 1) != i1
    1866            0 :       || GET_MODE (x3) != E_SImode
    1867            0 :       || !register_operand (operands[0], E_SImode)
    1868       137173 :       || GET_MODE (x1) != E_SImode)
    1869       137173 :     return -1;
    1870              :   return 0;
    1871              : }
    1872              : 
    1873              : int
    1874         3150 : pattern448 (rtx x1, int *pnum_clobbers)
    1875              : {
    1876         3150 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1877         3150 :   rtx x2, x3;
    1878         3150 :   int res ATTRIBUTE_UNUSED;
    1879         3150 :   if (pnum_clobbers == NULL)
    1880              :     return -1;
    1881         3150 :   operands[2] = x1;
    1882         3150 :   x2 = XEXP (x1, 0);
    1883         3150 :   if (GET_CODE (x2) != REG
    1884         3150 :       || REGNO (x2) != 17)
    1885              :     return -1;
    1886         1343 :   x3 = XEXP (x1, 1);
    1887         1343 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1888              :     return -1;
    1889         1343 :   switch (GET_MODE (operands[0]))
    1890              :     {
    1891              :     case E_SImode:
    1892              :       return 0;
    1893              : 
    1894          271 :     case E_DImode:
    1895          271 :       return 1;
    1896              : 
    1897              :     default:
    1898              :       return -1;
    1899              :     }
    1900              : }
    1901              : 
    1902              : int
    1903            0 : pattern455 (rtx x1, machine_mode i1)
    1904              : {
    1905            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1906            0 :   rtx x2, x3;
    1907            0 :   int res ATTRIBUTE_UNUSED;
    1908            0 :   if (!register_operand (operands[0], i1)
    1909            0 :       || GET_MODE (x1) != i1)
    1910              :     return -1;
    1911            0 :   x2 = XVECEXP (x1, 0, 0);
    1912            0 :   if (GET_MODE (x2) != i1)
    1913              :     return -1;
    1914            0 :   x3 = XEXP (x2, 0);
    1915            0 :   switch (GET_MODE (x3))
    1916              :     {
    1917            0 :     case E_HFmode:
    1918            0 :       if (!register_operand (operands[1], E_V8HFmode))
    1919              :         return -1;
    1920              :       return 0;
    1921              : 
    1922            0 :     case E_SFmode:
    1923            0 :       if (!register_operand (operands[1], E_V4SFmode))
    1924              :         return -1;
    1925              :       return 1;
    1926              : 
    1927            0 :     case E_DFmode:
    1928            0 :       if (!register_operand (operands[1], E_V2DFmode))
    1929              :         return -1;
    1930              :       return 2;
    1931              : 
    1932              :     default:
    1933              :       return -1;
    1934              :     }
    1935              : }
    1936              : 
    1937              : int
    1938         1370 : pattern465 (rtx x1)
    1939              : {
    1940         1370 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1941         1370 :   rtx x2, x3, x4, x5, x6;
    1942         1370 :   int res ATTRIBUTE_UNUSED;
    1943         1370 :   x2 = XEXP (x1, 0);
    1944         1370 :   x3 = XVECEXP (x2, 0, 0);
    1945         1370 :   operands[1] = x3;
    1946         1370 :   x4 = XVECEXP (x2, 0, 1);
    1947         1370 :   operands[2] = x4;
    1948         1370 :   x5 = XEXP (x1, 1);
    1949         1370 :   operands[3] = x5;
    1950         1370 :   x6 = XEXP (x1, 2);
    1951         1370 :   operands[4] = x6;
    1952         1370 :   switch (GET_MODE (operands[0]))
    1953              :     {
    1954          472 :     case E_V64QImode:
    1955          472 :       return pattern458 (x1, 
    1956              : E_V64QImode, 
    1957          472 : E_DImode); /* [-1, 0] */
    1958              : 
    1959          462 :     case E_V32QImode:
    1960          462 :       if (pattern458 (x1, 
    1961              : E_V32QImode, 
    1962              : E_SImode) != 0)
    1963              :         return -1;
    1964              :       return 1;
    1965              : 
    1966          436 :     case E_V16QImode:
    1967          436 :       if (pattern458 (x1, 
    1968              : E_V16QImode, 
    1969              : E_HImode) != 0)
    1970              :         return -1;
    1971              :       return 2;
    1972              : 
    1973              :     default:
    1974              :       return -1;
    1975              :     }
    1976              : }
    1977              : 
    1978              : int
    1979          534 : pattern472 (rtx x1, machine_mode i1, machine_mode i2)
    1980              : {
    1981          534 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1982          534 :   rtx x2, x3;
    1983          534 :   int res ATTRIBUTE_UNUSED;
    1984          534 :   if (!register_operand (operands[0], i2)
    1985          534 :       || GET_MODE (x1) != i2)
    1986              :     return -1;
    1987          506 :   x2 = XEXP (x1, 0);
    1988          506 :   if (GET_MODE (x2) != i2
    1989          506 :       || !vector_operand (operands[1], i2)
    1990          506 :       || !vector_operand (operands[2], i2)
    1991          506 :       || !vector_operand (operands[3], i2)
    1992         1012 :       || !const0_operand (operands[4], i2))
    1993            0 :     return -1;
    1994          506 :   x3 = XEXP (x1, 2);
    1995          506 :   if (GET_MODE (x3) != i1
    1996          506 :       || !register_operand (operands[5], E_QImode))
    1997           50 :     return -1;
    1998              :   return 0;
    1999              : }
    2000              : 
    2001              : int
    2002         7409 : pattern482 (rtx x1, machine_mode i1, machine_mode i2)
    2003              : {
    2004         7409 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2005         7409 :   rtx x2;
    2006         7409 :   int res ATTRIBUTE_UNUSED;
    2007         7409 :   if (!register_operand (operands[0], i1)
    2008         7409 :       || GET_MODE (x1) != i1)
    2009              :     return -1;
    2010         7075 :   x2 = XEXP (x1, 0);
    2011         7075 :   if (GET_MODE (x2) != i1
    2012         7075 :       || !register_operand (operands[1], i1)
    2013         7063 :       || !register_operand (operands[2], i1)
    2014         7063 :       || !nonimmediate_operand (operands[3], i1)
    2015        14138 :       || !register_operand (operands[4], i2))
    2016          340 :     return -1;
    2017              :   return 0;
    2018              : }
    2019              : 
    2020              : int
    2021        65652 : pattern490 (rtx x1)
    2022              : {
    2023        65652 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2024        65652 :   rtx x2, x3;
    2025        65652 :   int res ATTRIBUTE_UNUSED;
    2026        65652 :   x2 = XEXP (x1, 2);
    2027        65652 :   switch (GET_CODE (x2))
    2028              :     {
    2029        27134 :     case REG:
    2030        27134 :     case SUBREG:
    2031        27134 :       operands[4] = x2;
    2032        27134 :       x3 = XEXP (x1, 1);
    2033        27134 :       operands[3] = x3;
    2034        27134 :       switch (GET_MODE (operands[0]))
    2035              :         {
    2036          443 :         case E_V32HFmode:
    2037          443 :           return pattern489 (x1, 
    2038              : E_V32HFmode, 
    2039          443 : E_SImode); /* [-1, 0] */
    2040              : 
    2041          491 :         case E_V16HFmode:
    2042          491 :           if (pattern489 (x1, 
    2043              : E_V16HFmode, 
    2044              : E_HImode) != 0)
    2045              :             return -1;
    2046              :           return 1;
    2047              : 
    2048          425 :         case E_V8HFmode:
    2049          425 :           if (pattern489 (x1, 
    2050              : E_V8HFmode, 
    2051              : E_QImode) != 0)
    2052              :             return -1;
    2053              :           return 2;
    2054              : 
    2055         1109 :         case E_V16SFmode:
    2056         1109 :           if (pattern489 (x1, 
    2057              : E_V16SFmode, 
    2058              : E_HImode) != 0)
    2059              :             return -1;
    2060              :           return 3;
    2061              : 
    2062          605 :         case E_V8SFmode:
    2063          605 :           if (pattern489 (x1, 
    2064              : E_V8SFmode, 
    2065              : E_QImode) != 0)
    2066              :             return -1;
    2067              :           return 4;
    2068              : 
    2069          455 :         case E_V4SFmode:
    2070          455 :           if (pattern489 (x1, 
    2071              : E_V4SFmode, 
    2072              : E_QImode) != 0)
    2073              :             return -1;
    2074              :           return 5;
    2075              : 
    2076         2626 :         case E_V8DFmode:
    2077         2626 :           if (pattern489 (x1, 
    2078              : E_V8DFmode, 
    2079              : E_QImode) != 0)
    2080              :             return -1;
    2081              :           return 6;
    2082              : 
    2083          950 :         case E_V4DFmode:
    2084          950 :           if (pattern489 (x1, 
    2085              : E_V4DFmode, 
    2086              : E_QImode) != 0)
    2087              :             return -1;
    2088              :           return 7;
    2089              : 
    2090          563 :         case E_V2DFmode:
    2091          563 :           if (pattern489 (x1, 
    2092              : E_V2DFmode, 
    2093              : E_QImode) != 0)
    2094              :             return -1;
    2095              :           return 8;
    2096              : 
    2097         4657 :         case E_V16SImode:
    2098         4657 :           if (pattern134 (x1, 
    2099              : E_V16SImode, 
    2100              : E_HImode) != 0)
    2101              :             return -1;
    2102              :           return 9;
    2103              : 
    2104         3916 :         case E_V8SImode:
    2105         3916 :           if (pattern134 (x1, 
    2106              : E_V8SImode, 
    2107              : E_QImode) != 0)
    2108              :             return -1;
    2109              :           return 10;
    2110              : 
    2111         4783 :         case E_V4SImode:
    2112         4783 :           if (pattern134 (x1, 
    2113              : E_V4SImode, 
    2114              : E_QImode) != 0)
    2115              :             return -1;
    2116              :           return 11;
    2117              : 
    2118          686 :         case E_V8DImode:
    2119          686 :           if (pattern134 (x1, 
    2120              : E_V8DImode, 
    2121              : E_QImode) != 0)
    2122              :             return -1;
    2123              :           return 12;
    2124              : 
    2125          626 :         case E_V4DImode:
    2126          626 :           if (pattern134 (x1, 
    2127              : E_V4DImode, 
    2128              : E_QImode) != 0)
    2129              :             return -1;
    2130              :           return 13;
    2131              : 
    2132          379 :         case E_V2DImode:
    2133          379 :           if (pattern134 (x1, 
    2134              : E_V2DImode, 
    2135              : E_QImode) != 0)
    2136              :             return -1;
    2137              :           return 14;
    2138              : 
    2139          674 :         case E_V64QImode:
    2140          674 :           if (pattern134 (x1, 
    2141              : E_V64QImode, 
    2142              : E_DImode) != 0)
    2143              :             return -1;
    2144              :           return 15;
    2145              : 
    2146          352 :         case E_V16QImode:
    2147          352 :           if (pattern134 (x1, 
    2148              : E_V16QImode, 
    2149              : E_HImode) != 0)
    2150              :             return -1;
    2151              :           return 16;
    2152              : 
    2153          508 :         case E_V32QImode:
    2154          508 :           if (pattern134 (x1, 
    2155              : E_V32QImode, 
    2156              : E_SImode) != 0)
    2157              :             return -1;
    2158              :           return 17;
    2159              : 
    2160          674 :         case E_V32HImode:
    2161          674 :           if (pattern134 (x1, 
    2162              : E_V32HImode, 
    2163              : E_SImode) != 0)
    2164              :             return -1;
    2165              :           return 18;
    2166              : 
    2167          640 :         case E_V16HImode:
    2168          640 :           if (pattern134 (x1, 
    2169              : E_V16HImode, 
    2170              : E_HImode) != 0)
    2171              :             return -1;
    2172              :           return 19;
    2173              : 
    2174          352 :         case E_V8HImode:
    2175          352 :           if (pattern134 (x1, 
    2176              : E_V8HImode, 
    2177              : E_QImode) != 0)
    2178              :             return -1;
    2179              :           return 20;
    2180              : 
    2181          408 :         case E_V32BFmode:
    2182          408 :           if (pattern136 (x1, 
    2183              : E_V32BFmode, 
    2184              : E_SImode) != 0)
    2185              :             return -1;
    2186              :           return 21;
    2187              : 
    2188          408 :         case E_V16BFmode:
    2189          408 :           if (pattern136 (x1, 
    2190              : E_V16BFmode, 
    2191              : E_HImode) != 0)
    2192              :             return -1;
    2193              :           return 22;
    2194              : 
    2195          404 :         case E_V8BFmode:
    2196          404 :           if (pattern136 (x1, 
    2197              : E_V8BFmode, 
    2198              : E_QImode) != 0)
    2199              :             return -1;
    2200              :           return 23;
    2201              : 
    2202              :         default:
    2203              :           return -1;
    2204              :         }
    2205              : 
    2206        35904 :     case CONST_INT:
    2207        35904 :       res = pattern138 (x1);
    2208        35904 :       if (res >= 0)
    2209          404 :         return res + 24; /* [24, 26] */
    2210              :       return -1;
    2211              : 
    2212              :     default:
    2213              :       return -1;
    2214              :     }
    2215              : }
    2216              : 
    2217              : int
    2218          388 : pattern520 (rtx x1, machine_mode i1)
    2219              : {
    2220          388 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2221          388 :   int res ATTRIBUTE_UNUSED;
    2222          388 :   if (!register_operand (operands[0], i1)
    2223          388 :       || GET_MODE (x1) != i1)
    2224              :     return -1;
    2225          351 :   switch (GET_MODE (operands[1]))
    2226              :     {
    2227          245 :     case E_V8SImode:
    2228          245 :       if (!nonimmediate_operand (operands[1], E_V8SImode))
    2229              :         return -1;
    2230              :       return 0;
    2231              : 
    2232          104 :     case E_V8DImode:
    2233          104 :       if (!nonimmediate_operand (operands[1], E_V8DImode))
    2234              :         return -1;
    2235              :       return 1;
    2236              : 
    2237              :     default:
    2238              :       return -1;
    2239              :     }
    2240              : }
    2241              : 
    2242              : int
    2243       217866 : pattern525 (rtx x1)
    2244              : {
    2245       217866 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2246       217866 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2247       217866 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    2248       217866 :   rtx x18, x19, x20, x21, x22;
    2249       217866 :   int res ATTRIBUTE_UNUSED;
    2250       217866 :   x2 = XEXP (x1, 0);
    2251       217866 :   if (maybe_ne (SUBREG_BYTE (x2), 0))
    2252              :     return -1;
    2253       217866 :   x3 = XEXP (x2, 0);
    2254       217866 :   if (GET_CODE (x3) != UNSPEC
    2255        18922 :       || XVECLEN (x3, 0) != 2
    2256         7970 :       || XINT (x3, 1) != 152)
    2257              :     return -1;
    2258          106 :   x4 = XVECEXP (x3, 0, 0);
    2259          106 :   operands[1] = x4;
    2260          106 :   x5 = XVECEXP (x3, 0, 1);
    2261          106 :   operands[2] = x5;
    2262          106 :   x6 = XEXP (x1, 1);
    2263          106 :   switch (XVECLEN (x6, 0))
    2264              :     {
    2265            3 :     case 16:
    2266            3 :       x7 = XVECEXP (x6, 0, 0);
    2267            3 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2268              :         return -1;
    2269            3 :       x8 = XVECEXP (x6, 0, 1);
    2270            3 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    2271              :         return -1;
    2272            3 :       x9 = XVECEXP (x6, 0, 2);
    2273            3 :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    2274              :         return -1;
    2275            3 :       x10 = XVECEXP (x6, 0, 3);
    2276            3 :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    2277              :         return -1;
    2278            3 :       x11 = XVECEXP (x6, 0, 4);
    2279            3 :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    2280              :         return -1;
    2281            3 :       x12 = XVECEXP (x6, 0, 5);
    2282            3 :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    2283              :         return -1;
    2284            3 :       x13 = XVECEXP (x6, 0, 6);
    2285            3 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
    2286              :         return -1;
    2287            3 :       x14 = XVECEXP (x6, 0, 7);
    2288            3 :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
    2289              :         return -1;
    2290            3 :       x15 = XVECEXP (x6, 0, 8);
    2291            3 :       if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    2292              :         return -1;
    2293            3 :       x16 = XVECEXP (x6, 0, 9);
    2294            3 :       if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 9])
    2295              :         return -1;
    2296            3 :       x17 = XVECEXP (x6, 0, 10);
    2297            3 :       if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 10])
    2298              :         return -1;
    2299            3 :       x18 = XVECEXP (x6, 0, 11);
    2300            3 :       if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 11])
    2301              :         return -1;
    2302            3 :       x19 = XVECEXP (x6, 0, 12);
    2303            3 :       if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 12])
    2304              :         return -1;
    2305            3 :       x20 = XVECEXP (x6, 0, 13);
    2306            3 :       if (x20 != const_int_rtx[MAX_SAVED_CONST_INT + 13])
    2307              :         return -1;
    2308            3 :       x21 = XVECEXP (x6, 0, 14);
    2309            3 :       if (x21 != const_int_rtx[MAX_SAVED_CONST_INT + 14])
    2310              :         return -1;
    2311            3 :       x22 = XVECEXP (x6, 0, 15);
    2312            3 :       if (x22 != const_int_rtx[MAX_SAVED_CONST_INT + 15]
    2313            3 :           || pattern524 (x1, 
    2314              : E_V32HImode, 
    2315              : E_V32HFmode, 
    2316              : E_V16HFmode) != 0)
    2317            1 :         return -1;
    2318              :       return 0;
    2319              : 
    2320            3 :     case 8:
    2321            3 :       x7 = XVECEXP (x6, 0, 0);
    2322            3 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2323              :         return -1;
    2324            3 :       x8 = XVECEXP (x6, 0, 1);
    2325            3 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    2326              :         return -1;
    2327            3 :       x9 = XVECEXP (x6, 0, 2);
    2328            3 :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    2329              :         return -1;
    2330            3 :       x10 = XVECEXP (x6, 0, 3);
    2331            3 :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    2332              :         return -1;
    2333            3 :       x11 = XVECEXP (x6, 0, 4);
    2334            3 :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    2335              :         return -1;
    2336            3 :       x12 = XVECEXP (x6, 0, 5);
    2337            3 :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    2338              :         return -1;
    2339            3 :       x13 = XVECEXP (x6, 0, 6);
    2340            3 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
    2341              :         return -1;
    2342            3 :       x14 = XVECEXP (x6, 0, 7);
    2343            3 :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 7]
    2344            3 :           || pattern524 (x1, 
    2345              : E_V16HImode, 
    2346              : E_V16HFmode, 
    2347              : E_V8HFmode) != 0)
    2348            1 :         return -1;
    2349              :       return 1;
    2350              : 
    2351              :     default:
    2352              :       return -1;
    2353              :     }
    2354              : }
    2355              : 
    2356              : int
    2357         1330 : pattern551 (rtx x1)
    2358              : {
    2359         1330 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2360         1330 :   rtx x2, x3, x4, x5, x6, x7;
    2361         1330 :   int res ATTRIBUTE_UNUSED;
    2362         1330 :   x2 = XVECEXP (x1, 0, 0);
    2363         1330 :   x3 = XEXP (x2, 1);
    2364         1330 :   if (GET_MODE (x3) != E_XFmode)
    2365              :     return -1;
    2366         1330 :   x4 = XVECEXP (x1, 0, 1);
    2367         1330 :   if (GET_CODE (x4) != CLOBBER)
    2368              :     return -1;
    2369         1325 :   x5 = XEXP (x4, 0);
    2370         1325 :   if (GET_CODE (x5) != REG
    2371         1325 :       || REGNO (x5) != 17
    2372         2650 :       || GET_MODE (x5) != E_CCmode)
    2373              :     return -1;
    2374         1325 :   x6 = XEXP (x2, 0);
    2375         1325 :   operands[0] = x6;
    2376         1325 :   if (!register_operand (operands[0], E_XFmode))
    2377              :     return -1;
    2378         1325 :   x7 = XVECEXP (x3, 0, 0);
    2379         1325 :   operands[1] = x7;
    2380         1325 :   if (!register_operand (operands[1], E_XFmode))
    2381              :     return -1;
    2382              :   return 0;
    2383              : }
    2384              : 
    2385              : int
    2386           35 : pattern557 (rtx x1, int *pnum_clobbers)
    2387              : {
    2388           35 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2389           35 :   rtx x2, x3, x4, x5, x6, x7;
    2390           35 :   int res ATTRIBUTE_UNUSED;
    2391           35 :   x2 = XVECEXP (x1, 0, 0);
    2392           35 :   x3 = XEXP (x2, 1);
    2393           35 :   x4 = XEXP (x3, 0);
    2394           35 :   x5 = XEXP (x4, 0);
    2395           35 :   operands[1] = x5;
    2396           35 :   x6 = XVECEXP (x1, 0, 1);
    2397           35 :   switch (GET_CODE (x6))
    2398              :     {
    2399           35 :     case CLOBBER:
    2400           35 :       x7 = XEXP (x6, 0);
    2401           35 :       if (GET_CODE (x7) != REG
    2402           35 :           || REGNO (x7) != 17
    2403           70 :           || GET_MODE (x7) != E_CCmode)
    2404            0 :         return -1;
    2405              :       return 0;
    2406              : 
    2407            0 :     case UNSPEC:
    2408            0 :       if (pnum_clobbers == NULL
    2409            0 :           || XVECLEN (x6, 0) != 1
    2410            0 :           || XINT (x6, 1) != 39)
    2411            0 :         return -1;
    2412              :       return 1;
    2413              : 
    2414              :     default:
    2415              :       return -1;
    2416              :     }
    2417              : }
    2418              : 
    2419              : int
    2420       464545 : pattern565 (rtx x1, rtx_code i1)
    2421              : {
    2422       464545 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2423       464545 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2424       464545 :   int res ATTRIBUTE_UNUSED;
    2425       464545 :   x2 = XVECEXP (x1, 0, 0);
    2426       464545 :   x3 = XEXP (x2, 1);
    2427       464545 :   x4 = XEXP (x3, 1);
    2428       464545 :   if (GET_CODE (x4) != i1)
    2429              :     return -1;
    2430       255596 :   x5 = XVECEXP (x1, 0, 1);
    2431       255596 :   if (GET_CODE (x5) != CLOBBER)
    2432              :     return -1;
    2433       236937 :   x6 = XEXP (x5, 0);
    2434       236937 :   if (GET_CODE (x6) != REG
    2435       236937 :       || REGNO (x6) != 17
    2436       473874 :       || GET_MODE (x6) != E_CCmode)
    2437              :     return -1;
    2438       236937 :   x7 = XEXP (x3, 0);
    2439       236937 :   x8 = XEXP (x7, 0);
    2440       236937 :   operands[1] = x8;
    2441       236937 :   x9 = XEXP (x4, 0);
    2442       236937 :   operands[2] = x9;
    2443       236937 :   switch (GET_MODE (operands[0]))
    2444              :     {
    2445       124254 :     case E_DImode:
    2446       124254 :       return pattern564 (x3, 
    2447              : E_SImode, 
    2448       124254 : E_DImode); /* [-1, 0] */
    2449              : 
    2450       107077 :     case E_TImode:
    2451       107077 :       if (pattern564 (x3, 
    2452              : E_DImode, 
    2453              : E_TImode) != 0)
    2454              :         return -1;
    2455              :       return 1;
    2456              : 
    2457         4932 :     case E_HImode:
    2458         4932 :       if (pattern564 (x3, 
    2459              : E_QImode, 
    2460              : E_HImode) != 0)
    2461              :         return -1;
    2462              :       return 2;
    2463              : 
    2464              :     default:
    2465              :       return -1;
    2466              :     }
    2467              : }
    2468              : 
    2469              : int
    2470          638 : pattern576 (rtx x1)
    2471              : {
    2472          638 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2473          638 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2474          638 :   int res ATTRIBUTE_UNUSED;
    2475          638 :   x2 = XVECEXP (x1, 0, 0);
    2476          638 :   x3 = XEXP (x2, 0);
    2477          638 :   operands[0] = x3;
    2478          638 :   x4 = XEXP (x2, 1);
    2479          638 :   x5 = XEXP (x4, 0);
    2480          638 :   operands[1] = x5;
    2481          638 :   if (!nonimmediate_operand (operands[1], E_SImode))
    2482              :     return -1;
    2483          605 :   x6 = XVECEXP (x1, 0, 1);
    2484          605 :   x7 = XEXP (x6, 0);
    2485          605 :   operands[2] = x7;
    2486          605 :   if (!memory_operand (operands[2], E_DImode))
    2487              :     return -1;
    2488          605 :   x8 = XVECEXP (x1, 0, 2);
    2489          605 :   x9 = XEXP (x8, 0);
    2490          605 :   operands[3] = x9;
    2491          605 :   if (!scratch_operand (operands[3], E_DImode))
    2492              :     return -1;
    2493          604 :   return pattern389 (x4); /* [-1, 2] */
    2494              : }
    2495              : 
    2496              : int
    2497       372108 : pattern586 (rtx x1, rtx_code i1, machine_mode i2)
    2498              : {
    2499       372108 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2500       372108 :   rtx x2, x3, x4, x5;
    2501       372108 :   int res ATTRIBUTE_UNUSED;
    2502       372108 :   x2 = XVECEXP (x1, 0, 0);
    2503       372108 :   x3 = XEXP (x2, 0);
    2504       372108 :   if (GET_CODE (x3) != REG
    2505       372108 :       || REGNO (x3) != 17
    2506       744216 :       || GET_MODE (x3) != i2)
    2507              :     return -1;
    2508       115992 :   x4 = XVECEXP (x1, 0, 1);
    2509       115992 :   if (GET_CODE (x4) != SET)
    2510              :     return -1;
    2511        92013 :   x5 = XEXP (x4, 1);
    2512        92013 :   if (GET_CODE (x5) != i1)
    2513          736 :     return -1;
    2514              :   return 0;
    2515              : }
    2516              : 
    2517              : int
    2518       307352 : pattern590 (rtx x1, rtx_code i1)
    2519              : {
    2520       307352 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2521       307352 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2522       307352 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    2523       307352 :   rtx x18;
    2524       307352 :   int res ATTRIBUTE_UNUSED;
    2525       307352 :   x2 = XVECEXP (x1, 0, 0);
    2526       307352 :   x3 = XEXP (x2, 1);
    2527       307352 :   x4 = XEXP (x3, 0);
    2528       307352 :   if (GET_MODE (x4) != E_QImode)
    2529              :     return -1;
    2530        45246 :   x5 = XEXP (x4, 0);
    2531        45246 :   if (GET_CODE (x5) != SUBREG
    2532         1898 :       || maybe_ne (SUBREG_BYTE (x5), 0)
    2533        47144 :       || GET_MODE (x5) != E_QImode)
    2534              :     return -1;
    2535         1898 :   x6 = XEXP (x5, 0);
    2536         1898 :   switch (GET_CODE (x6))
    2537              :     {
    2538          778 :     case ASHIFTRT:
    2539          778 :     case LSHIFTRT:
    2540          778 :     case SIGN_EXTRACT:
    2541          778 :     case ZERO_EXTRACT:
    2542          778 :       operands[3] = x6;
    2543          778 :       x7 = XEXP (x3, 1);
    2544          778 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2545              :         return -1;
    2546          756 :       x8 = XVECEXP (x1, 0, 1);
    2547          756 :       if (GET_CODE (x8) != SET)
    2548              :         return -1;
    2549            0 :       x9 = XEXP (x8, 1);
    2550            0 :       if (GET_CODE (x9) != SUBREG
    2551            0 :           || maybe_ne (SUBREG_BYTE (x9), 0))
    2552              :         return -1;
    2553            0 :       x10 = XEXP (x9, 0);
    2554            0 :       if (GET_CODE (x10) != i1
    2555            0 :           || GET_MODE (x10) != E_QImode)
    2556              :         return -1;
    2557            0 :       x11 = XEXP (x10, 0);
    2558            0 :       if (GET_CODE (x11) != SUBREG
    2559            0 :           || maybe_ne (SUBREG_BYTE (x11), 0)
    2560            0 :           || GET_MODE (x11) != E_QImode)
    2561              :         return -1;
    2562            0 :       x12 = XEXP (x11, 0);
    2563            0 :       if (GET_CODE (x12) != ZERO_EXTRACT)
    2564              :         return -1;
    2565            0 :       x13 = XEXP (x12, 1);
    2566            0 :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    2567              :         return -1;
    2568            0 :       x14 = XEXP (x12, 2);
    2569            0 :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    2570              :         return -1;
    2571            0 :       x15 = XEXP (x8, 0);
    2572            0 :       if (GET_CODE (x15) != ZERO_EXTRACT)
    2573              :         return -1;
    2574            0 :       x16 = XEXP (x15, 1);
    2575            0 :       if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    2576              :         return -1;
    2577            0 :       x17 = XEXP (x15, 2);
    2578            0 :       if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    2579              :         return -1;
    2580            0 :       x18 = XEXP (x2, 0);
    2581            0 :       operands[4] = x18;
    2582            0 :       if (!flags_reg_operand (operands[4], E_VOIDmode))
    2583              :         return -1;
    2584            0 :       operands[5] = x3;
    2585            0 :       if (!compare_operator (operands[5], E_VOIDmode))
    2586              :         return -1;
    2587            0 :       return pattern589 (x1); /* [-1, 2] */
    2588              : 
    2589              :     default:
    2590              :       return -1;
    2591              :     }
    2592              : }
    2593              : 
    2594              : int
    2595          336 : pattern613 (rtx x1)
    2596              : {
    2597          336 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2598          336 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2599          336 :   rtx x10, x11, x12, x13;
    2600          336 :   int res ATTRIBUTE_UNUSED;
    2601          336 :   x2 = XEXP (x1, 1);
    2602          336 :   x3 = XVECEXP (x2, 0, 0);
    2603          336 :   x4 = XEXP (x3, 0);
    2604          336 :   if (GET_CODE (x4) != EQ)
    2605              :     return -1;
    2606          114 :   x5 = XVECEXP (x2, 0, 1);
    2607          114 :   if (GET_CODE (x5) != EQ)
    2608              :     return -1;
    2609          114 :   x6 = XEXP (x5, 0);
    2610          114 :   if (GET_CODE (x6) != EQ)
    2611              :     return -1;
    2612          114 :   x7 = XEXP (x1, 0);
    2613          114 :   if (GET_MODE (x7) != E_CCZmode
    2614          114 :       || GET_MODE (x2) != E_CCZmode)
    2615              :     return -1;
    2616          114 :   x8 = XEXP (x4, 0);
    2617          114 :   operands[0] = x8;
    2618          114 :   x9 = XEXP (x4, 1);
    2619          114 :   operands[1] = x9;
    2620          114 :   x10 = XEXP (x3, 1);
    2621          114 :   operands[2] = x10;
    2622          114 :   x11 = XEXP (x6, 0);
    2623          114 :   if (!rtx_equal_p (x11, operands[0]))
    2624              :     return -1;
    2625          114 :   x12 = XEXP (x6, 1);
    2626          114 :   if (!rtx_equal_p (x12, operands[1]))
    2627              :     return -1;
    2628          114 :   x13 = XEXP (x5, 1);
    2629          114 :   if (!rtx_equal_p (x13, operands[2]))
    2630              :     return -1;
    2631          114 :   switch (GET_MODE (x3))
    2632              :     {
    2633           14 :     case E_V32QImode:
    2634           14 :       return pattern612 (x2, 
    2635           14 : E_V32QImode); /* [-1, 0] */
    2636              : 
    2637            0 :     case E_V16QImode:
    2638            0 :       if (pattern612 (x2, 
    2639              : E_V16QImode) != 0)
    2640              :         return -1;
    2641              :       return 1;
    2642              : 
    2643            0 :     case E_V16HImode:
    2644            0 :       if (pattern612 (x2, 
    2645              : E_V16HImode) != 0)
    2646              :         return -1;
    2647              :       return 2;
    2648              : 
    2649            0 :     case E_V8HImode:
    2650            0 :       if (pattern612 (x2, 
    2651              : E_V8HImode) != 0)
    2652              :         return -1;
    2653              :       return 3;
    2654              : 
    2655            7 :     case E_V8SImode:
    2656            7 :       if (pattern612 (x2, 
    2657              : E_V8SImode) != 0)
    2658              :         return -1;
    2659              :       return 4;
    2660              : 
    2661            0 :     case E_V4SImode:
    2662            0 :       if (pattern612 (x2, 
    2663              : E_V4SImode) != 0)
    2664              :         return -1;
    2665              :       return 5;
    2666              : 
    2667           71 :     case E_V4DImode:
    2668           71 :       if (pattern612 (x2, 
    2669              : E_V4DImode) != 0)
    2670              :         return -1;
    2671              :       return 6;
    2672              : 
    2673           22 :     case E_V2DImode:
    2674           22 :       if (pattern612 (x2, 
    2675              : E_V2DImode) != 0)
    2676              :         return -1;
    2677              :       return 7;
    2678              : 
    2679              :     default:
    2680              :       return -1;
    2681              :     }
    2682              : }
    2683              : 
    2684              : int
    2685          658 : pattern636 (rtx x1, machine_mode i1)
    2686              : {
    2687          658 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2688          658 :   rtx x2;
    2689          658 :   int res ATTRIBUTE_UNUSED;
    2690          658 :   if (!memory_operand (operands[0], i1)
    2691          658 :       || GET_MODE (x1) != i1)
    2692              :     return -1;
    2693          626 :   x2 = XVECEXP (x1, 0, 0);
    2694          626 :   if (GET_MODE (x2) != i1
    2695          626 :       || !register_operand (operands[1], i1))
    2696           23 :     return -1;
    2697              :   return 0;
    2698              : }
    2699              : 
    2700              : int
    2701         2960 : pattern642 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    2702              : {
    2703         2960 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2704         2960 :   rtx x2;
    2705         2960 :   int res ATTRIBUTE_UNUSED;
    2706         2960 :   if (!register_operand (operands[0], i1)
    2707         2960 :       || GET_MODE (x1) != i1)
    2708              :     return -1;
    2709         2838 :   x2 = XEXP (x1, 0);
    2710         2838 :   if (GET_MODE (x2) != i1
    2711         2838 :       || !nonimmediate_operand (operands[1], i3)
    2712         2838 :       || !nonimm_or_0_operand (operands[2], i1)
    2713         5605 :       || !register_operand (operands[3], i2))
    2714          206 :     return -1;
    2715              :   return 0;
    2716              : }
    2717              : 
    2718              : int
    2719         6178 : pattern647 (rtx x1)
    2720              : {
    2721         6178 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2722         6178 :   rtx x2, x3, x4;
    2723         6178 :   int res ATTRIBUTE_UNUSED;
    2724         6178 :   x2 = XEXP (x1, 0);
    2725         6178 :   x3 = XVECEXP (x2, 0, 0);
    2726         6178 :   operands[1] = x3;
    2727         6178 :   x4 = XEXP (x1, 2);
    2728         6178 :   operands[3] = x4;
    2729         6178 :   switch (GET_MODE (operands[0]))
    2730              :     {
    2731          512 :     case E_V16SImode:
    2732          512 :       return pattern644 (x1, 
    2733              : E_V16SImode, 
    2734              : E_HImode, 
    2735          512 : E_V16SFmode); /* [-1, 0] */
    2736              : 
    2737         1032 :     case E_V8SImode:
    2738         1032 :       if (!register_operand (operands[0], E_V8SImode)
    2739          980 :           || GET_MODE (x1) != E_V8SImode
    2740          980 :           || GET_MODE (x2) != E_V8SImode
    2741          980 :           || !nonimm_or_0_operand (operands[2], E_V8SImode)
    2742         1980 :           || !register_operand (operands[3], E_QImode))
    2743          124 :         return -1;
    2744          908 :       switch (GET_MODE (operands[1]))
    2745              :         {
    2746          448 :         case E_V8SFmode:
    2747          448 :           if (!vector_operand (operands[1], E_V8SFmode))
    2748              :             return -1;
    2749              :           return 1;
    2750              : 
    2751          460 :         case E_V8DFmode:
    2752          460 :           if (!vector_operand (operands[1], E_V8DFmode))
    2753              :             return -1;
    2754              :           return 2;
    2755              : 
    2756              :         default:
    2757              :           return -1;
    2758              :         }
    2759              : 
    2760         1480 :     case E_V4SImode:
    2761         1480 :       if (!register_operand (operands[0], E_V4SImode)
    2762         1468 :           || GET_MODE (x1) != E_V4SImode
    2763         1468 :           || GET_MODE (x2) != E_V4SImode
    2764         1468 :           || !nonimm_or_0_operand (operands[2], E_V4SImode)
    2765         2898 :           || !register_operand (operands[3], E_QImode))
    2766          126 :         return -1;
    2767         1354 :       switch (GET_MODE (operands[1]))
    2768              :         {
    2769          450 :         case E_V4SFmode:
    2770          450 :           if (!vector_operand (operands[1], E_V4SFmode))
    2771              :             return -1;
    2772              :           return 3;
    2773              : 
    2774          452 :         case E_V4DFmode:
    2775          452 :           if (!vector_operand (operands[1], E_V4DFmode))
    2776              :             return -1;
    2777              :           return 4;
    2778              : 
    2779          452 :         case E_V2DFmode:
    2780          452 :           if (!vector_operand (operands[1], E_V2DFmode))
    2781              :             return -1;
    2782              :           return 5;
    2783              : 
    2784              :         default:
    2785              :           return -1;
    2786              :         }
    2787              : 
    2788         1072 :     case E_V8DImode:
    2789         1072 :       if (!register_operand (operands[0], E_V8DImode)
    2790          988 :           || GET_MODE (x1) != E_V8DImode
    2791          988 :           || GET_MODE (x2) != E_V8DImode
    2792          988 :           || !nonimm_or_0_operand (operands[2], E_V8DImode)
    2793         2024 :           || !register_operand (operands[3], E_QImode))
    2794          160 :         return -1;
    2795          912 :       switch (GET_MODE (operands[1]))
    2796              :         {
    2797          460 :         case E_V8DFmode:
    2798          460 :           if (!vector_operand (operands[1], E_V8DFmode))
    2799              :             return -1;
    2800              :           return 6;
    2801              : 
    2802          452 :         case E_V8SFmode:
    2803          452 :           if (!vector_operand (operands[1], E_V8SFmode))
    2804              :             return -1;
    2805              :           return 7;
    2806              : 
    2807              :         default:
    2808              :           return -1;
    2809              :         }
    2810              : 
    2811         1059 :     case E_V4DImode:
    2812         1059 :       if (!register_operand (operands[0], E_V4DImode)
    2813          975 :           || GET_MODE (x1) != E_V4DImode
    2814          975 :           || GET_MODE (x2) != E_V4DImode
    2815          975 :           || !nonimm_or_0_operand (operands[2], E_V4DImode)
    2816         1999 :           || !register_operand (operands[3], E_QImode))
    2817          159 :         return -1;
    2818          900 :       switch (GET_MODE (operands[1]))
    2819              :         {
    2820          456 :         case E_V4DFmode:
    2821          456 :           if (!vector_operand (operands[1], E_V4DFmode))
    2822              :             return -1;
    2823              :           return 8;
    2824              : 
    2825          444 :         case E_V4SFmode:
    2826          444 :           if (!vector_operand (operands[1], E_V4SFmode))
    2827              :             return -1;
    2828              :           return 9;
    2829              : 
    2830              :         default:
    2831              :           return -1;
    2832              :         }
    2833              : 
    2834         1023 :     case E_V2DImode:
    2835         1023 :       if (!register_operand (operands[0], E_V2DImode)
    2836          983 :           || GET_MODE (x1) != E_V2DImode
    2837          983 :           || GET_MODE (x2) != E_V2DImode
    2838          983 :           || !nonimm_or_0_operand (operands[2], E_V2DImode)
    2839         1967 :           || !register_operand (operands[3], E_QImode))
    2840          118 :         return -1;
    2841          905 :       switch (GET_MODE (operands[1]))
    2842              :         {
    2843          454 :         case E_V2DFmode:
    2844          454 :           if (!vector_operand (operands[1], E_V2DFmode))
    2845              :             return -1;
    2846              :           return 10;
    2847              : 
    2848          451 :         case E_V4SFmode:
    2849          451 :           if (!vector_operand (operands[1], E_V4SFmode))
    2850              :             return -1;
    2851              :           return 11;
    2852              : 
    2853              :         default:
    2854              :           return -1;
    2855              :         }
    2856              : 
    2857              :     default:
    2858              :       return -1;
    2859              :     }
    2860              : }
    2861              : 
    2862              : int
    2863         2368 : pattern686 (rtx x1)
    2864              : {
    2865         2368 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2866         2368 :   rtx x2, x3, x4, x5, x6;
    2867         2368 :   int res ATTRIBUTE_UNUSED;
    2868         2368 :   x2 = XEXP (x1, 0);
    2869         2368 :   x3 = XEXP (x2, 0);
    2870         2368 :   x4 = XEXP (x3, 0);
    2871         2368 :   operands[2] = x4;
    2872         2368 :   x5 = XEXP (x3, 1);
    2873         2368 :   operands[3] = x5;
    2874         2368 :   x6 = XEXP (x1, 1);
    2875         2368 :   operands[4] = x6;
    2876         2368 :   switch (GET_MODE (operands[0]))
    2877              :     {
    2878           90 :     case E_V8SFmode:
    2879           90 :       return pattern685 (x1, 
    2880           90 : E_V8SFmode); /* [-1, 0] */
    2881              : 
    2882           87 :     case E_V4SFmode:
    2883           87 :       if (pattern685 (x1, 
    2884              : E_V4SFmode) != 0)
    2885              :         return -1;
    2886              :       return 1;
    2887              : 
    2888            0 :     case E_V4DFmode:
    2889            0 :       if (pattern685 (x1, 
    2890              : E_V4DFmode) != 0)
    2891              :         return -1;
    2892              :       return 2;
    2893              : 
    2894           82 :     case E_V2DFmode:
    2895           82 :       if (pattern685 (x1, 
    2896              : E_V2DFmode) != 0)
    2897              :         return -1;
    2898              :       return 3;
    2899              : 
    2900              :     default:
    2901              :       return -1;
    2902              :     }
    2903              : }
    2904              : 
    2905              : int
    2906          120 : pattern693 (rtx x1, machine_mode i1, machine_mode i2)
    2907              : {
    2908          120 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2909          120 :   rtx x2, x3, x4, x5;
    2910          120 :   int res ATTRIBUTE_UNUSED;
    2911          120 :   x2 = XVECEXP (x1, 0, 1);
    2912          120 :   if (XVECLEN (x2, 0) != 1
    2913          120 :       || XINT (x2, 1) != 111)
    2914              :     return -1;
    2915          120 :   x3 = XVECEXP (x2, 0, 0);
    2916          120 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    2917          120 :       || !register_operand (operands[0], i2))
    2918            0 :     return -1;
    2919          120 :   x4 = XVECEXP (x1, 0, 0);
    2920          120 :   x5 = XEXP (x4, 1);
    2921          120 :   if (GET_MODE (x5) != i2
    2922          120 :       || !nonimmediate_operand (operands[1], i1))
    2923            0 :     return -1;
    2924              :   return 0;
    2925              : }
    2926              : 
    2927              : int
    2928          247 : pattern699 (rtx x1, machine_mode i1)
    2929              : {
    2930          247 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2931          247 :   rtx x2;
    2932          247 :   int res ATTRIBUTE_UNUSED;
    2933          247 :   if (!nonimmediate_operand (operands[0], i1)
    2934          247 :       || GET_MODE (x1) != i1
    2935          494 :       || !general_operand (operands[1], i1))
    2936            0 :     return -1;
    2937          247 :   x2 = XEXP (x1, 1);
    2938          247 :   if (GET_MODE (x2) != i1)
    2939              :     return -1;
    2940              :   return 0;
    2941              : }
    2942              : 
    2943              : int
    2944      1934908 : pattern703 (rtx x1)
    2945              : {
    2946      1934908 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2947      1934908 :   rtx x2, x3, x4, x5, x6, x7;
    2948      1934908 :   int res ATTRIBUTE_UNUSED;
    2949      1934908 :   x2 = XVECEXP (x1, 0, 1);
    2950      1934908 :   if (GET_CODE (x2) != CLOBBER)
    2951              :     return -1;
    2952       272975 :   x3 = XEXP (x2, 0);
    2953       272975 :   if (GET_CODE (x3) != REG
    2954       272975 :       || REGNO (x3) != 17
    2955       508507 :       || GET_MODE (x3) != E_CCmode)
    2956              :     return -1;
    2957        52023 :   x4 = XVECEXP (x1, 0, 0);
    2958        52023 :   x5 = XEXP (x4, 1);
    2959        52023 :   x6 = XEXP (x5, 0);
    2960        52023 :   x7 = XEXP (x6, 0);
    2961        52023 :   switch (GET_CODE (x7))
    2962              :     {
    2963              :     case REG:
    2964              :     case SUBREG:
    2965              :       return 0;
    2966              : 
    2967        17428 :     case ZERO_EXTRACT:
    2968        17428 :       return 1;
    2969              : 
    2970              :     default:
    2971              :       return -1;
    2972              :     }
    2973              : }
    2974              : 
    2975              : int
    2976          166 : pattern713 (rtx x1, machine_mode i1, int i2)
    2977              : {
    2978          166 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2979          166 :   rtx x2, x3, x4, x5, x6, x7, x8;
    2980          166 :   int res ATTRIBUTE_UNUSED;
    2981          166 :   x2 = XVECEXP (x1, 0, 0);
    2982          166 :   x3 = XEXP (x2, 1);
    2983          166 :   if (GET_MODE (x3) != E_DImode)
    2984              :     return -1;
    2985          166 :   x4 = XVECEXP (x3, 0, 0);
    2986          166 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2987              :     return -1;
    2988          166 :   x5 = XVECEXP (x1, 0, 1);
    2989          166 :   if (GET_CODE (x5) != SET)
    2990              :     return -1;
    2991          166 :   x6 = XEXP (x5, 1);
    2992          166 :   if (GET_CODE (x6) != UNSPEC_VOLATILE
    2993          166 :       || XVECLEN (x6, 0) != 1
    2994          166 :       || XINT (x6, 1) != i2
    2995          166 :       || GET_MODE (x6) != i1)
    2996              :     return -1;
    2997          166 :   x7 = XVECEXP (x6, 0, 0);
    2998          166 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    2999          166 :       || !register_operand (operands[0], E_DImode))
    3000            0 :     return -1;
    3001          166 :   x8 = XEXP (x5, 0);
    3002          166 :   operands[1] = x8;
    3003          166 :   if (!register_operand (operands[1], i1))
    3004              :     return -1;
    3005              :   return 0;
    3006              : }
    3007              : 
    3008              : int
    3009        94656 : pattern721 (rtx x1, machine_mode i1, machine_mode i2)
    3010              : {
    3011        94656 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3012        94656 :   rtx x2, x3, x4;
    3013        94656 :   int res ATTRIBUTE_UNUSED;
    3014        94656 :   if (!nonimmediate_operand (operands[0], i2)
    3015        94656 :       || GET_MODE (x1) != i2)
    3016              :     return -1;
    3017        94596 :   x2 = XEXP (x1, 0);
    3018        94596 :   if (GET_MODE (x2) != i2)
    3019              :     return -1;
    3020        94596 :   x3 = XEXP (x2, 0);
    3021        94596 :   if (GET_MODE (x3) != i2
    3022        94596 :       || !nonimmediate_operand (operands[1], i1))
    3023         1952 :     return -1;
    3024        92644 :   x4 = XEXP (x1, 1);
    3025        92644 :   if (GET_MODE (x4) != i2
    3026        92644 :       || !nonimmediate_operand (operands[3], i1))
    3027         1173 :     return -1;
    3028              :   return 0;
    3029              : }
    3030              : 
    3031              : int
    3032          858 : pattern730 (rtx x1, int i1, int i2)
    3033              : {
    3034          858 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3035          858 :   rtx x2, x3, x4, x5, x6, x7;
    3036          858 :   int res ATTRIBUTE_UNUSED;
    3037          858 :   x2 = XVECEXP (x1, 0, 0);
    3038          858 :   x3 = XEXP (x2, 1);
    3039          858 :   if (XINT (x3, 1) != i1
    3040          858 :       || GET_MODE (x3) != E_SImode)
    3041              :     return -1;
    3042          448 :   x4 = XVECEXP (x1, 0, 1);
    3043          448 :   if (GET_CODE (x4) != SET)
    3044              :     return -1;
    3045          448 :   x5 = XEXP (x4, 1);
    3046          448 :   if (GET_CODE (x5) != UNSPEC
    3047          448 :       || XVECLEN (x5, 0) != i2
    3048          448 :       || XINT (x5, 1) != i1
    3049          448 :       || GET_MODE (x5) != E_V16QImode)
    3050              :     return -1;
    3051          448 :   x6 = XVECEXP (x1, 0, 2);
    3052          448 :   if (GET_CODE (x6) != SET)
    3053              :     return -1;
    3054          448 :   x7 = XEXP (x6, 1);
    3055          448 :   if (GET_CODE (x7) != UNSPEC
    3056          448 :       || XVECLEN (x7, 0) != i2
    3057          448 :       || XINT (x7, 1) != i1
    3058          896 :       || pattern729 (x6, 
    3059              : E_CCmode, 
    3060              : 17) != 0)
    3061            0 :     return -1;
    3062              :   return 0;
    3063              : }
    3064              : 
    3065              : int
    3066          290 : pattern738 (rtx x1, machine_mode i1)
    3067              : {
    3068          290 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3069          290 :   int res ATTRIBUTE_UNUSED;
    3070          290 :   if (!register_operand (operands[0], i1)
    3071          290 :       || GET_MODE (x1) != i1
    3072          290 :       || !register_operand (operands[1], i1)
    3073          540 :       || !register_mmxmem_operand (operands[2], i1))
    3074           56 :     return -1;
    3075              :   return 0;
    3076              : }
    3077              : 
    3078              : int
    3079         1280 : pattern743 (rtx x1)
    3080              : {
    3081         1280 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3082         1280 :   rtx x2, x3, x4, x5, x6;
    3083         1280 :   int res ATTRIBUTE_UNUSED;
    3084         1280 :   x2 = XVECEXP (x1, 0, 2);
    3085         1280 :   x3 = XEXP (x2, 0);
    3086         1280 :   if (GET_CODE (x3) != EQ)
    3087              :     return -1;
    3088          290 :   x4 = XEXP (x3, 0);
    3089          290 :   operands[3] = x4;
    3090          290 :   x5 = XEXP (x3, 1);
    3091          290 :   operands[4] = x5;
    3092          290 :   x6 = XEXP (x2, 1);
    3093          290 :   operands[5] = x6;
    3094          290 :   switch (GET_MODE (operands[0]))
    3095              :     {
    3096            0 :     case E_V8QImode:
    3097            0 :       return pattern742 (x1, 
    3098            0 : E_V8QImode); /* [-1, 0] */
    3099              : 
    3100           90 :     case E_V4QImode:
    3101           90 :       if (pattern742 (x1, 
    3102              : E_V4QImode) != 0)
    3103              :         return -1;
    3104              :       return 1;
    3105              : 
    3106          180 :     case E_V2QImode:
    3107          180 :       if (pattern742 (x1, 
    3108              : E_V2QImode) != 0)
    3109              :         return -1;
    3110              :       return 2;
    3111              : 
    3112            0 :     case E_V2HImode:
    3113            0 :       if (pattern742 (x1, 
    3114              : E_V2HImode) != 0)
    3115              :         return -1;
    3116              :       return 3;
    3117              : 
    3118              :     default:
    3119              :       return -1;
    3120              :     }
    3121              : }
    3122              : 
    3123              : int
    3124       542493 : pattern754 (rtx x1)
    3125              : {
    3126       542493 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3127       542493 :   rtx x2, x3, x4;
    3128       542493 :   int res ATTRIBUTE_UNUSED;
    3129       542493 :   if (!const_0_to_3_operand (operands[2], E_VOIDmode))
    3130              :     return -1;
    3131       475638 :   x2 = XVECEXP (x1, 0, 1);
    3132       475638 :   operands[3] = x2;
    3133       475638 :   if (!const_0_to_3_operand (operands[3], E_VOIDmode))
    3134              :     return -1;
    3135       475456 :   x3 = XVECEXP (x1, 0, 2);
    3136       475456 :   operands[4] = x3;
    3137       475456 :   if (!const_0_to_3_operand (operands[4], E_VOIDmode))
    3138              :     return -1;
    3139       470469 :   x4 = XVECEXP (x1, 0, 3);
    3140       470469 :   operands[5] = x4;
    3141       470469 :   if (!const_0_to_3_operand (operands[5], E_VOIDmode))
    3142              :     return -1;
    3143              :   return 0;
    3144              : }
    3145              : 
    3146              : int
    3147           84 : pattern763 (rtx x1, machine_mode i1)
    3148              : {
    3149           84 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3150           84 :   rtx x2, x3;
    3151           84 :   int res ATTRIBUTE_UNUSED;
    3152           84 :   if (!register_operand (operands[0], i1)
    3153           84 :       || GET_MODE (x1) != i1)
    3154              :     return -1;
    3155           84 :   x2 = XEXP (x1, 0);
    3156           84 :   if (GET_MODE (x2) != i1
    3157           84 :       || !nonimmediate_operand (operands[1], i1))
    3158            0 :     return -1;
    3159           84 :   x3 = XEXP (x1, 1);
    3160           84 :   if (GET_MODE (x3) != i1)
    3161              :     return -1;
    3162              :   return 0;
    3163              : }
    3164              : 
    3165              : int
    3166            2 : pattern771 (rtx x1)
    3167              : {
    3168            2 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3169            2 :   rtx x2, x3, x4, x5, x6, x7;
    3170            2 :   int res ATTRIBUTE_UNUSED;
    3171            2 :   x2 = XEXP (x1, 2);
    3172            2 :   switch (GET_CODE (x2))
    3173              :     {
    3174            1 :     case UNSPEC:
    3175            1 :       if (XVECLEN (x2, 0) != 3
    3176            1 :           || XINT (x2, 1) != 60)
    3177              :         return -1;
    3178            1 :       x3 = XVECEXP (x2, 0, 2);
    3179            1 :       if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    3180              :         return -1;
    3181            0 :       x4 = XEXP (x1, 0);
    3182            0 :       operands[3] = x4;
    3183            0 :       x5 = XEXP (x1, 1);
    3184            0 :       operands[4] = x5;
    3185            0 :       x6 = XVECEXP (x2, 0, 0);
    3186            0 :       operands[1] = x6;
    3187            0 :       x7 = XVECEXP (x2, 0, 1);
    3188            0 :       operands[2] = x7;
    3189            0 :       switch (GET_MODE (x1))
    3190              :         {
    3191            0 :         case E_V32QImode:
    3192            0 :           return pattern770 (x2, 
    3193              : E_V32QImode, 
    3194            0 : E_SImode); /* [-1, 0] */
    3195              : 
    3196            0 :         case E_V16QImode:
    3197            0 :           if (pattern770 (x2, 
    3198              : E_V16QImode, 
    3199              : E_HImode) != 0)
    3200              :             return -1;
    3201              :           return 1;
    3202              : 
    3203              :         default:
    3204              :           return -1;
    3205              :         }
    3206              : 
    3207            1 :     case REG:
    3208            1 :     case SUBREG:
    3209            1 :       operands[1] = x2;
    3210            1 :       x4 = XEXP (x1, 0);
    3211            1 :       operands[2] = x4;
    3212            1 :       x5 = XEXP (x1, 1);
    3213            1 :       operands[3] = x5;
    3214            1 :       switch (GET_MODE (x1))
    3215              :         {
    3216            1 :         case E_V16QImode:
    3217            1 :           if (!vector_all_ones_operand (operands[2], E_V16QImode)
    3218            1 :               || !const0_operand (operands[3], E_V16QImode)
    3219            2 :               || !register_operand (operands[1], E_HImode))
    3220            0 :             return -1;
    3221              :           return 2;
    3222              : 
    3223            0 :         case E_V32QImode:
    3224            0 :           if (!vector_all_ones_operand (operands[2], E_V32QImode)
    3225            0 :               || !const0_operand (operands[3], E_V32QImode)
    3226            0 :               || !register_operand (operands[1], E_SImode))
    3227            0 :             return -1;
    3228              :           return 3;
    3229              : 
    3230              :         default:
    3231              :           return -1;
    3232              :         }
    3233              : 
    3234              :     default:
    3235              :       return -1;
    3236              :     }
    3237              : }
    3238              : 
    3239              : int
    3240          152 : pattern797 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    3241              : {
    3242          152 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3243          152 :   rtx x2, x3;
    3244          152 :   int res ATTRIBUTE_UNUSED;
    3245          152 :   if (!register_operand (operands[0], i3)
    3246          152 :       || GET_MODE (x1) != i3)
    3247              :     return -1;
    3248          142 :   x2 = XEXP (x1, 0);
    3249          142 :   if (GET_MODE (x2) != i2
    3250          142 :       || !vector_operand (operands[2], i1))
    3251            0 :     return -1;
    3252          142 :   x3 = XEXP (x1, 1);
    3253          142 :   if (GET_MODE (x3) != i2
    3254          142 :       || !register_operand (operands[1], i1))
    3255            7 :     return -1;
    3256              :   return 0;
    3257              : }
    3258              : 
    3259              : int
    3260          818 : pattern809 (rtx x1, machine_mode i1, machine_mode i2)
    3261              : {
    3262          818 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3263          818 :   rtx x2;
    3264          818 :   int res ATTRIBUTE_UNUSED;
    3265          818 :   if (!register_operand (operands[0], i1)
    3266          818 :       || GET_MODE (x1) != i1)
    3267              :     return -1;
    3268          796 :   x2 = XEXP (x1, 0);
    3269          796 :   if (GET_MODE (x2) != i2
    3270          792 :       || !nonimmediate_operand (operands[1], i1)
    3271          647 :       || !const0_operand (operands[2], i1)
    3272         1190 :       || !movq_parallel (operands[3], E_VOIDmode))
    3273          507 :     return -1;
    3274              :   return 0;
    3275              : }
    3276              : 
    3277              : int
    3278          278 : pattern818 (rtx x1, machine_mode i1)
    3279              : {
    3280          278 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3281          278 :   int res ATTRIBUTE_UNUSED;
    3282          278 :   if (!register_operand (operands[0], i1)
    3283          278 :       || GET_MODE (x1) != i1
    3284          278 :       || !nonimmediate_operand (operands[3], i1)
    3285          278 :       || !register_operand (operands[1], i1)
    3286          517 :       || !nonimmediate_operand (operands[2], i1))
    3287           63 :     return -1;
    3288              :   return 0;
    3289              : }
    3290              : 
    3291              : int
    3292      8700132 : pattern821 (rtx x1)
    3293              : {
    3294      8700132 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3295      8700132 :   rtx x2, x3, x4, x5, x6, x7, x8;
    3296      8700132 :   int res ATTRIBUTE_UNUSED;
    3297      8700132 :   x2 = XVECEXP (x1, 0, 0);
    3298      8700132 :   x3 = XEXP (x2, 1);
    3299      8700132 :   x4 = XEXP (x3, 1);
    3300      8700132 :   switch (GET_CODE (x4))
    3301              :     {
    3302       637268 :     case SUBREG:
    3303       637268 :       if (maybe_ne (SUBREG_BYTE (x4), 0)
    3304       637268 :           || GET_MODE (x4) != E_QImode)
    3305              :         return -1;
    3306       637215 :       x5 = XEXP (x4, 0);
    3307       637215 :       if (GET_CODE (x5) != AND)
    3308              :         return -1;
    3309        32343 :       x6 = XVECEXP (x1, 0, 1);
    3310        32343 :       if (GET_CODE (x6) != CLOBBER)
    3311              :         return -1;
    3312        28226 :       x7 = XEXP (x6, 0);
    3313        28226 :       if (GET_CODE (x7) != REG
    3314        28226 :           || REGNO (x7) != 17
    3315        56452 :           || GET_MODE (x7) != E_CCmode)
    3316              :         return -1;
    3317        28226 :       return pattern819 (x3); /* [-1, 1] */
    3318              : 
    3319      7954934 :     case CONST_INT:
    3320      7954934 :       operands[2] = x4;
    3321      7954934 :       if (!const_0_to_255_operand (operands[2], E_VOIDmode))
    3322              :         return -1;
    3323      7954859 :       x6 = XVECEXP (x1, 0, 1);
    3324      7954859 :       if (GET_CODE (x6) != UNSPEC
    3325        13607 :           || XVECLEN (x6, 0) != 1
    3326        13607 :           || XINT (x6, 1) != 175)
    3327              :         return -1;
    3328        13607 :       x8 = XVECEXP (x6, 0, 0);
    3329        13607 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3330              :         return -1;
    3331        13607 :       res = pattern820 (x3);
    3332        13607 :       if (res >= 0)
    3333        10453 :         return res + 2; /* [2, 5] */
    3334              :       return -1;
    3335              : 
    3336              :     default:
    3337              :       return -1;
    3338              :     }
    3339              : }
    3340              : 
    3341              : int
    3342          439 : pattern833 (rtx x1)
    3343              : {
    3344          439 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3345          439 :   rtx x2, x3, x4, x5, x6, x7;
    3346          439 :   int res ATTRIBUTE_UNUSED;
    3347          439 :   x2 = XVECEXP (x1, 0, 0);
    3348          439 :   x3 = XEXP (x2, 1);
    3349          439 :   if (GET_MODE (x3) != E_XFmode)
    3350              :     return -1;
    3351          439 :   x4 = XVECEXP (x1, 0, 1);
    3352          439 :   if (GET_CODE (x4) != USE)
    3353              :     return -1;
    3354          434 :   x5 = XVECEXP (x1, 0, 2);
    3355          434 :   if (GET_CODE (x5) != USE
    3356          434 :       || !register_operand (operands[0], E_XFmode)
    3357          868 :       || !register_operand (operands[1], E_XFmode))
    3358           68 :     return -1;
    3359          366 :   x6 = XEXP (x4, 0);
    3360          366 :   operands[2] = x6;
    3361          366 :   if (!memory_operand (operands[2], E_HImode))
    3362              :     return -1;
    3363          366 :   x7 = XEXP (x5, 0);
    3364          366 :   operands[3] = x7;
    3365          366 :   if (!memory_operand (operands[3], E_HImode))
    3366              :     return -1;
    3367              :   return 0;
    3368              : }
    3369              : 
    3370              : int
    3371         4533 : pattern841 (rtx x1)
    3372              : {
    3373         4533 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3374         4533 :   rtx x2, x3, x4;
    3375         4533 :   int res ATTRIBUTE_UNUSED;
    3376         4533 :   x2 = XEXP (x1, 1);
    3377         4533 :   x3 = XEXP (x2, 0);
    3378         4533 :   operands[1] = x3;
    3379         4533 :   x4 = XEXP (x2, 1);
    3380         4533 :   operands[3] = x4;
    3381         4533 :   return pattern445 (x1); /* [-1, 1] */
    3382              : }
    3383              : 
    3384              : int
    3385         5103 : pattern844 (rtx x1)
    3386              : {
    3387         5103 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3388         5103 :   rtx x2, x3, x4, x5;
    3389         5103 :   int res ATTRIBUTE_UNUSED;
    3390         5103 :   x2 = XVECEXP (x1, 0, 1);
    3391         5103 :   x3 = XEXP (x2, 0);
    3392         5103 :   operands[2] = x3;
    3393         5103 :   switch (GET_MODE (operands[0]))
    3394              :     {
    3395           72 :     case E_V2SFmode:
    3396           72 :       x4 = XVECEXP (x1, 0, 0);
    3397           72 :       x5 = XEXP (x4, 1);
    3398           72 :       return pattern707 (x5); /* [-1, 0] */
    3399              : 
    3400            4 :     case E_V2BFmode:
    3401            4 :       x4 = XVECEXP (x1, 0, 0);
    3402            4 :       x5 = XEXP (x4, 1);
    3403            4 :       if (pattern708 (x5, 
    3404              : E_V2BFmode) != 0)
    3405              :         return -1;
    3406              :       return 1;
    3407              : 
    3408            4 :     case E_V4BFmode:
    3409            4 :       x4 = XVECEXP (x1, 0, 0);
    3410            4 :       x5 = XEXP (x4, 1);
    3411            4 :       if (pattern708 (x5, 
    3412              : E_V4BFmode) != 0)
    3413              :         return -1;
    3414              :       return 2;
    3415              : 
    3416            4 :     case E_V2HFmode:
    3417            4 :       x4 = XVECEXP (x1, 0, 0);
    3418            4 :       x5 = XEXP (x4, 1);
    3419            4 :       if (pattern708 (x5, 
    3420              : E_V2HFmode) != 0)
    3421              :         return -1;
    3422              :       return 3;
    3423              : 
    3424            6 :     case E_V4HFmode:
    3425            6 :       x4 = XVECEXP (x1, 0, 0);
    3426            6 :       x5 = XEXP (x4, 1);
    3427            6 :       if (pattern708 (x5, 
    3428              : E_V4HFmode) != 0)
    3429              :         return -1;
    3430              :       return 4;
    3431              : 
    3432            4 :     case E_V32BFmode:
    3433            4 :       x4 = XVECEXP (x1, 0, 0);
    3434            4 :       x5 = XEXP (x4, 1);
    3435            4 :       if (pattern706 (x5, 
    3436              : E_V32BFmode) != 0)
    3437              :         return -1;
    3438              :       return 5;
    3439              : 
    3440            4 :     case E_V16BFmode:
    3441            4 :       x4 = XVECEXP (x1, 0, 0);
    3442            4 :       x5 = XEXP (x4, 1);
    3443            4 :       if (pattern706 (x5, 
    3444              : E_V16BFmode) != 0)
    3445              :         return -1;
    3446              :       return 6;
    3447              : 
    3448            4 :     case E_V8BFmode:
    3449            4 :       x4 = XVECEXP (x1, 0, 0);
    3450            4 :       x5 = XEXP (x4, 1);
    3451            4 :       if (pattern706 (x5, 
    3452              : E_V8BFmode) != 0)
    3453              :         return -1;
    3454              :       return 7;
    3455              : 
    3456           14 :     case E_V32HFmode:
    3457           14 :       x4 = XVECEXP (x1, 0, 0);
    3458           14 :       x5 = XEXP (x4, 1);
    3459           14 :       if (pattern706 (x5, 
    3460              : E_V32HFmode) != 0)
    3461              :         return -1;
    3462              :       return 8;
    3463              : 
    3464           10 :     case E_V16HFmode:
    3465           10 :       x4 = XVECEXP (x1, 0, 0);
    3466           10 :       x5 = XEXP (x4, 1);
    3467           10 :       if (pattern706 (x5, 
    3468              : E_V16HFmode) != 0)
    3469              :         return -1;
    3470              :       return 9;
    3471              : 
    3472          157 :     case E_V8HFmode:
    3473          157 :       x4 = XVECEXP (x1, 0, 0);
    3474          157 :       x5 = XEXP (x4, 1);
    3475          157 :       if (pattern706 (x5, 
    3476              : E_V8HFmode) != 0)
    3477              :         return -1;
    3478              :       return 10;
    3479              : 
    3480           66 :     case E_V16SFmode:
    3481           66 :       x4 = XVECEXP (x1, 0, 0);
    3482           66 :       x5 = XEXP (x4, 1);
    3483           66 :       if (pattern706 (x5, 
    3484              : E_V16SFmode) != 0)
    3485              :         return -1;
    3486              :       return 11;
    3487              : 
    3488          536 :     case E_V8SFmode:
    3489          536 :       x4 = XVECEXP (x1, 0, 0);
    3490          536 :       x5 = XEXP (x4, 1);
    3491          536 :       if (pattern706 (x5, 
    3492              : E_V8SFmode) != 0)
    3493              :         return -1;
    3494              :       return 12;
    3495              : 
    3496          682 :     case E_V4SFmode:
    3497          682 :       x4 = XVECEXP (x1, 0, 0);
    3498          682 :       x5 = XEXP (x4, 1);
    3499          682 :       if (pattern706 (x5, 
    3500              : E_V4SFmode) != 0)
    3501              :         return -1;
    3502              :       return 13;
    3503              : 
    3504           42 :     case E_V8DFmode:
    3505           42 :       x4 = XVECEXP (x1, 0, 0);
    3506           42 :       x5 = XEXP (x4, 1);
    3507           42 :       if (pattern706 (x5, 
    3508              : E_V8DFmode) != 0)
    3509              :         return -1;
    3510              :       return 14;
    3511              : 
    3512         1050 :     case E_V4DFmode:
    3513         1050 :       x4 = XVECEXP (x1, 0, 0);
    3514         1050 :       x5 = XEXP (x4, 1);
    3515         1050 :       if (pattern706 (x5, 
    3516              : E_V4DFmode) != 0)
    3517              :         return -1;
    3518              :       return 15;
    3519              : 
    3520          522 :     case E_V2DFmode:
    3521          522 :       x4 = XVECEXP (x1, 0, 0);
    3522          522 :       x5 = XEXP (x4, 1);
    3523          522 :       if (pattern706 (x5, 
    3524              : E_V2DFmode) != 0)
    3525              :         return -1;
    3526              :       return 16;
    3527              : 
    3528              :     default:
    3529              :       return -1;
    3530              :     }
    3531              : }
    3532              : 
    3533              : int
    3534            0 : pattern880 (rtx x1, machine_mode i1)
    3535              : {
    3536            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3537            0 :   rtx x2;
    3538            0 :   int res ATTRIBUTE_UNUSED;
    3539            0 :   if (!register_operand (operands[0], i1)
    3540            0 :       || GET_MODE (x1) != i1)
    3541              :     return -1;
    3542            0 :   x2 = XEXP (x1, 0);
    3543            0 :   switch (GET_MODE (x2))
    3544              :     {
    3545            0 :     case E_DImode:
    3546            0 :       if (!register_operand (operands[1], E_V64QImode)
    3547            0 :           || !nonimmediate_operand (operands[2], E_V64QImode))
    3548            0 :         return -1;
    3549              :       return 0;
    3550              : 
    3551            0 :     case E_SImode:
    3552            0 :       res = pattern879 ();
    3553            0 :       if (res >= 0)
    3554            0 :         return res + 1; /* [1, 2] */
    3555              :       return -1;
    3556              : 
    3557            0 :     case E_HImode:
    3558            0 :       res = pattern746 ();
    3559            0 :       if (res >= 0)
    3560            0 :         return res + 3; /* [3, 5] */
    3561              :       return -1;
    3562              : 
    3563            0 :     case E_QImode:
    3564            0 :       res = pattern747 ();
    3565            0 :       if (res >= 0)
    3566            0 :         return res + 6; /* [6, 11] */
    3567              :       return -1;
    3568              : 
    3569              :     default:
    3570              :       return -1;
    3571              :     }
    3572              : }
    3573              : 
    3574              : int
    3575         5678 : pattern891 (rtx x1)
    3576              : {
    3577         5678 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3578         5678 :   rtx x2, x3, x4;
    3579         5678 :   int res ATTRIBUTE_UNUSED;
    3580         5678 :   x2 = XVECEXP (x1, 0, 0);
    3581         5678 :   x3 = XEXP (x2, 1);
    3582         5678 :   operands[1] = x3;
    3583         5678 :   x4 = XEXP (x2, 0);
    3584         5678 :   if (!rtx_equal_p (x4, operands[0]))
    3585              :     return -1;
    3586         3555 :   switch (GET_MODE (operands[0]))
    3587              :     {
    3588         2395 :     case E_SImode:
    3589         2395 :       return pattern868 (x1, 
    3590         2395 : E_SImode); /* [-1, 0] */
    3591              : 
    3592          616 :     case E_DImode:
    3593          616 :       if (pattern868 (x1, 
    3594              : E_DImode) != 0)
    3595              :         return -1;
    3596              :       return 1;
    3597              : 
    3598              :     default:
    3599              :       return -1;
    3600              :     }
    3601              : }
    3602              : 
    3603              : int
    3604         1104 : pattern901 (rtx x1)
    3605              : {
    3606         1104 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3607         1104 :   rtx x2;
    3608         1104 :   int res ATTRIBUTE_UNUSED;
    3609         1104 :   if (!register_operand (operands[0], E_V8HFmode)
    3610         1104 :       || GET_MODE (x1) != E_V8HFmode)
    3611              :     return -1;
    3612         1038 :   x2 = XEXP (x1, 0);
    3613         1038 :   if (GET_MODE (x2) != E_V8HFmode
    3614         1038 :       || !nonimm_or_0_operand (operands[2], E_V8HFmode)
    3615         2074 :       || !register_operand (operands[3], E_QImode))
    3616           82 :     return -1;
    3617          956 :   switch (GET_MODE (operands[1]))
    3618              :     {
    3619          408 :     case E_V8HImode:
    3620          408 :       if (!vector_operand (operands[1], E_V8HImode))
    3621              :         return -1;
    3622              :       return 0;
    3623              : 
    3624          406 :     case E_V8SImode:
    3625          406 :       if (!vector_operand (operands[1], E_V8SImode))
    3626              :         return -1;
    3627              :       return 1;
    3628              : 
    3629          142 :     case E_V8DImode:
    3630          142 :       if (!vector_operand (operands[1], E_V8DImode))
    3631              :         return -1;
    3632              :       return 2;
    3633              : 
    3634              :     default:
    3635              :       return -1;
    3636              :     }
    3637              : }
    3638              : 
    3639              : int
    3640         3955 : pattern915 (rtx x1, machine_mode i1, machine_mode i2)
    3641              : {
    3642         3955 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3643         3955 :   int res ATTRIBUTE_UNUSED;
    3644         3955 :   if (!register_operand (operands[0], i2)
    3645         3764 :       || GET_MODE (x1) != i2
    3646         3764 :       || !register_operand (operands[1], i2)
    3647         3712 :       || !nonimm_or_0_operand (operands[2], i2)
    3648         7625 :       || !register_operand (operands[3], i1))
    3649          654 :     return -1;
    3650              :   return 0;
    3651              : }
    3652              : 
    3653              : int
    3654          225 : pattern919 (rtx x1, machine_mode i1, machine_mode i2)
    3655              : {
    3656          225 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3657          225 :   int res ATTRIBUTE_UNUSED;
    3658          225 :   if (!register_operand (operands[0], i2)
    3659          213 :       || GET_MODE (x1) != i2
    3660          213 :       || !register_operand (operands[1], i2)
    3661          210 :       || !register_operand (operands[2], i1)
    3662          435 :       || !nonimmediate_operand (operands[3], i1))
    3663           15 :     return -1;
    3664              :   return 0;
    3665              : }
    3666              : 
    3667              : int
    3668          241 : pattern924 (rtx x1, machine_mode i1)
    3669              : {
    3670          241 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3671          241 :   int res ATTRIBUTE_UNUSED;
    3672          241 :   if (!register_operand (operands[0], i1)
    3673          232 :       || GET_MODE (x1) != i1
    3674          232 :       || !nonimmediate_operand (operands[1], i1)
    3675          223 :       || !nonimmediate_operand (operands[2], i1)
    3676          464 :       || !nonimmediate_operand (operands[3], i1))
    3677           18 :     return -1;
    3678              :   return 0;
    3679              : }
    3680              : 
    3681              : int
    3682          232 : pattern927 (rtx x1, machine_mode i1)
    3683              : {
    3684          232 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3685          232 :   rtx x2, x3;
    3686          232 :   int res ATTRIBUTE_UNUSED;
    3687          232 :   if (!register_operand (operands[0], i1)
    3688          232 :       || GET_MODE (x1) != i1)
    3689              :     return -1;
    3690          223 :   x2 = XEXP (x1, 0);
    3691          223 :   if (GET_MODE (x2) != i1
    3692          223 :       || !nonimmediate_operand (operands[1], i1)
    3693          443 :       || !nonimmediate_operand (operands[2], i1))
    3694            3 :     return -1;
    3695          220 :   x3 = XEXP (x1, 2);
    3696          220 :   if (GET_MODE (x3) != i1
    3697          220 :       || !nonimmediate_operand (operands[3], i1))
    3698            0 :     return -1;
    3699              :   return 0;
    3700              : }
    3701              : 
    3702              : int
    3703        50383 : pattern933 (rtx x1, machine_mode i1)
    3704              : {
    3705        50383 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3706        50383 :   rtx x2;
    3707        50383 :   int res ATTRIBUTE_UNUSED;
    3708        50383 :   if (!register_operand (operands[0], i1)
    3709        50383 :       || GET_MODE (x1) != i1)
    3710              :     return -1;
    3711        49803 :   x2 = XEXP (x1, 0);
    3712        49803 :   if (GET_MODE (x2) != i1
    3713        49803 :       || !bcst_vector_operand (operands[1], i1)
    3714        99174 :       || !bcst_vector_operand (operands[2], i1))
    3715         1863 :     return -1;
    3716              :   return 0;
    3717              : }
    3718              : 
    3719              : int
    3720      2334303 : pattern937 (rtx x1)
    3721              : {
    3722      2334303 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3723      2334303 :   rtx x2, x3, x4, x5, x6, x7;
    3724      2334303 :   int res ATTRIBUTE_UNUSED;
    3725      2334303 :   x2 = XEXP (x1, 1);
    3726      2334303 :   x3 = XEXP (x2, 0);
    3727      2334303 :   switch (GET_CODE (x3))
    3728              :     {
    3729      2048020 :     case REG:
    3730      2048020 :     case SUBREG:
    3731      2048020 :     case MEM:
    3732      2048020 :       return pattern935 (x1); /* [-1, 7] */
    3733              : 
    3734        35124 :     case ASHIFT:
    3735        35124 :       x4 = XEXP (x1, 0);
    3736        35124 :       operands[0] = x4;
    3737        35124 :       x5 = XEXP (x3, 0);
    3738        35124 :       operands[1] = x5;
    3739        35124 :       x6 = XEXP (x3, 1);
    3740        35124 :       operands[2] = x6;
    3741        35124 :       if (!const_int_operand (operands[2], E_QImode))
    3742              :         return -1;
    3743        34719 :       x7 = XEXP (x2, 1);
    3744        34719 :       operands[3] = x7;
    3745        34719 :       if (!const_int_operand (operands[3], E_QImode))
    3746              :         return -1;
    3747        34719 :       switch (GET_MODE (operands[0]))
    3748              :         {
    3749        11626 :         case E_DImode:
    3750        11626 :           if (pattern936 (x2, 
    3751              : E_DImode) != 0)
    3752              :             return -1;
    3753              :           return 8;
    3754              : 
    3755        14744 :         case E_TImode:
    3756        14744 :           if (pattern936 (x2, 
    3757              : E_TImode) != 0)
    3758              :             return -1;
    3759              :           return 9;
    3760              : 
    3761              :         default:
    3762              :           return -1;
    3763              :         }
    3764              : 
    3765              :     default:
    3766              :       return -1;
    3767              :     }
    3768              : }
    3769              : 
    3770              : int
    3771        18846 : pattern954 (rtx x1, machine_mode i1, machine_mode i2)
    3772              : {
    3773        18846 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3774        18846 :   rtx x2, x3;
    3775        18846 :   int res ATTRIBUTE_UNUSED;
    3776        18846 :   if (!nonimmediate_operand (operands[0], i2)
    3777        18846 :       || GET_MODE (x1) != i2)
    3778              :     return -1;
    3779        18846 :   x2 = XEXP (x1, 0);
    3780        18846 :   if (GET_MODE (x2) != i2
    3781        18846 :       || !register_operand (operands[1], i2))
    3782           11 :     return -1;
    3783        18835 :   x3 = XEXP (x1, 1);
    3784        18835 :   if (GET_MODE (x3) != i2
    3785        18835 :       || !nonimmediate_operand (operands[3], i1))
    3786        12901 :     return -1;
    3787              :   return 0;
    3788              : }
    3789              : 
    3790              : int
    3791      5690826 : pattern962 (rtx x1, machine_mode i1, machine_mode i2)
    3792              : {
    3793      5690826 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3794      5690826 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3795      5690826 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    3796      5690826 :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
    3797      5690826 :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
    3798      5690826 :   rtx x34, x35, x36, x37, x38;
    3799      5690826 :   int res ATTRIBUTE_UNUSED;
    3800      5690826 :   x2 = XEXP (x1, 0);
    3801      5690826 :   operands[6] = x2;
    3802      5690826 :   x3 = XEXP (x1, 1);
    3803      5690826 :   operands[7] = x3;
    3804      5690826 :   if (!memory_operand (operands[7], i1))
    3805              :     return -1;
    3806      1487584 :   x4 = PATTERN (peep2_next_insn (1));
    3807      1487584 :   x5 = XEXP (x4, 1);
    3808      1487584 :   operands[9] = x5;
    3809      1487584 :   if (!memory_operand (operands[9], i1))
    3810              :     return -1;
    3811       881636 :   x6 = PATTERN (peep2_next_insn (2));
    3812       881636 :   if (GET_CODE (x6) != PARALLEL
    3813        74130 :       || XVECLEN (x6, 0) != 2)
    3814              :     return -1;
    3815        72594 :   x7 = XVECEXP (x6, 0, 0);
    3816        72594 :   if (GET_CODE (x7) != SET)
    3817              :     return -1;
    3818        72576 :   x8 = XEXP (x7, 1);
    3819        72576 :   if (GET_CODE (x8) != COMPARE
    3820         6446 :       || GET_MODE (x8) != E_CCCmode)
    3821              :     return -1;
    3822         2203 :   x9 = XEXP (x8, 0);
    3823         2203 :   if (GET_CODE (x9) != ZERO_EXTEND
    3824           49 :       || GET_MODE (x9) != i2)
    3825              :     return -1;
    3826           49 :   x10 = XEXP (x8, 1);
    3827           49 :   if (GET_CODE (x10) != PLUS
    3828           49 :       || GET_MODE (x10) != i2)
    3829              :     return -1;
    3830           49 :   x11 = XEXP (x10, 0);
    3831           49 :   if (!ix86_carry_flag_operator (x11, i2))
    3832              :     return -1;
    3833           49 :   operands[4] = x11;
    3834           49 :   x12 = XEXP (x11, 1);
    3835           49 :   if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3836              :     return -1;
    3837           49 :   x13 = XEXP (x10, 1);
    3838           49 :   if (GET_CODE (x13) != ZERO_EXTEND
    3839           49 :       || GET_MODE (x13) != i2)
    3840              :     return -1;
    3841           49 :   x14 = XEXP (x7, 0);
    3842           49 :   if (GET_CODE (x14) != REG
    3843           49 :       || REGNO (x14) != 17
    3844           98 :       || GET_MODE (x14) != E_CCCmode)
    3845              :     return -1;
    3846           49 :   x15 = XVECEXP (x6, 0, 1);
    3847           49 :   if (GET_CODE (x15) != SET)
    3848              :     return -1;
    3849            7 :   x16 = XEXP (x15, 1);
    3850            7 :   if (GET_CODE (x16) != MINUS
    3851            7 :       || GET_MODE (x16) != i1)
    3852              :     return -1;
    3853            7 :   x17 = XEXP (x16, 0);
    3854            7 :   if (GET_CODE (x17) != MINUS
    3855            7 :       || GET_MODE (x17) != i1)
    3856              :     return -1;
    3857            7 :   x18 = XEXP (x17, 1);
    3858            7 :   if (!ix86_carry_flag_operator (x18, i1))
    3859              :     return -1;
    3860            7 :   operands[5] = x18;
    3861            7 :   x19 = XEXP (x18, 1);
    3862            7 :   if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3863              :     return -1;
    3864            7 :   x20 = XEXP (x9, 0);
    3865            7 :   operands[0] = x20;
    3866            7 :   if (!general_reg_operand (operands[0], i1))
    3867              :     return -1;
    3868            7 :   x21 = XEXP (x11, 0);
    3869            7 :   operands[3] = x21;
    3870            7 :   if (!flags_reg_operand (operands[3], E_VOIDmode))
    3871              :     return -1;
    3872            7 :   x22 = XEXP (x13, 0);
    3873            7 :   operands[2] = x22;
    3874            7 :   if (!general_reg_operand (operands[2], i1))
    3875              :     return -1;
    3876            7 :   x23 = XEXP (x17, 0);
    3877            7 :   if (!rtx_equal_p (x23, operands[0]))
    3878              :     return -1;
    3879            7 :   x24 = XEXP (x18, 0);
    3880            7 :   if (!rtx_equal_p (x24, operands[3]))
    3881              :     return -1;
    3882            7 :   x25 = XEXP (x16, 1);
    3883            7 :   if (!rtx_equal_p (x25, operands[2]))
    3884              :     return -1;
    3885            7 :   x26 = XEXP (x15, 0);
    3886            7 :   if (!rtx_equal_p (x26, operands[0]))
    3887              :     return -1;
    3888            7 :   x27 = PATTERN (peep2_next_insn (3));
    3889            7 :   if (GET_CODE (x27) != SET)
    3890              :     return -1;
    3891            7 :   x28 = XEXP (x27, 1);
    3892            7 :   switch (GET_CODE (x28))
    3893              :     {
    3894            1 :     case REG:
    3895            1 :       if (!rtx_equal_p (x28, operands[0]))
    3896              :         return -1;
    3897            1 :       x29 = XEXP (x27, 0);
    3898            1 :       operands[1] = x29;
    3899            1 :       if (!memory_operand (operands[1], i1))
    3900              :         return -1;
    3901              :       return 0;
    3902              : 
    3903            6 :     case LTU:
    3904            6 :       if (peep2_current_count < 5
    3905            6 :           || peep2_current_count < 6
    3906            6 :           || GET_MODE (x28) != E_QImode)
    3907              :         return -1;
    3908            6 :       x30 = XEXP (x28, 0);
    3909            6 :       if (GET_CODE (x30) != REG
    3910            6 :           || REGNO (x30) != 17
    3911           12 :           || GET_MODE (x30) != E_CCCmode)
    3912              :         return -1;
    3913            6 :       x31 = XEXP (x28, 1);
    3914            6 :       if (x31 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3915              :         return -1;
    3916            6 :       x29 = XEXP (x27, 0);
    3917            6 :       operands[10] = x29;
    3918            6 :       if (!general_reg_operand (operands[10], E_QImode))
    3919              :         return -1;
    3920            6 :       x32 = PATTERN (peep2_next_insn (4));
    3921            6 :       if (GET_CODE (x32) != SET)
    3922              :         return -1;
    3923            0 :       x33 = XEXP (x32, 1);
    3924            0 :       if (GET_CODE (x33) != ZERO_EXTEND
    3925            0 :           || GET_MODE (x33) != i1)
    3926              :         return -1;
    3927            0 :       x34 = XEXP (x32, 0);
    3928            0 :       operands[11] = x34;
    3929            0 :       if (!general_reg_operand (operands[11], i1))
    3930              :         return -1;
    3931            0 :       x35 = XEXP (x33, 0);
    3932            0 :       if (!rtx_equal_p (x35, operands[10]))
    3933              :         return -1;
    3934            0 :       x36 = PATTERN (peep2_next_insn (5));
    3935            0 :       if (GET_CODE (x36) != SET)
    3936              :         return -1;
    3937            0 :       x37 = XEXP (x36, 0);
    3938            0 :       operands[1] = x37;
    3939            0 :       if (!memory_operand (operands[1], i1))
    3940              :         return -1;
    3941            0 :       x38 = XEXP (x36, 1);
    3942            0 :       if (!rtx_equal_p (x38, operands[0]))
    3943              :         return -1;
    3944              :       return 1;
    3945              : 
    3946              :     default:
    3947              :       return -1;
    3948              :     }
    3949              : }
    3950              : 
    3951              : int
    3952          875 : pattern996 (rtx x1, machine_mode i1)
    3953              : {
    3954          875 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3955          875 :   rtx x2;
    3956          875 :   int res ATTRIBUTE_UNUSED;
    3957          875 :   if (!register_operand (operands[0], i1)
    3958          875 :       || GET_MODE (x1) != i1)
    3959              :     return -1;
    3960          789 :   x2 = XEXP (x1, 0);
    3961          789 :   if (GET_MODE (x2) != i1
    3962          789 :       || !nonimm_or_0_operand (operands[2], i1)
    3963         1539 :       || !register_operand (operands[3], E_QImode))
    3964          105 :     return -1;
    3965          684 :   switch (GET_MODE (operands[1]))
    3966              :     {
    3967          291 :     case E_V8HFmode:
    3968          291 :       if (!vector_operand (operands[1], E_V8HFmode))
    3969              :         return -1;
    3970              :       return 0;
    3971              : 
    3972          274 :     case E_V8SFmode:
    3973          274 :       if (!nonimmediate_operand (operands[1], E_V8SFmode))
    3974              :         return -1;
    3975              :       return 1;
    3976              : 
    3977          119 :     case E_V8DFmode:
    3978          119 :       if (!vector_operand (operands[1], E_V8DFmode))
    3979              :         return -1;
    3980              :       return 2;
    3981              : 
    3982              :     default:
    3983              :       return -1;
    3984              :     }
    3985              : }
    3986              : 
    3987              : int
    3988          582 : pattern1004 (rtx x1, machine_mode i1, machine_mode i2)
    3989              : {
    3990          582 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3991          582 :   rtx x2;
    3992          582 :   int res ATTRIBUTE_UNUSED;
    3993          582 :   if (!register_operand (operands[0], i2)
    3994          582 :       || GET_MODE (x1) != i2)
    3995              :     return -1;
    3996          582 :   x2 = XEXP (x1, 0);
    3997          582 :   if (GET_MODE (x2) != i2
    3998          582 :       || !nonimmediate_operand (operands[1], i2)
    3999          582 :       || !reg_or_0_operand (operands[2], i2)
    4000         1164 :       || !register_operand (operands[3], i1))
    4001           12 :     return -1;
    4002              :   return 0;
    4003              : }
    4004              : 
    4005              : int
    4006         1308 : pattern1012 (rtx x1, machine_mode i1, machine_mode i2)
    4007              : {
    4008         1308 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4009         1308 :   rtx x2;
    4010         1308 :   int res ATTRIBUTE_UNUSED;
    4011         1308 :   if (!register_operand (operands[0], i1)
    4012         1308 :       || GET_MODE (x1) != i1)
    4013              :     return -1;
    4014          916 :   x2 = XEXP (x1, 0);
    4015          916 :   if (GET_MODE (x2) != i1
    4016          916 :       || !nonimmediate_operand (operands[2], i2)
    4017         1832 :       || !const0_operand (operands[1], i1))
    4018           46 :     return -1;
    4019              :   return 0;
    4020              : }
    4021              : 
    4022              : int
    4023         1961 : pattern1020 (rtx x1, machine_mode i1, machine_mode i2)
    4024              : {
    4025         1961 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4026         1961 :   rtx x2, x3;
    4027         1961 :   int res ATTRIBUTE_UNUSED;
    4028         1961 :   if (!register_operand (operands[0], i1)
    4029         1961 :       || GET_MODE (x1) != i1)
    4030              :     return -1;
    4031         1867 :   x2 = XEXP (x1, 0);
    4032         1867 :   if (GET_MODE (x2) != i1)
    4033              :     return -1;
    4034         1867 :   x3 = XEXP (x2, 0);
    4035         1867 :   if (GET_MODE (x3) != i1
    4036         1867 :       || !register_operand (operands[1], i1)
    4037         1857 :       || !nonimmediate_operand (operands[2], i1)
    4038         1760 :       || !nonimm_or_0_operand (operands[3], i1)
    4039         3576 :       || !register_operand (operands[4], i2))
    4040          289 :     return -1;
    4041              :   return 0;
    4042              : }
    4043              : 
    4044              : int
    4045          420 : pattern1027 (rtx x1)
    4046              : {
    4047          420 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4048          420 :   rtx x2;
    4049          420 :   int res ATTRIBUTE_UNUSED;
    4050          420 :   if (!register_operand (operands[0], E_V16SImode)
    4051          420 :       || GET_MODE (x1) != E_V16SImode)
    4052              :     return -1;
    4053          408 :   x2 = XVECEXP (x1, 0, 0);
    4054          408 :   if (GET_MODE (x2) != E_V16SImode)
    4055              :     return -1;
    4056          408 :   switch (GET_MODE (operands[1]))
    4057              :     {
    4058          213 :     case E_V16HFmode:
    4059          213 :       if (!register_operand (operands[1], E_V16HFmode))
    4060              :         return -1;
    4061              :       return 0;
    4062              : 
    4063          195 :     case E_V16SFmode:
    4064          195 :       if (!register_operand (operands[1], E_V16SFmode))
    4065              :         return -1;
    4066              :       return 1;
    4067              : 
    4068              :     default:
    4069              :       return -1;
    4070              :     }
    4071              : }
    4072              : 
    4073              : int
    4074         7021 : pattern1038 (rtx x1, machine_mode i1, machine_mode i2)
    4075              : {
    4076         7021 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4077         7021 :   int res ATTRIBUTE_UNUSED;
    4078         7021 :   if (!register_operand (operands[0], i2)
    4079         6853 :       || GET_MODE (x1) != i2
    4080         6853 :       || !nonimmediate_operand (operands[1], i2)
    4081         6829 :       || !nonimm_or_0_operand (operands[2], i2)
    4082        13746 :       || !register_operand (operands[3], i1))
    4083          296 :     return -1;
    4084              :   return 0;
    4085              : }
    4086              : 
    4087              : int
    4088          156 : pattern1046 (rtx x1)
    4089              : {
    4090          156 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4091          156 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4092          156 :   rtx x10, x11;
    4093          156 :   int res ATTRIBUTE_UNUSED;
    4094          156 :   x2 = XEXP (x1, 1);
    4095          156 :   x3 = XEXP (x2, 0);
    4096          156 :   x4 = XEXP (x3, 0);
    4097          156 :   if (GET_CODE (x4) != SUBREG
    4098          156 :       || maybe_ne (SUBREG_BYTE (x4), 0)
    4099          312 :       || GET_MODE (x4) != E_QImode)
    4100              :     return -1;
    4101          156 :   x5 = XEXP (x4, 0);
    4102          156 :   switch (GET_CODE (x5))
    4103              :     {
    4104          156 :     case ASHIFTRT:
    4105          156 :     case LSHIFTRT:
    4106          156 :     case SIGN_EXTRACT:
    4107          156 :     case ZERO_EXTRACT:
    4108          156 :       operands[3] = x5;
    4109          156 :       x6 = XEXP (x1, 0);
    4110          156 :       if (GET_CODE (x6) != ZERO_EXTRACT)
    4111              :         return -1;
    4112          156 :       x7 = XEXP (x6, 1);
    4113          156 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    4114              :         return -1;
    4115          156 :       x8 = XEXP (x6, 2);
    4116          156 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    4117              :         return -1;
    4118          156 :       x9 = XEXP (x6, 0);
    4119          156 :       operands[0] = x9;
    4120          156 :       if (!int248_register_operand (operands[0], E_VOIDmode))
    4121              :         return -1;
    4122          156 :       x10 = XEXP (x5, 0);
    4123          156 :       operands[1] = x10;
    4124          156 :       if (!int248_register_operand (operands[1], E_VOIDmode))
    4125              :         return -1;
    4126          156 :       x11 = XEXP (x3, 1);
    4127          156 :       operands[2] = x11;
    4128          156 :       if (!nonmemory_operand (operands[2], E_QImode))
    4129              :         return -1;
    4130          155 :       return pattern1045 (x1); /* [-1, 2] */
    4131              : 
    4132              :     default:
    4133              :       return -1;
    4134              :     }
    4135              : }
    4136              : 
    4137              : int
    4138          507 : pattern1055 (rtx x1)
    4139              : {
    4140          507 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4141          507 :   rtx x2, x3, x4, x5;
    4142          507 :   int res ATTRIBUTE_UNUSED;
    4143          507 :   x2 = XEXP (x1, 1);
    4144          507 :   x3 = XEXP (x2, 0);
    4145          507 :   x4 = XEXP (x3, 0);
    4146          507 :   x5 = XEXP (x4, 0);
    4147          507 :   operands[1] = x5;
    4148          507 :   if (!int248_register_operand (operands[1], E_VOIDmode))
    4149              :     return -1;
    4150          356 :   return pattern1054 (x1); /* [-1, 5] */
    4151              : }
    4152              : 
    4153              : int
    4154          845 : pattern1059 (rtx x1, machine_mode i1)
    4155              : {
    4156          845 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4157          845 :   rtx x2, x3;
    4158          845 :   int res ATTRIBUTE_UNUSED;
    4159          845 :   if (!register_operand (operands[0], i1)
    4160          845 :       || GET_MODE (x1) != i1)
    4161              :     return -1;
    4162          844 :   x2 = XEXP (x1, 0);
    4163          844 :   if (GET_MODE (x2) != i1)
    4164              :     return -1;
    4165          844 :   x3 = XEXP (x2, 0);
    4166          844 :   if (GET_MODE (x3) != i1
    4167          844 :       || !nonimmediate_operand (operands[1], i1)
    4168          844 :       || !nonimmediate_operand (operands[2], i1)
    4169         1640 :       || !nonimmediate_operand (operands[3], i1))
    4170           48 :     return -1;
    4171              :   return 0;
    4172              : }
    4173              : 
    4174              : int
    4175            0 : pattern1062 (rtx x1, machine_mode i1, machine_mode i2)
    4176              : {
    4177            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4178            0 :   rtx x2;
    4179            0 :   int res ATTRIBUTE_UNUSED;
    4180            0 :   if (!register_operand (operands[0], i2)
    4181            0 :       || GET_MODE (x1) != i2)
    4182              :     return -1;
    4183            0 :   x2 = XEXP (x1, 0);
    4184            0 :   if (GET_MODE (x2) != i2
    4185            0 :       || !register_operand (operands[1], i2)
    4186            0 :       || !vector_operand (operands[2], i1))
    4187            0 :     return -1;
    4188              :   return 0;
    4189              : }
    4190              : 
    4191              : int
    4192         7271 : pattern1066 (rtx x1)
    4193              : {
    4194         7271 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4195         7271 :   rtx x2, x3, x4, x5, x6, x7;
    4196         7271 :   int res ATTRIBUTE_UNUSED;
    4197         7271 :   x2 = XEXP (x1, 1);
    4198         7271 :   x3 = XEXP (x2, 0);
    4199         7271 :   x4 = XEXP (x3, 0);
    4200         7271 :   if (GET_CODE (x4) != ASHIFT)
    4201              :     return -1;
    4202         2186 :   x5 = XEXP (x4, 0);
    4203         2186 :   if (GET_CODE (x5) != ZERO_EXTEND)
    4204              :     return -1;
    4205         1693 :   x6 = XEXP (x3, 1);
    4206         1693 :   if (GET_CODE (x6) != ZERO_EXTEND)
    4207              :     return -1;
    4208         1693 :   x7 = XEXP (x1, 0);
    4209         1693 :   operands[0] = x7;
    4210         1693 :   return pattern358 (x2); /* [-1, 3] */
    4211              : }
    4212              : 
    4213              : int
    4214         4540 : pattern1072 (rtx x1, machine_mode i1, machine_mode i2)
    4215              : {
    4216         4540 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4217         4540 :   rtx x2;
    4218         4540 :   int res ATTRIBUTE_UNUSED;
    4219         4540 :   if (!sse_reg_operand (operands[0], i1)
    4220         4540 :       || GET_MODE (x1) != i1)
    4221              :     return -1;
    4222         3605 :   x2 = XEXP (x1, 0);
    4223         3605 :   if (GET_MODE (x2) != i1
    4224         3605 :       || !sse_reg_operand (operands[2], i2)
    4225         3664 :       || !sse_reg_operand (operands[1], i1))
    4226         3546 :     return -1;
    4227              :   return 0;
    4228              : }
    4229              : 
    4230              : int
    4231          212 : pattern1078 (rtx x1, machine_mode i1)
    4232              : {
    4233          212 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4234          212 :   rtx x2, x3, x4;
    4235          212 :   int res ATTRIBUTE_UNUSED;
    4236          212 :   if (!register_operand (operands[1], i1))
    4237              :     return -1;
    4238          196 :   x2 = XVECEXP (x1, 0, 1);
    4239          196 :   operands[2] = x2;
    4240          196 :   if (!register_operand (operands[2], i1))
    4241              :     return -1;
    4242          185 :   x3 = XVECEXP (x1, 0, 2);
    4243          185 :   x4 = XEXP (x3, 0);
    4244          185 :   if (!rtx_equal_p (x4, operands[0]))
    4245              :     return -1;
    4246          185 :   switch (GET_MODE (operands[0]))
    4247              :     {
    4248            0 :     case E_SImode:
    4249            0 :       if (!register_operand (operands[0], E_SImode))
    4250              :         return -1;
    4251              :       return 0;
    4252              : 
    4253          185 :     case E_DImode:
    4254          185 :       if (!register_operand (operands[0], E_DImode))
    4255              :         return -1;
    4256              :       return 1;
    4257              : 
    4258              :     default:
    4259              :       return -1;
    4260              :     }
    4261              : }
    4262              : 
    4263              : int
    4264        34351 : pattern1086 (rtx x1)
    4265              : {
    4266        34351 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4267        34351 :   rtx x2;
    4268        34351 :   int res ATTRIBUTE_UNUSED;
    4269        34351 :   x2 = XEXP (x1, 1);
    4270        34351 :   operands[4] = x2;
    4271        34351 :   switch (GET_MODE (operands[0]))
    4272              :     {
    4273         9187 :     case E_HImode:
    4274         9187 :       return pattern1085 (x1, 
    4275         9187 : E_HImode); /* [-1, 0] */
    4276              : 
    4277        17862 :     case E_QImode:
    4278        17862 :       if (pattern1085 (x1, 
    4279              : E_QImode) != 0)
    4280              :         return -1;
    4281              :       return 1;
    4282              : 
    4283              :     default:
    4284              :       return -1;
    4285              :     }
    4286              : }
    4287              : 
    4288              : int
    4289         6083 : pattern1093 (rtx x1, machine_mode i1)
    4290              : {
    4291         6083 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4292         6083 :   int res ATTRIBUTE_UNUSED;
    4293         6083 :   if (!nonimmediate_operand (operands[0], i1)
    4294         6083 :       || GET_MODE (x1) != i1
    4295         6083 :       || !ix86_carry_flag_operator (operands[2], i1)
    4296        12166 :       || !nonimmediate_operand (operands[1], i1))
    4297          804 :     return -1;
    4298              :   return 0;
    4299              : }
    4300              : 
    4301              : int
    4302          146 : pattern1100 (rtx x1, machine_mode i1)
    4303              : {
    4304          146 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4305          146 :   rtx x2;
    4306          146 :   int res ATTRIBUTE_UNUSED;
    4307          146 :   if (!register_operand (operands[0], i1)
    4308          146 :       || GET_MODE (x1) != i1)
    4309              :     return -1;
    4310          146 :   x2 = XEXP (x1, 0);
    4311          146 :   return pattern1099 (x2); /* [-1, 11] */
    4312              : }
    4313              : 
    4314              : int
    4315            0 : pattern1106 (rtx x1)
    4316              : {
    4317            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4318            0 :   rtx x2, x3, x4, x5, x6, x7, x8;
    4319            0 :   int res ATTRIBUTE_UNUSED;
    4320            0 :   x2 = XEXP (x1, 0);
    4321            0 :   x3 = XEXP (x2, 2);
    4322            0 :   if (GET_CODE (x3) != UNSPEC
    4323            0 :       || XVECLEN (x3, 0) != 3
    4324            0 :       || XINT (x3, 1) != 60
    4325            0 :       || GET_MODE (x3) != E_QImode)
    4326              :     return -1;
    4327            0 :   x4 = XVECEXP (x3, 0, 2);
    4328            0 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    4329              :     return -1;
    4330            0 :   x5 = XEXP (x2, 0);
    4331            0 :   operands[3] = x5;
    4332            0 :   x6 = XEXP (x2, 1);
    4333            0 :   operands[4] = x6;
    4334            0 :   x7 = XVECEXP (x3, 0, 0);
    4335            0 :   operands[1] = x7;
    4336            0 :   x8 = XVECEXP (x3, 0, 1);
    4337            0 :   operands[2] = x8;
    4338            0 :   switch (GET_MODE (x1))
    4339              :     {
    4340            0 :     case E_V8SFmode:
    4341            0 :       return pattern1105 (x2, 
    4342            0 : E_V8SImode); /* [-1, 0] */
    4343              : 
    4344            0 :     case E_V4SFmode:
    4345            0 :       if (pattern1105 (x2, 
    4346              : E_V4SImode) != 0)
    4347              :         return -1;
    4348              :       return 1;
    4349              : 
    4350            0 :     case E_V4DFmode:
    4351            0 :       if (pattern1105 (x2, 
    4352              : E_V4DImode) != 0)
    4353              :         return -1;
    4354              :       return 2;
    4355              : 
    4356            0 :     case E_V2DFmode:
    4357            0 :       if (pattern1105 (x2, 
    4358              : E_V2DImode) != 0)
    4359              :         return -1;
    4360              :       return 3;
    4361              : 
    4362              :     default:
    4363              :       return -1;
    4364              :     }
    4365              : }
    4366              : 
    4367              : int
    4368         1427 : pattern1115 (rtx x1, machine_mode i1)
    4369              : {
    4370         1427 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4371         1427 :   rtx x2;
    4372         1427 :   int res ATTRIBUTE_UNUSED;
    4373         1427 :   if (!register_operand (operands[0], i1)
    4374         1427 :       || GET_MODE (x1) != i1)
    4375              :     return -1;
    4376         1364 :   x2 = XEXP (x1, 0);
    4377         1364 :   if (GET_MODE (x2) != i1
    4378         1364 :       || !nonimm_or_0_operand (operands[2], i1)
    4379         2701 :       || !register_operand (operands[3], E_QImode))
    4380           92 :     return -1;
    4381         1272 :   switch (GET_MODE (operands[1]))
    4382              :     {
    4383              :     case E_V8HFmode:
    4384              :       return 0;
    4385              : 
    4386          415 :     case E_V4SFmode:
    4387          415 :       return 1;
    4388              : 
    4389          418 :     case E_V4DFmode:
    4390          418 :       return 2;
    4391              : 
    4392              :     default:
    4393              :       return -1;
    4394              :     }
    4395              : }
    4396              : 
    4397              : int
    4398         3137 : pattern1120 (rtx x1, machine_mode i1, machine_mode i2)
    4399              : {
    4400         3137 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4401         3137 :   rtx x2;
    4402         3137 :   int res ATTRIBUTE_UNUSED;
    4403         3137 :   if (!register_operand (operands[0], i1)
    4404         3137 :       || GET_MODE (x1) != i1)
    4405              :     return -1;
    4406         2951 :   x2 = XEXP (x1, 0);
    4407         2951 :   if (GET_MODE (x2) != i1
    4408         2951 :       || !register_operand (operands[1], i1)
    4409         2914 :       || !nonimmediate_operand (operands[2], i1)
    4410         2914 :       || !nonimm_or_0_operand (operands[3], i1)
    4411         5817 :       || !register_operand (operands[4], i2))
    4412          163 :     return -1;
    4413              :   return 0;
    4414              : }
    4415              : 
    4416              : int
    4417        47410 : pattern1128 (rtx x1, machine_mode i1)
    4418              : {
    4419        47410 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4420        47410 :   int res ATTRIBUTE_UNUSED;
    4421        47410 :   if (!register_operand (operands[0], i1)
    4422        47120 :       || GET_MODE (x1) != i1
    4423        47120 :       || !vector_operand (operands[2], i1)
    4424        37274 :       || !register_operand (operands[1], i1)
    4425        73014 :       || !const_0_to_255_operand (operands[3], E_SImode))
    4426        22179 :     return -1;
    4427              :   return 0;
    4428              : }
    4429              : 
    4430              : int
    4431         1410 : pattern1134 (rtx x1, rtx_code i1)
    4432              : {
    4433         1410 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4434         1410 :   rtx x2, x3, x4, x5, x6, x7, x8;
    4435         1410 :   int res ATTRIBUTE_UNUSED;
    4436         1410 :   x2 = XEXP (x1, 0);
    4437         1410 :   x3 = XEXP (x2, 0);
    4438         1410 :   x4 = XEXP (x3, 0);
    4439         1410 :   x5 = XEXP (x4, 1);
    4440         1410 :   if (GET_CODE (x5) != i1)
    4441              :     return -1;
    4442         1278 :   x6 = XEXP (x4, 0);
    4443         1278 :   x7 = XEXP (x6, 0);
    4444         1278 :   operands[1] = x7;
    4445         1278 :   x8 = XEXP (x5, 0);
    4446         1278 :   operands[2] = x8;
    4447         1278 :   switch (GET_MODE (operands[0]))
    4448              :     {
    4449          474 :     case E_V32HImode:
    4450          474 :       return pattern1133 (x1, 
    4451              : E_SImode, 
    4452              : E_V32HImode, 
    4453          474 : E_V32SImode); /* [-1, 0] */
    4454              : 
    4455          434 :     case E_V16HImode:
    4456          434 :       if (pattern1133 (x1, 
    4457              : E_HImode, 
    4458              : E_V16HImode, 
    4459              : E_V16SImode) != 0)
    4460              :         return -1;
    4461              :       return 1;
    4462              : 
    4463          370 :     case E_V8HImode:
    4464          370 :       if (pattern1133 (x1, 
    4465              : E_QImode, 
    4466              : E_V8HImode, 
    4467              : E_V8SImode) != 0)
    4468              :         return -1;
    4469              :       return 2;
    4470              : 
    4471              :     default:
    4472              :       return -1;
    4473              :     }
    4474              : }
    4475              : 
    4476              : int
    4477          548 : pattern1149 (rtx x1, machine_mode i1, machine_mode i2)
    4478              : {
    4479          548 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4480          548 :   int res ATTRIBUTE_UNUSED;
    4481          548 :   if (!register_operand (operands[0], i2)
    4482          526 :       || GET_MODE (x1) != i2
    4483          526 :       || !register_operand (operands[1], i2)
    4484          480 :       || !nonimmediate_operand (operands[2], i2)
    4485         1028 :       || !nonimmediate_operand (operands[3], i1))
    4486           68 :     return -1;
    4487              :   return 0;
    4488              : }
    4489              : 
    4490              : int
    4491        18138 : pattern1155 (rtx x1, machine_mode i1)
    4492              : {
    4493        18138 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4494        18138 :   int res ATTRIBUTE_UNUSED;
    4495        18138 :   if (!register_operand (operands[0], i1)
    4496        17999 :       || GET_MODE (x1) != i1
    4497        17999 :       || !register_operand (operands[1], i1)
    4498        34650 :       || !palignr_operand (operands[2], E_VOIDmode))
    4499        16589 :     return -1;
    4500              :   return 0;
    4501              : }
    4502              : 
    4503              : int
    4504            0 : pattern1160 (rtx x1, machine_mode i1)
    4505              : {
    4506            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4507            0 :   int res ATTRIBUTE_UNUSED;
    4508            0 :   if (!register_operand (operands[0], i1)
    4509            0 :       || GET_MODE (x1) != i1
    4510            0 :       || !register_operand (operands[5], i1)
    4511            0 :       || !immediate_operand (operands[3], i1)
    4512            0 :       || !register_operand (operands[4], i1)
    4513            0 :       || !register_operand (operands[1], i1))
    4514            0 :     return -1;
    4515              :   return 0;
    4516              : }
    4517              : 
    4518              : int
    4519          149 : pattern1166 (rtx x1)
    4520              : {
    4521          149 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4522          149 :   rtx x2, x3, x4, x5;
    4523          149 :   int res ATTRIBUTE_UNUSED;
    4524          149 :   x2 = XEXP (x1, 0);
    4525          149 :   if (GET_MODE (x2) != E_SImode)
    4526              :     return -1;
    4527          149 :   x3 = XEXP (x2, 0);
    4528          149 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 31])
    4529              :     return -1;
    4530          125 :   x4 = XEXP (x2, 1);
    4531          125 :   if (GET_CODE (x4) != CLZ
    4532          125 :       || GET_MODE (x4) != E_SImode)
    4533              :     return -1;
    4534          125 :   x5 = XEXP (x1, 1);
    4535          125 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 31])
    4536            0 :     return -1;
    4537              :   return 0;
    4538              : }
    4539              : 
    4540              : int
    4541        24341 : pattern1174 (rtx x1, machine_mode i1, machine_mode i2)
    4542              : {
    4543        24341 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4544        24341 :   rtx x2;
    4545        24341 :   int res ATTRIBUTE_UNUSED;
    4546        24341 :   if (!nonimmediate_operand (operands[0], i2)
    4547        24294 :       || GET_MODE (x1) != i2
    4548        48635 :       || !nonimmediate_operand (operands[1], i2))
    4549         1023 :     return -1;
    4550        23318 :   x2 = XEXP (x1, 1);
    4551        23318 :   if (GET_MODE (x2) != i2
    4552        23318 :       || !nonimmediate_operand (operands[2], i1))
    4553        10508 :     return -1;
    4554              :   return 0;
    4555              : }
    4556              : 
    4557              : int
    4558       448134 : pattern1181 (rtx x1, machine_mode i1, int i2)
    4559              : {
    4560       448134 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4561       448134 :   rtx x2;
    4562       448134 :   int res ATTRIBUTE_UNUSED;
    4563       448134 :   if (GET_CODE (x1) != UNSPEC_VOLATILE
    4564       448134 :       || XVECLEN (x1, 0) != 1
    4565       448134 :       || XINT (x1, 1) != i2
    4566       448134 :       || GET_MODE (x1) != i1)
    4567              :     return -1;
    4568       448134 :   x2 = XVECEXP (x1, 0, 0);
    4569       448134 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4570            0 :     return -1;
    4571              :   return 0;
    4572              : }
    4573              : 
    4574              : int
    4575      1325207 : pattern1188 (rtx x1)
    4576              : {
    4577      1325207 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4578      1325207 :   rtx x2, x3, x4;
    4579      1325207 :   int res ATTRIBUTE_UNUSED;
    4580      1325207 :   x2 = XEXP (x1, 1);
    4581      1325207 :   x3 = XEXP (x2, 1);
    4582      1325207 :   operands[2] = x3;
    4583      1325207 :   x4 = XEXP (x1, 0);
    4584      1325207 :   switch (GET_CODE (x4))
    4585              :     {
    4586         2732 :     case STRICT_LOW_PART:
    4587         2732 :       return pattern559 (x1); /* [-1, 1] */
    4588              : 
    4589      1322475 :     case REG:
    4590      1322475 :     case SUBREG:
    4591      1322475 :     case MEM:
    4592      1322475 :       operands[0] = x4;
    4593      1322475 :       switch (GET_MODE (operands[0]))
    4594              :         {
    4595       473491 :         case E_DImode:
    4596       473491 :           if (GET_MODE (x2) != E_DImode)
    4597              :             return -1;
    4598              :           return 2;
    4599              : 
    4600         4738 :         case E_TImode:
    4601         4738 :           if (pattern566 (x2, 
    4602              : E_TImode) != 0)
    4603              :             return -1;
    4604              :           return 3;
    4605              : 
    4606        53959 :         case E_HImode:
    4607        53959 :           if (GET_MODE (x2) != E_HImode
    4608        53959 :               || !const_int_operand (operands[2], E_HImode))
    4609        24206 :             return -1;
    4610              :           return 4;
    4611              : 
    4612       549338 :         case E_SImode:
    4613       549338 :           if (GET_MODE (x2) != E_SImode
    4614       549338 :               || !const_int_operand (operands[2], E_SImode))
    4615       358610 :             return -1;
    4616              :           return 5;
    4617              : 
    4618              :         default:
    4619              :           return -1;
    4620              :         }
    4621              : 
    4622              :     default:
    4623              :       return -1;
    4624              :     }
    4625              : }
    4626              : 
    4627              : int
    4628         8843 : pattern1204 (rtx x1, machine_mode i1)
    4629              : {
    4630         8843 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4631         8843 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4632         8843 :   rtx x10, x11, x12;
    4633         8843 :   int res ATTRIBUTE_UNUSED;
    4634         8843 :   x2 = XVECEXP (x1, 0, 0);
    4635         8843 :   x3 = XEXP (x2, 1);
    4636         8843 :   if (GET_MODE (x3) != i1)
    4637              :     return -1;
    4638         8773 :   x4 = XEXP (x3, 0);
    4639         8773 :   if (GET_CODE (x4) != MINUS
    4640            8 :       || GET_MODE (x4) != i1)
    4641              :     return -1;
    4642            8 :   x5 = XEXP (x4, 1);
    4643            8 :   if (!ix86_carry_flag_operator (x5, i1))
    4644              :     return -1;
    4645            8 :   operands[4] = x5;
    4646            8 :   x6 = XEXP (x5, 1);
    4647            8 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4648              :     return -1;
    4649            8 :   x7 = XVECEXP (x1, 0, 1);
    4650            8 :   if (GET_CODE (x7) != CLOBBER)
    4651              :     return -1;
    4652            8 :   x8 = XEXP (x7, 0);
    4653            8 :   if (GET_CODE (x8) != REG
    4654            8 :       || REGNO (x8) != 17
    4655           16 :       || GET_MODE (x8) != E_CCmode)
    4656              :     return -1;
    4657            8 :   x9 = XEXP (x5, 0);
    4658            8 :   operands[3] = x9;
    4659            8 :   if (!flags_reg_operand (operands[3], E_VOIDmode))
    4660              :     return -1;
    4661            8 :   x10 = XEXP (x3, 1);
    4662            8 :   operands[2] = x10;
    4663            8 :   if (!memory_operand (operands[2], i1))
    4664              :     return -1;
    4665            8 :   x11 = XEXP (x4, 0);
    4666            8 :   if (!rtx_equal_p (x11, operands[0]))
    4667              :     return -1;
    4668            8 :   x12 = XEXP (x2, 0);
    4669            8 :   return pattern1202 (x12, 
    4670            8 : i1); /* [-1, 1] */
    4671              : }
    4672              : 
    4673              : int
    4674          698 : pattern1215 (rtx x1, machine_mode i1)
    4675              : {
    4676          698 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4677          698 :   rtx x2, x3;
    4678          698 :   int res ATTRIBUTE_UNUSED;
    4679          698 :   if (!nonimmediate_operand (operands[0], i1)
    4680          698 :       || GET_MODE (x1) != i1)
    4681              :     return -1;
    4682          698 :   x2 = XEXP (x1, 0);
    4683          698 :   if (GET_MODE (x2) != i1)
    4684              :     return -1;
    4685          698 :   x3 = XEXP (x2, 0);
    4686          698 :   if (GET_MODE (x3) != i1
    4687          698 :       || !nonimmediate_operand (operands[1], i1)
    4688         1024 :       || !x86_64_immediate_operand (operands[2], i1))
    4689          683 :     return -1;
    4690              :   return 0;
    4691              : }
    4692              : 
    4693              : int
    4694         1010 : pattern1224 (rtx x1)
    4695              : {
    4696         1010 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4697         1010 :   rtx x2, x3, x4, x5;
    4698         1010 :   int res ATTRIBUTE_UNUSED;
    4699         1010 :   x2 = XEXP (x1, 0);
    4700         1010 :   x3 = XEXP (x2, 1);
    4701         1010 :   switch (GET_CODE (x3))
    4702              :     {
    4703          827 :     case REG:
    4704          827 :     case SUBREG:
    4705          827 :     case MEM:
    4706          827 :       x4 = XEXP (x2, 2);
    4707          827 :       operands[4] = x4;
    4708          827 :       switch (GET_MODE (operands[0]))
    4709              :         {
    4710              :         case E_V8HFmode:
    4711              :           return 0;
    4712              : 
    4713              :         case E_V4SFmode:
    4714              :           return 1;
    4715              : 
    4716              :         case E_V2DFmode:
    4717              :           return 2;
    4718              : 
    4719              :         default:
    4720              :           return -1;
    4721              :         }
    4722              : 
    4723          183 :     case CONST_INT:
    4724          183 :     case CONST_DOUBLE:
    4725          183 :     case CONST_VECTOR:
    4726          183 :       operands[4] = x3;
    4727          183 :       x4 = XEXP (x2, 2);
    4728          183 :       operands[5] = x4;
    4729          183 :       x5 = XEXP (x1, 1);
    4730          183 :       if (!rtx_equal_p (x5, operands[1]))
    4731              :         return -1;
    4732          183 :       switch (GET_MODE (operands[0]))
    4733              :         {
    4734              :         case E_V8HFmode:
    4735              :           return 3;
    4736              : 
    4737              :         case E_V4SFmode:
    4738              :           return 4;
    4739              : 
    4740              :         case E_V2DFmode:
    4741              :           return 5;
    4742              : 
    4743              :         default:
    4744              :           return -1;
    4745              :         }
    4746              : 
    4747              :     default:
    4748              :       return -1;
    4749              :     }
    4750              : }
    4751              : 
    4752              : int
    4753           37 : pattern1238 (rtx x1, int i1, int i2, int i3, int i4, int i5)
    4754              : {
    4755           37 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4756           37 :   rtx x2, x3, x4, x5, x6;
    4757           37 :   int res ATTRIBUTE_UNUSED;
    4758           37 :   x2 = XVECEXP (x1, 0, 3);
    4759           37 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + i5])
    4760              :     return -1;
    4761           37 :   x3 = XVECEXP (x1, 0, 4);
    4762           37 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + i4])
    4763              :     return -1;
    4764           37 :   x4 = XVECEXP (x1, 0, 5);
    4765           37 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + i3])
    4766              :     return -1;
    4767           37 :   x5 = XVECEXP (x1, 0, 6);
    4768           37 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + i2])
    4769              :     return -1;
    4770           37 :   x6 = XVECEXP (x1, 0, 7);
    4771           37 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    4772            0 :     return -1;
    4773              :   return 0;
    4774              : }
    4775              : 
    4776              : int
    4777       127099 : pattern1244 (rtx x1, machine_mode i1)
    4778              : {
    4779       127099 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4780       127099 :   rtx x2, x3, x4;
    4781       127099 :   int res ATTRIBUTE_UNUSED;
    4782       127099 :   x2 = XEXP (x1, 1);
    4783       127099 :   x3 = XEXP (x2, 1);
    4784       127099 :   if (maybe_ne (SUBREG_BYTE (x3), 0)
    4785       127099 :       || GET_MODE (x3) != E_QImode)
    4786              :     return -1;
    4787       127099 :   x4 = XEXP (x1, 0);
    4788       127099 :   operands[0] = x4;
    4789       127099 :   return pattern1243 (x2, 
    4790       127099 : i1); /* [-1, 2] */
    4791              : }
    4792              : 
    4793              : int
    4794            8 : pattern1248 (rtx x1)
    4795              : {
    4796            8 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4797            8 :   rtx x2, x3, x4, x5, x6, x7;
    4798            8 :   int res ATTRIBUTE_UNUSED;
    4799            8 :   x2 = XVECEXP (x1, 0, 1);
    4800            8 :   x3 = XEXP (x2, 0);
    4801            8 :   operands[0] = x3;
    4802            8 :   x4 = XVECEXP (x1, 0, 0);
    4803            8 :   x5 = XEXP (x4, 1);
    4804            8 :   x6 = XEXP (x5, 0);
    4805            8 :   switch (GET_MODE (x6))
    4806              :     {
    4807            6 :     case E_SImode:
    4808            6 :       x7 = XEXP (x6, 0);
    4809            6 :       if (GET_MODE (x7) != E_SImode
    4810            6 :           || !nonimmediate_operand (operands[1], E_SImode)
    4811           12 :           || !scratch_operand (operands[0], E_SImode))
    4812            0 :         return -1;
    4813              :       return 0;
    4814              : 
    4815            2 :     case E_DImode:
    4816            2 :       x7 = XEXP (x6, 0);
    4817            2 :       if (GET_MODE (x7) != E_DImode
    4818            2 :           || !nonimmediate_operand (operands[1], E_DImode)
    4819            4 :           || !scratch_operand (operands[0], E_DImode))
    4820            0 :         return -1;
    4821              :       return 1;
    4822              : 
    4823              :     default:
    4824              :       return -1;
    4825              :     }
    4826              : }
    4827              : 
    4828              : int
    4829          504 : pattern1256 (rtx x1, machine_mode i1)
    4830              : {
    4831          504 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4832          504 :   rtx x2, x3;
    4833          504 :   int res ATTRIBUTE_UNUSED;
    4834          504 :   if (!register_operand (operands[0], i1)
    4835          504 :       || GET_MODE (x1) != i1)
    4836              :     return -1;
    4837          494 :   x2 = XEXP (x1, 0);
    4838          494 :   if (GET_MODE (x2) != i1)
    4839              :     return -1;
    4840          494 :   x3 = XEXP (x2, 0);
    4841          494 :   if (GET_MODE (x3) != i1
    4842          494 :       || !nonimmediate_operand (operands[1], i1))
    4843            2 :     return -1;
    4844              :   return 0;
    4845              : }
    4846              : 
    4847              : int
    4848      2801884 : pattern1261 (rtx x1, machine_mode i1)
    4849              : {
    4850      2801884 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4851      2801884 :   int res ATTRIBUTE_UNUSED;
    4852      2801884 :   if (!mask_reg_operand (operands[0], i1)
    4853          466 :       || GET_MODE (x1) != i1
    4854          466 :       || !mask_reg_operand (operands[1], i1)
    4855      2802350 :       || !mask_reg_operand (operands[2], i1))
    4856      2801418 :     return -1;
    4857              :   return 0;
    4858              : }
    4859              : 
    4860              : int
    4861       119995 : pattern1268 (rtx x1, machine_mode i1)
    4862              : {
    4863       119995 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4864       119995 :   rtx x2, x3, x4, x5, x6;
    4865       119995 :   int res ATTRIBUTE_UNUSED;
    4866       119995 :   if (peep2_current_count < 4
    4867       111435 :       || GET_CODE (x1) != SET)
    4868              :     return -1;
    4869       105388 :   x2 = XEXP (x1, 1);
    4870       105388 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4871              :     return -1;
    4872        54783 :   x3 = XEXP (x1, 0);
    4873        54783 :   operands[3] = x3;
    4874        54783 :   if (!memory_operand (operands[3], i1))
    4875              :     return -1;
    4876        46832 :   x4 = PATTERN (peep2_next_insn (3));
    4877        46832 :   if (GET_CODE (x4) != SET)
    4878              :     return -1;
    4879        44622 :   x5 = XEXP (x4, 1);
    4880        44622 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4881              :     return -1;
    4882        27466 :   x6 = XEXP (x4, 0);
    4883        27466 :   operands[4] = x6;
    4884        27466 :   if (!memory_operand (operands[4], i1))
    4885              :     return -1;
    4886              :   return 0;
    4887              : }
    4888              : 
    4889              : int
    4890         5145 : pattern1278 (rtx x1, machine_mode i1)
    4891              : {
    4892         5145 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4893         5145 :   rtx x2;
    4894         5145 :   int res ATTRIBUTE_UNUSED;
    4895         5145 :   if (!nonimmediate_operand (operands[0], i1)
    4896         5145 :       || GET_MODE (x1) != i1)
    4897              :     return -1;
    4898         5145 :   x2 = XEXP (x1, 0);
    4899         5145 :   if (GET_MODE (x2) != i1
    4900         5145 :       || !nonimmediate_operand (operands[1], i1)
    4901         4218 :       || !ix86_carry_flag_operator (operands[4], i1)
    4902         9363 :       || !x86_64_general_operand (operands[2], i1))
    4903         1855 :     return -1;
    4904              :   return 0;
    4905              : }
    4906              : 
    4907              : int
    4908         1105 : pattern1287 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    4909              : {
    4910         1105 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4911         1105 :   rtx x2, x3;
    4912         1105 :   int res ATTRIBUTE_UNUSED;
    4913         1105 :   if (!register_operand (operands[0], i1)
    4914         1105 :       || GET_MODE (x1) != i1)
    4915              :     return -1;
    4916         1075 :   x2 = XEXP (x1, 0);
    4917         1075 :   if (GET_MODE (x2) != i1
    4918         1075 :       || !register_operand (operands[1], i1))
    4919            0 :     return -1;
    4920         1075 :   x3 = XEXP (x2, 1);
    4921         1075 :   if (GET_MODE (x3) != i1
    4922         1075 :       || !nonimmediate_operand (operands[2], i2)
    4923         1075 :       || !nonimm_or_0_operand (operands[4], i1)
    4924         2136 :       || !register_operand (operands[5], i3))
    4925           74 :     return -1;
    4926              :   return 0;
    4927              : }
    4928              : 
    4929              : int
    4930         3440 : pattern1295 (rtx x1)
    4931              : {
    4932         3440 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4933         3440 :   rtx x2;
    4934         3440 :   int res ATTRIBUTE_UNUSED;
    4935         3440 :   if (!const_0_to_7_operand (operands[5], E_SImode))
    4936              :     return -1;
    4937         3285 :   switch (GET_MODE (operands[0]))
    4938              :     {
    4939           94 :     case E_V16QImode:
    4940           94 :       if (!register_operand (operands[0], E_V16QImode)
    4941           94 :           || GET_MODE (x1) != E_V16QImode)
    4942              :         return -1;
    4943           94 :       x2 = XEXP (x1, 2);
    4944           94 :       if (GET_MODE (x2) != E_HImode)
    4945              :         return -1;
    4946              :       return 0;
    4947              : 
    4948          119 :     case E_V8HImode:
    4949          119 :       if (!register_operand (operands[0], E_V8HImode)
    4950          119 :           || GET_MODE (x1) != E_V8HImode)
    4951              :         return -1;
    4952          119 :       x2 = XEXP (x1, 2);
    4953          119 :       if (GET_MODE (x2) != E_QImode)
    4954              :         return -1;
    4955              :       return 1;
    4956              : 
    4957          805 :     case E_V4SImode:
    4958          805 :       if (!register_operand (operands[0], E_V4SImode)
    4959          805 :           || GET_MODE (x1) != E_V4SImode)
    4960              :         return -1;
    4961          797 :       x2 = XEXP (x1, 2);
    4962          797 :       if (GET_MODE (x2) != E_QImode)
    4963              :         return -1;
    4964              :       return 2;
    4965              : 
    4966           73 :     case E_V2DImode:
    4967           73 :       if (!register_operand (operands[0], E_V2DImode)
    4968           73 :           || GET_MODE (x1) != E_V2DImode)
    4969              :         return -1;
    4970           73 :       x2 = XEXP (x1, 2);
    4971           73 :       if (GET_MODE (x2) != E_QImode)
    4972              :         return -1;
    4973              :       return 3;
    4974              : 
    4975           88 :     case E_V32QImode:
    4976           88 :       if (!register_operand (operands[0], E_V32QImode)
    4977           88 :           || GET_MODE (x1) != E_V32QImode)
    4978              :         return -1;
    4979           88 :       x2 = XEXP (x1, 2);
    4980           88 :       if (GET_MODE (x2) != E_SImode)
    4981              :         return -1;
    4982              :       return 4;
    4983              : 
    4984          105 :     case E_V16HImode:
    4985          105 :       if (!register_operand (operands[0], E_V16HImode)
    4986          105 :           || GET_MODE (x1) != E_V16HImode)
    4987              :         return -1;
    4988          105 :       x2 = XEXP (x1, 2);
    4989          105 :       if (GET_MODE (x2) != E_HImode)
    4990              :         return -1;
    4991              :       return 5;
    4992              : 
    4993          741 :     case E_V8SImode:
    4994          741 :       if (!register_operand (operands[0], E_V8SImode)
    4995          741 :           || GET_MODE (x1) != E_V8SImode)
    4996              :         return -1;
    4997          741 :       x2 = XEXP (x1, 2);
    4998          741 :       if (GET_MODE (x2) != E_QImode)
    4999              :         return -1;
    5000              :       return 6;
    5001              : 
    5002           75 :     case E_V4DImode:
    5003           75 :       if (!register_operand (operands[0], E_V4DImode)
    5004           75 :           || GET_MODE (x1) != E_V4DImode)
    5005              :         return -1;
    5006           75 :       x2 = XEXP (x1, 2);
    5007           75 :       if (GET_MODE (x2) != E_QImode)
    5008              :         return -1;
    5009              :       return 7;
    5010              : 
    5011              :     default:
    5012              :       return -1;
    5013              :     }
    5014              : }
    5015              : 
    5016              : int
    5017         6861 : pattern1326 (rtx x1)
    5018              : {
    5019         6861 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5020         6861 :   rtx x2, x3, x4, x5, x6, x7;
    5021         6861 :   int res ATTRIBUTE_UNUSED;
    5022         6861 :   x2 = XEXP (x1, 1);
    5023         6861 :   x3 = XEXP (x2, 2);
    5024         6861 :   if (maybe_ne (SUBREG_BYTE (x3), 0)
    5025         6861 :       || GET_MODE (x3) != E_QImode)
    5026              :     return -1;
    5027         6861 :   x4 = XEXP (x3, 0);
    5028         6861 :   if (GET_CODE (x4) != AND)
    5029              :     return -1;
    5030         1001 :   x5 = XEXP (x1, 0);
    5031         1001 :   operands[0] = x5;
    5032         1001 :   x6 = XEXP (x4, 0);
    5033         1001 :   operands[2] = x6;
    5034         1001 :   x7 = XEXP (x4, 1);
    5035         1001 :   operands[3] = x7;
    5036         1001 :   if (!const_int_operand (operands[3], E_VOIDmode))
    5037              :     return -1;
    5038         1001 :   switch (GET_MODE (operands[0]))
    5039              :     {
    5040          653 :     case E_SImode:
    5041          653 :       return pattern1325 (x2, 
    5042          653 : E_SImode); /* [-1, 0] */
    5043              : 
    5044          250 :     case E_DImode:
    5045          250 :       if (pattern1325 (x2, 
    5046              : E_DImode) != 0)
    5047              :         return -1;
    5048              :       return 1;
    5049              : 
    5050              :     default:
    5051              :       return -1;
    5052              :     }
    5053              : }
    5054              : 
    5055              : int
    5056      2034255 : pattern1335 (rtx x1, machine_mode i1)
    5057              : {
    5058      2034255 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5059      2034255 :   int res ATTRIBUTE_UNUSED;
    5060      2034255 :   if (!register_operand (operands[0], i1)
    5061      2027227 :       || GET_MODE (x1) != i1
    5062      2027227 :       || !nonimmediate_operand (operands[1], i1)
    5063      4050490 :       || !x86_64_general_operand (operands[2], i1))
    5064       102130 :     return -1;
    5065              :   return 0;
    5066              : }
    5067              : 
    5068              : int
    5069           81 : pattern1341 (rtx x1, machine_mode i1, machine_mode i2)
    5070              : {
    5071           81 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5072           81 :   int res ATTRIBUTE_UNUSED;
    5073           81 :   if (!register_operand (operands[0], i1)
    5074           81 :       || GET_MODE (x1) != i1
    5075           81 :       || !vector_all_ones_operand (operands[2], i1)
    5076           81 :       || !const0_operand (operands[3], i1)
    5077           81 :       || !register_operand (operands[1], i2)
    5078          162 :       || !register_operand (operands[4], i1))
    5079            0 :     return -1;
    5080              :   return 0;
    5081              : }
    5082              : 
    5083              : int
    5084          585 : pattern1348 (rtx x1)
    5085              : {
    5086          585 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5087          585 :   int res ATTRIBUTE_UNUSED;
    5088          585 :   switch (GET_MODE (operands[0]))
    5089              :     {
    5090          203 :     case E_SImode:
    5091          203 :       if (!register_operand (operands[0], E_SImode)
    5092          203 :           || GET_MODE (x1) != E_SImode
    5093          406 :           || !nonimmediate_operand (operands[1], E_SImode))
    5094            0 :         return -1;
    5095              :       return 0;
    5096              : 
    5097          201 :     case E_DImode:
    5098          201 :       if (!register_operand (operands[0], E_DImode)
    5099          201 :           || GET_MODE (x1) != E_DImode
    5100          402 :           || !nonimmediate_operand (operands[1], E_DImode))
    5101            0 :         return -1;
    5102              :       return 1;
    5103              : 
    5104              :     default:
    5105              :       return -1;
    5106              :     }
    5107              : }
    5108              : 
    5109              : int
    5110       215588 : pattern1357 (rtx x1, machine_mode i1)
    5111              : {
    5112       215588 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5113       215588 :   rtx x2, x3, x4, x5, x6, x7, x8;
    5114       215588 :   int res ATTRIBUTE_UNUSED;
    5115       215588 :   x2 = XVECEXP (x1, 0, 0);
    5116       215588 :   x3 = XEXP (x2, 0);
    5117       215588 :   if (GET_CODE (x3) != REG
    5118       215588 :       || REGNO (x3) != 17)
    5119              :     return -1;
    5120         6433 :   x4 = XVECEXP (x1, 0, 1);
    5121         6433 :   if (GET_CODE (x4) != SET)
    5122              :     return -1;
    5123         5664 :   x5 = XEXP (x2, 1);
    5124         5664 :   operands[5] = x5;
    5125         5664 :   x6 = XEXP (x4, 1);
    5126         5664 :   operands[6] = x6;
    5127         5664 :   x7 = XEXP (x4, 0);
    5128         5664 :   if (!rtx_equal_p (x7, operands[0]))
    5129              :     return -1;
    5130         5484 :   x8 = PATTERN (peep2_next_insn (2));
    5131         5484 :   return pattern1356 (x8, 
    5132         5484 : i1); /* [-1, 0] */
    5133              : }
    5134              : 
    5135              : int
    5136            0 : pattern1366 (rtx x1, machine_mode i1)
    5137              : {
    5138            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5139            0 :   rtx x2, x3, x4;
    5140            0 :   int res ATTRIBUTE_UNUSED;
    5141            0 :   if (!register_operand (operands[0], i1)
    5142            0 :       || GET_MODE (x1) != i1)
    5143              :     return -1;
    5144            0 :   x2 = XVECEXP (x1, 0, 0);
    5145            0 :   if (GET_MODE (x2) != i1)
    5146              :     return -1;
    5147            0 :   x3 = XEXP (x2, 0);
    5148            0 :   if (GET_MODE (x3) != i1
    5149            0 :       || !nonimmediate_operand (operands[1], i1)
    5150            0 :       || !nonimmediate_operand (operands[2], i1))
    5151            0 :     return -1;
    5152            0 :   x4 = XEXP (x2, 2);
    5153            0 :   if (GET_MODE (x4) != i1
    5154            0 :       || !nonimmediate_operand (operands[3], i1))
    5155            0 :     return -1;
    5156              :   return 0;
    5157              : }
    5158              : 
    5159              : int
    5160         5816 : pattern1376 (rtx x1, machine_mode i1)
    5161              : {
    5162         5816 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5163         5816 :   int res ATTRIBUTE_UNUSED;
    5164         5816 :   if (!register_operand (operands[0], i1)
    5165         5800 :       || GET_MODE (x1) != i1
    5166         5800 :       || !nonimmediate_operand (operands[2], i1)
    5167        10790 :       || !nonimmediate_operand (operands[3], i1))
    5168         2600 :     return -1;
    5169         3216 :   return pattern1375 (); /* [-1, 3] */
    5170              : }
    5171              : 
    5172              : int
    5173          454 : pattern1378 (rtx x1, machine_mode i1, machine_mode i2)
    5174              : {
    5175          454 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5176          454 :   rtx x2, x3;
    5177          454 :   int res ATTRIBUTE_UNUSED;
    5178          454 :   if (!register_operand (operands[0], i1)
    5179          454 :       || GET_MODE (x1) != i1)
    5180              :     return -1;
    5181          404 :   x2 = XEXP (x1, 0);
    5182          404 :   if (GET_MODE (x2) != i1
    5183          404 :       || !vector_operand (operands[1], i1)
    5184          808 :       || !vector_operand (operands[2], i1))
    5185            0 :     return -1;
    5186          404 :   x3 = XVECEXP (x2, 0, 2);
    5187          404 :   if (GET_MODE (x3) != i1
    5188          404 :       || !vector_operand (operands[3], i1)
    5189          404 :       || !const0_operand (operands[4], i1)
    5190          808 :       || !register_operand (operands[5], i2))
    5191           33 :     return -1;
    5192              :   return 0;
    5193              : }
    5194              : 
    5195              : int
    5196          950 : pattern1390 (rtx x1, machine_mode i1, machine_mode i2)
    5197              : {
    5198          950 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5199          950 :   rtx x2, x3;
    5200          950 :   int res ATTRIBUTE_UNUSED;
    5201          950 :   if (!register_operand (operands[0], i1)
    5202          950 :       || GET_MODE (x1) != i1)
    5203              :     return -1;
    5204          903 :   x2 = XEXP (x1, 0);
    5205          903 :   if (GET_MODE (x2) != i1
    5206          903 :       || !bcst_vector_operand (operands[1], i1))
    5207            0 :     return -1;
    5208          903 :   x3 = XEXP (x2, 2);
    5209          903 :   return pattern1389 (x3, 
    5210              : i2, 
    5211          903 : i1); /* [-1, 0] */
    5212              : }
    5213              : 
    5214              : int
    5215          269 : pattern1399 (rtx x1, machine_mode i1)
    5216              : {
    5217          269 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5218          269 :   rtx x2, x3;
    5219          269 :   int res ATTRIBUTE_UNUSED;
    5220          269 :   if (!register_operand (operands[0], i1)
    5221          269 :       || GET_MODE (x1) != i1)
    5222              :     return -1;
    5223          258 :   x2 = XEXP (x1, 0);
    5224          258 :   if (GET_MODE (x2) != i1)
    5225              :     return -1;
    5226          258 :   x3 = XEXP (x2, 0);
    5227          258 :   if (GET_MODE (x3) != i1
    5228          258 :       || !nonimmediate_operand (operands[1], i1)
    5229          258 :       || !nonimmediate_operand (operands[2], i1)
    5230          516 :       || !nonimmediate_operand (operands[3], i1))
    5231            0 :     return -1;
    5232              :   return 0;
    5233              : }
    5234              : 
    5235              : int
    5236         1188 : pattern1407 (rtx x1)
    5237              : {
    5238         1188 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5239         1188 :   rtx x2, x3, x4, x5, x6, x7;
    5240         1188 :   int res ATTRIBUTE_UNUSED;
    5241         1188 :   x2 = XVECEXP (x1, 0, 0);
    5242         1188 :   x3 = XEXP (x2, 0);
    5243         1188 :   x4 = XEXP (x3, 1);
    5244         1188 :   operands[4] = x4;
    5245         1188 :   x5 = XEXP (x3, 2);
    5246         1188 :   operands[5] = x5;
    5247         1188 :   if (!register_operand (operands[5], E_QImode))
    5248              :     return -1;
    5249         1141 :   x6 = XVECEXP (x1, 0, 1);
    5250         1141 :   operands[6] = x6;
    5251         1141 :   if (!const48_operand (operands[6], E_SImode))
    5252              :     return -1;
    5253         1141 :   x7 = XEXP (x2, 1);
    5254         1141 :   if (!rtx_equal_p (x7, operands[1]))
    5255              :     return -1;
    5256         1141 :   switch (GET_MODE (operands[0]))
    5257              :     {
    5258          519 :     case E_V8HFmode:
    5259          519 :       return pattern1406 (x1, 
    5260          519 : E_V8HFmode); /* [-1, 0] */
    5261              : 
    5262          311 :     case E_V4SFmode:
    5263          311 :       if (pattern1406 (x1, 
    5264              : E_V4SFmode) != 0)
    5265              :         return -1;
    5266              :       return 1;
    5267              : 
    5268          311 :     case E_V2DFmode:
    5269          311 :       if (pattern1406 (x1, 
    5270              : E_V2DFmode) != 0)
    5271              :         return -1;
    5272              :       return 2;
    5273              : 
    5274              :     default:
    5275              :       return -1;
    5276              :     }
    5277              : }
    5278              : 
    5279              : int
    5280          321 : pattern1421 (rtx x1, machine_mode i1)
    5281              : {
    5282          321 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5283          321 :   rtx x2, x3;
    5284          321 :   int res ATTRIBUTE_UNUSED;
    5285          321 :   if (!register_operand (operands[0], i1)
    5286          321 :       || GET_MODE (x1) != i1)
    5287              :     return -1;
    5288          312 :   x2 = XVECEXP (x1, 0, 0);
    5289          312 :   if (GET_MODE (x2) != i1
    5290          312 :       || !register_operand (operands[1], i1)
    5291          624 :       || !register_operand (operands[2], i1))
    5292            5 :     return -1;
    5293          307 :   x3 = XEXP (x2, 2);
    5294          307 :   if (GET_MODE (x3) != i1
    5295          307 :       || !register_operand (operands[3], i1))
    5296            0 :     return -1;
    5297              :   return 0;
    5298              : }
    5299              : 
    5300              : int
    5301         2563 : pattern1428 (rtx x1)
    5302              : {
    5303         2563 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5304         2563 :   int res ATTRIBUTE_UNUSED;
    5305         2563 :   switch (GET_MODE (operands[0]))
    5306              :     {
    5307          742 :     case E_SImode:
    5308          742 :       if (!register_operand (operands[0], E_SImode)
    5309          741 :           || GET_MODE (x1) != E_SImode
    5310         1483 :           || !register_operand (operands[1], E_SImode))
    5311          317 :         return -1;
    5312              :       return 0;
    5313              : 
    5314         1226 :     case E_DImode:
    5315         1226 :       if (!register_operand (operands[0], E_DImode)
    5316         1185 :           || GET_MODE (x1) != E_DImode
    5317         2411 :           || !register_operand (operands[1], E_DImode))
    5318          350 :         return -1;
    5319              :       return 1;
    5320              : 
    5321              :     default:
    5322              :       return -1;
    5323              :     }
    5324              : }
    5325              : 
    5326              : int
    5327         1514 : pattern1441 (rtx x1, machine_mode i1)
    5328              : {
    5329         1514 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5330         1514 :   rtx x2;
    5331         1514 :   int res ATTRIBUTE_UNUSED;
    5332         1514 :   if (!register_operand (operands[0], i1)
    5333         1514 :       || GET_MODE (x1) != i1)
    5334              :     return -1;
    5335         1514 :   x2 = XEXP (x1, 1);
    5336         1514 :   if (GET_MODE (x2) != i1
    5337         1514 :       || !nonimmediate_operand (operands[1], i1))
    5338          194 :     return -1;
    5339              :   return 0;
    5340              : }
    5341              : 
    5342              : int
    5343            0 : pattern1448 (rtx x1, machine_mode i1)
    5344              : {
    5345            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5346            0 :   int res ATTRIBUTE_UNUSED;
    5347            0 :   if (!register_operand (operands[0], i1)
    5348            0 :       || GET_MODE (x1) != i1
    5349            0 :       || !register_operand (operands[1], i1)
    5350            0 :       || !const_int_operand (operands[2], i1))
    5351            0 :     return -1;
    5352              :   return 0;
    5353              : }
    5354              : 
    5355              : int
    5356       299874 : pattern1454 (rtx x1, int i1, machine_mode i2)
    5357              : {
    5358       299874 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5359       299874 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5360       299874 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    5361       299874 :   rtx x18, x19, x20, x21, x22;
    5362       299874 :   int res ATTRIBUTE_UNUSED;
    5363       299874 :   x2 = XVECEXP (x1, 0, 2);
    5364       299874 :   x3 = XEXP (x2, 1);
    5365       299874 :   switch (GET_CODE (x3))
    5366              :     {
    5367       174508 :     case PLUS:
    5368       174508 :       x4 = XEXP (x3, 0);
    5369       174508 :       if (GET_CODE (x4) != ASHIFT)
    5370              :         return -1;
    5371       146889 :       x5 = XEXP (x4, 1);
    5372       146889 :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    5373              :         return -1;
    5374       146889 :       x6 = XVECEXP (x1, 0, 3);
    5375       146889 :       if (GET_CODE (x6) != SET)
    5376              :         return -1;
    5377       146889 :       x7 = XEXP (x6, 1);
    5378       146889 :       if (GET_CODE (x7) != MEM
    5379       146889 :           || GET_MODE (x7) != E_BLKmode)
    5380              :         return -1;
    5381       146889 :       x8 = XEXP (x6, 0);
    5382       146889 :       if (GET_CODE (x8) != MEM
    5383       146889 :           || GET_MODE (x8) != E_BLKmode)
    5384              :         return -1;
    5385       146889 :       x9 = XVECEXP (x1, 0, 0);
    5386       146889 :       x10 = XEXP (x9, 0);
    5387       146889 :       operands[2] = x10;
    5388       146889 :       x11 = XVECEXP (x1, 0, 1);
    5389       146889 :       x12 = XEXP (x11, 1);
    5390       146889 :       x13 = XEXP (x12, 0);
    5391       146889 :       x14 = XEXP (x13, 0);
    5392       146889 :       operands[5] = x14;
    5393       146889 :       x15 = XEXP (x2, 0);
    5394       146889 :       operands[1] = x15;
    5395       146889 :       x16 = XEXP (x3, 1);
    5396       146889 :       operands[4] = x16;
    5397       146889 :       x17 = XEXP (x4, 0);
    5398       146889 :       if (!rtx_equal_p (x17, operands[5]))
    5399              :         return -1;
    5400       146889 :       x18 = XEXP (x7, 0);
    5401       146889 :       if (!rtx_equal_p (x18, operands[4]))
    5402              :         return -1;
    5403       146652 :       x19 = XEXP (x8, 0);
    5404       146652 :       if (!rtx_equal_p (x19, operands[3]))
    5405              :         return -1;
    5406       146567 :       x20 = XVECEXP (x1, 0, 4);
    5407       146567 :       x21 = XEXP (x20, 0);
    5408       146567 :       if (!rtx_equal_p (x21, operands[5]))
    5409              :         return -1;
    5410       146466 :       switch (GET_MODE (operands[2]))
    5411              :         {
    5412         3594 :         case E_SImode:
    5413         3594 :           return pattern1452 (x1, 
    5414         3594 : E_SImode); /* [-1, 0] */
    5415              : 
    5416       142872 :         case E_DImode:
    5417       142872 :           if (pattern1452 (x1, 
    5418              : E_DImode) != 0)
    5419              :             return -1;
    5420              :           return 1;
    5421              : 
    5422              :         default:
    5423              :           return -1;
    5424              :         }
    5425              : 
    5426       115323 :     case CONST_INT:
    5427       115323 :       if (XWINT (x3, 0) != 0L)
    5428              :         return -1;
    5429       115321 :       x15 = XEXP (x2, 0);
    5430       115321 :       if (GET_CODE (x15) != MEM
    5431       115321 :           || GET_MODE (x15) != E_BLKmode)
    5432              :         return -1;
    5433       115321 :       x6 = XVECEXP (x1, 0, 3);
    5434       115321 :       if (GET_CODE (x6) != USE)
    5435              :         return -1;
    5436       115321 :       x9 = XVECEXP (x1, 0, 0);
    5437       115321 :       x10 = XEXP (x9, 0);
    5438       115321 :       operands[1] = x10;
    5439       115321 :       x11 = XVECEXP (x1, 0, 1);
    5440       115321 :       x12 = XEXP (x11, 1);
    5441       115321 :       x13 = XEXP (x12, 0);
    5442       115321 :       x14 = XEXP (x13, 0);
    5443       115321 :       operands[4] = x14;
    5444       115321 :       x8 = XEXP (x6, 0);
    5445       115321 :       operands[2] = x8;
    5446       115321 :       if (!register_operand (operands[2], i2))
    5447              :         return -1;
    5448        82924 :       x22 = XEXP (x15, 0);
    5449        82924 :       if (!rtx_equal_p (x22, operands[3]))
    5450              :         return -1;
    5451        82693 :       x20 = XVECEXP (x1, 0, 4);
    5452        82693 :       x21 = XEXP (x20, 0);
    5453        82693 :       if (!rtx_equal_p (x21, operands[4]))
    5454              :         return -1;
    5455        82693 :       switch (GET_MODE (operands[1]))
    5456              :         {
    5457         1478 :         case E_SImode:
    5458         1478 :           if (pattern1453 (x12, 
    5459              : E_SImode) != 0)
    5460              :             return -1;
    5461              :           return 2;
    5462              : 
    5463        81215 :         case E_DImode:
    5464        81215 :           if (pattern1453 (x12, 
    5465              : E_DImode) != 0)
    5466              :             return -1;
    5467              :           return 3;
    5468              : 
    5469              :         default:
    5470              :           return -1;
    5471              :         }
    5472              : 
    5473              :     default:
    5474              :       return -1;
    5475              :     }
    5476              : }
    5477              : 
    5478              : int
    5479          372 : pattern1502 (rtx x1, machine_mode i1)
    5480              : {
    5481          372 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5482          372 :   rtx x2, x3, x4, x5, x6, x7, x8;
    5483          372 :   int res ATTRIBUTE_UNUSED;
    5484          372 :   x2 = XVECEXP (x1, 0, 0);
    5485          372 :   x3 = XEXP (x2, 1);
    5486          372 :   x4 = XEXP (x3, 0);
    5487          372 :   x5 = XEXP (x4, 0);
    5488          372 :   if (GET_MODE (x5) != i1
    5489          372 :       || !nonimmediate_operand (operands[1], i1)
    5490          744 :       || !register_operand (operands[0], i1))
    5491            0 :     return -1;
    5492          372 :   x6 = XVECEXP (x1, 0, 1);
    5493          372 :   x7 = XEXP (x6, 1);
    5494          372 :   if (GET_MODE (x7) != i1)
    5495              :     return -1;
    5496          372 :   x8 = XEXP (x7, 0);
    5497          372 :   if (GET_MODE (x8) != i1)
    5498              :     return -1;
    5499              :   return 0;
    5500              : }
    5501              : 
    5502              : int
    5503            0 : pattern1508 (rtx x1, rtx_code i1)
    5504              : {
    5505            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5506            0 :   rtx x2, x3, x4, x5, x6, x7, x8;
    5507            0 :   int res ATTRIBUTE_UNUSED;
    5508            0 :   x2 = XEXP (x1, 0);
    5509            0 :   x3 = XEXP (x2, 0);
    5510            0 :   x4 = XEXP (x3, 1);
    5511            0 :   if (GET_CODE (x4) != i1)
    5512              :     return -1;
    5513            0 :   x5 = XEXP (x3, 0);
    5514            0 :   x6 = XEXP (x5, 0);
    5515            0 :   operands[1] = x6;
    5516            0 :   x7 = XEXP (x4, 0);
    5517            0 :   operands[2] = x7;
    5518            0 :   x8 = XEXP (x2, 1);
    5519            0 :   switch (XWINT (x8, 0))
    5520              :     {
    5521            0 :     case 64L:
    5522            0 :       return pattern1507 (x1, 
    5523              : E_DImode, 
    5524            0 : E_TImode); /* [-1, 0] */
    5525              : 
    5526            0 :     case 32L:
    5527            0 :       if (pattern1507 (x1, 
    5528              : E_SImode, 
    5529              : E_DImode) != 0)
    5530              :         return -1;
    5531              :       return 1;
    5532              : 
    5533              :     default:
    5534              :       return -1;
    5535              :     }
    5536              : }
    5537              : 
    5538              : int
    5539         2294 : pattern1520 ()
    5540              : {
    5541         2294 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5542         2294 :   int res ATTRIBUTE_UNUSED;
    5543         2294 :   switch (GET_MODE (operands[1]))
    5544              :     {
    5545          190 :     case E_V8HFmode:
    5546          190 :       if (!register_operand (operands[1], E_V8HFmode)
    5547          190 :           || !nonimmediate_operand (operands[2], E_V8HFmode))
    5548           14 :         return -1;
    5549              :       return 0;
    5550              : 
    5551         1052 :     case E_V4SFmode:
    5552         1052 :       if (!register_operand (operands[1], E_V4SFmode)
    5553         1052 :           || !nonimmediate_operand (operands[2], E_V4SFmode))
    5554            3 :         return -1;
    5555              :       return 1;
    5556              : 
    5557         1052 :     case E_V2DFmode:
    5558         1052 :       if (!register_operand (operands[1], E_V2DFmode)
    5559         1052 :           || !nonimmediate_operand (operands[2], E_V2DFmode))
    5560            3 :         return -1;
    5561              :       return 2;
    5562              : 
    5563              :     default:
    5564              :       return -1;
    5565              :     }
    5566              : }
    5567              : 
    5568              : int
    5569       855269 : pattern1531 (rtx x1, machine_mode i1, machine_mode i2)
    5570              : {
    5571       855269 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5572       855269 :   rtx x2;
    5573       855269 :   int res ATTRIBUTE_UNUSED;
    5574       855269 :   if (!register_operand (operands[0], i1)
    5575       855269 :       || GET_MODE (x1) != i1)
    5576              :     return -1;
    5577       798922 :   x2 = XEXP (x1, 0);
    5578       798922 :   if (GET_MODE (x2) != i2
    5579       798268 :       || !register_operand (operands[1], i1)
    5580       707020 :       || !vector_operand (operands[2], i1)
    5581      1472360 :       || pattern1530 () != 0)
    5582       374437 :     return -1;
    5583              :   return 0;
    5584              : }
    5585              : 
    5586              : int
    5587           68 : pattern1539 (rtx x1)
    5588              : {
    5589           68 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5590           68 :   rtx x2, x3, x4, x5, x6;
    5591           68 :   int res ATTRIBUTE_UNUSED;
    5592           68 :   if (!register_operand (operands[0], E_QImode)
    5593           68 :       || GET_MODE (x1) != E_QImode)
    5594              :     return -1;
    5595           68 :   x2 = XEXP (x1, 0);
    5596           68 :   if (GET_MODE (x2) != E_QImode)
    5597              :     return -1;
    5598           68 :   x3 = XEXP (x2, 0);
    5599           68 :   x4 = XEXP (x3, 0);
    5600           68 :   x5 = XEXP (x4, 0);
    5601           68 :   operands[1] = x5;
    5602           68 :   x6 = XEXP (x4, 1);
    5603           68 :   operands[2] = x6;
    5604           68 :   if (!register_operand (operands[2], E_QImode))
    5605              :     return -1;
    5606           56 :   switch (GET_MODE (x4))
    5607              :     {
    5608           31 :     case E_SImode:
    5609           31 :       if (!register_operand (operands[1], E_SImode))
    5610              :         return -1;
    5611              :       return 0;
    5612              : 
    5613           25 :     case E_DImode:
    5614           25 :       if (!register_operand (operands[1], E_DImode))
    5615              :         return -1;
    5616              :       return 1;
    5617              : 
    5618              :     default:
    5619              :       return -1;
    5620              :     }
    5621              : }
    5622              : 
    5623              : int
    5624          165 : pattern1552 (rtx x1, machine_mode i1)
    5625              : {
    5626          165 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5627          165 :   rtx x2, x3;
    5628          165 :   int res ATTRIBUTE_UNUSED;
    5629          165 :   if (!register_operand (operands[0], i1)
    5630          165 :       || GET_MODE (x1) != i1)
    5631              :     return -1;
    5632          151 :   x2 = XEXP (x1, 0);
    5633          151 :   if (GET_MODE (x2) != i1)
    5634              :     return -1;
    5635          151 :   x3 = XEXP (x2, 0);
    5636          151 :   if (GET_MODE (x3) != i1
    5637          151 :       || !nonimmediate_operand (operands[1], i1)
    5638          151 :       || !nonimmediate_operand (operands[2], i1)
    5639          151 :       || !nonimmediate_operand (operands[3], i1)
    5640          302 :       || !const0_operand (operands[4], i1))
    5641            0 :     return -1;
    5642              :   return 0;
    5643              : }
    5644              : 
    5645              : int
    5646          973 : pattern1561 (rtx x1, machine_mode i1, machine_mode i2)
    5647              : {
    5648          973 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5649          973 :   rtx x2, x3;
    5650          973 :   int res ATTRIBUTE_UNUSED;
    5651          973 :   if (!register_operand (operands[0], i1)
    5652          973 :       || GET_MODE (x1) != i1)
    5653              :     return -1;
    5654          915 :   x2 = XVECEXP (x1, 0, 0);
    5655          915 :   if (GET_MODE (x2) != i1)
    5656              :     return -1;
    5657          915 :   x3 = XEXP (x2, 0);
    5658          915 :   if (GET_MODE (x3) != i1
    5659          915 :       || !register_operand (operands[1], i1)
    5660          907 :       || !nonimm_or_0_operand (operands[3], i1)
    5661         1810 :       || !register_operand (operands[4], i2))
    5662           53 :     return -1;
    5663              :   return 0;
    5664              : }
    5665              : 
    5666              : int
    5667         6895 : pattern1569 (rtx x1)
    5668              : {
    5669         6895 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5670         6895 :   rtx x2, x3;
    5671         6895 :   int res ATTRIBUTE_UNUSED;
    5672         6895 :   if (!register_operand (operands[0], E_V4SFmode)
    5673         6895 :       || GET_MODE (x1) != E_V4SFmode)
    5674              :     return -1;
    5675         3758 :   x2 = XEXP (x1, 0);
    5676         3758 :   if (GET_MODE (x2) != E_V8SFmode
    5677         3758 :       || !vector_operand (operands[1], E_V4SFmode))
    5678           84 :     return -1;
    5679         3674 :   x3 = XEXP (x2, 1);
    5680         3674 :   if (!rtx_equal_p (x3, operands[1]))
    5681              :     return -1;
    5682              :   return 0;
    5683              : }
    5684              : 
    5685              : int
    5686        25373 : pattern1579 (rtx x1)
    5687              : {
    5688        25373 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5689        25373 :   int res ATTRIBUTE_UNUSED;
    5690        25373 :   switch (GET_MODE (operands[0]))
    5691              :     {
    5692        21067 :     case E_SImode:
    5693        21067 :       if (!register_operand (operands[0], E_SImode)
    5694        21067 :           || GET_MODE (x1) != E_SImode)
    5695              :         return -1;
    5696              :       return 0;
    5697              : 
    5698         4306 :     case E_DImode:
    5699         4306 :       if (!register_operand (operands[0], E_DImode)
    5700         4306 :           || GET_MODE (x1) != E_DImode)
    5701              :         return -1;
    5702              :       return 1;
    5703              : 
    5704              :     default:
    5705              :       return -1;
    5706              :     }
    5707              : }
    5708              : 
    5709              : int
    5710          704 : pattern1587 (rtx x1, machine_mode i1)
    5711              : {
    5712          704 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5713          704 :   rtx x2;
    5714          704 :   int res ATTRIBUTE_UNUSED;
    5715          704 :   if (!register_operand (operands[0], i1)
    5716          704 :       || GET_MODE (x1) != i1
    5717         1408 :       || !register_operand (operands[2], i1))
    5718            0 :     return -1;
    5719          704 :   x2 = XEXP (x1, 1);
    5720          704 :   if (GET_MODE (x2) != i1
    5721          704 :       || !nonimmediate_operand (operands[3], i1))
    5722          495 :     return -1;
    5723              :   return 0;
    5724              : }
    5725              : 
    5726              : int
    5727         1852 : pattern1591 (rtx x1, machine_mode i1, machine_mode i2)
    5728              : {
    5729         1852 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5730         1852 :   rtx x2;
    5731         1852 :   int res ATTRIBUTE_UNUSED;
    5732         1852 :   if (!register_operand (operands[1], i2)
    5733         1852 :       || GET_MODE (x1) != i1)
    5734              :     return -1;
    5735         1852 :   x2 = XEXP (x1, 0);
    5736         1852 :   if (GET_MODE (x2) != i1
    5737         1852 :       || !x86_64_dwzext_immediate_operand (operands[2], i1))
    5738         1552 :     return -1;
    5739              :   return 0;
    5740              : }
    5741              : 
    5742              : int
    5743         1015 : pattern1599 (rtx x1, machine_mode i1, machine_mode i2)
    5744              : {
    5745         1015 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5746         1015 :   rtx x2, x3, x4;
    5747         1015 :   int res ATTRIBUTE_UNUSED;
    5748         1015 :   if (!register_operand (operands[0], i1)
    5749         1015 :       || GET_MODE (x1) != i1)
    5750              :     return -1;
    5751          980 :   x2 = XVECEXP (x1, 0, 0);
    5752          980 :   if (GET_MODE (x2) != i1)
    5753              :     return -1;
    5754          980 :   x3 = XEXP (x2, 0);
    5755          980 :   if (GET_MODE (x3) != i1
    5756          980 :       || !nonimmediate_operand (operands[1], i1)
    5757         1960 :       || !register_operand (operands[2], i1))
    5758           14 :     return -1;
    5759          966 :   x4 = XVECEXP (x3, 0, 2);
    5760          966 :   if (GET_MODE (x4) != i1
    5761          966 :       || !register_operand (operands[4], i2))
    5762           10 :     return -1;
    5763              :   return 0;
    5764              : }
    5765              : 
    5766              : int
    5767         1223 : pattern1609 (rtx x1, machine_mode i1, machine_mode i2)
    5768              : {
    5769         1223 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5770         1223 :   rtx x2, x3, x4;
    5771         1223 :   int res ATTRIBUTE_UNUSED;
    5772         1223 :   if (!register_operand (operands[0], i2)
    5773         1223 :       || GET_MODE (x1) != i2)
    5774              :     return -1;
    5775         1200 :   x2 = XVECEXP (x1, 0, 0);
    5776         1200 :   if (GET_MODE (x2) != i2)
    5777              :     return -1;
    5778         1200 :   x3 = XEXP (x2, 0);
    5779         1200 :   if (GET_MODE (x3) != i2)
    5780              :     return -1;
    5781         1200 :   x4 = XEXP (x3, 0);
    5782         1200 :   if (GET_MODE (x4) != i2
    5783         1200 :       || !register_operand (operands[2], i2)
    5784         2390 :       || !register_operand (operands[4], i1))
    5785           10 :     return -1;
    5786              :   return 0;
    5787              : }
    5788              : 
    5789              : int
    5790          156 : pattern1617 (machine_mode i1)
    5791              : {
    5792          156 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5793          156 :   int res ATTRIBUTE_UNUSED;
    5794          156 :   if (!vsib_address_operand (operands[0], i1))
    5795              :     return -1;
    5796          122 :   switch (GET_MODE (operands[2]))
    5797              :     {
    5798           74 :     case E_V4SImode:
    5799           74 :       if (!register_operand (operands[2], E_V4SImode))
    5800              :         return -1;
    5801              :       return 0;
    5802              : 
    5803           48 :     case E_V4DImode:
    5804           48 :       if (!register_operand (operands[2], E_V4DImode))
    5805              :         return -1;
    5806              :       return 1;
    5807              : 
    5808              :     default:
    5809              :       return -1;
    5810              :     }
    5811              : }
    5812              : 
    5813              : int
    5814           29 : pattern1625 (machine_mode i1)
    5815              : {
    5816           29 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5817           29 :   int res ATTRIBUTE_UNUSED;
    5818           29 :   if (!vsib_address_operand (operands[3], i1))
    5819              :     return -1;
    5820           21 :   switch (GET_MODE (operands[2]))
    5821              :     {
    5822            5 :     case E_V8SImode:
    5823            5 :       if (!register_operand (operands[2], E_V8SImode))
    5824              :         return -1;
    5825              :       return 0;
    5826              : 
    5827           16 :     case E_V4DImode:
    5828           16 :       if (!register_operand (operands[2], E_V4DImode))
    5829              :         return -1;
    5830              :       return 1;
    5831              : 
    5832              :     default:
    5833              :       return -1;
    5834              :     }
    5835              : }
    5836              : 
    5837              : int
    5838         1494 : pattern1632 (rtx x1, machine_mode i1)
    5839              : {
    5840         1494 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5841         1494 :   int res ATTRIBUTE_UNUSED;
    5842         1494 :   if (!register_operand (operands[0], i1)
    5843         1481 :       || GET_MODE (x1) != i1
    5844         1481 :       || !register_operand (operands[1], i1)
    5845         1463 :       || !const_0_to_7_operand (operands[2], E_VOIDmode)
    5846         1463 :       || !const_0_to_7_operand (operands[3], E_VOIDmode)
    5847         1463 :       || !const_0_to_7_operand (operands[4], E_VOIDmode)
    5848         1463 :       || !const_0_to_7_operand (operands[5], E_VOIDmode)
    5849         1463 :       || !const_0_to_7_operand (operands[6], E_VOIDmode)
    5850         1463 :       || !const_0_to_7_operand (operands[7], E_VOIDmode)
    5851         1463 :       || !const_0_to_7_operand (operands[8], E_VOIDmode)
    5852         2957 :       || !const_0_to_7_operand (operands[9], E_VOIDmode))
    5853           31 :     return -1;
    5854              :   return 0;
    5855              : }
    5856              : 
    5857              : int
    5858         1550 : pattern1647 (rtx x1, machine_mode i1)
    5859              : {
    5860         1550 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5861         1550 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5862         1550 :   rtx x10, x11, x12, x13, x14, x15, x16;
    5863         1550 :   int res ATTRIBUTE_UNUSED;
    5864         1550 :   x2 = XVECEXP (x1, 0, 0);
    5865         1550 :   x3 = XEXP (x2, 1);
    5866         1550 :   if (GET_MODE (x3) != E_SImode)
    5867              :     return -1;
    5868          596 :   x4 = XVECEXP (x1, 0, 1);
    5869          596 :   if (GET_CODE (x4) != CLOBBER)
    5870              :     return -1;
    5871          596 :   x5 = XEXP (x4, 0);
    5872          596 :   if (GET_CODE (x5) != REG
    5873          596 :       || REGNO (x5) != 17
    5874         1192 :       || GET_MODE (x5) != E_CCmode)
    5875              :     return -1;
    5876          596 :   x6 = XEXP (x2, 0);
    5877          596 :   operands[4] = x6;
    5878          596 :   if (!register_operand (operands[4], E_SImode))
    5879              :     return -1;
    5880          596 :   x7 = XEXP (x3, 0);
    5881          596 :   operands[3] = x7;
    5882          596 :   if (!register_operand (operands[3], E_SImode))
    5883              :     return -1;
    5884          596 :   x8 = XEXP (x3, 1);
    5885          596 :   operands[2] = x8;
    5886          596 :   if (!nonmemory_operand (operands[2], E_SImode))
    5887              :     return -1;
    5888          589 :   x9 = PATTERN (peep2_next_insn (2));
    5889          589 :   x10 = XEXP (x9, 1);
    5890          589 :   operands[5] = x10;
    5891          589 :   if (!register_operand (operands[5], i1))
    5892              :     return -1;
    5893           99 :   x11 = XEXP (x9, 0);
    5894           99 :   if (!rtx_equal_p (x11, operands[1]))
    5895              :     return -1;
    5896           12 :   x12 = PATTERN (peep2_next_insn (3));
    5897           12 :   if (GET_CODE (x12) != SET)
    5898              :     return -1;
    5899           12 :   x13 = XEXP (x12, 1);
    5900           12 :   if (GET_CODE (x13) != COMPARE
    5901            4 :       || GET_MODE (x13) != E_CCZmode)
    5902              :     return -1;
    5903            4 :   x14 = XEXP (x12, 0);
    5904            4 :   if (GET_CODE (x14) != REG
    5905            4 :       || REGNO (x14) != 17
    5906            8 :       || GET_MODE (x14) != E_CCZmode)
    5907              :     return -1;
    5908            4 :   x15 = XEXP (x13, 0);
    5909            4 :   operands[6] = x15;
    5910            4 :   if (!register_operand (operands[6], i1))
    5911              :     return -1;
    5912            4 :   x16 = XEXP (x13, 1);
    5913            4 :   operands[7] = x16;
    5914            4 :   if (!nonmemory_operand (operands[7], i1))
    5915              :     return -1;
    5916              :   return 0;
    5917              : }
    5918              : 
    5919              : int
    5920          141 : pattern1670 (machine_mode i1)
    5921              : {
    5922          141 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5923          141 :   int res ATTRIBUTE_UNUSED;
    5924          141 :   if (!vsib_address_operand (operands[4], i1))
    5925              :     return -1;
    5926          141 :   switch (GET_MODE (operands[3]))
    5927              :     {
    5928           93 :     case E_V8SImode:
    5929           93 :       if (!register_operand (operands[3], E_V8SImode))
    5930              :         return -1;
    5931              :       return 0;
    5932              : 
    5933           48 :     case E_V8DImode:
    5934           48 :       if (!register_operand (operands[3], E_V8DImode))
    5935              :         return -1;
    5936              :       return 1;
    5937              : 
    5938              :     default:
    5939              :       return -1;
    5940              :     }
    5941              : }
    5942              : 
    5943              : int
    5944          898 : pattern1679 (rtx x1, machine_mode i1)
    5945              : {
    5946          898 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5947          898 :   rtx x2, x3, x4, x5;
    5948          898 :   int res ATTRIBUTE_UNUSED;
    5949          898 :   if (!register_operand (operands[0], i1))
    5950              :     return -1;
    5951          898 :   x2 = XVECEXP (x1, 0, 0);
    5952          898 :   x3 = XEXP (x2, 1);
    5953          898 :   if (GET_MODE (x3) != i1)
    5954              :     return -1;
    5955          898 :   x4 = XVECEXP (x1, 0, 1);
    5956          898 :   if (GET_MODE (x4) != i1)
    5957              :     return -1;
    5958          898 :   x5 = XVECEXP (x4, 0, 0);
    5959          898 :   if (GET_MODE (x5) != i1
    5960          898 :       || !register_operand (operands[3], i1))
    5961            0 :     return -1;
    5962              :   return 0;
    5963              : }
    5964              : 
    5965              : int
    5966         1279 : pattern1689 (machine_mode i1)
    5967              : {
    5968         1279 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5969         1279 :   int res ATTRIBUTE_UNUSED;
    5970         1279 :   if (!register_operand (operands[1], i1)
    5971          477 :       || !const_0_to_15_operand (operands[2], E_VOIDmode)
    5972          477 :       || !const_0_to_15_operand (operands[3], E_VOIDmode)
    5973          477 :       || !const_0_to_15_operand (operands[4], E_VOIDmode)
    5974         1756 :       || !const_0_to_15_operand (operands[5], E_VOIDmode))
    5975          802 :     return -1;
    5976              :   return 0;
    5977              : }
    5978              : 
    5979              : int
    5980            2 : pattern1698 (rtx x1, machine_mode i1)
    5981              : {
    5982            2 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5983            2 :   rtx x2, x3, x4;
    5984            2 :   int res ATTRIBUTE_UNUSED;
    5985            2 :   if (!register_operand (operands[0], i1)
    5986            2 :       || GET_MODE (x1) != i1)
    5987              :     return -1;
    5988            2 :   x2 = XEXP (x1, 0);
    5989            2 :   if (GET_MODE (x2) != i1
    5990            2 :       || !nonimmediate_operand (operands[1], i1))
    5991            0 :     return -1;
    5992            2 :   x3 = XEXP (x1, 1);
    5993            2 :   if (GET_MODE (x3) != i1)
    5994              :     return -1;
    5995            2 :   x4 = XEXP (x3, 0);
    5996            2 :   if (GET_MODE (x4) != i1)
    5997              :     return -1;
    5998              :   return 0;
    5999              : }
    6000              : 
    6001              : int
    6002          509 : pattern1707 (rtx x1, machine_mode i1)
    6003              : {
    6004          509 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6005          509 :   int res ATTRIBUTE_UNUSED;
    6006          509 :   if (!register_operand (operands[1], i1))
    6007              :     return -1;
    6008          225 :   switch (GET_MODE (x1))
    6009              :     {
    6010            0 :     case E_HImode:
    6011            0 :       if (!register_operand (operands[2], E_HImode))
    6012              :         return -1;
    6013              :       return 0;
    6014              : 
    6015          205 :     case E_SImode:
    6016          205 :       if (!register_operand (operands[2], E_SImode))
    6017              :         return -1;
    6018              :       return 1;
    6019              : 
    6020           20 :     case E_DImode:
    6021           20 :       if (!register_operand (operands[2], E_DImode))
    6022              :         return -1;
    6023              :       return 2;
    6024              : 
    6025              :     default:
    6026              :       return -1;
    6027              :     }
    6028              : }
    6029              : 
    6030              : int
    6031           36 : pattern1716 (rtx x1, machine_mode i1)
    6032              : {
    6033           36 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6034           36 :   rtx x2, x3, x4, x5, x6, x7, x8;
    6035           36 :   int res ATTRIBUTE_UNUSED;
    6036           36 :   x2 = XEXP (x1, 0);
    6037           36 :   x3 = XEXP (x2, 0);
    6038           36 :   x4 = XEXP (x3, 0);
    6039           36 :   x5 = XEXP (x4, 0);
    6040           36 :   operands[1] = x5;
    6041           36 :   x6 = XEXP (x3, 2);
    6042           36 :   if (GET_MODE (x6) != i1
    6043           36 :       || !nonimmediate_operand (operands[3], i1))
    6044            0 :     return -1;
    6045           36 :   x7 = XEXP (x2, 1);
    6046           36 :   if (!rtx_equal_p (x7, operands[1]))
    6047              :     return -1;
    6048           12 :   x8 = XEXP (x1, 1);
    6049           12 :   if (!rtx_equal_p (x8, operands[1]))
    6050              :     return -1;
    6051              :   return 0;
    6052              : }
    6053              : 
    6054              : int
    6055          215 : pattern1722 (machine_mode i1)
    6056              : {
    6057          215 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6058          215 :   int res ATTRIBUTE_UNUSED;
    6059          215 :   if (!vsib_address_operand (operands[2], i1))
    6060              :     return -1;
    6061          165 :   switch (GET_MODE (operands[3]))
    6062              :     {
    6063           66 :     case E_V4SImode:
    6064           66 :       if (!register_operand (operands[3], E_V4SImode))
    6065              :         return -1;
    6066              :       return 0;
    6067              : 
    6068           99 :     case E_V2DImode:
    6069           99 :       if (!register_operand (operands[3], E_V2DImode))
    6070              :         return -1;
    6071              :       return 1;
    6072              : 
    6073              :     default:
    6074              :       return -1;
    6075              :     }
    6076              : }
    6077              : 
    6078              : int
    6079         1110 : pattern1729 (machine_mode i1)
    6080              : {
    6081         1110 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6082         1110 :   int res ATTRIBUTE_UNUSED;
    6083         1110 :   if (!vsib_address_operand (operands[0], i1))
    6084              :     return -1;
    6085         1068 :   switch (GET_MODE (operands[2]))
    6086              :     {
    6087          615 :     case E_V8SImode:
    6088          615 :       if (!register_operand (operands[2], E_V8SImode))
    6089              :         return -1;
    6090              :       return 0;
    6091              : 
    6092          453 :     case E_V8DImode:
    6093          453 :       if (!register_operand (operands[2], E_V8DImode))
    6094              :         return -1;
    6095              :       return 1;
    6096              : 
    6097              :     default:
    6098              :       return -1;
    6099              :     }
    6100              : }
    6101              : 
    6102              : int
    6103         1443 : pattern1739 (rtx x1, machine_mode i1, machine_mode i2)
    6104              : {
    6105         1443 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6106         1443 :   rtx x2, x3;
    6107         1443 :   int res ATTRIBUTE_UNUSED;
    6108         1443 :   if (!register_operand (operands[0], i2)
    6109         1415 :       || GET_MODE (x1) != i2
    6110         1415 :       || !register_operand (operands[6], E_QImode)
    6111          855 :       || !vsib_mem_operator (operands[5], i1)
    6112         2298 :       || !scratch_operand (operands[1], E_QImode))
    6113          588 :     return -1;
    6114          855 :   x2 = XVECEXP (x1, 0, 2);
    6115          855 :   x3 = XEXP (x2, 0);
    6116          855 :   switch (GET_MODE (x3))
    6117              :     {
    6118            0 :     case E_SImode:
    6119            0 :       return pattern1738 (
    6120            0 : E_SImode); /* [-1, 1] */
    6121              : 
    6122          855 :     case E_DImode:
    6123          855 :       res = pattern1738 (
    6124              : E_DImode);
    6125          855 :       if (res >= 0)
    6126          776 :         return res + 2; /* [2, 3] */
    6127              :       return -1;
    6128              : 
    6129              :     default:
    6130              :       return -1;
    6131              :     }
    6132              : }
    6133              : 
    6134              : int
    6135        13976 : pattern1750 (rtx x1, machine_mode i1)
    6136              : {
    6137        13976 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6138        13976 :   rtx x2, x3, x4, x5;
    6139        13976 :   int res ATTRIBUTE_UNUSED;
    6140        13976 :   if (!register_operand (operands[0], i1))
    6141              :     return -1;
    6142        13976 :   x2 = XVECEXP (x1, 0, 0);
    6143        13976 :   x3 = XEXP (x2, 1);
    6144        13976 :   if (GET_MODE (x3) != i1)
    6145              :     return -1;
    6146        13976 :   x4 = XVECEXP (x1, 0, 1);
    6147        13976 :   if (GET_MODE (x4) != i1)
    6148              :     return -1;
    6149        13976 :   x5 = XVECEXP (x4, 0, 1);
    6150        13976 :   if (GET_MODE (x5) != i1
    6151        13976 :       || !register_operand (operands[4], i1))
    6152            0 :     return -1;
    6153              :   return 0;
    6154              : }
    6155              : 
    6156              : int
    6157           81 : pattern1758 (rtx x1, machine_mode i1)
    6158              : {
    6159           81 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6160           81 :   rtx x2, x3, x4, x5, x6;
    6161           81 :   int res ATTRIBUTE_UNUSED;
    6162           81 :   if (!register_operand (operands[0], i1)
    6163           81 :       || GET_MODE (x1) != i1)
    6164              :     return -1;
    6165           78 :   x2 = XVECEXP (x1, 0, 0);
    6166           78 :   if (GET_MODE (x2) != i1)
    6167              :     return -1;
    6168           78 :   x3 = XEXP (x2, 0);
    6169           78 :   if (GET_MODE (x3) != i1)
    6170              :     return -1;
    6171           78 :   x4 = XEXP (x3, 0);
    6172           78 :   if (GET_MODE (x4) != i1)
    6173              :     return -1;
    6174           78 :   x5 = XEXP (x4, 0);
    6175           78 :   if (GET_MODE (x5) != i1
    6176           78 :       || !register_operand (operands[2], i1)
    6177          156 :       || !nonimmediate_operand (operands[1], i1))
    6178            0 :     return -1;
    6179           78 :   x6 = XEXP (x4, 2);
    6180           78 :   if (GET_MODE (x6) != i1
    6181           78 :       || !register_operand (operands[3], i1)
    6182          156 :       || !const0_operand (operands[4], i1))
    6183            0 :     return -1;
    6184              :   return 0;
    6185              : }
    6186              : 
    6187              : int
    6188          580 : pattern1767 (rtx x1, machine_mode i1, machine_mode i2)
    6189              : {
    6190          580 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6191          580 :   int res ATTRIBUTE_UNUSED;
    6192          580 :   if (!register_operand (operands[0], i2)
    6193          580 :       || GET_MODE (x1) != i2
    6194          580 :       || !register_operand (operands[7], E_QImode)
    6195          580 :       || !vsib_mem_operator (operands[6], i1)
    6196         1160 :       || !scratch_operand (operands[2], E_QImode))
    6197            0 :     return -1;
    6198              :   return 0;
    6199              : }
    6200              : 
    6201              : int
    6202           62 : pattern1774 (rtx x1, machine_mode i1)
    6203              : {
    6204           62 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6205           62 :   int res ATTRIBUTE_UNUSED;
    6206           62 :   if (!nonimmediate_operand (operands[1], i1)
    6207           62 :       || !ix86_carry_flag_operator (operands[2], i1)
    6208           62 :       || !nonimmediate_operand (operands[0], i1)
    6209          124 :       || GET_MODE (x1) != i1)
    6210            0 :     return -1;
    6211              :   return 0;
    6212              : }
    6213              : 
    6214              : int
    6215          792 : pattern1782 (rtx x1, machine_mode i1, machine_mode i2)
    6216              : {
    6217          792 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6218          792 :   rtx x2;
    6219          792 :   int res ATTRIBUTE_UNUSED;
    6220          792 :   if (!register_operand (operands[1], i1)
    6221          792 :       || GET_MODE (x1) != i2)
    6222              :     return -1;
    6223          792 :   x2 = XEXP (x1, 0);
    6224          792 :   if (GET_MODE (x2) != i2
    6225          792 :       || !x86_64_dwzext_immediate_operand (operands[2], i2)
    6226          864 :       || !scratch_operand (operands[0], i1))
    6227          720 :     return -1;
    6228              :   return 0;
    6229              : }
    6230              : 
    6231              : int
    6232          878 : pattern1789 (rtx x1, machine_mode i1, machine_mode i2)
    6233              : {
    6234          878 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6235          878 :   rtx x2, x3, x4, x5;
    6236          878 :   int res ATTRIBUTE_UNUSED;
    6237          878 :   if (!register_operand (operands[0], i1)
    6238          878 :       || GET_MODE (x1) != i1)
    6239              :     return -1;
    6240          864 :   x2 = XVECEXP (x1, 0, 0);
    6241          864 :   if (GET_MODE (x2) != i1)
    6242              :     return -1;
    6243          864 :   x3 = XEXP (x2, 0);
    6244          864 :   if (GET_MODE (x3) != i1)
    6245              :     return -1;
    6246          864 :   x4 = XEXP (x3, 0);
    6247          864 :   if (GET_MODE (x4) != i1)
    6248              :     return -1;
    6249          864 :   x5 = XEXP (x4, 0);
    6250          864 :   if (GET_MODE (x5) != i2
    6251          864 :       || !nonimm_or_0_operand (operands[3], i1)
    6252         1728 :       || !register_operand (operands[2], i1))
    6253           10 :     return -1;
    6254              :   return 0;
    6255              : }
    6256              : 
    6257              : int
    6258         1396 : pattern1798 (rtx x1, machine_mode i1, machine_mode i2)
    6259              : {
    6260         1396 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6261         1396 :   rtx x2, x3;
    6262         1396 :   int res ATTRIBUTE_UNUSED;
    6263         1396 :   if (!register_operand (operands[0], i1)
    6264         1381 :       || GET_MODE (x1) != i1
    6265         1381 :       || !vsib_mem_operator (operands[6], i2)
    6266         1381 :       || !register_operand (operands[4], i1)
    6267         2412 :       || !scratch_operand (operands[1], i1))
    6268          380 :     return -1;
    6269         1016 :   x2 = XVECEXP (x1, 0, 1);
    6270         1016 :   x3 = XEXP (x2, 0);
    6271         1016 :   switch (GET_MODE (x3))
    6272              :     {
    6273           52 :     case E_SImode:
    6274           52 :       return pattern1797 (
    6275           52 : E_SImode); /* [-1, 1] */
    6276              : 
    6277          964 :     case E_DImode:
    6278          964 :       res = pattern1797 (
    6279              : E_DImode);
    6280          964 :       if (res >= 0)
    6281          868 :         return res + 2; /* [2, 3] */
    6282              :       return -1;
    6283              : 
    6284              :     default:
    6285              :       return -1;
    6286              :     }
    6287              : }
    6288              : 
    6289              : int
    6290          298 : pattern1810 (rtx x1, machine_mode i1)
    6291              : {
    6292          298 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6293          298 :   int res ATTRIBUTE_UNUSED;
    6294          298 :   if (!register_operand (operands[3], i1))
    6295              :     return -1;
    6296          257 :   switch (GET_MODE (x1))
    6297              :     {
    6298            0 :     case E_SImode:
    6299            0 :       if (!vsib_address_operand (operands[4], E_SImode))
    6300              :         return -1;
    6301              :       return 0;
    6302              : 
    6303          257 :     case E_DImode:
    6304          257 :       if (!vsib_address_operand (operands[4], E_DImode))
    6305              :         return -1;
    6306              :       return 1;
    6307              : 
    6308              :     default:
    6309              :       return -1;
    6310              :     }
    6311              : }
    6312              : 
    6313              : int
    6314         1083 : pattern1816 (rtx x1, machine_mode i1, machine_mode i2)
    6315              : {
    6316         1083 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6317         1083 :   rtx x2, x3;
    6318         1083 :   int res ATTRIBUTE_UNUSED;
    6319         1083 :   if (!register_operand (operands[0], i1)
    6320         1075 :       || GET_MODE (x1) != i1
    6321         1075 :       || !register_operand (operands[2], i1)
    6322         1075 :       || !vsib_mem_operator (operands[7], i2)
    6323         1075 :       || !register_operand (operands[5], i1)
    6324         2103 :       || !scratch_operand (operands[1], i1))
    6325           63 :     return -1;
    6326         1020 :   x2 = XVECEXP (x1, 0, 1);
    6327         1020 :   x3 = XEXP (x2, 0);
    6328         1020 :   switch (GET_MODE (x3))
    6329              :     {
    6330            0 :     case E_SImode:
    6331            0 :       return pattern1815 (
    6332            0 : E_SImode); /* [-1, 1] */
    6333              : 
    6334         1020 :     case E_DImode:
    6335         1020 :       res = pattern1815 (
    6336              : E_DImode);
    6337         1020 :       if (res >= 0)
    6338          921 :         return res + 2; /* [2, 3] */
    6339              :       return -1;
    6340              : 
    6341              :     default:
    6342              :       return -1;
    6343              :     }
    6344              : }
    6345              : 
    6346              : int
    6347        15002 : pattern1828 (rtx x1, machine_mode i1, machine_mode i2)
    6348              : {
    6349        15002 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6350        15002 :   rtx x2, x3, x4, x5, x6;
    6351        15002 :   int res ATTRIBUTE_UNUSED;
    6352        15002 :   x2 = XVECEXP (x1, 0, 0);
    6353        15002 :   x3 = XEXP (x2, 1);
    6354        15002 :   x4 = XEXP (x3, 0);
    6355        15002 :   x5 = XEXP (x4, 0);
    6356        15002 :   if (GET_MODE (x5) != i2
    6357        15002 :       || !nonimmediate_operand (operands[1], i1))
    6358          136 :     return -1;
    6359        14866 :   x6 = XEXP (x4, 1);
    6360        14866 :   if (GET_MODE (x6) != i2
    6361        14866 :       || !nonimmediate_operand (operands[2], i1)
    6362        29696 :       || pattern1826 (x1, 
    6363              : i1, 
    6364              : i2) != 0)
    6365           36 :     return -1;
    6366              :   return 0;
    6367              : }
    6368              : 
    6369              : int
    6370          749 : pattern1838 (rtx x1, machine_mode i1)
    6371              : {
    6372          749 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6373          749 :   rtx x2, x3, x4, x5, x6, x7;
    6374          749 :   int res ATTRIBUTE_UNUSED;
    6375          749 :   x2 = XEXP (x1, 0);
    6376          749 :   x3 = XEXP (x2, 0);
    6377          749 :   x4 = XEXP (x3, 0);
    6378          749 :   x5 = XEXP (x4, 0);
    6379          749 :   operands[1] = x5;
    6380          749 :   if (!nonimmediate_operand (operands[1], i1)
    6381          749 :       || !register_operand (operands[3], i1))
    6382           10 :     return -1;
    6383          739 :   x6 = XEXP (x2, 1);
    6384          739 :   if (!rtx_equal_p (x6, operands[1]))
    6385              :     return -1;
    6386          326 :   x7 = XEXP (x1, 1);
    6387          326 :   if (!rtx_equal_p (x7, operands[1]))
    6388              :     return -1;
    6389              :   return 0;
    6390              : }
    6391              : 
    6392              : int
    6393           96 : pattern1845 (rtx x1, rtx_code i1)
    6394              : {
    6395           96 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6396           96 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6397           96 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    6398           96 :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
    6399           96 :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
    6400           96 :   rtx x34, x35, x36, x37, x38, x39, x40, x41;
    6401           96 :   rtx x42, x43, x44, x45, x46, x47, x48, x49;
    6402           96 :   rtx x50, x51, x52, x53, x54, x55;
    6403           96 :   int res ATTRIBUTE_UNUSED;
    6404           96 :   x2 = XEXP (x1, 0);
    6405           96 :   x3 = XEXP (x2, 0);
    6406           96 :   x4 = XEXP (x3, 0);
    6407           96 :   x5 = XEXP (x4, 0);
    6408           96 :   if (GET_CODE (x5) != VEC_SELECT
    6409           96 :       || GET_MODE (x5) != E_V2QImode)
    6410              :     return -1;
    6411           96 :   x6 = XEXP (x5, 1);
    6412           96 :   if (GET_CODE (x6) != PARALLEL
    6413           96 :       || XVECLEN (x6, 0) != 2)
    6414              :     return -1;
    6415           96 :   x7 = XVECEXP (x6, 0, 0);
    6416           96 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6417              :     return -1;
    6418           96 :   x8 = XVECEXP (x6, 0, 1);
    6419           96 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
    6420              :     return -1;
    6421           96 :   x9 = XEXP (x3, 1);
    6422           96 :   if (GET_CODE (x9) != i1)
    6423              :     return -1;
    6424           96 :   x10 = XEXP (x9, 0);
    6425           96 :   if (GET_CODE (x10) != VEC_SELECT
    6426           96 :       || GET_MODE (x10) != E_V2QImode)
    6427              :     return -1;
    6428           96 :   x11 = XEXP (x10, 1);
    6429           96 :   if (GET_CODE (x11) != PARALLEL
    6430           96 :       || XVECLEN (x11, 0) != 2)
    6431              :     return -1;
    6432           96 :   x12 = XVECEXP (x11, 0, 0);
    6433           96 :   if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    6434              :     return -1;
    6435           96 :   x13 = XVECEXP (x11, 0, 1);
    6436           96 :   if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 9])
    6437              :     return -1;
    6438           96 :   x14 = XEXP (x2, 1);
    6439           96 :   x15 = XEXP (x14, 0);
    6440           96 :   if (GET_CODE (x15) != i1)
    6441              :     return -1;
    6442           96 :   x16 = XEXP (x15, 0);
    6443           96 :   if (GET_CODE (x16) != VEC_SELECT
    6444           96 :       || GET_MODE (x16) != E_V2QImode)
    6445              :     return -1;
    6446           96 :   x17 = XEXP (x16, 1);
    6447           96 :   if (GET_CODE (x17) != PARALLEL
    6448           96 :       || XVECLEN (x17, 0) != 2)
    6449              :     return -1;
    6450           96 :   x18 = XVECEXP (x17, 0, 0);
    6451           96 :   if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    6452              :     return -1;
    6453           96 :   x19 = XVECEXP (x17, 0, 1);
    6454           96 :   if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 10])
    6455              :     return -1;
    6456           96 :   x20 = XEXP (x14, 1);
    6457           96 :   if (GET_CODE (x20) != i1)
    6458              :     return -1;
    6459           96 :   x21 = XEXP (x20, 0);
    6460           96 :   if (GET_CODE (x21) != VEC_SELECT
    6461           96 :       || GET_MODE (x21) != E_V2QImode)
    6462              :     return -1;
    6463           96 :   x22 = XEXP (x21, 1);
    6464           96 :   if (GET_CODE (x22) != PARALLEL
    6465           96 :       || XVECLEN (x22, 0) != 2)
    6466              :     return -1;
    6467           96 :   x23 = XVECEXP (x22, 0, 0);
    6468           96 :   if (x23 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    6469              :     return -1;
    6470           96 :   x24 = XVECEXP (x22, 0, 1);
    6471           96 :   if (x24 != const_int_rtx[MAX_SAVED_CONST_INT + 11])
    6472              :     return -1;
    6473           96 :   x25 = XEXP (x1, 1);
    6474           96 :   x26 = XEXP (x25, 0);
    6475           96 :   x27 = XEXP (x26, 0);
    6476           96 :   if (GET_CODE (x27) != i1)
    6477              :     return -1;
    6478           96 :   x28 = XEXP (x27, 0);
    6479           96 :   if (GET_CODE (x28) != VEC_SELECT
    6480           96 :       || GET_MODE (x28) != E_V2QImode)
    6481              :     return -1;
    6482           96 :   x29 = XEXP (x28, 1);
    6483           96 :   if (GET_CODE (x29) != PARALLEL
    6484           96 :       || XVECLEN (x29, 0) != 2)
    6485              :     return -1;
    6486           96 :   x30 = XVECEXP (x29, 0, 0);
    6487           96 :   if (x30 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
    6488              :     return -1;
    6489           96 :   x31 = XVECEXP (x29, 0, 1);
    6490           96 :   if (x31 != const_int_rtx[MAX_SAVED_CONST_INT + 12])
    6491              :     return -1;
    6492           96 :   x32 = XEXP (x26, 1);
    6493           96 :   if (GET_CODE (x32) != i1)
    6494              :     return -1;
    6495           96 :   x33 = XEXP (x32, 0);
    6496           96 :   if (GET_CODE (x33) != VEC_SELECT
    6497           96 :       || GET_MODE (x33) != E_V2QImode)
    6498              :     return -1;
    6499           96 :   x34 = XEXP (x33, 1);
    6500           96 :   if (GET_CODE (x34) != PARALLEL
    6501           96 :       || XVECLEN (x34, 0) != 2)
    6502              :     return -1;
    6503           96 :   x35 = XVECEXP (x34, 0, 0);
    6504           96 :   if (x35 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    6505              :     return -1;
    6506           96 :   x36 = XVECEXP (x34, 0, 1);
    6507           96 :   if (x36 != const_int_rtx[MAX_SAVED_CONST_INT + 13])
    6508              :     return -1;
    6509           96 :   x37 = XEXP (x25, 1);
    6510           96 :   x38 = XEXP (x37, 0);
    6511           96 :   if (GET_CODE (x38) != i1)
    6512              :     return -1;
    6513           96 :   x39 = XEXP (x38, 0);
    6514           96 :   if (GET_CODE (x39) != VEC_SELECT
    6515           96 :       || GET_MODE (x39) != E_V2QImode)
    6516              :     return -1;
    6517           96 :   x40 = XEXP (x39, 1);
    6518           96 :   if (GET_CODE (x40) != PARALLEL
    6519           96 :       || XVECLEN (x40, 0) != 2)
    6520              :     return -1;
    6521           96 :   x41 = XVECEXP (x40, 0, 0);
    6522           96 :   if (x41 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
    6523              :     return -1;
    6524           96 :   x42 = XVECEXP (x40, 0, 1);
    6525           96 :   if (x42 != const_int_rtx[MAX_SAVED_CONST_INT + 14])
    6526              :     return -1;
    6527           96 :   x43 = XEXP (x37, 1);
    6528           96 :   if (GET_CODE (x43) != i1)
    6529              :     return -1;
    6530           96 :   x44 = XEXP (x43, 0);
    6531           96 :   if (GET_CODE (x44) != VEC_SELECT
    6532           96 :       || GET_MODE (x44) != E_V2QImode)
    6533              :     return -1;
    6534           96 :   x45 = XEXP (x44, 1);
    6535           96 :   if (GET_CODE (x45) != PARALLEL
    6536           96 :       || XVECLEN (x45, 0) != 2)
    6537              :     return -1;
    6538           96 :   x46 = XVECEXP (x45, 0, 0);
    6539           96 :   if (x46 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
    6540              :     return -1;
    6541           96 :   x47 = XVECEXP (x45, 0, 1);
    6542           96 :   if (x47 != const_int_rtx[MAX_SAVED_CONST_INT + 15])
    6543              :     return -1;
    6544           96 :   x48 = XEXP (x5, 0);
    6545           96 :   operands[1] = x48;
    6546           96 :   if (!nonimmediate_operand (operands[1], E_V16QImode))
    6547              :     return -1;
    6548           96 :   x49 = XEXP (x10, 0);
    6549           96 :   if (!rtx_equal_p (x49, operands[1]))
    6550              :     return -1;
    6551           96 :   x50 = XEXP (x16, 0);
    6552           96 :   if (!rtx_equal_p (x50, operands[1]))
    6553              :     return -1;
    6554           96 :   x51 = XEXP (x21, 0);
    6555           96 :   if (!rtx_equal_p (x51, operands[1]))
    6556              :     return -1;
    6557           96 :   x52 = XEXP (x28, 0);
    6558           96 :   if (!rtx_equal_p (x52, operands[1]))
    6559              :     return -1;
    6560           96 :   x53 = XEXP (x33, 0);
    6561           96 :   if (!rtx_equal_p (x53, operands[1]))
    6562              :     return -1;
    6563           96 :   x54 = XEXP (x39, 0);
    6564           96 :   if (!rtx_equal_p (x54, operands[1]))
    6565              :     return -1;
    6566           96 :   x55 = XEXP (x44, 0);
    6567           96 :   if (!rtx_equal_p (x55, operands[1]))
    6568              :     return -1;
    6569              :   return 0;
    6570              : }
    6571              : 
    6572              : int
    6573         1108 : pattern1901 (rtx x1, machine_mode i1, machine_mode i2)
    6574              : {
    6575         1108 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6576         1108 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6577         1108 :   int res ATTRIBUTE_UNUSED;
    6578         1108 :   x2 = XVECEXP (x1, 0, 0);
    6579         1108 :   x3 = XEXP (x2, 1);
    6580         1108 :   x4 = XEXP (x3, 1);
    6581         1108 :   if (GET_MODE (x4) != i2)
    6582              :     return -1;
    6583         1108 :   x5 = XEXP (x4, 0);
    6584         1108 :   if (GET_MODE (x5) != i1)
    6585              :     return -1;
    6586         1108 :   x6 = XEXP (x5, 0);
    6587         1108 :   if (GET_MODE (x6) != i1
    6588         1108 :       || !ix86_carry_flag_operator (operands[5], i1)
    6589         2216 :       || !nonimmediate_operand (operands[0], i1))
    6590            0 :     return -1;
    6591         1108 :   x7 = XVECEXP (x1, 0, 1);
    6592         1108 :   x8 = XEXP (x7, 1);
    6593         1108 :   if (GET_MODE (x8) != i1)
    6594              :     return -1;
    6595         1108 :   x9 = XEXP (x8, 0);
    6596         1108 :   if (GET_MODE (x9) != i1)
    6597              :     return -1;
    6598              :   return 0;
    6599              : }
    6600              : 
    6601              : int
    6602          178 : pattern1909 (rtx x1, machine_mode i1, machine_mode i2)
    6603              : {
    6604          178 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6605          178 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6606          178 :   rtx x10, x11;
    6607          178 :   int res ATTRIBUTE_UNUSED;
    6608          178 :   x2 = XVECEXP (x1, 0, 0);
    6609          178 :   x3 = XEXP (x2, 1);
    6610          178 :   x4 = XEXP (x3, 0);
    6611          178 :   x5 = XEXP (x4, 0);
    6612          178 :   if (GET_MODE (x5) != i2)
    6613              :     return -1;
    6614          178 :   x6 = XEXP (x5, 0);
    6615          178 :   if (GET_MODE (x6) != i2
    6616          178 :       || !nonimmediate_operand (operands[1], i1)
    6617          178 :       || !ix86_carry_flag_operator (operands[4], i2)
    6618          356 :       || !const_int_operand (operands[6], i2))
    6619            0 :     return -1;
    6620          178 :   x7 = XEXP (x3, 1);
    6621          178 :   if (GET_MODE (x7) != i2)
    6622              :     return -1;
    6623          178 :   x8 = XEXP (x7, 0);
    6624          178 :   if (GET_MODE (x8) != i1)
    6625              :     return -1;
    6626          178 :   x9 = XEXP (x8, 0);
    6627          178 :   if (GET_MODE (x9) != i1
    6628          178 :       || !ix86_carry_flag_operator (operands[5], i1))
    6629            0 :     return -1;
    6630          178 :   x10 = XVECEXP (x1, 0, 1);
    6631          178 :   x11 = XEXP (x10, 1);
    6632          178 :   return pattern1904 (x11, 
    6633          178 : i1); /* [-1, 0] */
    6634              : }
    6635              : 
    6636              : int
    6637         5616 : pattern1919 (rtx x1)
    6638              : {
    6639         5616 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6640         5616 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6641         5616 :   int res ATTRIBUTE_UNUSED;
    6642         5616 :   x2 = XVECEXP (x1, 0, 24);
    6643         5616 :   if (XWINT (x2, 0) != 28L)
    6644              :     return -1;
    6645         5616 :   x3 = XVECEXP (x1, 0, 25);
    6646         5616 :   if (XWINT (x3, 0) != 60L)
    6647              :     return -1;
    6648         5616 :   x4 = XVECEXP (x1, 0, 26);
    6649         5616 :   if (XWINT (x4, 0) != 29L)
    6650              :     return -1;
    6651         5616 :   x5 = XVECEXP (x1, 0, 27);
    6652         5616 :   if (XWINT (x5, 0) != 61L)
    6653              :     return -1;
    6654         5616 :   x6 = XVECEXP (x1, 0, 28);
    6655         5616 :   if (XWINT (x6, 0) != 30L)
    6656              :     return -1;
    6657         5616 :   x7 = XVECEXP (x1, 0, 29);
    6658         5616 :   if (XWINT (x7, 0) != 62L)
    6659              :     return -1;
    6660         5616 :   x8 = XVECEXP (x1, 0, 30);
    6661         5616 :   if (XWINT (x8, 0) != 31L)
    6662              :     return -1;
    6663         5616 :   x9 = XVECEXP (x1, 0, 31);
    6664         5616 :   if (XWINT (x9, 0) != 63L)
    6665            0 :     return -1;
    6666              :   return 0;
    6667              : }
    6668              : 
    6669              :  int
    6670      3182781 : recog_7 (rtx x1 ATTRIBUTE_UNUSED,
    6671              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6672              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6673              : {
    6674      3182781 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6675      3182781 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6676      3182781 :   rtx x10, x11, x12;
    6677      3182781 :   int res ATTRIBUTE_UNUSED;
    6678      3182781 :   if (pattern59 (x1, 
    6679              : E_CCFPmode) != 0)
    6680              :     return -1;
    6681      3151595 :   x2 = XEXP (x1, 1);
    6682      3151595 :   x3 = XVECEXP (x2, 0, 0);
    6683      3151595 :   if (GET_MODE (x3) != E_CCFPmode)
    6684              :     return -1;
    6685      3151595 :   switch (GET_CODE (x3))
    6686              :     {
    6687      3134859 :     case COMPARE:
    6688      3134859 :       x4 = XEXP (x3, 0);
    6689      3134859 :       switch (GET_CODE (x4))
    6690              :         {
    6691      2789892 :         case REG:
    6692      2789892 :         case SUBREG:
    6693      2789892 :           operands[0] = x4;
    6694      2789892 :           x5 = XEXP (x3, 1);
    6695      2789892 :           operands[1] = x5;
    6696      2789892 :           switch (GET_MODE (operands[0]))
    6697              :             {
    6698       637135 :             case E_XFmode:
    6699       637135 :               if (!register_operand (operands[0], E_XFmode)
    6700       637135 :                   || !register_operand (operands[1], E_XFmode)
    6701      1162649 :                   || !
    6702              : #line 2034 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6703              : (TARGET_80387 && TARGET_CMOVE))
    6704              :                 return -1;
    6705              :               return 53; /* *cmpiuxf_i387 */
    6706              : 
    6707              :             case E_SFmode:
    6708              :               if (!register_operand (operands[0], E_SFmode)
    6709              :                   || !register_ssemem_operand (operands[1], E_SFmode)
    6710              :                   || !
    6711              : #line 2074 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6712              : ((SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)
    6713              :    || (TARGET_80387 && TARGET_CMOVE)))
    6714              :                 return -1;
    6715              :               return 61; /* *cmpiusf */
    6716              : 
    6717              :             case E_DFmode:
    6718              :               if (!register_operand (operands[0], E_DFmode)
    6719              :                   || !register_ssemem_operand (operands[1], E_DFmode)
    6720              :                   || !
    6721              : #line 2074 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6722              : ((SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)
    6723              :    || (TARGET_80387 && TARGET_CMOVE)))
    6724              :                 return -1;
    6725              :               return 63; /* *cmpiudf */
    6726              : 
    6727              :             case E_HFmode:
    6728              :               if (!register_operand (operands[0], E_HFmode)
    6729              :                   || !nonimmediate_operand (operands[1], E_HFmode)
    6730              :                   || !
    6731              : #line 2111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6732              : (TARGET_AVX512FP16))
    6733              :                 return -1;
    6734              :               return 65; /* *cmpiuhf */
    6735              : 
    6736              :             default:
    6737              :               return -1;
    6738              :             }
    6739              : 
    6740              :         case VEC_SELECT:
    6741              :           if (pattern610 (x3) != 0)
    6742              :             return -1;
    6743              :           x6 = XEXP (x4, 0);
    6744              :           operands[0] = x6;
    6745              :           x5 = XEXP (x3, 1);
    6746              :           x7 = XEXP (x5, 0);
    6747              :           operands[1] = x7;
    6748              :           switch (GET_MODE (x4))
    6749              :             {
    6750              :             case E_HFmode:
    6751              :               if (!register_operand (operands[0], E_V8HFmode)
    6752              :                   || GET_MODE (x5) != E_HFmode
    6753              :                   || !nonimmediate_operand (operands[1], E_V8HFmode)
    6754              :                   || !(
    6755              : #line 5223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6756              : (SSE_FLOAT_MODE_P (HFmode) || HFmode == E_HFmode) && 
    6757              : #line 1356 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6758              : (TARGET_AVX512FP16)))
    6759              :                 return -1;
    6760              :               return 3753; /* avx512fp16_ucomi */
    6761              : 
    6762              :             case E_SFmode:
    6763              :               if (!register_operand (operands[0], E_V4SFmode)
    6764              :                   || GET_MODE (x5) != E_SFmode
    6765              :                   || !nonimmediate_operand (operands[1], E_V4SFmode)
    6766              :                   || !
    6767              : #line 5223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6768              : (SSE_FLOAT_MODE_P (SFmode) || SFmode == E_HFmode))
    6769              :                 return -1;
    6770              :               return 3757; /* sse_ucomi */
    6771              : 
    6772              :             case E_DFmode:
    6773              :               if (!register_operand (operands[0], E_V2DFmode)
    6774              :                   || GET_MODE (x5) != E_DFmode
    6775              :                   || !nonimmediate_operand (operands[1], E_V2DFmode)
    6776              :                   || !
    6777              : #line 5223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6778              : (SSE_FLOAT_MODE_P (DFmode) || DFmode == E_HFmode))
    6779              :                 return -1;
    6780              :               return 3761; /* sse2_ucomi */
    6781              : 
    6782              :             default:
    6783              :               return -1;
    6784              :             }
    6785              : 
    6786              :         default:
    6787              :           return -1;
    6788              :         }
    6789              : 
    6790              :     case UNSPEC:
    6791              :       switch (XVECLEN (x3, 0))
    6792              :         {
    6793              :         case 1:
    6794              :           if (XINT (x3, 1) != 45)
    6795              :             return -1;
    6796              :           x8 = XVECEXP (x3, 0, 0);
    6797              :           if (GET_CODE (x8) != COMPARE
    6798              :               || GET_MODE (x8) != E_CCFPmode)
    6799              :             return -1;
    6800              :           x9 = XEXP (x8, 0);
    6801              :           operands[0] = x9;
    6802              :           x10 = XEXP (x8, 1);
    6803              :           operands[1] = x10;
    6804              :           switch (GET_MODE (operands[0]))
    6805              :             {
    6806              :             case E_SFmode:
    6807              :               if (!register_operand (operands[0], E_SFmode)
    6808              :                   || !nonimmediate_operand (operands[1], E_SFmode)
    6809              :                   || !
    6810              : #line 2050 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6811              : (TARGET_AVX10_2))
    6812              :                 return -1;
    6813              :               return 55; /* *cmpxusf */
    6814              : 
    6815              :             case E_DFmode:
    6816              :               if (!register_operand (operands[0], E_DFmode)
    6817              :                   || !nonimmediate_operand (operands[1], E_DFmode)
    6818              :                   || !
    6819              : #line 2050 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6820              : (TARGET_AVX10_2))
    6821              :                 return -1;
    6822              :               return 57; /* *cmpxudf */
    6823              : 
    6824              :             case E_HFmode:
    6825              :               if (!register_operand (operands[0], E_HFmode)
    6826              :                   || !nonimmediate_operand (operands[1], E_HFmode)
    6827              :                   || !
    6828              : #line 2063 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6829              : (TARGET_AVX10_2))
    6830              :                 return -1;
    6831              :               return 59; /* *cmpxuhf */
    6832              : 
    6833              :             default:
    6834              :               return -1;
    6835              :             }
    6836              : 
    6837              :         case 2:
    6838              :           if (XINT (x3, 1) != 62
    6839              :               || pattern855 (x3) != 0)
    6840              :             return -1;
    6841              :           x8 = XVECEXP (x3, 0, 0);
    6842              :           x9 = XEXP (x8, 0);
    6843              :           operands[0] = x9;
    6844              :           x11 = XVECEXP (x3, 0, 1);
    6845              :           x12 = XEXP (x11, 0);
    6846              :           operands[1] = x12;
    6847              :           switch (GET_MODE (x8))
    6848              :             {
    6849              :             case E_HFmode:
    6850              :               if (!register_operand (operands[0], E_V8HFmode)
    6851              :                   || GET_MODE (x11) != E_HFmode
    6852              :                   || !nonimmediate_operand (operands[1], E_V8HFmode)
    6853              :                   || !(
    6854              : #line 5208 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6855              : (TARGET_AVX10_2) && 
    6856              : #line 1356 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6857              : (TARGET_AVX512FP16)))
    6858              :                 return -1;
    6859              :               return 3741; /* avx10_2_ucomxhf */
    6860              : 
    6861              :             case E_SFmode:
    6862              :               if (!register_operand (operands[0], E_V4SFmode)
    6863              :                   || GET_MODE (x11) != E_SFmode
    6864              :                   || !nonimmediate_operand (operands[1], E_V4SFmode)
    6865              :                   || !
    6866              : #line 5208 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6867              : (TARGET_AVX10_2))
    6868              :                 return -1;
    6869              :               return 3745; /* avx10_2_ucomxsf */
    6870              : 
    6871              :             case E_DFmode:
    6872              :               if (!register_operand (operands[0], E_V2DFmode)
    6873              :                   || GET_MODE (x11) != E_DFmode
    6874              :                   || !nonimmediate_operand (operands[1], E_V2DFmode)
    6875              :                   || !
    6876              : #line 5208 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    6877              : (TARGET_AVX10_2))
    6878              :                 return -1;
    6879              :               return 3749; /* avx10_2_ucomxdf */
    6880              : 
    6881              :             default:
    6882              :               return -1;
    6883              :             }
    6884              : 
    6885              :         default:
    6886              :           return -1;
    6887              :         }
    6888              : 
    6889              :     default:
    6890              :       return -1;
    6891              :     }
    6892              : }
    6893              : 
    6894              :  int
    6895              : recog_17 (rtx x1 ATTRIBUTE_UNUSED,
    6896              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6897              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6898              : {
    6899              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6900              :   rtx x2, x3, x4;
    6901              :   int res ATTRIBUTE_UNUSED;
    6902              :   x2 = XEXP (x1, 0);
    6903              :   operands[0] = x2;
    6904              :   x3 = XEXP (x1, 1);
    6905              :   operands[1] = x3;
    6906              :   switch (GET_MODE (operands[0]))
    6907              :     {
    6908              :     case E_V1TImode:
    6909              :       if (push_operand (operands[0], E_V1TImode)
    6910              :           && register_operand (operands[1], E_V1TImode))
    6911              :         {
    6912              :           if ((
    6913              : #line 2180 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6914              : (TARGET_64BIT && TARGET_STV) && 
    6915              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6916              : (Pmode == SImode)))
    6917              :             return 69; /* *pushv1ti2 */
    6918              :           if ((
    6919              : #line 2180 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6920              : (TARGET_64BIT && TARGET_STV) && 
    6921              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6922              : (Pmode == DImode)))
    6923              :             return 70; /* *pushv1ti2 */
    6924              :         }
    6925              :       break;
    6926              : 
    6927              :     case E_DImode:
    6928              :       if (push_operand (operands[0], E_DImode)
    6929              :           && general_no_elim_operand (operands[1], E_DImode))
    6930              :         {
    6931              :           if (
    6932              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6933              : (!TARGET_64BIT))
    6934              :             return 71; /* *pushdi2 */
    6935              :           if (
    6936              : #line 2211 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6937              : (TARGET_64BIT))
    6938              :             return 73; /* *pushdi2_rex64 */
    6939              :         }
    6940              :       if (nonimmediate_operand (operands[0], E_DImode)
    6941              :           && pop_operand (operands[1], E_DImode)
    6942              :           && 
    6943              : #line 1404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6944              : (word_mode == DImode))
    6945              :         return 81; /* *popdi1 */
    6946              :       if (pnum_clobbers != NULL
    6947              :           && const0_operand (operands[1], E_DImode))
    6948              :         {
    6949              :           if (register_operand (operands[0], E_DImode)
    6950              :               && (
    6951              : #line 2429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6952              : (reload_completed) && 
    6953              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6954              : (TARGET_64BIT)))
    6955              :             {
    6956              :               *pnum_clobbers = 1;
    6957              :               return 89; /* *movdi_xor */
    6958              :             }
    6959              :           if (memory_operand (operands[0], E_DImode)
    6960              :               && (
    6961              : #line 2441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6962              : (reload_completed) && 
    6963              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6964              : (TARGET_64BIT)))
    6965              :             {
    6966              :               *pnum_clobbers = 1;
    6967              :               return 92; /* *movdi_and */
    6968              :             }
    6969              :         }
    6970              :       if (nonimmediate_operand (operands[0], E_DImode))
    6971              :         {
    6972              :           if (pnum_clobbers != NULL
    6973              :               && constm1_operand (operands[1], E_DImode)
    6974              :               && (
    6975              : #line 2456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6976              : (reload_completed) && 
    6977              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6978              : (TARGET_64BIT)))
    6979              :             {
    6980              :               *pnum_clobbers = 1;
    6981              :               return 95; /* *movdi_or */
    6982              :             }
    6983              :           if (general_operand (operands[1], E_DImode)
    6984              :               && 
    6985              : #line 2599 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6986              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    6987              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    6988              :             return 99; /* *movdi_internal */
    6989              :         }
    6990              :       break;
    6991              : 
    6992              :     case E_TImode:
    6993              :       if (push_operand (operands[0], E_TImode)
    6994              :           && general_no_elim_operand (operands[1], E_TImode)
    6995              :           && 
    6996              : #line 1197 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6997              : (TARGET_64BIT))
    6998              :         return 72; /* *pushti2 */
    6999              :       if (nonimmediate_operand (operands[0], E_TImode)
    7000              :           && general_operand (operands[1], E_TImode)
    7001              :           && 
    7002              : #line 2515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7003              : ((TARGET_64BIT
    7004              :     && !(MEM_P (operands[0]) && MEM_P (operands[1])))
    7005              :    || (TARGET_SSE
    7006              :        && nonimmediate_or_sse_const_operand (operands[1], TImode)
    7007              :        && (register_operand (operands[0], TImode)
    7008              :            || register_operand (operands[1], TImode)))))
    7009              :         return 98; /* *movti_internal */
    7010              :       break;
    7011              : 
    7012              :     case E_SImode:
    7013              :       res = recog_16 (x1, insn, pnum_clobbers);
    7014              :       if (res >= 0)
    7015              :         return res;
    7016              :       break;
    7017              : 
    7018              :     case E_QImode:
    7019              :       if (push_operand (operands[0], E_QImode)
    7020              :           && nonmemory_no_elim_operand (operands[1], E_QImode))
    7021              :         return 76; /* *pushqi2 */
    7022              :       if (nonimmediate_operand (operands[0], E_QImode)
    7023              :           && general_operand (operands[1], E_QImode)
    7024              :           && 
    7025              : #line 3161 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7026              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7027              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7028              :         return 102; /* *movqi_internal */
    7029              :       break;
    7030              : 
    7031              :     case E_HImode:
    7032              :       if (push_operand (operands[0], E_HImode)
    7033              :           && nonmemory_no_elim_operand (operands[1], E_HImode))
    7034              :         return 77; /* *pushhi2 */
    7035              :       if (pnum_clobbers != NULL
    7036              :           && memory_operand (operands[0], E_HImode)
    7037              :           && const0_operand (operands[1], E_HImode)
    7038              :           && 
    7039              : #line 2441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7040              : (reload_completed))
    7041              :         {
    7042              :           *pnum_clobbers = 1;
    7043              :           return 90; /* *movhi_and */
    7044              :         }
    7045              :       if (nonimmediate_operand (operands[0], E_HImode))
    7046              :         {
    7047              :           if (pnum_clobbers != NULL
    7048              :               && constm1_operand (operands[1], E_HImode)
    7049              :               && 
    7050              : #line 2456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7051              : (reload_completed))
    7052              :             {
    7053              :               *pnum_clobbers = 1;
    7054              :               return 93; /* *movhi_or */
    7055              :             }
    7056              :           if (general_operand (operands[1], E_HImode)
    7057              :               && 
    7058              : #line 2998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7059              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7060              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7061              :             return 101; /* *movhi_internal */
    7062              :         }
    7063              :       break;
    7064              : 
    7065              :     case E_TFmode:
    7066              :       if (push_operand (operands[0], E_TFmode)
    7067              :           && general_no_elim_operand (operands[1], E_TFmode)
    7068              :           && 
    7069              : #line 3776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7070              : (TARGET_64BIT || TARGET_SSE))
    7071              :         return 156; /* *pushtf */
    7072              :       if (nonimmediate_operand (operands[0], E_TFmode)
    7073              :           && general_operand (operands[1], E_TFmode)
    7074              :           && 
    7075              : #line 4045 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7076              : ((TARGET_64BIT || TARGET_SSE)
    7077              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))
    7078              :    && (lra_in_progress || reload_completed
    7079              :        || !CONST_DOUBLE_P (operands[1])
    7080              :        || (standard_sse_constant_p (operands[1], TFmode) == 1
    7081              :            && !memory_operand (operands[0], TFmode))
    7082              :        || (!TARGET_MEMORY_MISMATCH_STALL
    7083              :            && memory_operand (operands[0], TFmode)))))
    7084              :         return 171; /* *movtf_internal */
    7085              :       break;
    7086              : 
    7087              :     case E_XFmode:
    7088              :       if (push_operand (operands[0], E_XFmode)
    7089              :           && general_no_elim_operand (operands[1], E_XFmode))
    7090              :         return 157; /* *pushxf */
    7091              :       if (nonimmediate_operand (operands[0], E_XFmode)
    7092              :           && general_operand (operands[1], E_XFmode)
    7093              :           && 
    7094              : #line 4105 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7095              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7096              :    && (lra_in_progress || reload_completed
    7097              :        || !CONST_DOUBLE_P (operands[1])
    7098              :        || ((optimize_function_for_size_p (cfun)
    7099              :             || (ix86_cmodel == CM_LARGE || ix86_cmodel == CM_LARGE_PIC))
    7100              :            && standard_80387_constant_p (operands[1]) > 0
    7101              :            && !memory_operand (operands[0], XFmode))
    7102              :        || (!TARGET_MEMORY_MISMATCH_STALL
    7103              :            && memory_operand (operands[0], XFmode))
    7104              :        || !TARGET_HARD_XF_REGS)))
    7105              :         return 172; /* *movxf_internal */
    7106              :       break;
    7107              : 
    7108              :     case E_DFmode:
    7109              :       if (push_operand (operands[0], E_DFmode)
    7110              :           && general_no_elim_operand (operands[1], E_DFmode))
    7111              :         return 158; /* *pushdf */
    7112              :       if (nonimmediate_operand (operands[0], E_DFmode)
    7113              :           && general_operand (operands[1], E_DFmode)
    7114              :           && 
    7115              : #line 4177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7116              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7117              :    && (lra_in_progress || reload_completed
    7118              :        || !CONST_DOUBLE_P (operands[1])
    7119              :        || ((optimize_function_for_size_p (cfun)
    7120              :             || (ix86_cmodel == CM_LARGE || ix86_cmodel == CM_LARGE_PIC))
    7121              :            && IS_STACK_MODE (DFmode)
    7122              :            && standard_80387_constant_p (operands[1]) > 0
    7123              :            && !memory_operand (operands[0], DFmode))
    7124              :        || (TARGET_SSE2 && TARGET_SSE_MATH
    7125              :            && standard_sse_constant_p (operands[1], DFmode) == 1
    7126              :            && !memory_operand (operands[0], DFmode))
    7127              :        || ((TARGET_64BIT || !TARGET_MEMORY_MISMATCH_STALL)
    7128              :            && memory_operand (operands[0], DFmode))
    7129              :        || !TARGET_HARD_DF_REGS)))
    7130              :         return 173; /* *movdf_internal */
    7131              :       break;
    7132              : 
    7133              :     case E_HFmode:
    7134              :       if (push_operand (operands[0], E_HFmode))
    7135              :         {
    7136              :           if (nonmemory_no_elim_operand (operands[1], E_HFmode)
    7137              :               && 
    7138              : #line 3872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7139              : (TARGET_64BIT))
    7140              :             return 159; /* *pushhf_rex64 */
    7141              :           if (general_no_elim_operand (operands[1], E_HFmode)
    7142              :               && 
    7143              : #line 3885 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7144              : (!TARGET_64BIT))
    7145              :             return 161; /* *pushhf */
    7146              :         }
    7147              :       if (nonimmediate_operand (operands[0], E_HFmode)
    7148              :           && general_operand (operands[1], E_HFmode)
    7149              :           && 
    7150              : #line 4489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7151              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7152              :   && (lra_in_progress
    7153              :       || reload_completed
    7154              :       || !CONST_DOUBLE_P (operands[1])
    7155              :       || (TARGET_SSE2
    7156              :           && standard_sse_constant_p (operands[1], HFmode) == 1)
    7157              :       || memory_operand (operands[0], HFmode))))
    7158              :         return 175; /* *movhf_internal */
    7159              :       break;
    7160              : 
    7161              :     case E_BFmode:
    7162              :       if (push_operand (operands[0], E_BFmode))
    7163              :         {
    7164              :           if (nonmemory_no_elim_operand (operands[1], E_BFmode)
    7165              :               && 
    7166              : #line 3872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7167              : (TARGET_64BIT))
    7168              :             return 160; /* *pushbf_rex64 */
    7169              :           if (general_no_elim_operand (operands[1], E_BFmode)
    7170              :               && 
    7171              : #line 3885 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7172              : (!TARGET_64BIT))
    7173              :             return 162; /* *pushbf */
    7174              :         }
    7175              :       if (nonimmediate_operand (operands[0], E_BFmode)
    7176              :           && general_operand (operands[1], E_BFmode)
    7177              :           && 
    7178              : #line 4489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7179              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7180              :   && (lra_in_progress
    7181              :       || reload_completed
    7182              :       || !CONST_DOUBLE_P (operands[1])
    7183              :       || (TARGET_SSE2
    7184              :           && standard_sse_constant_p (operands[1], BFmode) == 1)
    7185              :       || memory_operand (operands[0], BFmode))))
    7186              :         return 176; /* *movbf_internal */
    7187              :       break;
    7188              : 
    7189              :     case E_SFmode:
    7190              :       if (push_operand (operands[0], E_SFmode))
    7191              :         {
    7192              :           if (nonmemory_no_elim_operand (operands[1], E_SFmode)
    7193              :               && 
    7194              : #line 3960 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7195              : (TARGET_64BIT))
    7196              :             return 169; /* *pushsf_rex64 */
    7197              :           if (general_no_elim_operand (operands[1], E_SFmode)
    7198              :               && 
    7199              : #line 3974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7200              : (!TARGET_64BIT))
    7201              :             return 170; /* *pushsf */
    7202              :         }
    7203              :       if (nonimmediate_operand (operands[0], E_SFmode)
    7204              :           && general_operand (operands[1], E_SFmode)
    7205              :           && 
    7206              : #line 4354 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7207              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7208              :    && (lra_in_progress || reload_completed
    7209              :        || !CONST_DOUBLE_P (operands[1])
    7210              :        || ((optimize_function_for_size_p (cfun)
    7211              :             || (ix86_cmodel == CM_LARGE || ix86_cmodel == CM_LARGE_PIC))
    7212              :            && IS_STACK_MODE (SFmode)
    7213              :            && standard_80387_constant_p (operands[1]) > 0)
    7214              :        || (TARGET_SSE && TARGET_SSE_MATH
    7215              :            && standard_sse_constant_p (operands[1], SFmode) == 1)
    7216              :        || memory_operand (operands[0], SFmode)
    7217              :        || !TARGET_HARD_SF_REGS)))
    7218              :         return 174; /* *movsf_internal */
    7219              :       break;
    7220              : 
    7221              :     case E_V8QImode:
    7222              :       if (nonimmediate_operand (operands[0], E_V8QImode)
    7223              :           && nonimm_or_0_operand (operands[1], E_V8QImode)
    7224              :           && 
    7225              : #line 191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7226              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7227              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))
    7228              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7229              :         return 2072; /* *movv8qi_internal */
    7230              :       if (memory_operand (operands[0], E_V8QImode)
    7231              :           && x86_64_const_vector_operand (operands[1], E_V8QImode)
    7232              :           && 
    7233              : #line 87 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7234              : (TARGET_64BIT))
    7235              :         return 2096; /* *movv8qi_imm */
    7236              :       break;
    7237              : 
    7238              :     case E_V4HImode:
    7239              :       if (nonimmediate_operand (operands[0], E_V4HImode)
    7240              :           && nonimm_or_0_operand (operands[1], E_V4HImode)
    7241              :           && 
    7242              : #line 191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7243              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7244              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))
    7245              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7246              :         return 2073; /* *movv4hi_internal */
    7247              :       if (memory_operand (operands[0], E_V4HImode)
    7248              :           && x86_64_const_vector_operand (operands[1], E_V4HImode)
    7249              :           && 
    7250              : #line 87 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7251              : (TARGET_64BIT))
    7252              :         return 2097; /* *movv4hi_imm */
    7253              :       break;
    7254              : 
    7255              :     case E_V2SImode:
    7256              :       if (nonimmediate_operand (operands[0], E_V2SImode)
    7257              :           && nonimm_or_0_operand (operands[1], E_V2SImode)
    7258              :           && 
    7259              : #line 191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7260              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7261              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))
    7262              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7263              :         return 2074; /* *movv2si_internal */
    7264              :       if (memory_operand (operands[0], E_V2SImode)
    7265              :           && x86_64_const_vector_operand (operands[1], E_V2SImode)
    7266              :           && 
    7267              : #line 89 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7268              : (TARGET_64BIT))
    7269              :         return 2100; /* *movv2si_imm */
    7270              :       break;
    7271              : 
    7272              :     case E_V1DImode:
    7273              :       if (nonimmediate_operand (operands[0], E_V1DImode)
    7274              :           && nonimm_or_0_operand (operands[1], E_V1DImode)
    7275              :           && 
    7276              : #line 191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7277              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7278              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))
    7279              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7280              :         return 2075; /* *movv1di_internal */
    7281              :       if (memory_operand (operands[0], E_V1DImode)
    7282              :           && x86_64_const_vector_operand (operands[1], E_V1DImode)
    7283              :           && 
    7284              : #line 90 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7285              : (TARGET_64BIT))
    7286              :         return 2102; /* *movv1di_imm */
    7287              :       break;
    7288              : 
    7289              :     case E_V2SFmode:
    7290              :       if (nonimmediate_operand (operands[0], E_V2SFmode)
    7291              :           && nonimm_or_0_operand (operands[1], E_V2SFmode)
    7292              :           && 
    7293              : #line 191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7294              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7295              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))
    7296              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7297              :         return 2076; /* *movv2sf_internal */
    7298              :       if (memory_operand (operands[0], E_V2SFmode)
    7299              :           && x86_64_const_vector_operand (operands[1], E_V2SFmode)
    7300              :           && 
    7301              : #line 89 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7302              : (TARGET_64BIT))
    7303              :         return 2101; /* *movv2sf_imm */
    7304              :       break;
    7305              : 
    7306              :     case E_V4HFmode:
    7307              :       if (nonimmediate_operand (operands[0], E_V4HFmode)
    7308              :           && nonimm_or_0_operand (operands[1], E_V4HFmode)
    7309              :           && 
    7310              : #line 191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7311              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7312              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))
    7313              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7314              :         return 2077; /* *movv4hf_internal */
    7315              :       if (memory_operand (operands[0], E_V4HFmode)
    7316              :           && x86_64_const_vector_operand (operands[1], E_V4HFmode)
    7317              :           && 
    7318              : #line 88 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7319              : (TARGET_64BIT))
    7320              :         return 2098; /* *movv4hf_imm */
    7321              :       break;
    7322              : 
    7323              :     case E_V4BFmode:
    7324              :       if (nonimmediate_operand (operands[0], E_V4BFmode)
    7325              :           && nonimm_or_0_operand (operands[1], E_V4BFmode)
    7326              :           && 
    7327              : #line 191 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7328              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    7329              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))
    7330              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7331              :         return 2078; /* *movv4bf_internal */
    7332              :       if (memory_operand (operands[0], E_V4BFmode)
    7333              :           && x86_64_const_vector_operand (operands[1], E_V4BFmode)
    7334              :           && 
    7335              : #line 88 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7336              : (TARGET_64BIT))
    7337              :         return 2099; /* *movv4bf_imm */
    7338              :       break;
    7339              : 
    7340              :     case E_V4QImode:
    7341              :       if (nonimmediate_operand (operands[0], E_V4QImode)
    7342              :           && nonimm_or_0_operand (operands[1], E_V4QImode)
    7343              :           && 
    7344              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7345              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7346              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7347              :         return 2079; /* *movv4qi_internal */
    7348              :       if (push_operand (operands[0], E_V4QImode)
    7349              :           && nonmemory_no_elim_operand (operands[1], E_V4QImode)
    7350              :           && 
    7351              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7352              : (TARGET_64BIT))
    7353              :         return 2084; /* *pushv4qi2_rex64 */
    7354              :       if (memory_operand (operands[0], E_V4QImode)
    7355              :           && x86_64_const_vector_operand (operands[1], E_V4QImode))
    7356              :         return 2091; /* *movv4qi_imm */
    7357              :       break;
    7358              : 
    7359              :     case E_V2HImode:
    7360              :       if (nonimmediate_operand (operands[0], E_V2HImode)
    7361              :           && nonimm_or_0_operand (operands[1], E_V2HImode)
    7362              :           && 
    7363              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7364              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7365              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7366              :         return 2080; /* *movv2hi_internal */
    7367              :       if (push_operand (operands[0], E_V2HImode)
    7368              :           && nonmemory_no_elim_operand (operands[1], E_V2HImode)
    7369              :           && 
    7370              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7371              : (TARGET_64BIT))
    7372              :         return 2085; /* *pushv2hi2_rex64 */
    7373              :       if (memory_operand (operands[0], E_V2HImode)
    7374              :           && x86_64_const_vector_operand (operands[1], E_V2HImode))
    7375              :         return 2092; /* *movv2hi_imm */
    7376              :       break;
    7377              : 
    7378              :     case E_V1SImode:
    7379              :       if (nonimmediate_operand (operands[0], E_V1SImode)
    7380              :           && nonimm_or_0_operand (operands[1], E_V1SImode)
    7381              :           && 
    7382              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7383              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7384              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7385              :         return 2081; /* *movv1si_internal */
    7386              :       if (push_operand (operands[0], E_V1SImode)
    7387              :           && nonmemory_no_elim_operand (operands[1], E_V1SImode)
    7388              :           && 
    7389              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7390              : (TARGET_64BIT))
    7391              :         return 2086; /* *pushv1si2_rex64 */
    7392              :       if (memory_operand (operands[0], E_V1SImode)
    7393              :           && x86_64_const_vector_operand (operands[1], E_V1SImode))
    7394              :         return 2093; /* *movv1si_imm */
    7395              :       break;
    7396              : 
    7397              :     case E_V2HFmode:
    7398              :       if (nonimmediate_operand (operands[0], E_V2HFmode)
    7399              :           && nonimm_or_0_operand (operands[1], E_V2HFmode)
    7400              :           && 
    7401              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7402              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7403              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7404              :         return 2082; /* *movv2hf_internal */
    7405              :       if (push_operand (operands[0], E_V2HFmode)
    7406              :           && nonmemory_no_elim_operand (operands[1], E_V2HFmode)
    7407              :           && 
    7408              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7409              : (TARGET_64BIT))
    7410              :         return 2087; /* *pushv2hf2_rex64 */
    7411              :       if (memory_operand (operands[0], E_V2HFmode)
    7412              :           && x86_64_const_vector_operand (operands[1], E_V2HFmode))
    7413              :         return 2094; /* *movv2hf_imm */
    7414              :       break;
    7415              : 
    7416              :     case E_V2BFmode:
    7417              :       if (nonimmediate_operand (operands[0], E_V2BFmode)
    7418              :           && nonimm_or_0_operand (operands[1], E_V2BFmode)
    7419              :           && 
    7420              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7421              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7422              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7423              :         return 2083; /* *movv2bf_internal */
    7424              :       if (push_operand (operands[0], E_V2BFmode)
    7425              :           && nonmemory_no_elim_operand (operands[1], E_V2BFmode)
    7426              :           && 
    7427              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7428              : (TARGET_64BIT))
    7429              :         return 2088; /* *pushv2bf2_rex64 */
    7430              :       if (memory_operand (operands[0], E_V2BFmode)
    7431              :           && x86_64_const_vector_operand (operands[1], E_V2BFmode))
    7432              :         return 2095; /* *movv2bf_imm */
    7433              :       break;
    7434              : 
    7435              :     case E_V2QImode:
    7436              :       if (nonimmediate_operand (operands[0], E_V2QImode)
    7437              :           && nonimm_or_0_operand (operands[1], E_V2QImode)
    7438              :           && 
    7439              : #line 458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    7440              : (!(MEM_P (operands[0]) && MEM_P (operands[1]))
    7441              :    && ix86_hardreg_mov_ok (operands[0], operands[1])))
    7442              :         return 2089; /* *movv2qi_internal */
    7443              :       if (memory_operand (operands[0], E_V2QImode)
    7444              :           && x86_64_const_vector_operand (operands[1], E_V2QImode))
    7445              :         return 2090; /* *movv2qi_imm */
    7446              :       if (push_operand (operands[0], E_V2QImode)
    7447              :           && nonmemory_no_elim_operand (operands[1], E_V2QImode))
    7448              :         return 2103; /* *pushv2qi2 */
    7449              :       break;
    7450              : 
    7451              :     case E_P2QImode:
    7452              :       if (nonimmediate_operand (operands[0], E_P2QImode)
    7453              :           && nonimmediate_operand (operands[1], E_P2QImode)
    7454              :           && 
    7455              : #line 31661 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7456              : (TARGET_AVX512VP2INTERSECT
    7457              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    7458              :         return 10403; /* *movp2qi_internal */
    7459              :       break;
    7460              : 
    7461              :     case E_P2HImode:
    7462              :       if (nonimmediate_operand (operands[0], E_P2HImode)
    7463              :           && nonimmediate_operand (operands[1], E_P2HImode)
    7464              :           && 
    7465              : #line 31661 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7466              : (TARGET_AVX512VP2INTERSECT
    7467              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
    7468              :         return 10404; /* *movp2hi_internal */
    7469              :       break;
    7470              : 
    7471              :     default:
    7472              :       break;
    7473              :     }
    7474              :   if (GET_CODE (x2) != MEM)
    7475              :     return -1;
    7476              :   x4 = XEXP (x2, 0);
    7477              :   operands[0] = x4;
    7478              :   if (!x86_64_movabs_operand (operands[0], E_DImode))
    7479              :     return -1;
    7480              :   operands[1] = x3;
    7481              :   switch (GET_MODE (x2))
    7482              :     {
    7483              :     case E_QImode:
    7484              :       if (!nonmemory_operand (operands[1], E_QImode)
    7485              :           || !
    7486              : #line 3312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7487              : (TARGET_LP64 && ix86_check_movabs (insn, 0)))
    7488              :         return -1;
    7489              :       return 103; /* *movabsqi_1 */
    7490              : 
    7491              :     case E_HImode:
    7492              :       if (!nonmemory_operand (operands[1], E_HImode)
    7493              :           || !
    7494              : #line 3312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7495              : (TARGET_LP64 && ix86_check_movabs (insn, 0)))
    7496              :         return -1;
    7497              :       return 104; /* *movabshi_1 */
    7498              : 
    7499              :     case E_SImode:
    7500              :       if (!nonmemory_operand (operands[1], E_SImode)
    7501              :           || !
    7502              : #line 3312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7503              : (TARGET_LP64 && ix86_check_movabs (insn, 0)))
    7504              :         return -1;
    7505              :       return 105; /* *movabssi_1 */
    7506              : 
    7507              :     case E_DImode:
    7508              :       if (!nonmemory_operand (operands[1], E_DImode)
    7509              :           || !
    7510              : #line 3312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7511              : (TARGET_LP64 && ix86_check_movabs (insn, 0)))
    7512              :         return -1;
    7513              :       return 106; /* *movabsdi_1 */
    7514              : 
    7515              :     default:
    7516              :       return -1;
    7517              :     }
    7518              : }
    7519              : 
    7520              :  int
    7521              : recog_34 (rtx x1 ATTRIBUTE_UNUSED,
    7522              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7523              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7524              : {
    7525              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7526              :   rtx x2, x3, x4;
    7527              :   int res ATTRIBUTE_UNUSED;
    7528              :   x2 = XEXP (x1, 0);
    7529              :   operands[0] = x2;
    7530              :   x3 = XEXP (x1, 1);
    7531              :   x4 = XEXP (x3, 0);
    7532              :   operands[1] = x4;
    7533              :   switch (GET_MODE (operands[0]))
    7534              :     {
    7535              :     case E_SImode:
    7536              :       if (GET_MODE (x3) != E_SImode)
    7537              :         return -1;
    7538              :       if (register_operand (operands[0], E_SImode))
    7539              :         {
    7540              :           switch (pattern262 ())
    7541              :             {
    7542              :             case 0:
    7543              :               if (
    7544              : #line 5778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7545              : (TARGET_AVX512FP16))
    7546              :                 return 216; /* fix_trunchfsi2 */
    7547              :               break;
    7548              : 
    7549              :             case 1:
    7550              :               if (
    7551              : #line 5954 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7552              : (SSE_FLOAT_MODE_P (SFmode)
    7553              :    && (!TARGET_FISTTP || TARGET_SSE_MATH)))
    7554              :                 return 229; /* fix_truncsfsi_sse */
    7555              :               break;
    7556              : 
    7557              :             case 2:
    7558              :               if (
    7559              : #line 5954 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7560              : (SSE_FLOAT_MODE_P (DFmode)
    7561              :    && (!TARGET_FISTTP || TARGET_SSE_MATH)))
    7562              :                 return 231; /* fix_truncdfsi_sse */
    7563              :               break;
    7564              : 
    7565              :             default:
    7566              :               break;
    7567              :             }
    7568              :         }
    7569              :       if (pnum_clobbers == NULL
    7570              :           || !nonimmediate_operand (operands[0], E_SImode)
    7571              :           || !register_operand (operands[1], E_VOIDmode))
    7572              :         return -1;
    7573              :       if (
    7574              : #line 5984 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7575              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
    7576              :    && TARGET_FISTTP
    7577              :    && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
    7578              :          && (TARGET_64BIT || SImode != DImode))
    7579              :         && TARGET_SSE_MATH)))
    7580              :         {
    7581              :           *pnum_clobbers = 1;
    7582              :           return 234; /* fix_truncsi_i387_fisttp */
    7583              :         }
    7584              :       if (!
    7585              : #line 6002 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7586              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
    7587              :    && !TARGET_FISTTP
    7588              :    && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
    7589              :          && (TARGET_64BIT || SImode != DImode))
    7590              :    && ix86_pre_reload_split ()))
    7591              :         return -1;
    7592              :       *pnum_clobbers = 1;
    7593              :       return 237; /* *fix_truncsi_i387_1 */
    7594              : 
    7595              :     case E_DImode:
    7596              :       if (GET_MODE (x3) != E_DImode)
    7597              :         return -1;
    7598              :       if (register_operand (operands[0], E_DImode))
    7599              :         {
    7600              :           switch (pattern262 ())
    7601              :             {
    7602              :             case 0:
    7603              :               if ((
    7604              : #line 5778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7605              : (TARGET_AVX512FP16) && 
    7606              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7607              : (TARGET_64BIT)))
    7608              :                 return 218; /* fix_trunchfdi2 */
    7609              :               break;
    7610              : 
    7611              :             case 1:
    7612              :               if ((
    7613              : #line 5954 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7614              : (SSE_FLOAT_MODE_P (SFmode)
    7615              :    && (!TARGET_FISTTP || TARGET_SSE_MATH)) && 
    7616              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7617              : (TARGET_64BIT)))
    7618              :                 return 230; /* fix_truncsfdi_sse */
    7619              :               break;
    7620              : 
    7621              :             case 2:
    7622              :               if ((
    7623              : #line 5954 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7624              : (SSE_FLOAT_MODE_P (DFmode)
    7625              :    && (!TARGET_FISTTP || TARGET_SSE_MATH)) && 
    7626              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7627              : (TARGET_64BIT)))
    7628              :                 return 232; /* fix_truncdfdi_sse */
    7629              :               break;
    7630              : 
    7631              :             default:
    7632              :               break;
    7633              :             }
    7634              :         }
    7635              :       if (pnum_clobbers == NULL
    7636              :           || !nonimmediate_operand (operands[0], E_DImode)
    7637              :           || !register_operand (operands[1], E_VOIDmode))
    7638              :         return -1;
    7639              :       if (
    7640              : #line 5984 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7641              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
    7642              :    && TARGET_FISTTP
    7643              :    && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
    7644              :          && (TARGET_64BIT || DImode != DImode))
    7645              :         && TARGET_SSE_MATH)))
    7646              :         {
    7647              :           *pnum_clobbers = 1;
    7648              :           return 235; /* fix_truncdi_i387_fisttp */
    7649              :         }
    7650              :       if (!
    7651              : #line 6002 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7652              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
    7653              :    && !TARGET_FISTTP
    7654              :    && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
    7655              :          && (TARGET_64BIT || DImode != DImode))
    7656              :    && ix86_pre_reload_split ()))
    7657              :         return -1;
    7658              :       *pnum_clobbers = 1;
    7659              :       return 238; /* *fix_truncdi_i387_1 */
    7660              : 
    7661              :     case E_HImode:
    7662              :       if (pattern261 (x3, pnum_clobbers, 
    7663              : E_VOIDmode, 
    7664              : E_HImode) != 0)
    7665              :         return -1;
    7666              :       if (
    7667              : #line 5984 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7668              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
    7669              :    && TARGET_FISTTP
    7670              :    && !((SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
    7671              :          && (TARGET_64BIT || HImode != DImode))
    7672              :         && TARGET_SSE_MATH)))
    7673              :         {
    7674              :           *pnum_clobbers = 1;
    7675              :           return 233; /* fix_trunchi_i387_fisttp */
    7676              :         }
    7677              :       if (!
    7678              : #line 6002 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7679              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
    7680              :    && !TARGET_FISTTP
    7681              :    && !(SSE_FLOAT_MODE_P (GET_MODE (operands[1]))
    7682              :          && (TARGET_64BIT || HImode != DImode))
    7683              :    && ix86_pre_reload_split ()))
    7684              :         return -1;
    7685              :       *pnum_clobbers = 1;
    7686              :       return 236; /* *fix_trunchi_i387_1 */
    7687              : 
    7688              :     case E_V2SImode:
    7689              :       if (!register_operand (operands[0], E_V2SImode)
    7690              :           || GET_MODE (x3) != E_V2SImode
    7691              :           || !vector_operand (operands[1], E_V2DFmode)
    7692              :           || !
    7693              : #line 9265 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7694              : (TARGET_SSE2))
    7695              :         return -1;
    7696              :       return 4937; /* sse2_cvttpd2pi */
    7697              : 
    7698              :     default:
    7699              :       return -1;
    7700              :     }
    7701              : }
    7702              : 
    7703              :  int
    7704              : recog_42 (rtx x1 ATTRIBUTE_UNUSED,
    7705              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7706              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7707              : {
    7708              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7709              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    7710              :   rtx x10, x11, x12, x13, x14, x15, x16;
    7711              :   int res ATTRIBUTE_UNUSED;
    7712              :   x2 = XEXP (x1, 1);
    7713              :   x3 = XEXP (x2, 0);
    7714              :   switch (GET_CODE (x3))
    7715              :     {
    7716              :     case REG:
    7717              :     case SUBREG:
    7718              :     case MEM:
    7719              :       operands[1] = x3;
    7720              :       res = recog_38 (x1, insn, pnum_clobbers);
    7721              :       if (res >= 0)
    7722              :         return res;
    7723              :       if (pnum_clobbers == NULL
    7724              :           || GET_CODE (x3) != SUBREG
    7725              :           || maybe_ne (SUBREG_BYTE (x3), 0))
    7726              :         return -1;
    7727              :       x4 = XEXP (x3, 0);
    7728              :       switch (GET_CODE (x4))
    7729              :         {
    7730              :         case ASHIFTRT:
    7731              :         case LSHIFTRT:
    7732              :         case SIGN_EXTRACT:
    7733              :         case ZERO_EXTRACT:
    7734              :           operands[3] = x4;
    7735              :           if (GET_MODE (x2) != E_QImode
    7736              :               || GET_MODE (x3) != E_QImode)
    7737              :             return -1;
    7738              :           x5 = XEXP (x4, 0);
    7739              :           operands[2] = x5;
    7740              :           switch (pattern1080 (x1))
    7741              :             {
    7742              :             case 0:
    7743              :               if (
    7744              : #line 13108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7745              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7746              :                 {
    7747              :                   *pnum_clobbers = 1;
    7748              :                   return 759; /* *andqi_exthi_1_slp */
    7749              :                 }
    7750              :               break;
    7751              : 
    7752              :             case 1:
    7753              :               if (
    7754              : #line 13108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7755              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7756              :                 {
    7757              :                   *pnum_clobbers = 1;
    7758              :                   return 762; /* *andqi_extsi_1_slp */
    7759              :                 }
    7760              :               break;
    7761              : 
    7762              :             case 2:
    7763              :               if ((
    7764              : #line 13108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7765              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
    7766              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7767              : (TARGET_64BIT)))
    7768              :                 {
    7769              :                   *pnum_clobbers = 1;
    7770              :                   return 765; /* *andqi_extdi_1_slp */
    7771              :                 }
    7772              :               break;
    7773              : 
    7774              :             case 3:
    7775              :               *pnum_clobbers = 1;
    7776              :               return 783; /* *andqi_exthi_0 */
    7777              : 
    7778              :             case 4:
    7779              :               *pnum_clobbers = 1;
    7780              :               return 786; /* *andqi_extsi_0 */
    7781              : 
    7782              :             case 5:
    7783              :               if (
    7784              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7785              : (TARGET_64BIT))
    7786              :                 {
    7787              :                   *pnum_clobbers = 1;
    7788              :                   return 789; /* *andqi_extdi_0 */
    7789              :                 }
    7790              :               break;
    7791              : 
    7792              :             default:
    7793              :               break;
    7794              :             }
    7795              :           x6 = XEXP (x2, 1);
    7796              :           if (GET_CODE (x6) != SUBREG)
    7797              :             return -1;
    7798              :           switch (pattern1083 (x1))
    7799              :             {
    7800              :             case 0:
    7801              :               if (!
    7802              : #line 13137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7803              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7804              :                 return -1;
    7805              :               *pnum_clobbers = 1;
    7806              :               return 768; /* *andqi_exthi_2_slp */
    7807              : 
    7808              :             case 1:
    7809              :               if (!
    7810              : #line 13137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7811              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
    7812              :                 return -1;
    7813              :               *pnum_clobbers = 1;
    7814              :               return 771; /* *andqi_extsi_2_slp */
    7815              : 
    7816              :             case 2:
    7817              :               if (!(
    7818              : #line 13137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7819              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
    7820              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7821              : (TARGET_64BIT)))
    7822              :                 return -1;
    7823              :               *pnum_clobbers = 1;
    7824              :               return 774; /* *andqi_extdi_2_slp */
    7825              : 
    7826              :             case 3:
    7827              :               *pnum_clobbers = 1;
    7828              :               return 792; /* *andqi_ext2hi_0 */
    7829              : 
    7830              :             case 4:
    7831              :               *pnum_clobbers = 1;
    7832              :               return 795; /* *andqi_ext2si_0 */
    7833              : 
    7834              :             case 5:
    7835              :               if (!
    7836              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7837              : (TARGET_64BIT))
    7838              :                 return -1;
    7839              :               *pnum_clobbers = 1;
    7840              :               return 798; /* *andqi_ext2di_0 */
    7841              : 
    7842              :             default:
    7843              :               return -1;
    7844              :             }
    7845              : 
    7846              :         case ROTATE:
    7847              :           if (GET_MODE (x4) != E_SImode)
    7848              :             return -1;
    7849              :           x5 = XEXP (x4, 0);
    7850              :           if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + -2])
    7851              :             return -1;
    7852              :           x7 = XEXP (x1, 0);
    7853              :           operands[0] = x7;
    7854              :           x8 = XEXP (x4, 1);
    7855              :           operands[2] = x8;
    7856              :           if (!register_operand (operands[2], E_QImode))
    7857              :             return -1;
    7858              :           x6 = XEXP (x2, 1);
    7859              :           operands[1] = x6;
    7860              :           switch (GET_MODE (operands[0]))
    7861              :             {
    7862              :             case E_QImode:
    7863              :               if (pattern1367 (x2, 
    7864              : E_QImode) != 0
    7865              :                   || !
    7866              : #line 19302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7867              : (TARGET_USE_BT && ix86_pre_reload_split ()))
    7868              :                 return -1;
    7869              :               *pnum_clobbers = 1;
    7870              :               return 1441; /* *btrqi_1 */
    7871              : 
    7872              :             case E_HImode:
    7873              :               if (pattern1367 (x2, 
    7874              : E_HImode) != 0
    7875              :                   || !
    7876              : #line 19302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7877              : (TARGET_USE_BT && ix86_pre_reload_split ()))
    7878              :                 return -1;
    7879              :               *pnum_clobbers = 1;
    7880              :               return 1442; /* *btrhi_1 */
    7881              : 
    7882              :             default:
    7883              :               return -1;
    7884              :             }
    7885              : 
    7886              :         default:
    7887              :           return -1;
    7888              :         }
    7889              : 
    7890              :     case NOT:
    7891              :       x7 = XEXP (x1, 0);
    7892              :       operands[0] = x7;
    7893              :       x4 = XEXP (x3, 0);
    7894              :       operands[1] = x4;
    7895              :       res = recog_39 (x1, insn, pnum_clobbers);
    7896              :       if (res >= 0)
    7897              :         return res;
    7898              :       if (pnum_clobbers == NULL
    7899              :           || !register_operand (operands[0], E_QImode)
    7900              :           || GET_CODE (x4) != SUBREG
    7901              :           || maybe_ne (SUBREG_BYTE (x4), 0)
    7902              :           || GET_MODE (x4) != E_QImode)
    7903              :         return -1;
    7904              :       x5 = XEXP (x4, 0);
    7905              :       if (GET_CODE (x5) != LSHIFTRT)
    7906              :         return -1;
    7907              :       x6 = XEXP (x2, 1);
    7908              :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
    7909              :           || GET_MODE (x2) != E_QImode
    7910              :           || GET_MODE (x3) != E_QImode)
    7911              :         return -1;
    7912              :       x9 = XEXP (x5, 0);
    7913              :       operands[1] = x9;
    7914              :       x10 = XEXP (x5, 1);
    7915              :       operands[2] = x10;
    7916              :       if (!register_operand (operands[2], E_QImode))
    7917              :         return -1;
    7918              :       switch (GET_MODE (x5))
    7919              :         {
    7920              :         case E_SImode:
    7921              :           if (!register_operand (operands[1], E_SImode)
    7922              :               || !
    7923              : #line 19704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7924              : (TARGET_USE_BT && ix86_pre_reload_split ()))
    7925              :             return -1;
    7926              :           *pnum_clobbers = 1;
    7927              :           return 1468; /* *btsi_setncqi */
    7928              : 
    7929              :         case E_DImode:
    7930              :           if (!register_operand (operands[1], E_DImode)
    7931              :               || !(
    7932              : #line 19704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7933              : (TARGET_USE_BT && ix86_pre_reload_split ()) && 
    7934              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7935              : (TARGET_64BIT)))
    7936              :             return -1;
    7937              :           *pnum_clobbers = 1;
    7938              :           return 1469; /* *btdi_setncqi */
    7939              : 
    7940              :         default:
    7941              :           return -1;
    7942              :         }
    7943              : 
    7944              :     case UNSPEC:
    7945              :       x7 = XEXP (x1, 0);
    7946              :       operands[0] = x7;
    7947              :       switch (XVECLEN (x3, 0))
    7948              :         {
    7949              :         case 3:
    7950              :           x11 = XVECEXP (x3, 0, 2);
    7951              :           if (GET_CODE (x11) != CONST_INT)
    7952              :             return -1;
    7953              :           x12 = XVECEXP (x3, 0, 0);
    7954              :           operands[1] = x12;
    7955              :           x13 = XVECEXP (x3, 0, 1);
    7956              :           operands[2] = x13;
    7957              :           switch (XINT (x3, 1))
    7958              :             {
    7959              :             case 60:
    7960              :               operands[3] = x11;
    7961              :               res = recog_40 (x1, insn, pnum_clobbers);
    7962              :               if (res >= 0)
    7963              :                 return res;
    7964              :               if (XWINT (x11, 0) != 0L)
    7965              :                 return -1;
    7966              :               switch (pattern973 (x2))
    7967              :                 {
    7968              :                 case 0:
    7969              :                   if (!(
    7970              : #line 4751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7971              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7972              : #line 525 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7973              : (TARGET_AVX512VL)))
    7974              :                     return -1;
    7975              :                   return 3472; /* *avx512vl_eqv4si3_and15 */
    7976              : 
    7977              :                 case 1:
    7978              :                   if (!(
    7979              : #line 4751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7980              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7981              : #line 525 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7982              : (TARGET_AVX512VL)))
    7983              :                     return -1;
    7984              :                   return 3474; /* *avx512vl_eqv4di3_and15 */
    7985              : 
    7986              :                 case 2:
    7987              :                   if (!
    7988              : #line 4800 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7989              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7990              :                     return -1;
    7991              :                   return 3479; /* *avx512vl_eqv2di_and3 */
    7992              : 
    7993              :                 case 3:
    7994              :                   if (!(
    7995              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    7996              : (TARGET_AVX512F) && (
    7997              : #line 4935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7998              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7999              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8000              : (TARGET_AVX512VL))))
    8001              :                     return -1;
    8002              :                   return 3570; /* *avx512vl_eqv16qi3_mask_1 */
    8003              : 
    8004              :                 case 4:
    8005              :                   if (!(
    8006              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8007              : (TARGET_AVX512F) && (
    8008              : #line 4935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8009              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8010              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8011              : (TARGET_AVX512VL))))
    8012              :                     return -1;
    8013              :                   return 3582; /* *avx512vl_eqv16hi3_mask_1 */
    8014              : 
    8015              :                 case 5:
    8016              :                   if (!(
    8017              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8018              : (TARGET_AVX512F) && 
    8019              : #line 5024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8020              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
    8021              :                     return -1;
    8022              :                   return 3638; /* *avx512f_eqv16si3_mask_1 */
    8023              : 
    8024              :                 case 6:
    8025              :                   if (!(
    8026              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8027              : (TARGET_AVX512F) && (
    8028              : #line 4935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8029              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8030              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8031              : (TARGET_AVX512VL))))
    8032              :                     return -1;
    8033              :                   return 3586; /* *avx512vl_eqv8hi3_mask_1 */
    8034              : 
    8035              :                 case 7:
    8036              :                   if (!(
    8037              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8038              : (TARGET_AVX512F) && (
    8039              : #line 5024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8040              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8041              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8042              : (TARGET_AVX512VL))))
    8043              :                     return -1;
    8044              :                   return 3642; /* *avx512vl_eqv8si3_mask_1 */
    8045              : 
    8046              :                 case 8:
    8047              :                   if (!(
    8048              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8049              : (TARGET_AVX512F) && (
    8050              : #line 5024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8051              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8052              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8053              : (TARGET_AVX512VL))))
    8054              :                     return -1;
    8055              :                   return 3646; /* *avx512vl_eqv4si3_mask_1 */
    8056              : 
    8057              :                 case 9:
    8058              :                   if (!(
    8059              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8060              : (TARGET_AVX512F) && 
    8061              : #line 5024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8062              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
    8063              :                     return -1;
    8064              :                   return 3650; /* *avx512f_eqv8di3_mask_1 */
    8065              : 
    8066              :                 case 10:
    8067              :                   if (!(
    8068              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8069              : (TARGET_AVX512F) && (
    8070              : #line 5024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8071              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8072              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8073              : (TARGET_AVX512VL))))
    8074              :                     return -1;
    8075              :                   return 3654; /* *avx512vl_eqv4di3_mask_1 */
    8076              : 
    8077              :                 case 11:
    8078              :                   if (!(
    8079              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8080              : (TARGET_AVX512F) && (
    8081              : #line 5024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8082              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8083              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8084              : (TARGET_AVX512VL))))
    8085              :                     return -1;
    8086              :                   return 3658; /* *avx512vl_eqv2di3_mask_1 */
    8087              : 
    8088              :                 default:
    8089              :                   return -1;
    8090              :                 }
    8091              : 
    8092              :             case 158:
    8093              :               if (GET_MODE (x3) == E_QImode)
    8094              :                 {
    8095              :                   res = recog_41 (x1, insn, pnum_clobbers);
    8096              :                   if (res >= 0)
    8097              :                     return res;
    8098              :                 }
    8099              :               if (XWINT (x11, 0) == 0L)
    8100              :                 {
    8101              :                   switch (pattern973 (x2))
    8102              :                     {
    8103              :                     case 0:
    8104              :                       if ((
    8105              : #line 4751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8106              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8107              : #line 525 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8108              : (TARGET_AVX512VL)))
    8109              :                         return 3473; /* *avx512vl_eqv4si3_and15 */
    8110              :                       break;
    8111              : 
    8112              :                     case 1:
    8113              :                       if ((
    8114              : #line 4751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8115              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8116              : #line 525 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8117              : (TARGET_AVX512VL)))
    8118              :                         return 3475; /* *avx512vl_eqv4di3_and15 */
    8119              :                       break;
    8120              : 
    8121              :                     case 2:
    8122              :                       if (
    8123              : #line 4800 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8124              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8125              :                         return 3480; /* *avx512vl_eqv2di_and3 */
    8126              :                       break;
    8127              : 
    8128              :                     case 3:
    8129              :                       if ((
    8130              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8131              : (TARGET_AVX512F) && (
    8132              : #line 4935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8133              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8134              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8135              : (TARGET_AVX512VL))))
    8136              :                         return 3572; /* *avx512vl_eqv16qi3_mask_1 */
    8137              :                       break;
    8138              : 
    8139              :                     case 4:
    8140              :                       if ((
    8141              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8142              : (TARGET_AVX512F) && (
    8143              : #line 4935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8144              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8145              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8146              : (TARGET_AVX512VL))))
    8147              :                         return 3584; /* *avx512vl_eqv16hi3_mask_1 */
    8148              :                       break;
    8149              : 
    8150              :                     case 5:
    8151              :                       if ((
    8152              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8153              : (TARGET_AVX512F) && 
    8154              : #line 5024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8155              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
    8156              :                         return 3640; /* *avx512f_eqv16si3_mask_1 */
    8157              :                       break;
    8158              : 
    8159              :                     case 6:
    8160              :                       if ((
    8161              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8162              : (TARGET_AVX512F) && (
    8163              : #line 4935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8164              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8165              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8166              : (TARGET_AVX512VL))))
    8167              :                         return 3588; /* *avx512vl_eqv8hi3_mask_1 */
    8168              :                       break;
    8169              : 
    8170              :                     case 7:
    8171              :                       if ((
    8172              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8173              : (TARGET_AVX512F) && (
    8174              : #line 5024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8175              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8176              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8177              : (TARGET_AVX512VL))))
    8178              :                         return 3644; /* *avx512vl_eqv8si3_mask_1 */
    8179              :                       break;
    8180              : 
    8181              :                     case 8:
    8182              :                       if ((
    8183              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8184              : (TARGET_AVX512F) && (
    8185              : #line 5024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8186              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8187              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8188              : (TARGET_AVX512VL))))
    8189              :                         return 3648; /* *avx512vl_eqv4si3_mask_1 */
    8190              :                       break;
    8191              : 
    8192              :                     case 9:
    8193              :                       if ((
    8194              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8195              : (TARGET_AVX512F) && 
    8196              : #line 5024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8197              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
    8198              :                         return 3652; /* *avx512f_eqv8di3_mask_1 */
    8199              :                       break;
    8200              : 
    8201              :                     case 10:
    8202              :                       if ((
    8203              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8204              : (TARGET_AVX512F) && (
    8205              : #line 5024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8206              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8207              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8208              : (TARGET_AVX512VL))))
    8209              :                         return 3656; /* *avx512vl_eqv4di3_mask_1 */
    8210              :                       break;
    8211              : 
    8212              :                     case 11:
    8213              :                       if ((
    8214              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8215              : (TARGET_AVX512F) && (
    8216              : #line 5024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8217              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    8218              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8219              : (TARGET_AVX512VL))))
    8220              :                         return 3660; /* *avx512vl_eqv2di3_mask_1 */
    8221              :                       break;
    8222              : 
    8223              :                     default:
    8224              :                       break;
    8225              :                     }
    8226              :                 }
    8227              :               operands[3] = x11;
    8228              :               if (!const_0_to_7_operand (operands[3], E_SImode))
    8229              :                 return -1;
    8230              :               switch (pattern1086 (x2))
    8231              :                 {
    8232              :                 case 0:
    8233              :                   switch (pattern746 ())
    8234              :                     {
    8235              :                     case 0:
    8236              :                       if (!(
    8237              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8238              : (TARGET_AVX512F) && (
    8239              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8240              : (TARGET_AVX512BW) && 
    8241              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8242              : (TARGET_AVX512VL))))
    8243              :                         return -1;
    8244              :                       return 3592; /* avx512vl_ucmpv16qi3_mask */
    8245              : 
    8246              :                     case 1:
    8247              :                       if (!(
    8248              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8249              : (TARGET_AVX512F) && (
    8250              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8251              : (TARGET_AVX512BW) && 
    8252              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8253              : (TARGET_AVX512VL))))
    8254              :                         return -1;
    8255              :                       return 3598; /* avx512vl_ucmpv16hi3_mask */
    8256              : 
    8257              :                     case 2:
    8258              :                       if (!
    8259              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8260              : (TARGET_AVX512F))
    8261              :                         return -1;
    8262              :                       return 3662; /* avx512f_ucmpv16si3_mask */
    8263              : 
    8264              :                     default:
    8265              :                       return -1;
    8266              :                     }
    8267              : 
    8268              :                 case 1:
    8269              :                   switch (pattern747 ())
    8270              :                     {
    8271              :                     case 0:
    8272              :                       if (!(
    8273              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8274              : (TARGET_AVX512F) && (
    8275              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8276              : (TARGET_AVX512BW) && 
    8277              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8278              : (TARGET_AVX512VL))))
    8279              :                         return -1;
    8280              :                       return 3600; /* avx512vl_ucmpv8hi3_mask */
    8281              : 
    8282              :                     case 1:
    8283              :                       if (!(
    8284              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8285              : (TARGET_AVX512F) && (
    8286              : #line 5039 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8287              : (TARGET_AVX512F) && 
    8288              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8289              : (TARGET_AVX512VL))))
    8290              :                         return -1;
    8291              :                       return 3664; /* avx512vl_ucmpv8si3_mask */
    8292              : 
    8293              :                     case 2:
    8294              :                       if (!(
    8295              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8296              : (TARGET_AVX512F) && (
    8297              : #line 5039 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8298              : (TARGET_AVX512F) && 
    8299              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8300              : (TARGET_AVX512VL))))
    8301              :                         return -1;
    8302              :                       return 3666; /* avx512vl_ucmpv4si3_mask */
    8303              : 
    8304              :                     case 3:
    8305              :                       if (!
    8306              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8307              : (TARGET_AVX512F))
    8308              :                         return -1;
    8309              :                       return 3668; /* avx512f_ucmpv8di3_mask */
    8310              : 
    8311              :                     case 4:
    8312              :                       if (!(
    8313              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8314              : (TARGET_AVX512F) && (
    8315              : #line 5039 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8316              : (TARGET_AVX512F) && 
    8317              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8318              : (TARGET_AVX512VL))))
    8319              :                         return -1;
    8320              :                       return 3670; /* avx512vl_ucmpv4di3_mask */
    8321              : 
    8322              :                     case 5:
    8323              :                       if (!(
    8324              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8325              : (TARGET_AVX512F) && (
    8326              : #line 5039 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8327              : (TARGET_AVX512F) && 
    8328              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8329              : (TARGET_AVX512VL))))
    8330              :                         return -1;
    8331              :                       return 3672; /* avx512vl_ucmpv2di3_mask */
    8332              : 
    8333              :                     default:
    8334              :                       return -1;
    8335              :                     }
    8336              : 
    8337              :                 default:
    8338              :                   return -1;
    8339              :                 }
    8340              : 
    8341              :             default:
    8342              :               return -1;
    8343              :             }
    8344              : 
    8345              :         case 2:
    8346              :           x12 = XVECEXP (x3, 0, 0);
    8347              :           operands[1] = x12;
    8348              :           x13 = XVECEXP (x3, 0, 1);
    8349              :           operands[2] = x13;
    8350              :           switch (XINT (x3, 1))
    8351              :             {
    8352              :             case 159:
    8353              :               switch (pattern748 (x2))
    8354              :                 {
    8355              :                 case 0:
    8356              :                   if (!(
    8357              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8358              : (TARGET_AVX512F) && (
    8359              : #line 19390 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8360              : (TARGET_AVX512F) && 
    8361              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8362              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    8363              :                     return -1;
    8364              :                   return 8158; /* avx512vl_testmv16qi3_mask */
    8365              : 
    8366              :                 case 1:
    8367              :                   if (!(
    8368              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8369              : (TARGET_AVX512F) && (
    8370              : #line 19390 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8371              : (TARGET_AVX512F) && 
    8372              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8373              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    8374              :                     return -1;
    8375              :                   return 8162; /* avx512vl_testmv16hi3_mask */
    8376              : 
    8377              :                 case 2:
    8378              :                   if (!
    8379              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8380              : (TARGET_AVX512F))
    8381              :                     return -1;
    8382              :                   return 8166; /* avx512f_testmv16si3_mask */
    8383              : 
    8384              :                 case 3:
    8385              :                   if (!(
    8386              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8387              : (TARGET_AVX512F) && (
    8388              : #line 19390 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8389              : (TARGET_AVX512F) && 
    8390              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8391              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    8392              :                     return -1;
    8393              :                   return 8164; /* avx512vl_testmv8hi3_mask */
    8394              : 
    8395              :                 case 4:
    8396              :                   if (!(
    8397              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8398              : (TARGET_AVX512F) && (
    8399              : #line 19390 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8400              : (TARGET_AVX512F) && 
    8401              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8402              : (TARGET_AVX512VL))))
    8403              :                     return -1;
    8404              :                   return 8168; /* avx512vl_testmv8si3_mask */
    8405              : 
    8406              :                 case 5:
    8407              :                   if (!(
    8408              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8409              : (TARGET_AVX512F) && (
    8410              : #line 19390 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8411              : (TARGET_AVX512F) && 
    8412              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8413              : (TARGET_AVX512VL))))
    8414              :                     return -1;
    8415              :                   return 8170; /* avx512vl_testmv4si3_mask */
    8416              : 
    8417              :                 case 6:
    8418              :                   if (!
    8419              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8420              : (TARGET_AVX512F))
    8421              :                     return -1;
    8422              :                   return 8172; /* avx512f_testmv8di3_mask */
    8423              : 
    8424              :                 case 7:
    8425              :                   if (!(
    8426              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8427              : (TARGET_AVX512F) && (
    8428              : #line 19390 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8429              : (TARGET_AVX512F) && 
    8430              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8431              : (TARGET_AVX512VL))))
    8432              :                     return -1;
    8433              :                   return 8174; /* avx512vl_testmv4di3_mask */
    8434              : 
    8435              :                 case 8:
    8436              :                   if (!(
    8437              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8438              : (TARGET_AVX512F) && (
    8439              : #line 19390 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8440              : (TARGET_AVX512F) && 
    8441              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8442              : (TARGET_AVX512VL))))
    8443              :                     return -1;
    8444              :                   return 8176; /* avx512vl_testmv2di3_mask */
    8445              : 
    8446              :                 default:
    8447              :                   return -1;
    8448              :                 }
    8449              : 
    8450              :             case 160:
    8451              :               switch (pattern748 (x2))
    8452              :                 {
    8453              :                 case 0:
    8454              :                   if (!(
    8455              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8456              : (TARGET_AVX512F) && (
    8457              : #line 19401 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8458              : (TARGET_AVX512F) && 
    8459              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8460              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    8461              :                     return -1;
    8462              :                   return 8182; /* avx512vl_testnmv16qi3_mask */
    8463              : 
    8464              :                 case 1:
    8465              :                   if (!(
    8466              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8467              : (TARGET_AVX512F) && (
    8468              : #line 19401 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8469              : (TARGET_AVX512F) && 
    8470              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8471              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    8472              :                     return -1;
    8473              :                   return 8186; /* avx512vl_testnmv16hi3_mask */
    8474              : 
    8475              :                 case 2:
    8476              :                   if (!
    8477              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8478              : (TARGET_AVX512F))
    8479              :                     return -1;
    8480              :                   return 8190; /* avx512f_testnmv16si3_mask */
    8481              : 
    8482              :                 case 3:
    8483              :                   if (!(
    8484              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8485              : (TARGET_AVX512F) && (
    8486              : #line 19401 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8487              : (TARGET_AVX512F) && 
    8488              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8489              : (TARGET_AVX512VL && TARGET_AVX512BW))))
    8490              :                     return -1;
    8491              :                   return 8188; /* avx512vl_testnmv8hi3_mask */
    8492              : 
    8493              :                 case 4:
    8494              :                   if (!(
    8495              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8496              : (TARGET_AVX512F) && (
    8497              : #line 19401 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8498              : (TARGET_AVX512F) && 
    8499              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8500              : (TARGET_AVX512VL))))
    8501              :                     return -1;
    8502              :                   return 8192; /* avx512vl_testnmv8si3_mask */
    8503              : 
    8504              :                 case 5:
    8505              :                   if (!(
    8506              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8507              : (TARGET_AVX512F) && (
    8508              : #line 19401 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8509              : (TARGET_AVX512F) && 
    8510              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8511              : (TARGET_AVX512VL))))
    8512              :                     return -1;
    8513              :                   return 8194; /* avx512vl_testnmv4si3_mask */
    8514              : 
    8515              :                 case 6:
    8516              :                   if (!
    8517              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8518              : (TARGET_AVX512F))
    8519              :                     return -1;
    8520              :                   return 8196; /* avx512f_testnmv8di3_mask */
    8521              : 
    8522              :                 case 7:
    8523              :                   if (!(
    8524              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8525              : (TARGET_AVX512F) && (
    8526              : #line 19401 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8527              : (TARGET_AVX512F) && 
    8528              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8529              : (TARGET_AVX512VL))))
    8530              :                     return -1;
    8531              :                   return 8198; /* avx512vl_testnmv4di3_mask */
    8532              : 
    8533              :                 case 8:
    8534              :                   if (!(
    8535              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8536              : (TARGET_AVX512F) && (
    8537              : #line 19401 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8538              : (TARGET_AVX512F) && 
    8539              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8540              : (TARGET_AVX512VL))))
    8541              :                     return -1;
    8542              :                   return 8200; /* avx512vl_testnmv2di3_mask */
    8543              : 
    8544              :                 default:
    8545              :                   return -1;
    8546              :                 }
    8547              : 
    8548              :             case 194:
    8549              :               if (!const_0_to_255_operand (operands[2], E_VOIDmode))
    8550              :                 return -1;
    8551              :               x6 = XEXP (x2, 1);
    8552              :               switch (GET_CODE (x6))
    8553              :                 {
    8554              :                 case REG:
    8555              :                 case SUBREG:
    8556              :                   operands[3] = x6;
    8557              :                   switch (GET_MODE (operands[0]))
    8558              :                     {
    8559              :                     case E_HImode:
    8560              :                       if (pattern284 (x2, 
    8561              : E_HImode) != 0)
    8562              :                         return -1;
    8563              :                       switch (GET_MODE (operands[1]))
    8564              :                         {
    8565              :                         case E_V16HFmode:
    8566              :                           if (!vector_operand (operands[1], E_V16HFmode)
    8567              :                               || !(
    8568              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8569              : (TARGET_AVX512F) && (
    8570              : #line 30555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8571              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V16HFmode)) && 
    8572              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8573              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
    8574              :                             return -1;
    8575              :                           return 10058; /* avx512dq_fpclassv16hf_mask */
    8576              : 
    8577              :                         case E_V16SFmode:
    8578              :                           if (!vector_operand (operands[1], E_V16SFmode)
    8579              :                               || !(
    8580              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8581              : (TARGET_AVX512F) && 
    8582              : #line 30555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8583              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V16SFmode))))
    8584              :                             return -1;
    8585              :                           return 10062; /* avx512dq_fpclassv16sf_mask */
    8586              : 
    8587              :                         default:
    8588              :                           return -1;
    8589              :                         }
    8590              : 
    8591              :                     case E_QImode:
    8592              :                       if (pattern284 (x2, 
    8593              : E_QImode) != 0)
    8594              :                         return -1;
    8595              :                       switch (GET_MODE (operands[1]))
    8596              :                         {
    8597              :                         case E_V8HFmode:
    8598              :                           if (!vector_operand (operands[1], E_V8HFmode)
    8599              :                               || !(
    8600              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8601              : (TARGET_AVX512F) && (
    8602              : #line 30555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8603              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V8HFmode)) && 
    8604              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8605              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
    8606              :                             return -1;
    8607              :                           return 10060; /* avx512dq_fpclassv8hf_mask */
    8608              : 
    8609              :                         case E_V8SFmode:
    8610              :                           if (!vector_operand (operands[1], E_V8SFmode)
    8611              :                               || !(
    8612              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8613              : (TARGET_AVX512F) && (
    8614              : #line 30555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8615              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V8SFmode)) && 
    8616              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8617              : (TARGET_AVX512VL))))
    8618              :                             return -1;
    8619              :                           return 10064; /* avx512dq_fpclassv8sf_mask */
    8620              : 
    8621              :                         case E_V4SFmode:
    8622              :                           if (!vector_operand (operands[1], E_V4SFmode)
    8623              :                               || !(
    8624              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8625              : (TARGET_AVX512F) && (
    8626              : #line 30555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8627              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V4SFmode)) && 
    8628              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8629              : (TARGET_AVX512VL))))
    8630              :                             return -1;
    8631              :                           return 10066; /* avx512dq_fpclassv4sf_mask */
    8632              : 
    8633              :                         case E_V8DFmode:
    8634              :                           if (!vector_operand (operands[1], E_V8DFmode)
    8635              :                               || !(
    8636              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8637              : (TARGET_AVX512F) && 
    8638              : #line 30555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8639              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V8DFmode))))
    8640              :                             return -1;
    8641              :                           return 10068; /* avx512dq_fpclassv8df_mask */
    8642              : 
    8643              :                         case E_V4DFmode:
    8644              :                           if (!vector_operand (operands[1], E_V4DFmode)
    8645              :                               || !(
    8646              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8647              : (TARGET_AVX512F) && (
    8648              : #line 30555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8649              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V4DFmode)) && 
    8650              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8651              : (TARGET_AVX512VL))))
    8652              :                             return -1;
    8653              :                           return 10070; /* avx512dq_fpclassv4df_mask */
    8654              : 
    8655              :                         case E_V2DFmode:
    8656              :                           if (!vector_operand (operands[1], E_V2DFmode)
    8657              :                               || !(
    8658              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8659              : (TARGET_AVX512F) && (
    8660              : #line 30555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8661              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V2DFmode)) && 
    8662              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8663              : (TARGET_AVX512VL))))
    8664              :                             return -1;
    8665              :                           return 10072; /* avx512dq_fpclassv2df_mask */
    8666              : 
    8667              :                         default:
    8668              :                           return -1;
    8669              :                         }
    8670              : 
    8671              :                     default:
    8672              :                       return -1;
    8673              :                     }
    8674              : 
    8675              :                 case CONST_INT:
    8676              :                   if (XWINT (x6, 0) != 1L
    8677              :                       || !register_operand (operands[0], E_QImode)
    8678              :                       || GET_MODE (x2) != E_QImode
    8679              :                       || GET_MODE (x3) != E_QImode)
    8680              :                     return -1;
    8681              :                   switch (GET_MODE (operands[1]))
    8682              :                     {
    8683              :                     case E_V8HFmode:
    8684              :                       if (!nonimmediate_operand (operands[1], E_V8HFmode)
    8685              :                           || !(
    8686              : #line 30570 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8687              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V8HFmode)) && 
    8688              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8689              : (TARGET_AVX512FP16)))
    8690              :                         return -1;
    8691              :                       return 10073; /* avx512dq_vmfpclassv8hf */
    8692              : 
    8693              :                     case E_V4SFmode:
    8694              :                       if (!nonimmediate_operand (operands[1], E_V4SFmode)
    8695              :                           || !
    8696              : #line 30570 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8697              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V4SFmode)))
    8698              :                         return -1;
    8699              :                       return 10075; /* avx512dq_vmfpclassv4sf */
    8700              : 
    8701              :                     case E_V2DFmode:
    8702              :                       if (!nonimmediate_operand (operands[1], E_V2DFmode)
    8703              :                           || !(
    8704              : #line 30570 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8705              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V2DFmode)) && 
    8706              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8707              : (TARGET_SSE2)))
    8708              :                         return -1;
    8709              :                       return 10077; /* avx512dq_vmfpclassv2df */
    8710              : 
    8711              :                     default:
    8712              :                       return -1;
    8713              :                     }
    8714              : 
    8715              :                 default:
    8716              :                   return -1;
    8717              :                 }
    8718              : 
    8719              :             case 215:
    8720              :               if (GET_MODE (x3) != E_HImode
    8721              :                   || !register_operand (operands[0], E_HImode)
    8722              :                   || GET_MODE (x2) != E_HImode
    8723              :                   || !register_operand (operands[1], E_V16QImode)
    8724              :                   || !nonimmediate_operand (operands[2], E_V16QImode))
    8725              :                 return -1;
    8726              :               x6 = XEXP (x2, 1);
    8727              :               operands[3] = x6;
    8728              :               if (!register_operand (operands[3], E_HImode)
    8729              :                   || !(
    8730              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8731              : (TARGET_AVX512F) && (
    8732              : #line 31638 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8733              : (TARGET_AVX512BITALG) && 
    8734              : #line 338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8735              : (TARGET_AVX512VL))))
    8736              :                 return -1;
    8737              :               return 10400; /* avx512vl_vpshufbitqmbv16qi_mask */
    8738              : 
    8739              :             case 263:
    8740              :               if (!const_0_to_255_operand (operands[2], E_VOIDmode))
    8741              :                 return -1;
    8742              :               x6 = XEXP (x2, 1);
    8743              :               operands[3] = x6;
    8744              :               switch (GET_MODE (operands[0]))
    8745              :                 {
    8746              :                 case E_HImode:
    8747              :                   if (pattern1087 (x2, 
    8748              : E_HImode, 
    8749              : E_V16BFmode) != 0
    8750              :                       || !(
    8751              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8752              : (TARGET_AVX512F) && 
    8753              : #line 33156 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8754              : (TARGET_AVX10_2)))
    8755              :                     return -1;
    8756              :                   return 10794; /* avx10_2_fpclassbf16_v16bf_mask */
    8757              : 
    8758              :                 case E_QImode:
    8759              :                   if (pattern1087 (x2, 
    8760              : E_QImode, 
    8761              : E_V8BFmode) != 0
    8762              :                       || !(
    8763              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8764              : (TARGET_AVX512F) && 
    8765              : #line 33156 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8766              : (TARGET_AVX10_2)))
    8767              :                     return -1;
    8768              :                   return 10796; /* avx10_2_fpclassbf16_v8bf_mask */
    8769              : 
    8770              :                 default:
    8771              :                   return -1;
    8772              :                 }
    8773              : 
    8774              :             default:
    8775              :               return -1;
    8776              :             }
    8777              : 
    8778              :         default:
    8779              :           return -1;
    8780              :         }
    8781              : 
    8782              :     case AND:
    8783              :       if (GET_MODE (x3) != E_QImode)
    8784              :         return -1;
    8785              :       x4 = XEXP (x3, 0);
    8786              :       if (pattern89 (x4, 
    8787              : E_QImode, 
    8788              : 194, 
    8789              : 2) != 0)
    8790              :         return -1;
    8791              :       x14 = XEXP (x3, 1);
    8792              :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    8793              :         return -1;
    8794              :       x7 = XEXP (x1, 0);
    8795              :       operands[0] = x7;
    8796              :       if (!register_operand (operands[0], E_QImode)
    8797              :           || GET_MODE (x2) != E_QImode)
    8798              :         return -1;
    8799              :       x15 = XVECEXP (x4, 0, 0);
    8800              :       operands[1] = x15;
    8801              :       x16 = XVECEXP (x4, 0, 1);
    8802              :       operands[2] = x16;
    8803              :       if (!const_0_to_255_operand (operands[2], E_VOIDmode))
    8804              :         return -1;
    8805              :       x6 = XEXP (x2, 1);
    8806              :       operands[3] = x6;
    8807              :       if (!register_operand (operands[3], E_QImode))
    8808              :         return -1;
    8809              :       switch (GET_MODE (operands[1]))
    8810              :         {
    8811              :         case E_V8HFmode:
    8812              :           if (!nonimmediate_operand (operands[1], E_V8HFmode)
    8813              :               || !(
    8814              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8815              : (TARGET_AVX512F) && (
    8816              : #line 30570 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8817              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V8HFmode)) && 
    8818              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8819              : (TARGET_AVX512FP16))))
    8820              :             return -1;
    8821              :           return 10074; /* avx512dq_vmfpclassv8hf_mask */
    8822              : 
    8823              :         case E_V4SFmode:
    8824              :           if (!nonimmediate_operand (operands[1], E_V4SFmode)
    8825              :               || !(
    8826              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8827              : (TARGET_AVX512F) && 
    8828              : #line 30570 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8829              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V4SFmode))))
    8830              :             return -1;
    8831              :           return 10076; /* avx512dq_vmfpclassv4sf_mask */
    8832              : 
    8833              :         case E_V2DFmode:
    8834              :           if (!nonimmediate_operand (operands[1], E_V2DFmode)
    8835              :               || !(
    8836              : #line 122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
    8837              : (TARGET_AVX512F) && (
    8838              : #line 30570 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8839              : (TARGET_AVX512DQ || VALID_AVX512FP16_REG_MODE(V2DFmode)) && 
    8840              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8841              : (TARGET_SSE2))))
    8842              :             return -1;
    8843              :           return 10078; /* avx512dq_vmfpclassv2df_mask */
    8844              : 
    8845              :         default:
    8846              :           return -1;
    8847              :         }
    8848              : 
    8849              :     default:
    8850              :       return -1;
    8851              :     }
    8852              : }
    8853              : 
    8854              :  int
    8855              : recog_80 (rtx x1 ATTRIBUTE_UNUSED,
    8856              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8857              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8858              : {
    8859              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8860              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    8861              :   rtx x10, x11, x12, x13;
    8862              :   int res ATTRIBUTE_UNUSED;
    8863              :   x2 = XEXP (x1, 0);
    8864              :   operands[0] = x2;
    8865              :   x3 = XEXP (x1, 1);
    8866              :   x4 = XEXP (x3, 0);
    8867              :   switch (GET_CODE (x4))
    8868              :     {
    8869              :     case PLUS:
    8870              :       return recog_75 (x1, insn, pnum_clobbers);
    8871              : 
    8872              :     case MINUS:
    8873              :       return recog_77 (x1, insn, pnum_clobbers);
    8874              : 
    8875              :     case MULT:
    8876              :       x5 = XEXP (x4, 0);
    8877              :       operands[1] = x5;
    8878              :       x6 = XEXP (x4, 1);
    8879              :       operands[2] = x6;
    8880              :       switch (GET_MODE (operands[0]))
    8881              :         {
    8882              :         case E_SImode:
    8883              :           if (!register_operand (operands[0], E_SImode)
    8884              :               || GET_MODE (x3) != E_SImode
    8885              :               || GET_MODE (x4) != E_HImode
    8886              :               || !nonimmediate_operand (operands[1], E_HImode)
    8887              :               || !immediate_operand (operands[2], E_HImode))
    8888              :             return -1;
    8889              :           if (
    8890              : #line 10986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8891              : (TARGET_APX_ZU && TARGET_APX_NF))
    8892              :             return 624; /* *imulhisizu_nf */
    8893              :           if (pnum_clobbers == NULL
    8894              :               || !
    8895              : #line 10986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8896              : (TARGET_APX_ZU && true))
    8897              :             return -1;
    8898              :           *pnum_clobbers = 1;
    8899              :           return 625; /* *imulhisizu */
    8900              : 
    8901              :         case E_DImode:
    8902              :           if (!register_operand (operands[0], E_DImode)
    8903              :               || GET_MODE (x3) != E_DImode)
    8904              :             return -1;
    8905              :           switch (GET_MODE (x4))
    8906              :             {
    8907              :             case E_HImode:
    8908              :               if (!nonimmediate_operand (operands[1], E_HImode)
    8909              :                   || !immediate_operand (operands[2], E_HImode))
    8910              :                 return -1;
    8911              :               if (
    8912              : #line 10986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8913              : (TARGET_APX_ZU && TARGET_APX_NF))
    8914              :                 return 626; /* *imulhidizu_nf */
    8915              :               if (pnum_clobbers == NULL
    8916              :                   || !
    8917              : #line 10986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8918              : (TARGET_APX_ZU && true))
    8919              :                 return -1;
    8920              :               *pnum_clobbers = 1;
    8921              :               return 627; /* *imulhidizu */
    8922              : 
    8923              :             case E_SImode:
    8924              :               if (!nonimmediate_operand (operands[1], E_SImode)
    8925              :                   || !x86_64_general_operand (operands[2], E_SImode))
    8926              :                 return -1;
    8927              :               if (
    8928              : #line 10998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8929              : (TARGET_64BIT
    8930              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
    8931              :    && TARGET_APX_NF))
    8932              :                 return 628; /* *mulsi3_1_zext_nf */
    8933              :               if (pnum_clobbers == NULL
    8934              :                   || !
    8935              : #line 10998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8936              : (TARGET_64BIT
    8937              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
    8938              :    && true))
    8939              :                 return -1;
    8940              :               *pnum_clobbers = 1;
    8941              :               return 629; /* *mulsi3_1_zext */
    8942              : 
    8943              :             default:
    8944              :               return -1;
    8945              :             }
    8946              : 
    8947              :         default:
    8948              :           return -1;
    8949              :         }
    8950              : 
    8951              :     case SMUL_HIGHPART:
    8952              :       if (pattern113 (x3, pnum_clobbers) != 0
    8953              :           || !
    8954              : #line 11493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8955              : (TARGET_64BIT))
    8956              :         return -1;
    8957              :       *pnum_clobbers = 2;
    8958              :       return 659; /* *smulsi3_highpart_zext */
    8959              : 
    8960              :     case UMUL_HIGHPART:
    8961              :       if (pattern113 (x3, pnum_clobbers) != 0
    8962              :           || !
    8963              : #line 11493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8964              : (TARGET_64BIT))
    8965              :         return -1;
    8966              :       *pnum_clobbers = 2;
    8967              :       return 660; /* *umulsi3_highpart_zext */
    8968              : 
    8969              :     case TRUNCATE:
    8970              :       if (pnum_clobbers == NULL
    8971              :           || GET_MODE (x4) != E_SImode)
    8972              :         return -1;
    8973              :       x5 = XEXP (x4, 0);
    8974              :       if (GET_CODE (x5) != LSHIFTRT
    8975              :           || GET_MODE (x5) != E_DImode)
    8976              :         return -1;
    8977              :       x7 = XEXP (x5, 0);
    8978              :       if (GET_CODE (x7) != MULT
    8979              :           || GET_MODE (x7) != E_DImode)
    8980              :         return -1;
    8981              :       x8 = XEXP (x5, 1);
    8982              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 32]
    8983              :           || !register_operand (operands[0], E_DImode)
    8984              :           || GET_MODE (x3) != E_DImode)
    8985              :         return -1;
    8986              :       x9 = XEXP (x7, 0);
    8987              :       if (GET_MODE (x9) != E_DImode)
    8988              :         return -1;
    8989              :       x10 = XEXP (x7, 1);
    8990              :       if (GET_MODE (x10) != E_DImode)
    8991              :         return -1;
    8992              :       switch (GET_CODE (x9))
    8993              :         {
    8994              :         case SIGN_EXTEND:
    8995              :           if (GET_CODE (x10) != SIGN_EXTEND)
    8996              :             return -1;
    8997              :           x11 = XEXP (x9, 0);
    8998              :           operands[1] = x11;
    8999              :           if (!nonimmediate_operand (operands[1], E_SImode))
    9000              :             return -1;
    9001              :           x12 = XEXP (x10, 0);
    9002              :           operands[2] = x12;
    9003              :           if (!nonimmediate_operand (operands[2], E_SImode)
    9004              :               || !
    9005              : #line 11541 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9006              : (TARGET_64BIT
    9007              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9008              :             return -1;
    9009              :           *pnum_clobbers = 2;
    9010              :           return 663; /* *smulsi3_highpart_zext */
    9011              : 
    9012              :         case ZERO_EXTEND:
    9013              :           if (GET_CODE (x10) != ZERO_EXTEND)
    9014              :             return -1;
    9015              :           x11 = XEXP (x9, 0);
    9016              :           operands[1] = x11;
    9017              :           if (!nonimmediate_operand (operands[1], E_SImode))
    9018              :             return -1;
    9019              :           x12 = XEXP (x10, 0);
    9020              :           operands[2] = x12;
    9021              :           if (!nonimmediate_operand (operands[2], E_SImode)
    9022              :               || !
    9023              : #line 11541 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9024              : (TARGET_64BIT
    9025              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9026              :             return -1;
    9027              :           *pnum_clobbers = 2;
    9028              :           return 664; /* *umulsi3_highpart_zext */
    9029              : 
    9030              :         default:
    9031              :           return -1;
    9032              :         }
    9033              : 
    9034              :     case AND:
    9035              :       return recog_76 (x1, insn, pnum_clobbers);
    9036              : 
    9037              :     case IOR:
    9038              :       switch (pattern115 (x3, pnum_clobbers))
    9039              :         {
    9040              :         case 0:
    9041              :           if (
    9042              : #line 14035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9043              : (TARGET_APX_NDD && TARGET_APX_NF
    9044              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9045              :             return 875; /* *iorqi_1_zextsi_nf */
    9046              :           if (pnum_clobbers == NULL
    9047              :               || !
    9048              : #line 14035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9049              : (TARGET_APX_NDD && true
    9050              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9051              :             return -1;
    9052              :           *pnum_clobbers = 1;
    9053              :           return 876; /* *iorqi_1_zextsi */
    9054              : 
    9055              :         case 1:
    9056              :           if (
    9057              : #line 14049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9058              : (TARGET_APX_NDD && TARGET_APX_NF
    9059              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9060              :             return 883; /* *iorhi_1_zextsi_nf */
    9061              :           if (pnum_clobbers == NULL
    9062              :               || !
    9063              : #line 14049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9064              : (TARGET_APX_NDD && true
    9065              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9066              :             return -1;
    9067              :           *pnum_clobbers = 1;
    9068              :           return 884; /* *iorhi_1_zextsi */
    9069              : 
    9070              :         case 2:
    9071              :           if (
    9072              : #line 14035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9073              : (TARGET_APX_NDD && TARGET_APX_NF
    9074              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9075              :             return 879; /* *iorqi_1_zextdi_nf */
    9076              :           if (pnum_clobbers == NULL
    9077              :               || !
    9078              : #line 14035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9079              : (TARGET_APX_NDD && true
    9080              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9081              :             return -1;
    9082              :           *pnum_clobbers = 1;
    9083              :           return 880; /* *iorqi_1_zextdi */
    9084              : 
    9085              :         case 3:
    9086              :           if (
    9087              : #line 14049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9088              : (TARGET_APX_NDD && TARGET_APX_NF
    9089              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9090              :             return 887; /* *iorhi_1_zextdi_nf */
    9091              :           if (pnum_clobbers == NULL
    9092              :               || !
    9093              : #line 14049 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9094              : (TARGET_APX_NDD && true
    9095              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9096              :             return -1;
    9097              :           *pnum_clobbers = 1;
    9098              :           return 888; /* *iorhi_1_zextdi */
    9099              : 
    9100              :         case 4:
    9101              :           if (!
    9102              : #line 14065 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9103              : (TARGET_64BIT
    9104              :    && ix86_binary_operator_ok (IOR, SImode, operands, TARGET_APX_NDD)))
    9105              :             return -1;
    9106              :           *pnum_clobbers = 1;
    9107              :           return 891; /* *iorsi_1_zext */
    9108              : 
    9109              :         default:
    9110              :           return -1;
    9111              :         }
    9112              : 
    9113              :     case XOR:
    9114              :       return recog_79 (x1, insn, pnum_clobbers);
    9115              : 
    9116              :     case NEG:
    9117              :       x5 = XEXP (x4, 0);
    9118              :       operands[1] = x5;
    9119              :       switch (pattern282 (x3, pnum_clobbers))
    9120              :         {
    9121              :         case 0:
    9122              :           if (
    9123              : #line 14696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9124              : (TARGET_APX_NDD && TARGET_APX_NF))
    9125              :             return 996; /* *negqi_1_zextsi_nf */
    9126              :           if (pnum_clobbers == NULL
    9127              :               || !
    9128              : #line 14696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9129              : (TARGET_APX_NDD && true))
    9130              :             return -1;
    9131              :           *pnum_clobbers = 1;
    9132              :           return 997; /* *negqi_1_zextsi */
    9133              : 
    9134              :         case 1:
    9135              :           if (
    9136              : #line 14706 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9137              : (TARGET_APX_NDD && TARGET_APX_NF))
    9138              :             return 1000; /* *neghi_1_zextsi_nf */
    9139              :           if (pnum_clobbers == NULL
    9140              :               || !
    9141              : #line 14706 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9142              : (TARGET_APX_NDD && true))
    9143              :             return -1;
    9144              :           *pnum_clobbers = 1;
    9145              :           return 1001; /* *neghi_1_zextsi */
    9146              : 
    9147              :         case 2:
    9148              :           if (
    9149              : #line 14696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9150              : (TARGET_APX_NDD && TARGET_APX_NF))
    9151              :             return 998; /* *negqi_1_zextdi_nf */
    9152              :           if (pnum_clobbers == NULL
    9153              :               || !
    9154              : #line 14696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9155              : (TARGET_APX_NDD && true))
    9156              :             return -1;
    9157              :           *pnum_clobbers = 1;
    9158              :           return 999; /* *negqi_1_zextdi */
    9159              : 
    9160              :         case 3:
    9161              :           if (
    9162              : #line 14706 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9163              : (TARGET_APX_NDD && TARGET_APX_NF))
    9164              :             return 1002; /* *neghi_1_zextdi_nf */
    9165              :           if (pnum_clobbers == NULL
    9166              :               || !
    9167              : #line 14706 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9168              : (TARGET_APX_NDD && true))
    9169              :             return -1;
    9170              :           *pnum_clobbers = 1;
    9171              :           return 1003; /* *neghi_1_zextdi */
    9172              : 
    9173              :         case 4:
    9174              :           if (!
    9175              : #line 14717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9176              : (TARGET_64BIT
    9177              :    && ix86_unary_operator_ok (NEG, SImode, operands, TARGET_APX_NDD)))
    9178              :             return -1;
    9179              :           *pnum_clobbers = 1;
    9180              :           return 1004; /* *negsi_1_zext */
    9181              : 
    9182              :         default:
    9183              :           return -1;
    9184              :         }
    9185              : 
    9186              :     case NOT:
    9187              :       x5 = XEXP (x4, 0);
    9188              :       operands[1] = x5;
    9189              :       switch (GET_MODE (operands[0]))
    9190              :         {
    9191              :         case E_SImode:
    9192              :           switch (pattern281 (x3))
    9193              :             {
    9194              :             case 0:
    9195              :               if (!
    9196              : #line 15347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9197              : (TARGET_APX_NDD))
    9198              :                 return -1;
    9199              :               return 1068; /* *one_cmplqi2_1_zextsi */
    9200              : 
    9201              :             case 1:
    9202              :               if (!
    9203              : #line 15356 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9204              : (TARGET_APX_NDD))
    9205              :                 return -1;
    9206              :               return 1070; /* *one_cmplhi2_1_zextsi */
    9207              : 
    9208              :             default:
    9209              :               return -1;
    9210              :             }
    9211              : 
    9212              :         case E_DImode:
    9213              :           if (!register_operand (operands[0], E_DImode)
    9214              :               || GET_MODE (x3) != E_DImode)
    9215              :             return -1;
    9216              :           switch (GET_MODE (x4))
    9217              :             {
    9218              :             case E_QImode:
    9219              :               if (!nonimmediate_operand (operands[1], E_QImode)
    9220              :                   || !
    9221              : #line 15347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9222              : (TARGET_APX_NDD))
    9223              :                 return -1;
    9224              :               return 1069; /* *one_cmplqi2_1_zextdi */
    9225              : 
    9226              :             case E_HImode:
    9227              :               if (!nonimmediate_operand (operands[1], E_HImode)
    9228              :                   || !
    9229              : #line 15356 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9230              : (TARGET_APX_NDD))
    9231              :                 return -1;
    9232              :               return 1071; /* *one_cmplhi2_1_zextdi */
    9233              : 
    9234              :             case E_SImode:
    9235              :               if (!nonimmediate_operand (operands[1], E_SImode)
    9236              :                   || !
    9237              : #line 15365 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9238              : (TARGET_64BIT
    9239              :    && ix86_unary_operator_ok (NOT, SImode, operands, TARGET_APX_NDD)))
    9240              :                 return -1;
    9241              :               return 1072; /* *one_cmplsi2_1_zext */
    9242              : 
    9243              :             default:
    9244              :               return -1;
    9245              :             }
    9246              : 
    9247              :         default:
    9248              :           return -1;
    9249              :         }
    9250              : 
    9251              :     case ASHIFT:
    9252              :       switch (pattern116 (x3))
    9253              :         {
    9254              :         case 0:
    9255              :           if (register_operand (operands[2], E_SImode)
    9256              :               && 
    9257              : #line 16336 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9258              : (TARGET_64BIT && TARGET_BMI2))
    9259              :             return 1124; /* *bmi2_ashlsi3_1_zext */
    9260              :           if (pnum_clobbers == NULL
    9261              :               || !nonmemory_operand (operands[2], E_QImode)
    9262              :               || !
    9263              : #line 16369 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9264              : (TARGET_64BIT
    9265              :    && ix86_binary_operator_ok (ASHIFT, SImode, operands, TARGET_APX_NDD)))
    9266              :             return -1;
    9267              :           *pnum_clobbers = 1;
    9268              :           return 1135; /* *ashlsi3_1_zext */
    9269              : 
    9270              :         case 1:
    9271              :           if (
    9272              : #line 16346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9273              : (TARGET_APX_NDD && TARGET_APX_NF))
    9274              :             return 1129; /* *ashlqi3_1_zextdi_nf */
    9275              :           if (pnum_clobbers == NULL
    9276              :               || !
    9277              : #line 16346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9278              : (TARGET_APX_NDD && true))
    9279              :             return -1;
    9280              :           *pnum_clobbers = 1;
    9281              :           return 1130; /* *ashlqi3_1_zextdi */
    9282              : 
    9283              :         case 2:
    9284              :           if (
    9285              : #line 16357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9286              : (TARGET_APX_NDD && TARGET_APX_NF))
    9287              :             return 1133; /* *ashlhi3_1_zextdi_nf */
    9288              :           if (pnum_clobbers == NULL
    9289              :               || !
    9290              : #line 16357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9291              : (TARGET_APX_NDD && true))
    9292              :             return -1;
    9293              :           *pnum_clobbers = 1;
    9294              :           return 1134; /* *ashlhi3_1_zextdi */
    9295              : 
    9296              :         case 3:
    9297              :           if (
    9298              : #line 16346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9299              : (TARGET_APX_NDD && TARGET_APX_NF))
    9300              :             return 1127; /* *ashlqi3_1_zextsi_nf */
    9301              :           if (pnum_clobbers == NULL
    9302              :               || !
    9303              : #line 16346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9304              : (TARGET_APX_NDD && true))
    9305              :             return -1;
    9306              :           *pnum_clobbers = 1;
    9307              :           return 1128; /* *ashlqi3_1_zextsi */
    9308              : 
    9309              :         case 4:
    9310              :           if (
    9311              : #line 16357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9312              : (TARGET_APX_NDD && TARGET_APX_NF))
    9313              :             return 1131; /* *ashlhi3_1_zextsi_nf */
    9314              :           if (pnum_clobbers == NULL
    9315              :               || !
    9316              : #line 16357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9317              : (TARGET_APX_NDD && true))
    9318              :             return -1;
    9319              :           *pnum_clobbers = 1;
    9320              :           return 1132; /* *ashlhi3_1_zextsi */
    9321              : 
    9322              :         default:
    9323              :           return -1;
    9324              :         }
    9325              : 
    9326              :     case ASHIFTRT:
    9327              :       if (GET_MODE (x4) == E_SImode
    9328              :           && register_operand (operands[0], E_DImode))
    9329              :         {
    9330              :           res = recog_73 (x1, insn, pnum_clobbers);
    9331              :           if (res >= 0)
    9332              :             return res;
    9333              :         }
    9334              :       x5 = XEXP (x4, 0);
    9335              :       operands[1] = x5;
    9336              :       switch (pattern283 (x3, pnum_clobbers))
    9337              :         {
    9338              :         case 0:
    9339              :           if (
    9340              : #line 17791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9341              : (TARGET_APX_NDD && TARGET_APX_NF))
    9342              :             return 1224; /* *ashrqi3_1_zextsi_nf */
    9343              :           if (pnum_clobbers == NULL
    9344              :               || !
    9345              : #line 17791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9346              : (TARGET_APX_NDD && true))
    9347              :             return -1;
    9348              :           *pnum_clobbers = 1;
    9349              :           return 1225; /* *ashrqi3_1_zextsi */
    9350              : 
    9351              :         case 1:
    9352              :           if (
    9353              : #line 17802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9354              : (TARGET_APX_NDD && TARGET_APX_NF))
    9355              :             return 1232; /* *ashrhi3_1_zextsi_nf */
    9356              :           if (pnum_clobbers == NULL
    9357              :               || !
    9358              : #line 17802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9359              : (TARGET_APX_NDD && true))
    9360              :             return -1;
    9361              :           *pnum_clobbers = 1;
    9362              :           return 1233; /* *ashrhi3_1_zextsi */
    9363              : 
    9364              :         case 2:
    9365              :           if (
    9366              : #line 17791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9367              : (TARGET_APX_NDD && TARGET_APX_NF))
    9368              :             return 1228; /* *ashrqi3_1_zextdi_nf */
    9369              :           if (pnum_clobbers == NULL
    9370              :               || !
    9371              : #line 17791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9372              : (TARGET_APX_NDD && true))
    9373              :             return -1;
    9374              :           *pnum_clobbers = 1;
    9375              :           return 1229; /* *ashrqi3_1_zextdi */
    9376              : 
    9377              :         case 3:
    9378              :           if (
    9379              : #line 17802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9380              : (TARGET_APX_NDD && TARGET_APX_NF))
    9381              :             return 1236; /* *ashrhi3_1_zextdi_nf */
    9382              :           if (pnum_clobbers == NULL
    9383              :               || !
    9384              : #line 17802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9385              : (TARGET_APX_NDD && true))
    9386              :             return -1;
    9387              :           *pnum_clobbers = 1;
    9388              :           return 1237; /* *ashrhi3_1_zextdi */
    9389              : 
    9390              :         case 4:
    9391              :           if (!
    9392              : #line 17814 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9393              : (TARGET_64BIT
    9394              :    && ix86_binary_operator_ok (ASHIFTRT, SImode, operands, TARGET_APX_NDD)))
    9395              :             return -1;
    9396              :           *pnum_clobbers = 1;
    9397              :           return 1239; /* *ashrsi3_1_zext */
    9398              : 
    9399              :         default:
    9400              :           return -1;
    9401              :         }
    9402              : 
    9403              :     case LSHIFTRT:
    9404              :       switch (pattern116 (x3))
    9405              :         {
    9406              :         case 0:
    9407              :           if (register_operand (operands[2], E_SImode)
    9408              :               && 
    9409              : #line 17781 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9410              : (TARGET_64BIT && TARGET_BMI2))
    9411              :             return 1216; /* *bmi2_lshrsi3_1_zext */
    9412              :           if (pnum_clobbers == NULL
    9413              :               || !nonmemory_operand (operands[2], E_QImode)
    9414              :               || !
    9415              : #line 17814 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9416              : (TARGET_64BIT
    9417              :    && ix86_binary_operator_ok (LSHIFTRT, SImode, operands, TARGET_APX_NDD)))
    9418              :             return -1;
    9419              :           *pnum_clobbers = 1;
    9420              :           return 1238; /* *lshrsi3_1_zext */
    9421              : 
    9422              :         case 1:
    9423              :           if (
    9424              : #line 17791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9425              : (TARGET_APX_NDD && TARGET_APX_NF))
    9426              :             return 1226; /* *lshrqi3_1_zextdi_nf */
    9427              :           if (pnum_clobbers == NULL
    9428              :               || !
    9429              : #line 17791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9430              : (TARGET_APX_NDD && true))
    9431              :             return -1;
    9432              :           *pnum_clobbers = 1;
    9433              :           return 1227; /* *lshrqi3_1_zextdi */
    9434              : 
    9435              :         case 2:
    9436              :           if (
    9437              : #line 17802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9438              : (TARGET_APX_NDD && TARGET_APX_NF))
    9439              :             return 1234; /* *lshrhi3_1_zextdi_nf */
    9440              :           if (pnum_clobbers == NULL
    9441              :               || !
    9442              : #line 17802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9443              : (TARGET_APX_NDD && true))
    9444              :             return -1;
    9445              :           *pnum_clobbers = 1;
    9446              :           return 1235; /* *lshrhi3_1_zextdi */
    9447              : 
    9448              :         case 3:
    9449              :           if (
    9450              : #line 17791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9451              : (TARGET_APX_NDD && TARGET_APX_NF))
    9452              :             return 1222; /* *lshrqi3_1_zextsi_nf */
    9453              :           if (pnum_clobbers == NULL
    9454              :               || !
    9455              : #line 17791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9456              : (TARGET_APX_NDD && true))
    9457              :             return -1;
    9458              :           *pnum_clobbers = 1;
    9459              :           return 1223; /* *lshrqi3_1_zextsi */
    9460              : 
    9461              :         case 4:
    9462              :           if (
    9463              : #line 17802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9464              : (TARGET_APX_NDD && TARGET_APX_NF))
    9465              :             return 1230; /* *lshrhi3_1_zextsi_nf */
    9466              :           if (pnum_clobbers == NULL
    9467              :               || !
    9468              : #line 17802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9469              : (TARGET_APX_NDD && true))
    9470              :             return -1;
    9471              :           *pnum_clobbers = 1;
    9472              :           return 1231; /* *lshrhi3_1_zextsi */
    9473              : 
    9474              :         default:
    9475              :           return -1;
    9476              :         }
    9477              : 
    9478              :     case ROTATERT:
    9479              :       switch (pattern116 (x3))
    9480              :         {
    9481              :         case 0:
    9482              :           if (const_0_to_31_operand (operands[2], E_QImode)
    9483              :               && 
    9484              : #line 18920 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9485              : (TARGET_64BIT && TARGET_BMI2 && !optimize_function_for_size_p (cfun)))
    9486              :             return 1382; /* *bmi2_rorxsi3_1_zext */
    9487              :           if (pnum_clobbers == NULL
    9488              :               || !nonmemory_operand (operands[2], E_QImode)
    9489              :               || !
    9490              : #line 18953 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9491              : (TARGET_64BIT && ix86_binary_operator_ok (ROTATERT, SImode, operands)))
    9492              :             return -1;
    9493              :           *pnum_clobbers = 1;
    9494              :           return 1404; /* *rotrsi3_1_zext */
    9495              : 
    9496              :         case 1:
    9497              :           if (
    9498              : #line 18930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9499              : (TARGET_APX_NDD && TARGET_APX_NF))
    9500              :             return 1393; /* *rotrqi3_1_zextdi_nf */
    9501              :           if (pnum_clobbers == NULL
    9502              :               || !
    9503              : #line 18930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9504              : (TARGET_APX_NDD && true))
    9505              :             return -1;
    9506              :           *pnum_clobbers = 1;
    9507              :           return 1394; /* *rotrqi3_1_zextdi */
    9508              : 
    9509              :         case 2:
    9510              :           if (
    9511              : #line 18941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9512              : (TARGET_APX_NDD && TARGET_APX_NF))
    9513              :             return 1401; /* *rotrhi3_1_zextdi_nf */
    9514              :           if (pnum_clobbers == NULL
    9515              :               || !
    9516              : #line 18941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9517              : (TARGET_APX_NDD && true))
    9518              :             return -1;
    9519              :           *pnum_clobbers = 1;
    9520              :           return 1402; /* *rotrhi3_1_zextdi */
    9521              : 
    9522              :         case 3:
    9523              :           if (
    9524              : #line 18930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9525              : (TARGET_APX_NDD && TARGET_APX_NF))
    9526              :             return 1389; /* *rotrqi3_1_zextsi_nf */
    9527              :           if (pnum_clobbers == NULL
    9528              :               || !
    9529              : #line 18930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9530              : (TARGET_APX_NDD && true))
    9531              :             return -1;
    9532              :           *pnum_clobbers = 1;
    9533              :           return 1390; /* *rotrqi3_1_zextsi */
    9534              : 
    9535              :         case 4:
    9536              :           if (
    9537              : #line 18941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9538              : (TARGET_APX_NDD && TARGET_APX_NF))
    9539              :             return 1397; /* *rotrhi3_1_zextsi_nf */
    9540              :           if (pnum_clobbers == NULL
    9541              :               || !
    9542              : #line 18941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9543              : (TARGET_APX_NDD && true))
    9544              :             return -1;
    9545              :           *pnum_clobbers = 1;
    9546              :           return 1398; /* *rotrhi3_1_zextsi */
    9547              : 
    9548              :         default:
    9549              :           return -1;
    9550              :         }
    9551              : 
    9552              :     case ROTATE:
    9553              :       x5 = XEXP (x4, 0);
    9554              :       operands[1] = x5;
    9555              :       switch (pattern283 (x3, pnum_clobbers))
    9556              :         {
    9557              :         case 0:
    9558              :           if (
    9559              : #line 18930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9560              : (TARGET_APX_NDD && TARGET_APX_NF))
    9561              :             return 1387; /* *rotlqi3_1_zextsi_nf */
    9562              :           if (pnum_clobbers == NULL
    9563              :               || !
    9564              : #line 18930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9565              : (TARGET_APX_NDD && true))
    9566              :             return -1;
    9567              :           *pnum_clobbers = 1;
    9568              :           return 1388; /* *rotlqi3_1_zextsi */
    9569              : 
    9570              :         case 1:
    9571              :           if (
    9572              : #line 18941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9573              : (TARGET_APX_NDD && TARGET_APX_NF))
    9574              :             return 1395; /* *rotlhi3_1_zextsi_nf */
    9575              :           if (pnum_clobbers == NULL
    9576              :               || !
    9577              : #line 18941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9578              : (TARGET_APX_NDD && true))
    9579              :             return -1;
    9580              :           *pnum_clobbers = 1;
    9581              :           return 1396; /* *rotlhi3_1_zextsi */
    9582              : 
    9583              :         case 2:
    9584              :           if (
    9585              : #line 18930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9586              : (TARGET_APX_NDD && TARGET_APX_NF))
    9587              :             return 1391; /* *rotlqi3_1_zextdi_nf */
    9588              :           if (pnum_clobbers == NULL
    9589              :               || !
    9590              : #line 18930 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9591              : (TARGET_APX_NDD && true))
    9592              :             return -1;
    9593              :           *pnum_clobbers = 1;
    9594              :           return 1392; /* *rotlqi3_1_zextdi */
    9595              : 
    9596              :         case 3:
    9597              :           if (
    9598              : #line 18941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9599              : (TARGET_APX_NDD && TARGET_APX_NF))
    9600              :             return 1399; /* *rotlhi3_1_zextdi_nf */
    9601              :           if (pnum_clobbers == NULL
    9602              :               || !
    9603              : #line 18941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9604              : (TARGET_APX_NDD && true))
    9605              :             return -1;
    9606              :           *pnum_clobbers = 1;
    9607              :           return 1400; /* *rotlhi3_1_zextdi */
    9608              : 
    9609              :         case 4:
    9610              :           if (!
    9611              : #line 18953 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9612              : (TARGET_64BIT && ix86_binary_operator_ok (ROTATE, SImode, operands)))
    9613              :             return -1;
    9614              :           *pnum_clobbers = 1;
    9615              :           return 1403; /* *rotlsi3_1_zext */
    9616              : 
    9617              :         default:
    9618              :           return -1;
    9619              :         }
    9620              : 
    9621              :     case CTZ:
    9622              :       if (pattern117 (x3, pnum_clobbers, 
    9623              : E_SImode, 
    9624              : E_DImode) != 0
    9625              :           || !
    9626              : #line 21532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9627              : (TARGET_64BIT))
    9628              :         return -1;
    9629              :       *pnum_clobbers = 1;
    9630              :       return 1553; /* *ctzsidi2_uext */
    9631              : 
    9632              :     case CLZ:
    9633              :       if (pattern117 (x3, pnum_clobbers, 
    9634              : E_SImode, 
    9635              : E_DImode) != 0
    9636              :           || !
    9637              : #line 21969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9638              : (TARGET_LZCNT && TARGET_64BIT))
    9639              :         return -1;
    9640              :       *pnum_clobbers = 1;
    9641              :       return 1577; /* *clzsi2_lzcnt_zext_2 */
    9642              : 
    9643              :     case POPCOUNT:
    9644              :       if (pnum_clobbers == NULL)
    9645              :         return -1;
    9646              :       x5 = XEXP (x4, 0);
    9647              :       operands[1] = x5;
    9648              :       switch (GET_MODE (operands[0]))
    9649              :         {
    9650              :         case E_DImode:
    9651              :           if (pattern628 (x3, 
    9652              : E_DImode, 
    9653              : E_SImode) != 0
    9654              :               || !
    9655              : #line 22808 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9656              : (TARGET_POPCNT && TARGET_64BIT))
    9657              :             return -1;
    9658              :           *pnum_clobbers = 1;
    9659              :           return 1668; /* *popcountsi2_zext_2 */
    9660              : 
    9661              :         case E_SImode:
    9662              :           if (pattern628 (x3, 
    9663              : E_SImode, 
    9664              : E_HImode) != 0
    9665              :               || !
    9666              : #line 22874 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9667              : (TARGET_POPCNT
    9668              :    && ix86_pre_reload_split ()))
    9669              :             return -1;
    9670              :           *pnum_clobbers = 1;
    9671              :           return 1671; /* *popcounthi2_2 */
    9672              : 
    9673              :         default:
    9674              :           return -1;
    9675              :         }
    9676              : 
    9677              :     case UNSPEC:
    9678              :       return recog_74 (x1, insn, pnum_clobbers);
    9679              : 
    9680              :     case IF_THEN_ELSE:
    9681              :       if (GET_MODE (x4) != E_SImode)
    9682              :         return -1;
    9683              :       x5 = XEXP (x4, 0);
    9684              :       if (!ix86_comparison_operator (x5, E_VOIDmode))
    9685              :         return -1;
    9686              :       operands[1] = x5;
    9687              :       x7 = XEXP (x5, 0);
    9688              :       if (GET_CODE (x7) != REG
    9689              :           || REGNO (x7) != 17)
    9690              :         return -1;
    9691              :       x8 = XEXP (x5, 1);
    9692              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    9693              :           || !nonimmediate_operand (operands[0], E_DImode)
    9694              :           || GET_MODE (x3) != E_DImode)
    9695              :         return -1;
    9696              :       x6 = XEXP (x4, 1);
    9697              :       operands[2] = x6;
    9698              :       if (!nonimmediate_operand (operands[2], E_SImode))
    9699              :         return -1;
    9700              :       x13 = XEXP (x4, 2);
    9701              :       operands[3] = x13;
    9702              :       if (!nonimmediate_operand (operands[3], E_SImode)
    9703              :           || !
    9704              : #line 26817 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9705              : (TARGET_64BIT
    9706              :    && TARGET_CMOVE && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
    9707              :         return -1;
    9708              :       return 1841; /* *movsicc_noc_zext_1 */
    9709              : 
    9710              :     case VEC_SELECT:
    9711              :       return recog_78 (x1, insn, pnum_clobbers);
    9712              : 
    9713              :     case SUBREG:
    9714              :       if (pattern118 (x3) != 0
    9715              :           || !
    9716              : #line 22491 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9717              : (TARGET_SSE2 && ix86_pre_reload_split ()))
    9718              :         return -1;
    9719              :       return 8605; /* *sse2_pmovskb_zexthisi */
    9720              : 
    9721              :     default:
    9722              :       return -1;
    9723              :     }
    9724              : }
    9725              : 
    9726              :  int
    9727              : recog_107 (rtx x1 ATTRIBUTE_UNUSED,
    9728              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9729              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9730              : {
    9731              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9732              :   rtx x2, x3;
    9733              :   int res ATTRIBUTE_UNUSED;
    9734              :   switch (pattern18 (x1, pnum_clobbers))
    9735              :     {
    9736              :     case 0:
    9737              :       if (!
    9738              : #line 18532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9739              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
    9740              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
    9741              :       == GET_MODE_BITSIZE (SImode)-1
    9742              :    && ix86_pre_reload_split ()))
    9743              :         return -1;
    9744              :       *pnum_clobbers = 1;
    9745              :       return 1329; /* *rotrsi3_mask_1 */
    9746              : 
    9747              :     case 1:
    9748              :       if (!(
    9749              : #line 18532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9750              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
    9751              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
    9752              :       == GET_MODE_BITSIZE (DImode)-1
    9753              :    && ix86_pre_reload_split ()) && 
    9754              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9755              : (TARGET_64BIT)))
    9756              :         return -1;
    9757              :       *pnum_clobbers = 1;
    9758              :       return 1331; /* *rotrdi3_mask_1 */
    9759              : 
    9760              :     case 2:
    9761              :       if (!
    9762              : #line 18613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9763              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
    9764              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
    9765              :    && ix86_pre_reload_split ()))
    9766              :         return -1;
    9767              :       *pnum_clobbers = 1;
    9768              :       return 1345; /* *rotrsi3_add_1 */
    9769              : 
    9770              :     case 3:
    9771              :       if (!(
    9772              : #line 18613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9773              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
    9774              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
    9775              :    && ix86_pre_reload_split ()) && 
    9776              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9777              : (TARGET_64BIT)))
    9778              :         return -1;
    9779              :       *pnum_clobbers = 1;
    9780              :       return 1347; /* *rotrdi3_add_1 */
    9781              : 
    9782              :     case 4:
    9783              :       if (!
    9784              : #line 18682 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9785              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
    9786              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
    9787              :    && ix86_pre_reload_split ()))
    9788              :         return -1;
    9789              :       *pnum_clobbers = 1;
    9790              :       return 1361; /* *rotrsi3_sub_1 */
    9791              : 
    9792              :     case 5:
    9793              :       if (!(
    9794              : #line 18682 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9795              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
    9796              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
    9797              :    && ix86_pre_reload_split ()) && 
    9798              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9799              : (TARGET_64BIT)))
    9800              :         return -1;
    9801              :       *pnum_clobbers = 1;
    9802              :       return 1363; /* *rotrdi3_sub_1 */
    9803              : 
    9804              :     case 6:
    9805              :       x2 = XEXP (x1, 1);
    9806              :       x3 = XEXP (x2, 1);
    9807              :       switch (GET_CODE (x3))
    9808              :         {
    9809              :         case SUBREG:
    9810              :           switch (pattern454 (x2, pnum_clobbers))
    9811              :             {
    9812              :             case 0:
    9813              :               if (
    9814              : #line 18484 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9815              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
    9816              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
    9817              :       == GET_MODE_BITSIZE (SImode)-1
    9818              :    && ix86_pre_reload_split ()))
    9819              :                 {
    9820              :                   *pnum_clobbers = 1;
    9821              :                   return 1321; /* *rotrsi3_mask */
    9822              :                 }
    9823              :               break;
    9824              : 
    9825              :             case 1:
    9826              :               if ((
    9827              : #line 18484 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9828              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
    9829              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
    9830              :       == GET_MODE_BITSIZE (DImode)-1
    9831              :    && ix86_pre_reload_split ()) && 
    9832              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9833              : (TARGET_64BIT)))
    9834              :                 {
    9835              :                   *pnum_clobbers = 1;
    9836              :                   return 1323; /* *rotrdi3_mask */
    9837              :                 }
    9838              :               break;
    9839              : 
    9840              :             case 2:
    9841              :               if (
    9842              : #line 18577 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9843              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
    9844              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
    9845              :    && ix86_pre_reload_split ()))
    9846              :                 {
    9847              :                   *pnum_clobbers = 1;
    9848              :                   return 1337; /* *rotrsi3_add */
    9849              :                 }
    9850              :               break;
    9851              : 
    9852              :             case 3:
    9853              :               if ((
    9854              : #line 18577 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9855              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
    9856              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
    9857              :    && ix86_pre_reload_split ()) && 
    9858              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9859              : (TARGET_64BIT)))
    9860              :                 {
    9861              :                   *pnum_clobbers = 1;
    9862              :                   return 1339; /* *rotrdi3_add */
    9863              :                 }
    9864              :               break;
    9865              : 
    9866              :             case 4:
    9867              :               if (
    9868              : #line 18646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9869              : (ix86_binary_operator_ok (ROTATERT, SImode, operands)
    9870              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
    9871              :    && ix86_pre_reload_split ()))
    9872              :                 {
    9873              :                   *pnum_clobbers = 1;
    9874              :                   return 1353; /* *rotrsi3_sub */
    9875              :                 }
    9876              :               break;
    9877              : 
    9878              :             case 5:
    9879              :               if ((
    9880              : #line 18646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9881              : (ix86_binary_operator_ok (ROTATERT, DImode, operands)
    9882              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
    9883              :    && ix86_pre_reload_split ()) && 
    9884              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9885              : (TARGET_64BIT)))
    9886              :                 {
    9887              :                   *pnum_clobbers = 1;
    9888              :                   return 1355; /* *rotrdi3_sub */
    9889              :                 }
    9890              :               break;
    9891              : 
    9892              :             default:
    9893              :               break;
    9894              :             }
    9895              :           break;
    9896              : 
    9897              :         case CONST_INT:
    9898              :           operands[2] = x3;
    9899              :           switch (GET_MODE (operands[0]))
    9900              :             {
    9901              :             case E_DImode:
    9902              :               if (pattern624 (x2, pnum_clobbers, 
    9903              : E_DImode) == 0
    9904              :                   && const_1_to_31_operand (operands[2], E_QImode)
    9905              :                   && 
    9906              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9907              : (!TARGET_64BIT))
    9908              :                 {
    9909              :                   *pnum_clobbers = 2;
    9910              :                   return 1366; /* ix86_rotrdi3_doubleword */
    9911              :                 }
    9912              :               break;
    9913              : 
    9914              :             case E_SImode:
    9915              :               if (register_operand (operands[0], E_SImode)
    9916              :                   && GET_MODE (x2) == E_SImode
    9917              :                   && nonimmediate_operand (operands[1], E_SImode)
    9918              :                   && const_0_to_31_operand (operands[2], E_QImode)
    9919              :                   && 
    9920              : #line 18828 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9921              : (TARGET_BMI2 && !optimize_function_for_size_p (cfun)))
    9922              :                 return 1372; /* *bmi2_rorxsi3_1 */
    9923              :               break;
    9924              : 
    9925              :             default:
    9926              :               break;
    9927              :             }
    9928              :           if (register_operand (operands[0], E_DImode)
    9929              :               && GET_MODE (x2) == E_DImode)
    9930              :             {
    9931              :               if (XWINT (x3, 0) == 32L
    9932              :                   && register_operand (operands[1], E_DImode)
    9933              :                   && 
    9934              : #line 18787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9935              : (!TARGET_64BIT))
    9936              :                 return 1369; /* rotr32di2_doubleword */
    9937              :               if (nonimmediate_operand (operands[1], E_DImode))
    9938              :                 {
    9939              :                   operands[2] = x3;
    9940              :                   if (const_0_to_63_operand (operands[2], E_QImode)
    9941              :                       && (
    9942              : #line 18828 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9943              : (TARGET_BMI2 && !optimize_function_for_size_p (cfun)) && 
    9944              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9945              : (TARGET_64BIT)))
    9946              :                     return 1373; /* *bmi2_rorxdi3_1 */
    9947              :                 }
    9948              :             }
    9949              :           break;
    9950              : 
    9951              :         default:
    9952              :           break;
    9953              :         }
    9954              :       operands[2] = x3;
    9955              :       if (!nonmemory_operand (operands[2], E_QImode))
    9956              :         return -1;
    9957              :       switch (pattern14 (x2))
    9958              :         {
    9959              :         case 0:
    9960              :           if (
    9961              : #line 18838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9962              : (ix86_binary_operator_ok (ROTATERT, SImode, operands, TARGET_APX_NDD)
    9963              :    && TARGET_APX_NF))
    9964              :             return 1376; /* *rotrsi3_1_nf */
    9965              :           if (pnum_clobbers == NULL
    9966              :               || !
    9967              : #line 18838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9968              : (ix86_binary_operator_ok (ROTATERT, SImode, operands, TARGET_APX_NDD)
    9969              :    && true))
    9970              :             return -1;
    9971              :           *pnum_clobbers = 1;
    9972              :           return 1377; /* *rotrsi3_1 */
    9973              : 
    9974              :         case 1:
    9975              :           if ((
    9976              : #line 18838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9977              : (ix86_binary_operator_ok (ROTATERT, DImode, operands, TARGET_APX_NDD)
    9978              :    && TARGET_APX_NF) && 
    9979              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9980              : (TARGET_64BIT)))
    9981              :             return 1380; /* *rotrdi3_1_nf */
    9982              :           if (pnum_clobbers == NULL
    9983              :               || !(
    9984              : #line 18838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9985              : (ix86_binary_operator_ok (ROTATERT, DImode, operands, TARGET_APX_NDD)
    9986              :    && true) && 
    9987              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9988              : (TARGET_64BIT)))
    9989              :             return -1;
    9990              :           *pnum_clobbers = 1;
    9991              :           return 1381; /* *rotrdi3_1 */
    9992              : 
    9993              :         default:
    9994              :           return -1;
    9995              :         }
    9996              : 
    9997              :     default:
    9998              :       return -1;
    9999              :     }
   10000              : }
   10001              : 
   10002              :  int
   10003              : recog_119 (rtx x1 ATTRIBUTE_UNUSED,
   10004              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10005              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10006              : {
   10007              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10008              :   rtx x2, x3, x4;
   10009              :   int res ATTRIBUTE_UNUSED;
   10010              :   x2 = XEXP (x1, 0);
   10011              :   operands[0] = x2;
   10012              :   x3 = XEXP (x1, 1);
   10013              :   x4 = XEXP (x3, 0);
   10014              :   switch (GET_CODE (x4))
   10015              :     {
   10016              :     case REG:
   10017              :     case SUBREG:
   10018              :     case MEM:
   10019              :       operands[1] = x4;
   10020              :       switch (pattern132 (x3))
   10021              :         {
   10022              :         case 0:
   10023              :           if (
   10024              : #line 22660 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10025              : (TARGET_APX_NF && TARGET_POPCNT))
   10026              :             return 1658; /* popcountsi2_nf */
   10027              :           if (pnum_clobbers == NULL
   10028              :               || !
   10029              : #line 22686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10030              : (TARGET_POPCNT))
   10031              :             return -1;
   10032              :           *pnum_clobbers = 1;
   10033              :           return 1660; /* popcountsi2 */
   10034              : 
   10035              :         case 1:
   10036              :           if ((
   10037              : #line 22660 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10038              : (TARGET_APX_NF && TARGET_POPCNT) && 
   10039              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10040              : (TARGET_64BIT)))
   10041              :             return 1659; /* popcountdi2_nf */
   10042              :           if (pnum_clobbers == NULL
   10043              :               || !(
   10044              : #line 22686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10045              : (TARGET_POPCNT) && 
   10046              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10047              : (TARGET_64BIT)))
   10048              :             return -1;
   10049              :           *pnum_clobbers = 1;
   10050              :           return 1661; /* popcountdi2 */
   10051              : 
   10052              :         default:
   10053              :           return -1;
   10054              :         }
   10055              : 
   10056              :     case ZERO_EXTEND:
   10057              :       if (pattern117 (x3, pnum_clobbers, 
   10058              : E_HImode, 
   10059              : E_SImode) != 0
   10060              :           || !
   10061              : #line 22856 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10062              : (TARGET_POPCNT
   10063              :    && ix86_pre_reload_split ()))
   10064              :         return -1;
   10065              :       *pnum_clobbers = 1;
   10066              :       return 1670; /* *popcounthi2_1 */
   10067              : 
   10068              :     default:
   10069              :       return -1;
   10070              :     }
   10071              : }
   10072              : 
   10073              :  int
   10074              : recog_123 (rtx x1 ATTRIBUTE_UNUSED,
   10075              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10076              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10077              : {
   10078              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10079              :   rtx x2, x3, x4, x5, x6;
   10080              :   int res ATTRIBUTE_UNUSED;
   10081              :   x2 = XEXP (x1, 1);
   10082              :   x3 = XEXP (x2, 0);
   10083              :   if (GET_CODE (x3) != SUBREG
   10084              :       || maybe_ne (SUBREG_BYTE (x3), 0)
   10085              :       || GET_MODE (x3) != E_V2DImode)
   10086              :     return -1;
   10087              :   x4 = XEXP (x2, 1);
   10088              :   x5 = XVECEXP (x4, 0, 0);
   10089              :   if (XWINT (x5, 0) != 0L
   10090              :       || GET_MODE (x2) != E_DImode)
   10091              :     return -1;
   10092              :   x6 = XEXP (x3, 0);
   10093              :   switch (pattern1220 (x6))
   10094              :     {
   10095              :     case 0:
   10096              :       if (pshufb_truncv8hiv8qi_operand (operands[2], E_V16QImode)
   10097              :           && 
   10098              : #line 15707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10099              : (TARGET_AVX512VL && TARGET_AVX512BW && ix86_pre_reload_split ()))
   10100              :         return 7330; /* *avx512f_pshufb_truncv8hiv8qi_1 */
   10101              :       if (!pshufb_truncv4siv4hi_operand (operands[2], E_V16QImode)
   10102              :           || !
   10103              : #line 16062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10104              : (TARGET_AVX512VL && ix86_pre_reload_split ()))
   10105              :         return -1;
   10106              :       return 7415; /* *avx512f_pshufb_truncv4siv4hi_1 */
   10107              : 
   10108              :     case 1:
   10109              :       if (!
   10110              : #line 16303 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10111              : (TARGET_AVX512VL && ix86_pre_reload_split ()))
   10112              :         return -1;
   10113              :       return 7464; /* *avx512f_pshufd_truncv2div2si_1 */
   10114              : 
   10115              :     default:
   10116              :       return -1;
   10117              :     }
   10118              : }
   10119              : 
   10120              :  int
   10121              : recog_124 (rtx x1 ATTRIBUTE_UNUSED,
   10122              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10123              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10124              : {
   10125              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10126              :   rtx x2, x3, x4, x5, x6;
   10127              :   int res ATTRIBUTE_UNUSED;
   10128              :   x2 = XEXP (x1, 1);
   10129              :   x3 = XEXP (x2, 1);
   10130              :   if (GET_CODE (x3) != PARALLEL
   10131              :       || XVECLEN (x3, 0) != 1)
   10132              :     return -1;
   10133              :   x4 = XVECEXP (x3, 0, 0);
   10134              :   if (GET_CODE (x4) != CONST_INT)
   10135              :     return -1;
   10136              :   x5 = XEXP (x1, 0);
   10137              :   operands[0] = x5;
   10138              :   x6 = XEXP (x2, 0);
   10139              :   operands[1] = x6;
   10140              :   res = recog_122 (x1, insn, pnum_clobbers);
   10141              :   if (res >= 0)
   10142              :     return res;
   10143              :   if (register_operand (operands[0], E_DImode))
   10144              :     {
   10145              :       res = recog_123 (x1, insn, pnum_clobbers);
   10146              :       if (res >= 0)
   10147              :         return res;
   10148              :     }
   10149              :   if (!nonimmediate_operand (operands[0], E_DImode)
   10150              :       || XWINT (x4, 0) != 0L
   10151              :       || GET_MODE (x2) != E_DImode)
   10152              :     return -1;
   10153              :   operands[1] = x6;
   10154              :   if (!nonimmediate_operand (operands[1], E_V2DImode))
   10155              :     return -1;
   10156              :   if ((
   10157              : #line 21497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10158              : (TARGET_SSE && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   10159              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10160              : (TARGET_64BIT)))
   10161              :     return 8512; /* *vec_extractv2di_0 */
   10162              :   if (!
   10163              : #line 21511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10164              : (TARGET_SSE && !TARGET_64BIT
   10165              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
   10166              :     return -1;
   10167              :   return 8513; /* *vec_extractv2di_0_sse */
   10168              : }
   10169              : 
   10170              :  int
   10171              : recog_126 (rtx x1 ATTRIBUTE_UNUSED,
   10172              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10173              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10174              : {
   10175              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10176              :   rtx x2;
   10177              :   int res ATTRIBUTE_UNUSED;
   10178              :   x2 = XEXP (x1, 1);
   10179              :   switch (pattern641 (x2))
   10180              :     {
   10181              :     case 0:
   10182              :       if (pattern644 (x2, 
   10183              : E_V32HImode, 
   10184              : E_SImode, 
   10185              : E_V32HFmode) != 0
   10186              :           || !(
   10187              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10188              : (TARGET_AVX512F) && 
   10189              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10190              : (TARGET_AVX512FP16)))
   10191              :         return -1;
   10192              :       return 4451; /* avx512fp16_vcvtph2w_v32hi_mask */
   10193              : 
   10194              :     case 1:
   10195              :       switch (pattern997 (x2))
   10196              :         {
   10197              :         case 0:
   10198              :           if (!(
   10199              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10200              : (TARGET_AVX512F) && 
   10201              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10202              : (TARGET_AVX512FP16)))
   10203              :             return -1;
   10204              :           return 4459; /* avx512fp16_vcvtph2dq_v16si_mask */
   10205              : 
   10206              :         case 1:
   10207              :           if (!
   10208              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10209              : (TARGET_AVX512F))
   10210              :             return -1;
   10211              :           return 4879; /* avx512f_fix_notruncv16sfv16si_mask */
   10212              : 
   10213              :         default:
   10214              :           return -1;
   10215              :         }
   10216              : 
   10217              :     case 2:
   10218              :       switch (pattern996 (x2, 
   10219              : E_V8DImode))
   10220              :         {
   10221              :         case 0:
   10222              :           if (!(
   10223              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10224              : (TARGET_AVX512F) && 
   10225              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10226              : (TARGET_AVX512FP16)))
   10227              :             return -1;
   10228              :           return 4467; /* avx512fp16_vcvtph2qq_v8di_mask */
   10229              : 
   10230              :         case 1:
   10231              :           if (!(
   10232              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10233              : (TARGET_AVX512F) && 
   10234              : #line 9050 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10235              : (TARGET_AVX512DQ && 1)))
   10236              :             return -1;
   10237              :           return 4895; /* avx512dq_cvtps2qqv8di_mask */
   10238              : 
   10239              :         case 2:
   10240              :           if (!(
   10241              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10242              : (TARGET_AVX512F) && 
   10243              : #line 10040 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10244              : (TARGET_AVX512DQ && 1)))
   10245              :             return -1;
   10246              :           return 5121; /* fix_notruncv8dfv8di2_mask */
   10247              : 
   10248              :         default:
   10249              :           return -1;
   10250              :         }
   10251              : 
   10252              :     case 3:
   10253              :       if (pattern644 (x2, 
   10254              : E_V16HImode, 
   10255              : E_HImode, 
   10256              : E_V16HFmode) != 0
   10257              :           || !(
   10258              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10259              : (TARGET_AVX512F) && (
   10260              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10261              : (TARGET_AVX512FP16) && 
   10262              : #line 751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10263              : (TARGET_AVX512VL))))
   10264              :         return -1;
   10265              :       return 4475; /* avx512fp16_vcvtph2w_v16hi_mask */
   10266              : 
   10267              :     case 4:
   10268              :       if (pattern142 (x2, 
   10269              : E_V8SImode, 
   10270              : E_QImode) != 0)
   10271              :         return -1;
   10272              :       switch (GET_MODE (operands[1]))
   10273              :         {
   10274              :         case E_V8HFmode:
   10275              :           if (!vector_operand (operands[1], E_V8HFmode)
   10276              :               || !(
   10277              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10278              : (TARGET_AVX512F) && (
   10279              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10280              : (TARGET_AVX512FP16) && 
   10281              : #line 751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10282              : (TARGET_AVX512VL))))
   10283              :             return -1;
   10284              :           return 4483; /* avx512fp16_vcvtph2dq_v8si_mask */
   10285              : 
   10286              :         case E_V8SFmode:
   10287              :           if (!vector_operand (operands[1], E_V8SFmode)
   10288              :               || !(
   10289              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10290              : (TARGET_AVX512F) && (
   10291              : #line 9013 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10292              : (TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL)) && 
   10293              : #line 659 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10294              : (TARGET_AVX))))
   10295              :             return -1;
   10296              :           return 4874; /* avx_fix_notruncv8sfv8si_mask */
   10297              : 
   10298              :         case E_V8DFmode:
   10299              :           if (!vector_operand (operands[1], E_V8DFmode)
   10300              :               || !
   10301              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10302              : (TARGET_AVX512F))
   10303              :             return -1;
   10304              :           return 5039; /* avx512f_cvtpd2dq512_mask */
   10305              : 
   10306              :         default:
   10307              :           return -1;
   10308              :         }
   10309              : 
   10310              :     case 5:
   10311              :       switch (pattern1115 (x2, 
   10312              : E_V4DImode))
   10313              :         {
   10314              :         case 0:
   10315              :           if (!vector_operand (operands[1], E_V8HFmode)
   10316              :               || !(
   10317              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10318              : (TARGET_AVX512F) && (
   10319              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10320              : (TARGET_AVX512FP16) && 
   10321              : #line 752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10322              : (TARGET_AVX512VL))))
   10323              :             return -1;
   10324              :           return 4491; /* avx512fp16_vcvtph2qq_v4di_mask */
   10325              : 
   10326              :         case 1:
   10327              :           if (!nonimmediate_operand (operands[1], E_V4SFmode)
   10328              :               || !(
   10329              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10330              : (TARGET_AVX512F) && (
   10331              : #line 9050 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10332              : (TARGET_AVX512DQ && 1) && 
   10333              : #line 620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10334              : (TARGET_AVX512VL))))
   10335              :             return -1;
   10336              :           return 4898; /* avx512dq_cvtps2qqv4di_mask */
   10337              : 
   10338              :         case 2:
   10339              :           if (!vector_operand (operands[1], E_V4DFmode)
   10340              :               || !(
   10341              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10342              : (TARGET_AVX512F) && (
   10343              : #line 10040 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10344              : (TARGET_AVX512DQ && 1) && 
   10345              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10346              : (TARGET_AVX512VL))))
   10347              :             return -1;
   10348              :           return 5124; /* fix_notruncv4dfv4di2_mask */
   10349              : 
   10350              :         default:
   10351              :           return -1;
   10352              :         }
   10353              : 
   10354              :     case 6:
   10355              :       if (pattern644 (x2, 
   10356              : E_V8HImode, 
   10357              : E_QImode, 
   10358              : E_V8HFmode) != 0
   10359              :           || !(
   10360              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10361              : (TARGET_AVX512F) && (
   10362              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10363              : (TARGET_AVX512FP16) && 
   10364              : #line 752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10365              : (TARGET_AVX512VL))))
   10366              :         return -1;
   10367              :       return 4499; /* avx512fp16_vcvtph2w_v8hi_mask */
   10368              : 
   10369              :     case 7:
   10370              :       switch (pattern1115 (x2, 
   10371              : E_V4SImode))
   10372              :         {
   10373              :         case 0:
   10374              :           if (!vector_operand (operands[1], E_V8HFmode)
   10375              :               || !(
   10376              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10377              : (TARGET_AVX512F) && (
   10378              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10379              : (TARGET_AVX512FP16) && 
   10380              : #line 753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10381              : (TARGET_AVX512VL))))
   10382              :             return -1;
   10383              :           return 4507; /* avx512fp16_vcvtph2dq_v4si_mask */
   10384              : 
   10385              :         case 1:
   10386              :           if (!vector_operand (operands[1], E_V4SFmode)
   10387              :               || !(
   10388              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10389              : (TARGET_AVX512F) && 
   10390              : #line 9013 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10391              : (TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL))))
   10392              :             return -1;
   10393              :           return 4876; /* sse2_fix_notruncv4sfv4si_mask */
   10394              : 
   10395              :         case 2:
   10396              :           if (!nonimmediate_operand (operands[1], E_V4DFmode)
   10397              :               || !(
   10398              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10399              : (TARGET_AVX512F) && 
   10400              : #line 9741 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10401              : (TARGET_AVX && TARGET_AVX512VL)))
   10402              :             return -1;
   10403              :           return 5042; /* avx_cvtpd2dq256_mask */
   10404              : 
   10405              :         default:
   10406              :           return -1;
   10407              :         }
   10408              : 
   10409              :     case 8:
   10410              :       switch (pattern1114 (x2))
   10411              :         {
   10412              :         case 0:
   10413              :           if (!vector_operand (operands[1], E_V8HFmode)
   10414              :               || !(
   10415              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10416              : (TARGET_AVX512F) && (
   10417              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10418              : (TARGET_AVX512FP16) && 
   10419              : #line 753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10420              : (TARGET_AVX512VL))))
   10421              :             return -1;
   10422              :           return 4515; /* avx512fp16_vcvtph2qq_v2di_mask */
   10423              : 
   10424              :         case 1:
   10425              :           if (!vector_operand (operands[1], E_V2DFmode)
   10426              :               || !(
   10427              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10428              : (TARGET_AVX512F) && (
   10429              : #line 10040 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10430              : (TARGET_AVX512DQ && 1) && 
   10431              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10432              : (TARGET_AVX512VL))))
   10433              :             return -1;
   10434              :           return 5126; /* fix_notruncv2dfv2di2_mask */
   10435              : 
   10436              :         default:
   10437              :           return -1;
   10438              :         }
   10439              : 
   10440              :     case 9:
   10441              :       if (!(
   10442              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10443              : (TARGET_AVX512F) && 
   10444              : #line 9063 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10445              : (TARGET_AVX512DQ && TARGET_AVX512VL)))
   10446              :         return -1;
   10447              :       return 4900; /* avx512dq_cvtps2qqv2di_mask */
   10448              : 
   10449              :     default:
   10450              :       return -1;
   10451              :     }
   10452              : }
   10453              : 
   10454              :  int
   10455              : recog_130 (rtx x1 ATTRIBUTE_UNUSED,
   10456              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10457              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10458              : {
   10459              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10460              :   rtx x2, x3, x4, x5;
   10461              :   int res ATTRIBUTE_UNUSED;
   10462              :   x2 = XEXP (x1, 1);
   10463              :   x3 = XEXP (x2, 0);
   10464              :   x4 = XVECEXP (x3, 0, 0);
   10465              :   operands[1] = x4;
   10466              :   x5 = XEXP (x2, 2);
   10467              :   operands[3] = x5;
   10468              :   switch (GET_MODE (operands[0]))
   10469              :     {
   10470              :     case E_V64QImode:
   10471              :       if (pattern1003 (x2, 
   10472              : E_V64QImode, 
   10473              : E_DImode) != 0
   10474              :           || !(
   10475              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10476              : (TARGET_AVX512F) && (
   10477              : #line 33386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10478              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   10479              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10480              : (TARGET_AVX512BW))))
   10481              :         return -1;
   10482              :       return 11026; /* avx10_2_vmovrsbv64qi_mask */
   10483              : 
   10484              :     case E_V32QImode:
   10485              :       if (pattern1003 (x2, 
   10486              : E_V32QImode, 
   10487              : E_SImode) != 0
   10488              :           || !(
   10489              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10490              : (TARGET_AVX512F) && (
   10491              : #line 33386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10492              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   10493              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10494              : (TARGET_AVX512VL && TARGET_AVX512BW))))
   10495              :         return -1;
   10496              :       return 11028; /* avx10_2_vmovrsbv32qi_mask */
   10497              : 
   10498              :     case E_V16QImode:
   10499              :       if (pattern1003 (x2, 
   10500              : E_V16QImode, 
   10501              : E_HImode) != 0
   10502              :           || !(
   10503              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10504              : (TARGET_AVX512F) && (
   10505              : #line 33386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10506              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   10507              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10508              : (TARGET_AVX512VL && TARGET_AVX512BW))))
   10509              :         return -1;
   10510              :       return 11030; /* avx10_2_vmovrsbv16qi_mask */
   10511              : 
   10512              :     case E_V32HImode:
   10513              :       if (pattern1003 (x2, 
   10514              : E_V32HImode, 
   10515              : E_SImode) != 0
   10516              :           || !(
   10517              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10518              : (TARGET_AVX512F) && (
   10519              : #line 33386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10520              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   10521              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10522              : (TARGET_AVX512BW))))
   10523              :         return -1;
   10524              :       return 11032; /* avx10_2_vmovrswv32hi_mask */
   10525              : 
   10526              :     case E_V16HImode:
   10527              :       if (pattern1003 (x2, 
   10528              : E_V16HImode, 
   10529              : E_HImode) != 0
   10530              :           || !(
   10531              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10532              : (TARGET_AVX512F) && (
   10533              : #line 33386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10534              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   10535              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10536              : (TARGET_AVX512VL && TARGET_AVX512BW))))
   10537              :         return -1;
   10538              :       return 11034; /* avx10_2_vmovrswv16hi_mask */
   10539              : 
   10540              :     case E_V8HImode:
   10541              :       if (pattern1003 (x2, 
   10542              : E_V8HImode, 
   10543              : E_QImode) != 0
   10544              :           || !(
   10545              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10546              : (TARGET_AVX512F) && (
   10547              : #line 33386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10548              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   10549              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10550              : (TARGET_AVX512VL && TARGET_AVX512BW))))
   10551              :         return -1;
   10552              :       return 11036; /* avx10_2_vmovrswv8hi_mask */
   10553              : 
   10554              :     case E_V16SImode:
   10555              :       if (pattern1003 (x2, 
   10556              : E_V16SImode, 
   10557              : E_HImode) != 0
   10558              :           || !(
   10559              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10560              : (TARGET_AVX512F) && 
   10561              : #line 33386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10562              : (TARGET_AVX10_2 && TARGET_MOVRS)))
   10563              :         return -1;
   10564              :       return 11038; /* avx10_2_vmovrsdv16si_mask */
   10565              : 
   10566              :     case E_V8SImode:
   10567              :       if (pattern1003 (x2, 
   10568              : E_V8SImode, 
   10569              : E_QImode) != 0
   10570              :           || !(
   10571              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10572              : (TARGET_AVX512F) && (
   10573              : #line 33386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10574              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   10575              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10576              : (TARGET_AVX512VL))))
   10577              :         return -1;
   10578              :       return 11040; /* avx10_2_vmovrsdv8si_mask */
   10579              : 
   10580              :     case E_V4SImode:
   10581              :       if (pattern1003 (x2, 
   10582              : E_V4SImode, 
   10583              : E_QImode) != 0
   10584              :           || !(
   10585              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10586              : (TARGET_AVX512F) && (
   10587              : #line 33386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10588              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   10589              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10590              : (TARGET_AVX512VL))))
   10591              :         return -1;
   10592              :       return 11042; /* avx10_2_vmovrsdv4si_mask */
   10593              : 
   10594              :     case E_V8DImode:
   10595              :       if (pattern1003 (x2, 
   10596              : E_V8DImode, 
   10597              : E_QImode) != 0
   10598              :           || !(
   10599              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10600              : (TARGET_AVX512F) && 
   10601              : #line 33386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10602              : (TARGET_AVX10_2 && TARGET_MOVRS)))
   10603              :         return -1;
   10604              :       return 11044; /* avx10_2_vmovrsqv8di_mask */
   10605              : 
   10606              :     case E_V4DImode:
   10607              :       if (pattern1003 (x2, 
   10608              : E_V4DImode, 
   10609              : E_QImode) != 0
   10610              :           || !(
   10611              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10612              : (TARGET_AVX512F) && (
   10613              : #line 33386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10614              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   10615              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10616              : (TARGET_AVX512VL))))
   10617              :         return -1;
   10618              :       return 11046; /* avx10_2_vmovrsqv4di_mask */
   10619              : 
   10620              :     case E_V2DImode:
   10621              :       if (pattern1003 (x2, 
   10622              : E_V2DImode, 
   10623              : E_QImode) != 0
   10624              :           || !(
   10625              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10626              : (TARGET_AVX512F) && (
   10627              : #line 33386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10628              : (TARGET_AVX10_2 && TARGET_MOVRS) && 
   10629              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10630              : (TARGET_AVX512VL))))
   10631              :         return -1;
   10632              :       return 11048; /* avx10_2_vmovrsqv2di_mask */
   10633              : 
   10634              :     default:
   10635              :       return -1;
   10636              :     }
   10637              : }
   10638              : 
   10639              :  int
   10640              : recog_138 (rtx x1 ATTRIBUTE_UNUSED,
   10641              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10642              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10643              : {
   10644              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10645              :   rtx x2, x3, x4, x5, x6, x7, x8;
   10646              :   int res ATTRIBUTE_UNUSED;
   10647              :   x2 = XEXP (x1, 1);
   10648              :   x3 = XEXP (x2, 0);
   10649              :   x4 = XVECEXP (x3, 0, 0);
   10650              :   operands[1] = x4;
   10651              :   x5 = XVECEXP (x3, 0, 1);
   10652              :   operands[2] = x5;
   10653              :   x6 = XVECEXP (x3, 0, 2);
   10654              :   operands[3] = x6;
   10655              :   if (!const_0_to_255_operand (operands[3], E_SImode))
   10656              :     return -1;
   10657              :   x7 = XEXP (x2, 2);
   10658              :   switch (GET_CODE (x7))
   10659              :     {
   10660              :     case REG:
   10661              :     case SUBREG:
   10662              :       operands[5] = x7;
   10663              :       x8 = XEXP (x2, 1);
   10664              :       operands[4] = x8;
   10665              :       switch (GET_MODE (operands[0]))
   10666              :         {
   10667              :         case E_V32HFmode:
   10668              :           if (pattern475 (x2, 
   10669              : E_V32HFmode, 
   10670              : E_SImode) != 0
   10671              :               || !(
   10672              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10673              : (TARGET_AVX512F) && (
   10674              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10675              : (TARGET_AVX10_2) && 
   10676              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10677              : (TARGET_AVX512FP16))))
   10678              :             return -1;
   10679              :           return 10979; /* avx10_2_minmaxpv32hf_mask */
   10680              : 
   10681              :         case E_V16HFmode:
   10682              :           if (pattern475 (x2, 
   10683              : E_V16HFmode, 
   10684              : E_HImode) != 0
   10685              :               || !(
   10686              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10687              : (TARGET_AVX512F) && (
   10688              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10689              : (TARGET_AVX10_2) && 
   10690              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10691              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   10692              :             return -1;
   10693              :           return 10983; /* avx10_2_minmaxpv16hf_mask */
   10694              : 
   10695              :         case E_V8HFmode:
   10696              :           if (pattern475 (x2, 
   10697              : E_V8HFmode, 
   10698              : E_QImode) != 0
   10699              :               || !(
   10700              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10701              : (TARGET_AVX512F) && (
   10702              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10703              : (TARGET_AVX10_2) && 
   10704              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10705              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   10706              :             return -1;
   10707              :           return 10987; /* avx10_2_minmaxpv8hf_mask */
   10708              : 
   10709              :         case E_V16SFmode:
   10710              :           if (pattern475 (x2, 
   10711              : E_V16SFmode, 
   10712              : E_HImode) != 0
   10713              :               || !(
   10714              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10715              : (TARGET_AVX512F) && 
   10716              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10717              : (TARGET_AVX10_2)))
   10718              :             return -1;
   10719              :           return 10991; /* avx10_2_minmaxpv16sf_mask */
   10720              : 
   10721              :         case E_V8SFmode:
   10722              :           if (pattern475 (x2, 
   10723              : E_V8SFmode, 
   10724              : E_QImode) != 0
   10725              :               || !(
   10726              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10727              : (TARGET_AVX512F) && (
   10728              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10729              : (TARGET_AVX10_2) && 
   10730              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10731              : (TARGET_AVX512VL))))
   10732              :             return -1;
   10733              :           return 10995; /* avx10_2_minmaxpv8sf_mask */
   10734              : 
   10735              :         case E_V4SFmode:
   10736              :           if (pattern475 (x2, 
   10737              : E_V4SFmode, 
   10738              : E_QImode) != 0
   10739              :               || !(
   10740              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10741              : (TARGET_AVX512F) && (
   10742              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10743              : (TARGET_AVX10_2) && 
   10744              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10745              : (TARGET_AVX512VL))))
   10746              :             return -1;
   10747              :           return 10999; /* avx10_2_minmaxpv4sf_mask */
   10748              : 
   10749              :         case E_V8DFmode:
   10750              :           if (pattern475 (x2, 
   10751              : E_V8DFmode, 
   10752              : E_QImode) != 0
   10753              :               || !(
   10754              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10755              : (TARGET_AVX512F) && 
   10756              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10757              : (TARGET_AVX10_2)))
   10758              :             return -1;
   10759              :           return 11003; /* avx10_2_minmaxpv8df_mask */
   10760              : 
   10761              :         case E_V4DFmode:
   10762              :           if (pattern475 (x2, 
   10763              : E_V4DFmode, 
   10764              : E_QImode) != 0
   10765              :               || !(
   10766              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10767              : (TARGET_AVX512F) && (
   10768              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10769              : (TARGET_AVX10_2) && 
   10770              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10771              : (TARGET_AVX512VL))))
   10772              :             return -1;
   10773              :           return 11007; /* avx10_2_minmaxpv4df_mask */
   10774              : 
   10775              :         case E_V2DFmode:
   10776              :           if (pattern475 (x2, 
   10777              : E_V2DFmode, 
   10778              : E_QImode) != 0
   10779              :               || !(
   10780              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10781              : (TARGET_AVX512F) && (
   10782              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10783              : (TARGET_AVX10_2) && 
   10784              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10785              : (TARGET_AVX512VL))))
   10786              :             return -1;
   10787              :           return 11011; /* avx10_2_minmaxpv2df_mask */
   10788              : 
   10789              :         default:
   10790              :           return -1;
   10791              :         }
   10792              : 
   10793              :     case CONST_INT:
   10794              :       if (XWINT (x7, 0) != 1L)
   10795              :         return -1;
   10796              :       switch (pattern460 (x2))
   10797              :         {
   10798              :         case 0:
   10799              :           if (!(
   10800              : #line 33376 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10801              : (TARGET_AVX10_2) && 
   10802              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10803              : (TARGET_AVX512FP16)))
   10804              :             return -1;
   10805              :           return 11013; /* avx10_2_minmaxsv8hf */
   10806              : 
   10807              :         case 1:
   10808              :           if (!
   10809              : #line 33376 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10810              : (TARGET_AVX10_2))
   10811              :             return -1;
   10812              :           return 11017; /* avx10_2_minmaxsv4sf */
   10813              : 
   10814              :         case 2:
   10815              :           if (!(
   10816              : #line 33376 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10817              : (TARGET_AVX10_2) && 
   10818              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10819              : (TARGET_SSE2)))
   10820              :             return -1;
   10821              :           return 11021; /* avx10_2_minmaxsv2df */
   10822              : 
   10823              :         default:
   10824              :           return -1;
   10825              :         }
   10826              : 
   10827              :     default:
   10828              :       return -1;
   10829              :     }
   10830              : }
   10831              : 
   10832              :  int
   10833              : recog_145 (rtx x1 ATTRIBUTE_UNUSED,
   10834              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10835              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10836              : {
   10837              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10838              :   rtx x2;
   10839              :   int res ATTRIBUTE_UNUSED;
   10840              :   x2 = XEXP (x1, 1);
   10841              :   switch (pattern481 (x2))
   10842              :     {
   10843              :     case 0:
   10844              :       if (!(
   10845              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10846              : (TARGET_AVX512F) && 
   10847              : #line 31097 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10848              : (TARGET_AVX512VBMI2)))
   10849              :         return -1;
   10850              :       return 10257; /* vpshrd_v32hi_mask */
   10851              : 
   10852              :     case 1:
   10853              :       if (!(
   10854              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10855              : (TARGET_AVX512F) && 
   10856              : #line 31097 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10857              : (TARGET_AVX512VBMI2)))
   10858              :         return -1;
   10859              :       return 10259; /* vpshrd_v16si_mask */
   10860              : 
   10861              :     case 2:
   10862              :       if (!(
   10863              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10864              : (TARGET_AVX512F) && 
   10865              : #line 31097 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10866              : (TARGET_AVX512VBMI2)))
   10867              :         return -1;
   10868              :       return 10261; /* vpshrd_v8di_mask */
   10869              : 
   10870              :     case 3:
   10871              :       if (!(
   10872              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10873              : (TARGET_AVX512F) && (
   10874              : #line 31097 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10875              : (TARGET_AVX512VBMI2) && 
   10876              : #line 751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10877              : (TARGET_AVX512VL))))
   10878              :         return -1;
   10879              :       return 10263; /* vpshrd_v16hi_mask */
   10880              : 
   10881              :     case 4:
   10882              :       if (!(
   10883              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10884              : (TARGET_AVX512F) && (
   10885              : #line 31097 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10886              : (TARGET_AVX512VBMI2) && 
   10887              : #line 751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10888              : (TARGET_AVX512VL))))
   10889              :         return -1;
   10890              :       return 10265; /* vpshrd_v8si_mask */
   10891              : 
   10892              :     case 5:
   10893              :       if (!(
   10894              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10895              : (TARGET_AVX512F) && (
   10896              : #line 31097 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10897              : (TARGET_AVX512VBMI2) && 
   10898              : #line 752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10899              : (TARGET_AVX512VL))))
   10900              :         return -1;
   10901              :       return 10267; /* vpshrd_v4di_mask */
   10902              : 
   10903              :     case 6:
   10904              :       if (!(
   10905              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10906              : (TARGET_AVX512F) && (
   10907              : #line 31097 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10908              : (TARGET_AVX512VBMI2) && 
   10909              : #line 752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10910              : (TARGET_AVX512VL))))
   10911              :         return -1;
   10912              :       return 10269; /* vpshrd_v8hi_mask */
   10913              : 
   10914              :     case 7:
   10915              :       if (!(
   10916              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10917              : (TARGET_AVX512F) && (
   10918              : #line 31097 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10919              : (TARGET_AVX512VBMI2) && 
   10920              : #line 753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10921              : (TARGET_AVX512VL))))
   10922              :         return -1;
   10923              :       return 10271; /* vpshrd_v4si_mask */
   10924              : 
   10925              :     case 8:
   10926              :       if (!(
   10927              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   10928              : (TARGET_AVX512F) && (
   10929              : #line 31097 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10930              : (TARGET_AVX512VBMI2) && 
   10931              : #line 753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10932              : (TARGET_AVX512VL))))
   10933              :         return -1;
   10934              :       return 10273; /* vpshrd_v2di_mask */
   10935              : 
   10936              :     default:
   10937              :       return -1;
   10938              :     }
   10939              : }
   10940              : 
   10941              :  int
   10942              : recog_152 (rtx x1 ATTRIBUTE_UNUSED,
   10943              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10944              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10945              : {
   10946              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10947              :   rtx x2, x3, x4, x5, x6;
   10948              :   int res ATTRIBUTE_UNUSED;
   10949              :   x2 = XEXP (x1, 1);
   10950              :   x3 = XEXP (x2, 2);
   10951              :   switch (GET_CODE (x3))
   10952              :     {
   10953              :     case CONST_INT:
   10954              :       x4 = XEXP (x2, 0);
   10955              :       x5 = XEXP (x4, 0);
   10956              :       operands[2] = x5;
   10957              :       x6 = XEXP (x2, 1);
   10958              :       operands[1] = x6;
   10959              :       switch (XWINT (x3, 0))
   10960              :         {
   10961              :         case 3L:
   10962              :           switch (GET_MODE (operands[0]))
   10963              :             {
   10964              :             case E_V8HFmode:
   10965              :               if (pattern1010 (x2, 
   10966              : E_V8HFmode, 
   10967              : E_V2HFmode) == 0
   10968              :                   && 
   10969              : #line 12190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10970              : (TARGET_SSE))
   10971              :                 return 5307; /* *vec_concatv8hf_movss */
   10972              :               break;
   10973              : 
   10974              :             case E_V8BFmode:
   10975              :               if (pattern1010 (x2, 
   10976              : E_V8BFmode, 
   10977              : E_V2BFmode) == 0
   10978              :                   && 
   10979              : #line 12190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10980              : (TARGET_SSE))
   10981              :                 return 5308; /* *vec_concatv8bf_movss */
   10982              :               break;
   10983              : 
   10984              :             case E_V8HImode:
   10985              :               if (pattern1010 (x2, 
   10986              : E_V8HImode, 
   10987              : E_V2HImode) == 0
   10988              :                   && 
   10989              : #line 12190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10990              : (TARGET_SSE))
   10991              :                 return 5309; /* *vec_concatv8hi_movss */
   10992              :               break;
   10993              : 
   10994              :             default:
   10995              :               break;
   10996              :             }
   10997              :           break;
   10998              : 
   10999              :         case 1L:
   11000              :           switch (GET_MODE (operands[0]))
   11001              :             {
   11002              :             case E_V4SImode:
   11003              :               if (pattern1011 (x2, 
   11004              : E_V4SImode, 
   11005              : E_SImode) == 0
   11006              :                   && 
   11007              : #line 12212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11008              : (TARGET_SSE))
   11009              :                 return 5310; /* vec_setv4si_0 */
   11010              :               break;
   11011              : 
   11012              :             case E_V4SFmode:
   11013              :               if (pattern1011 (x2, 
   11014              : E_V4SFmode, 
   11015              : E_SFmode) == 0
   11016              :                   && 
   11017              : #line 12212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11018              : (TARGET_SSE))
   11019              :                 return 5311; /* vec_setv4sf_0 */
   11020              :               break;
   11021              : 
   11022              :             case E_V8HImode:
   11023              :               if (pattern1010 (x2, 
   11024              : E_V8HImode, 
   11025              : E_HImode) == 0
   11026              :                   && 
   11027              : #line 12293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11028              : (TARGET_SSE2))
   11029              :                 return 5312; /* vec_setv8hi_0 */
   11030              :               break;
   11031              : 
   11032              :             case E_V8HFmode:
   11033              :               if (pattern1010 (x2, 
   11034              : E_V8HFmode, 
   11035              : E_HFmode) == 0
   11036              :                   && 
   11037              : #line 12293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11038              : (TARGET_SSE2))
   11039              :                 return 5313; /* vec_setv8hf_0 */
   11040              :               break;
   11041              : 
   11042              :             case E_V8BFmode:
   11043              :               if (pattern1010 (x2, 
   11044              : E_V8BFmode, 
   11045              : E_BFmode) == 0
   11046              :                   && 
   11047              : #line 12293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11048              : (TARGET_SSE2))
   11049              :                 return 5314; /* vec_setv8bf_0 */
   11050              :               break;
   11051              : 
   11052              :             case E_V16HImode:
   11053              :               if (pattern1012 (x2, 
   11054              : E_V16HImode, 
   11055              : E_HImode) == 0
   11056              :                   && 
   11057              : #line 12388 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11058              : (TARGET_AVX512FP16))
   11059              :                 return 5318; /* vec_setv16hi_0 */
   11060              :               break;
   11061              : 
   11062              :             case E_V32HImode:
   11063              :               if (pattern1012 (x2, 
   11064              : E_V32HImode, 
   11065              : E_HImode) == 0
   11066              :                   && 
   11067              : #line 12388 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11068              : (TARGET_AVX512FP16))
   11069              :                 return 5319; /* vec_setv32hi_0 */
   11070              :               break;
   11071              : 
   11072              :             case E_V16HFmode:
   11073              :               if (pattern1012 (x2, 
   11074              : E_V16HFmode, 
   11075              : E_HFmode) == 0
   11076              :                   && 
   11077              : #line 12388 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11078              : (TARGET_AVX512FP16))
   11079              :                 return 5320; /* vec_setv16hf_0 */
   11080              :               break;
   11081              : 
   11082              :             case E_V32HFmode:
   11083              :               if (pattern1012 (x2, 
   11084              : E_V32HFmode, 
   11085              : E_HFmode) == 0
   11086              :                   && 
   11087              : #line 12388 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11088              : (TARGET_AVX512FP16))
   11089              :                 return 5321; /* vec_setv32hf_0 */
   11090              :               break;
   11091              : 
   11092              :             case E_V16BFmode:
   11093              :               if (pattern1012 (x2, 
   11094              : E_V16BFmode, 
   11095              : E_BFmode) == 0
   11096              :                   && 
   11097              : #line 12388 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11098              : (TARGET_AVX512FP16))
   11099              :                 return 5322; /* vec_setv16bf_0 */
   11100              :               break;
   11101              : 
   11102              :             case E_V32BFmode:
   11103              :               if (pattern1012 (x2, 
   11104              : E_V32BFmode, 
   11105              : E_BFmode) == 0
   11106              :                   && 
   11107              : #line 12388 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11108              : (TARGET_AVX512FP16))
   11109              :                 return 5323; /* vec_setv32bf_0 */
   11110              :               break;
   11111              : 
   11112              :             case E_V8SImode:
   11113              :               if (pattern1012 (x2, 
   11114              : E_V8SImode, 
   11115              : E_SImode) == 0
   11116              :                   && 
   11117              : #line 12495 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11118              : (TARGET_AVX))
   11119              :                 return 5335; /* vec_setv8si_0 */
   11120              :               break;
   11121              : 
   11122              :             case E_V8SFmode:
   11123              :               if (pattern1012 (x2, 
   11124              : E_V8SFmode, 
   11125              : E_SFmode) == 0
   11126              :                   && 
   11127              : #line 12495 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11128              : (TARGET_AVX))
   11129              :                 return 5336; /* vec_setv8sf_0 */
   11130              :               break;
   11131              : 
   11132              :             case E_V16SImode:
   11133              :               if (pattern1012 (x2, 
   11134              : E_V16SImode, 
   11135              : E_SImode) == 0
   11136              :                   && (
   11137              : #line 12495 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11138              : (TARGET_AVX) && 
   11139              : #line 979 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11140              : (TARGET_AVX512F)))
   11141              :                 return 5337; /* vec_setv16si_0 */
   11142              :               break;
   11143              : 
   11144              :             case E_V16SFmode:
   11145              :               if (pattern1012 (x2, 
   11146              : E_V16SFmode, 
   11147              : E_SFmode) == 0
   11148              :                   && (
   11149              : #line 12495 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11150              : (TARGET_AVX) && 
   11151              : #line 979 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11152              : (TARGET_AVX512F)))
   11153              :                 return 5338; /* vec_setv16sf_0 */
   11154              :               break;
   11155              : 
   11156              :             case E_V2DFmode:
   11157              :               if (pattern873 (x2, 
   11158              : E_V2DFmode, 
   11159              : E_DFmode) == 0
   11160              :                   && 
   11161              : #line 12609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11162              : (TARGET_SSE2))
   11163              :                 return 5345; /* vec_setv2df_0 */
   11164              :               break;
   11165              : 
   11166              :             case E_V8DFmode:
   11167              :               if (pattern1012 (x2, 
   11168              : E_V8DFmode, 
   11169              : E_DFmode) == 0
   11170              :                   && (
   11171              : #line 15283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11172              : (TARGET_AVX) && 
   11173              : #line 466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11174              : (TARGET_AVX512F)))
   11175              :                 return 7257; /* vec_setv8df_0 */
   11176              :               break;
   11177              : 
   11178              :             case E_V4DFmode:
   11179              :               if (pattern1012 (x2, 
   11180              : E_V4DFmode, 
   11181              : E_DFmode) == 0
   11182              :                   && 
   11183              : #line 15283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11184              : (TARGET_AVX))
   11185              :                 return 7258; /* vec_setv4df_0 */
   11186              :               break;
   11187              : 
   11188              :             case E_V8DImode:
   11189              :               if (pattern1012 (x2, 
   11190              : E_V8DImode, 
   11191              : E_DImode) == 0
   11192              :                   && (
   11193              : #line 22099 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11194              : (TARGET_AVX) && 
   11195              : #line 703 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11196              : (TARGET_AVX512F)))
   11197              :                 return 8535; /* vec_setv8di_0 */
   11198              :               break;
   11199              : 
   11200              :             case E_V4DImode:
   11201              :               if (pattern1012 (x2, 
   11202              : E_V4DImode, 
   11203              : E_DImode) == 0
   11204              :                   && 
   11205              : #line 22099 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11206              : (TARGET_AVX))
   11207              :                 return 8536; /* vec_setv4di_0 */
   11208              :               break;
   11209              : 
   11210              :             default:
   11211              :               break;
   11212              :             }
   11213              :           break;
   11214              : 
   11215              :         default:
   11216              :           break;
   11217              :         }
   11218              :       operands[3] = x3;
   11219              :       if (const_int_operand (operands[3], E_SImode))
   11220              :         {
   11221              :           switch (GET_MODE (operands[0]))
   11222              :             {
   11223              :             case E_V4SFmode:
   11224              :               if (pattern896 (x2, 
   11225              : E_V4SFmode, 
   11226              : E_SFmode) == 0
   11227              :                   && 
   11228              : #line 12462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11229              : (TARGET_SSE4_1
   11230              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   11231              :        < GET_MODE_NUNITS (V4SFmode))))
   11232              :                 return 5334; /* *vec_setv4sf_sse4_1 */
   11233              :               break;
   11234              : 
   11235              :             case E_V16QImode:
   11236              :               if (pattern896 (x2, 
   11237              : E_V16QImode, 
   11238              : E_QImode) == 0
   11239              :                   && (
   11240              : #line 20219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11241              : (TARGET_SSE2
   11242              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   11243              :        < GET_MODE_NUNITS (V16QImode))) && 
   11244              : #line 20199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11245              : (TARGET_SSE4_1)))
   11246              :                 return 8423; /* sse4_1_pinsrb */
   11247              :               break;
   11248              : 
   11249              :             case E_V8HImode:
   11250              :               if (pattern896 (x2, 
   11251              : E_V8HImode, 
   11252              : E_HImode) == 0
   11253              :                   && 
   11254              : #line 20219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11255              : (TARGET_SSE2
   11256              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   11257              :        < GET_MODE_NUNITS (V8HImode))))
   11258              :                 return 8424; /* sse2_pinsrw */
   11259              :               break;
   11260              : 
   11261              :             case E_V8HFmode:
   11262              :               if (pattern896 (x2, 
   11263              : E_V8HFmode, 
   11264              : E_HFmode) == 0
   11265              :                   && 
   11266              : #line 20219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11267              : (TARGET_SSE2
   11268              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   11269              :        < GET_MODE_NUNITS (V8HFmode))))
   11270              :                 return 8425; /* sse2_pinsrph */
   11271              :               break;
   11272              : 
   11273              :             case E_V8BFmode:
   11274              :               if (pattern896 (x2, 
   11275              : E_V8BFmode, 
   11276              : E_BFmode) == 0
   11277              :                   && 
   11278              : #line 20219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11279              : (TARGET_SSE2
   11280              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   11281              :        < GET_MODE_NUNITS (V8BFmode))))
   11282              :                 return 8426; /* sse2_pinsrbf */
   11283              :               break;
   11284              : 
   11285              :             case E_V4SImode:
   11286              :               if (pattern896 (x2, 
   11287              : E_V4SImode, 
   11288              : E_SImode) == 0
   11289              :                   && (
   11290              : #line 20219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11291              : (TARGET_SSE2
   11292              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   11293              :        < GET_MODE_NUNITS (V4SImode))) && 
   11294              : #line 20200 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11295              : (TARGET_SSE4_1)))
   11296              :                 return 8427; /* sse4_1_pinsrd */
   11297              :               break;
   11298              : 
   11299              :             case E_V2DImode:
   11300              :               if (pattern896 (x2, 
   11301              : E_V2DImode, 
   11302              : E_DImode) == 0
   11303              :                   && (
   11304              : #line 20219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11305              : (TARGET_SSE2
   11306              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
   11307              :        < GET_MODE_NUNITS (V2DImode))) && 
   11308              : #line 20201 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11309              : (TARGET_SSE4_1 && TARGET_64BIT)))
   11310              :                 return 8428; /* sse4_1_pinsrq */
   11311              :               break;
   11312              : 
   11313              :             case E_V8DFmode:
   11314              :               if (pattern897 (x2, 
   11315              : E_V8DFmode, 
   11316              : E_V2DFmode) == 0
   11317              :                   && (
   11318              : #line 20323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11319              : (TARGET_AVX512F
   11320              :    && (INTVAL (operands[3])
   11321              :        == (GET_MODE_UNIT_SIZE (V8DFmode) == 4 ? 0xF : 0x3))) && 
   11322              : #line 12722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11323              : (TARGET_AVX512DQ)))
   11324              :                 return 8429; /* *avx512dq_vinsertf64x2_0 */
   11325              :               break;
   11326              : 
   11327              :             case E_V8DImode:
   11328              :               if (pattern897 (x2, 
   11329              : E_V8DImode, 
   11330              : E_V2DImode) == 0
   11331              :                   && (
   11332              : #line 20323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11333              : (TARGET_AVX512F
   11334              :    && (INTVAL (operands[3])
   11335              :        == (GET_MODE_UNIT_SIZE (V8DImode) == 4 ? 0xF : 0x3))) && 
   11336              : #line 12722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11337              : (TARGET_AVX512DQ)))
   11338              :                 return 8430; /* *avx512dq_vinserti64x2_0 */
   11339              :               break;
   11340              : 
   11341              :             case E_V16SFmode:
   11342              :               if (pattern897 (x2, 
   11343              : E_V16SFmode, 
   11344              : E_V4SFmode) == 0
   11345              :                   && 
   11346              : #line 20323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11347              : (TARGET_AVX512F
   11348              :    && (INTVAL (operands[3])
   11349              :        == (GET_MODE_UNIT_SIZE (V16SFmode) == 4 ? 0xF : 0x3))))
   11350              :                 return 8431; /* *avx512f_vinsertf32x4_0 */
   11351              :               break;
   11352              : 
   11353              :             case E_V16SImode:
   11354              :               if (pattern897 (x2, 
   11355              : E_V16SImode, 
   11356              : E_V4SImode) == 0
   11357              :                   && 
   11358              : #line 20323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11359              : (TARGET_AVX512F
   11360              :    && (INTVAL (operands[3])
   11361              :        == (GET_MODE_UNIT_SIZE (V16SImode) == 4 ? 0xF : 0x3))))
   11362              :                 return 8432; /* *avx512f_vinserti32x4_0 */
   11363              :               break;
   11364              : 
   11365              :             default:
   11366              :               break;
   11367              :             }
   11368              :         }
   11369              :       if (XWINT (x3, 0) != 1L
   11370              :           || !register_operand (operands[0], E_V4SImode)
   11371              :           || GET_MODE (x2) != E_V4SImode
   11372              :           || GET_MODE (x4) != E_V4SImode)
   11373              :         return -1;
   11374              :       operands[2] = x5;
   11375              :       if (!nonimmediate_operand (operands[2], E_SImode))
   11376              :         return -1;
   11377              :       operands[1] = x6;
   11378              :       if (!reg_or_0_operand (operands[1], E_V4SImode)
   11379              :           || !
   11380              : #line 21378 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11381              : (TARGET_SSE))
   11382              :         return -1;
   11383              :       return 8499; /* sse2_loadld */
   11384              : 
   11385              :     case REG:
   11386              :     case SUBREG:
   11387              :       operands[3] = x3;
   11388              :       x4 = XEXP (x2, 0);
   11389              :       x5 = XEXP (x4, 0);
   11390              :       operands[1] = x5;
   11391              :       x6 = XEXP (x2, 1);
   11392              :       operands[2] = x6;
   11393              :       switch (GET_MODE (operands[0]))
   11394              :         {
   11395              :         case E_V2DFmode:
   11396              :           if (pattern155 (x2, 
   11397              : E_V2DFmode, 
   11398              : E_DFmode, 
   11399              : E_QImode) != 0)
   11400              :             return -1;
   11401              :           if ((
   11402              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11403              : (TARGET_AVX512F) && 
   11404              : #line 15211 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11405              : (TARGET_SSE2)))
   11406              :             return 7255; /* vec_dupv2df_mask */
   11407              :           if (!(
   11408              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11409              : (TARGET_AVX512F) && (
   11410              : #line 28468 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11411              : (TARGET_AVX512F) && 
   11412              : #line 302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11413              : (TARGET_AVX512VL))))
   11414              :             return -1;
   11415              :           return 9354; /* avx512vl_vec_dup_gprv2df_mask */
   11416              : 
   11417              :         case E_V16SFmode:
   11418              :           if (pattern142 (x2, 
   11419              : E_V16SFmode, 
   11420              : E_HImode) != 0)
   11421              :             return -1;
   11422              :           switch (GET_MODE (operands[1]))
   11423              :             {
   11424              :             case E_V4SFmode:
   11425              :               if (!nonimmediate_operand (operands[1], E_V4SFmode)
   11426              :                   || !
   11427              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11428              : (TARGET_AVX512F))
   11429              :                 return -1;
   11430              :               return 9300; /* avx512f_broadcastv16sf_mask */
   11431              : 
   11432              :             case E_SFmode:
   11433              :               if (!nonimmediate_operand (operands[1], E_SFmode)
   11434              :                   || !
   11435              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11436              : (TARGET_AVX512F))
   11437              :                 return -1;
   11438              :               return 9344; /* avx512f_vec_dup_gprv16sf_mask */
   11439              : 
   11440              :             case E_V8SFmode:
   11441              :               if (!nonimmediate_operand (operands[1], E_V8SFmode)
   11442              :                   || !(
   11443              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11444              : (TARGET_AVX512F) && 
   11445              : #line 28767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11446              : (TARGET_AVX512DQ)))
   11447              :                 return -1;
   11448              :               return 9408; /* avx512dq_broadcastv16sf_mask_1 */
   11449              : 
   11450              :             default:
   11451              :               return -1;
   11452              :             }
   11453              : 
   11454              :         case E_V16SImode:
   11455              :           if (pattern142 (x2, 
   11456              : E_V16SImode, 
   11457              : E_HImode) != 0)
   11458              :             return -1;
   11459              :           switch (GET_MODE (operands[1]))
   11460              :             {
   11461              :             case E_V4SImode:
   11462              :               if (!nonimmediate_operand (operands[1], E_V4SImode)
   11463              :                   || !
   11464              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11465              : (TARGET_AVX512F))
   11466              :                 return -1;
   11467              :               return 9302; /* avx512f_broadcastv16si_mask */
   11468              : 
   11469              :             case E_SImode:
   11470              :               if (!nonimmediate_operand (operands[1], E_SImode)
   11471              :                   || !
   11472              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11473              : (TARGET_AVX512F))
   11474              :                 return -1;
   11475              :               return 9332; /* avx512f_vec_dup_gprv16si_mask */
   11476              : 
   11477              :             case E_V8SImode:
   11478              :               if (!nonimmediate_operand (operands[1], E_V8SImode)
   11479              :                   || !(
   11480              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11481              : (TARGET_AVX512F) && 
   11482              : #line 28767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11483              : (TARGET_AVX512DQ)))
   11484              :                 return -1;
   11485              :               return 9410; /* avx512dq_broadcastv16si_mask_1 */
   11486              : 
   11487              :             default:
   11488              :               return -1;
   11489              :             }
   11490              : 
   11491              :         case E_V8DFmode:
   11492              :           if (pattern142 (x2, 
   11493              : E_V8DFmode, 
   11494              : E_QImode) != 0)
   11495              :             return -1;
   11496              :           switch (GET_MODE (operands[1]))
   11497              :             {
   11498              :             case E_V4DFmode:
   11499              :               if (!nonimmediate_operand (operands[1], E_V4DFmode)
   11500              :                   || !
   11501              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11502              : (TARGET_AVX512F))
   11503              :                 return -1;
   11504              :               return 9304; /* avx512f_broadcastv8df_mask */
   11505              : 
   11506              :             case E_DFmode:
   11507              :               if (!nonimmediate_operand (operands[1], E_DFmode)
   11508              :                   || !
   11509              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11510              : (TARGET_AVX512F))
   11511              :                 return -1;
   11512              :               return 9350; /* avx512f_vec_dup_gprv8df_mask */
   11513              : 
   11514              :             case E_V2DFmode:
   11515              :               if (!nonimmediate_operand (operands[1], E_V2DFmode)
   11516              :                   || !(
   11517              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11518              : (TARGET_AVX512F) && 
   11519              : #line 28784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11520              : (TARGET_AVX512DQ)))
   11521              :                 return -1;
   11522              :               return 9414; /* avx512dq_broadcastv8df_mask_1 */
   11523              : 
   11524              :             default:
   11525              :               return -1;
   11526              :             }
   11527              : 
   11528              :         case E_V8DImode:
   11529              :           if (pattern142 (x2, 
   11530              : E_V8DImode, 
   11531              : E_QImode) != 0)
   11532              :             return -1;
   11533              :           switch (GET_MODE (operands[1]))
   11534              :             {
   11535              :             case E_V4DImode:
   11536              :               if (!nonimmediate_operand (operands[1], E_V4DImode)
   11537              :                   || !
   11538              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11539              : (TARGET_AVX512F))
   11540              :                 return -1;
   11541              :               return 9306; /* avx512f_broadcastv8di_mask */
   11542              : 
   11543              :             case E_DImode:
   11544              :               if (!nonimmediate_operand (operands[1], E_DImode)
   11545              :                   || !
   11546              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11547              : (TARGET_AVX512F))
   11548              :                 return -1;
   11549              :               return 9338; /* avx512f_vec_dup_gprv8di_mask */
   11550              : 
   11551              :             case E_V2DImode:
   11552              :               if (!nonimmediate_operand (operands[1], E_V2DImode)
   11553              :                   || !(
   11554              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11555              : (TARGET_AVX512F) && 
   11556              : #line 28784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11557              : (TARGET_AVX512DQ)))
   11558              :                 return -1;
   11559              :               return 9412; /* avx512dq_broadcastv8di_mask_1 */
   11560              : 
   11561              :             default:
   11562              :               return -1;
   11563              :             }
   11564              : 
   11565              :         case E_V64QImode:
   11566              :           if (pattern155 (x2, 
   11567              : E_V64QImode, 
   11568              : E_QImode, 
   11569              : E_DImode) != 0
   11570              :               || !(
   11571              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11572              : (TARGET_AVX512F) && 
   11573              : #line 28456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11574              : (TARGET_AVX512BW)))
   11575              :             return -1;
   11576              :           return 9308; /* avx512bw_vec_dup_gprv64qi_mask */
   11577              : 
   11578              :         case E_V16QImode:
   11579              :           if (pattern155 (x2, 
   11580              : E_V16QImode, 
   11581              : E_QImode, 
   11582              : E_HImode) != 0
   11583              :               || !(
   11584              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11585              : (TARGET_AVX512F) && (
   11586              : #line 28456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11587              : (TARGET_AVX512BW) && 
   11588              : #line 332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11589              : (TARGET_AVX512VL))))
   11590              :             return -1;
   11591              :           return 9310; /* avx512vl_vec_dup_gprv16qi_mask */
   11592              : 
   11593              :         case E_V32QImode:
   11594              :           if (pattern155 (x2, 
   11595              : E_V32QImode, 
   11596              : E_QImode, 
   11597              : E_SImode) != 0
   11598              :               || !(
   11599              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11600              : (TARGET_AVX512F) && (
   11601              : #line 28456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11602              : (TARGET_AVX512BW) && 
   11603              : #line 332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11604              : (TARGET_AVX512VL))))
   11605              :             return -1;
   11606              :           return 9312; /* avx512vl_vec_dup_gprv32qi_mask */
   11607              : 
   11608              :         case E_V32HImode:
   11609              :           if (pattern155 (x2, 
   11610              : E_V32HImode, 
   11611              : E_HImode, 
   11612              : E_SImode) != 0
   11613              :               || !(
   11614              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11615              : (TARGET_AVX512F) && 
   11616              : #line 28456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11617              : (TARGET_AVX512BW)))
   11618              :             return -1;
   11619              :           return 9314; /* avx512bw_vec_dup_gprv32hi_mask */
   11620              : 
   11621              :         case E_V16HImode:
   11622              :           if (pattern153 (x2, 
   11623              : E_HImode) != 0
   11624              :               || !(
   11625              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11626              : (TARGET_AVX512F) && (
   11627              : #line 28456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11628              : (TARGET_AVX512BW) && 
   11629              : #line 333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11630              : (TARGET_AVX512VL))))
   11631              :             return -1;
   11632              :           return 9316; /* avx512vl_vec_dup_gprv16hi_mask */
   11633              : 
   11634              :         case E_V8HImode:
   11635              :           if (pattern155 (x2, 
   11636              : E_V8HImode, 
   11637              : E_HImode, 
   11638              : E_QImode) != 0
   11639              :               || !(
   11640              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11641              : (TARGET_AVX512F) && (
   11642              : #line 28456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11643              : (TARGET_AVX512BW) && 
   11644              : #line 333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11645              : (TARGET_AVX512VL))))
   11646              :             return -1;
   11647              :           return 9318; /* avx512vl_vec_dup_gprv8hi_mask */
   11648              : 
   11649              :         case E_V32HFmode:
   11650              :           if (pattern155 (x2, 
   11651              : E_V32HFmode, 
   11652              : E_HFmode, 
   11653              : E_SImode) != 0
   11654              :               || !(
   11655              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11656              : (TARGET_AVX512F) && 
   11657              : #line 28456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11658              : (TARGET_AVX512BW)))
   11659              :             return -1;
   11660              :           return 9320; /* avx512bw_vec_dup_gprv32hf_mask */
   11661              : 
   11662              :         case E_V16HFmode:
   11663              :           if (pattern155 (x2, 
   11664              : E_V16HFmode, 
   11665              : E_HFmode, 
   11666              : E_HImode) != 0
   11667              :               || !(
   11668              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11669              : (TARGET_AVX512F) && (
   11670              : #line 28456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11671              : (TARGET_AVX512BW) && 
   11672              : #line 334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11673              : (TARGET_AVX512VL))))
   11674              :             return -1;
   11675              :           return 9322; /* avx512vl_vec_dup_gprv16hf_mask */
   11676              : 
   11677              :         case E_V8HFmode:
   11678              :           if (pattern155 (x2, 
   11679              : E_V8HFmode, 
   11680              : E_HFmode, 
   11681              : E_QImode) != 0
   11682              :               || !(
   11683              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11684              : (TARGET_AVX512F) && (
   11685              : #line 28456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11686              : (TARGET_AVX512BW) && 
   11687              : #line 334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11688              : (TARGET_AVX512VL))))
   11689              :             return -1;
   11690              :           return 9324; /* avx512fp16_vec_dup_gprv8hf_mask */
   11691              : 
   11692              :         case E_V32BFmode:
   11693              :           if (pattern155 (x2, 
   11694              : E_V32BFmode, 
   11695              : E_BFmode, 
   11696              : E_SImode) != 0
   11697              :               || !(
   11698              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11699              : (TARGET_AVX512F) && 
   11700              : #line 28456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11701              : (TARGET_AVX512BW)))
   11702              :             return -1;
   11703              :           return 9326; /* avx512bw_vec_dup_gprv32bf_mask */
   11704              : 
   11705              :         case E_V16BFmode:
   11706              :           if (pattern155 (x2, 
   11707              : E_V16BFmode, 
   11708              : E_BFmode, 
   11709              : E_HImode) != 0
   11710              :               || !(
   11711              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11712              : (TARGET_AVX512F) && (
   11713              : #line 28456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11714              : (TARGET_AVX512BW) && 
   11715              : #line 335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11716              : (TARGET_AVX512VL))))
   11717              :             return -1;
   11718              :           return 9328; /* avx512vl_vec_dup_gprv16bf_mask */
   11719              : 
   11720              :         case E_V8BFmode:
   11721              :           if (pattern155 (x2, 
   11722              : E_V8BFmode, 
   11723              : E_BFmode, 
   11724              : E_QImode) != 0
   11725              :               || !(
   11726              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11727              : (TARGET_AVX512F) && (
   11728              : #line 28456 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11729              : (TARGET_AVX512BW) && 
   11730              : #line 335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11731              : (TARGET_AVX512VL))))
   11732              :             return -1;
   11733              :           return 9330; /* avx512vl_vec_dup_gprv8bf_mask */
   11734              : 
   11735              :         case E_V8SImode:
   11736              :           if (pattern142 (x2, 
   11737              : E_V8SImode, 
   11738              : E_QImode) != 0)
   11739              :             return -1;
   11740              :           switch (GET_MODE (operands[1]))
   11741              :             {
   11742              :             case E_SImode:
   11743              :               if (!nonimmediate_operand (operands[1], E_SImode)
   11744              :                   || !(
   11745              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11746              : (TARGET_AVX512F) && (
   11747              : #line 28468 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11748              : (TARGET_AVX512F) && 
   11749              : #line 299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11750              : (TARGET_AVX512VL))))
   11751              :                 return -1;
   11752              :               return 9334; /* avx512vl_vec_dup_gprv8si_mask */
   11753              : 
   11754              :             case E_V4SImode:
   11755              :               if (!nonimmediate_operand (operands[1], E_V4SImode)
   11756              :                   || !(
   11757              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11758              : (TARGET_AVX512F) && 
   11759              : #line 28754 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11760              : (TARGET_AVX512VL)))
   11761              :                 return -1;
   11762              :               return 9404; /* avx512vl_broadcastv8si_mask_1 */
   11763              : 
   11764              :             default:
   11765              :               return -1;
   11766              :             }
   11767              : 
   11768              :         case E_V4SImode:
   11769              :           if (pattern155 (x2, 
   11770              : E_V4SImode, 
   11771              : E_SImode, 
   11772              : E_QImode) != 0
   11773              :               || !(
   11774              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11775              : (TARGET_AVX512F) && (
   11776              : #line 28468 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11777              : (TARGET_AVX512F) && 
   11778              : #line 299 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11779              : (TARGET_AVX512VL))))
   11780              :             return -1;
   11781              :           return 9336; /* avx512vl_vec_dup_gprv4si_mask */
   11782              : 
   11783              :         case E_V4DImode:
   11784              :           if (pattern142 (x2, 
   11785              : E_V4DImode, 
   11786              : E_QImode) != 0)
   11787              :             return -1;
   11788              :           switch (GET_MODE (operands[1]))
   11789              :             {
   11790              :             case E_DImode:
   11791              :               if (!nonimmediate_operand (operands[1], E_DImode)
   11792              :                   || !(
   11793              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11794              : (TARGET_AVX512F) && (
   11795              : #line 28468 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11796              : (TARGET_AVX512F) && 
   11797              : #line 300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11798              : (TARGET_AVX512VL))))
   11799              :                 return -1;
   11800              :               return 9340; /* avx512vl_vec_dup_gprv4di_mask */
   11801              : 
   11802              :             case E_V2DImode:
   11803              :               if (!nonimmediate_operand (operands[1], E_V2DImode)
   11804              :                   || !(
   11805              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11806              : (TARGET_AVX512F) && (
   11807              : #line 28784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11808              : (TARGET_AVX512DQ) && 
   11809              : #line 28778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11810              : (TARGET_AVX512VL))))
   11811              :                 return -1;
   11812              :               return 9416; /* avx512dq_broadcastv4di_mask_1 */
   11813              : 
   11814              :             default:
   11815              :               return -1;
   11816              :             }
   11817              : 
   11818              :         case E_V2DImode:
   11819              :           if (pattern155 (x2, 
   11820              : E_V2DImode, 
   11821              : E_DImode, 
   11822              : E_QImode) != 0
   11823              :               || !(
   11824              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11825              : (TARGET_AVX512F) && (
   11826              : #line 28468 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11827              : (TARGET_AVX512F) && 
   11828              : #line 300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11829              : (TARGET_AVX512VL))))
   11830              :             return -1;
   11831              :           return 9342; /* avx512vl_vec_dup_gprv2di_mask */
   11832              : 
   11833              :         case E_V8SFmode:
   11834              :           if (pattern142 (x2, 
   11835              : E_V8SFmode, 
   11836              : E_QImode) != 0)
   11837              :             return -1;
   11838              :           switch (GET_MODE (operands[1]))
   11839              :             {
   11840              :             case E_SFmode:
   11841              :               if (!nonimmediate_operand (operands[1], E_SFmode)
   11842              :                   || !(
   11843              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11844              : (TARGET_AVX512F) && (
   11845              : #line 28468 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11846              : (TARGET_AVX512F) && 
   11847              : #line 301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11848              : (TARGET_AVX512VL))))
   11849              :                 return -1;
   11850              :               return 9346; /* avx512vl_vec_dup_gprv8sf_mask */
   11851              : 
   11852              :             case E_V4SFmode:
   11853              :               if (!nonimmediate_operand (operands[1], E_V4SFmode)
   11854              :                   || !(
   11855              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11856              : (TARGET_AVX512F) && 
   11857              : #line 28754 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11858              : (TARGET_AVX512VL)))
   11859              :                 return -1;
   11860              :               return 9406; /* avx512vl_broadcastv8sf_mask_1 */
   11861              : 
   11862              :             default:
   11863              :               return -1;
   11864              :             }
   11865              : 
   11866              :         case E_V4SFmode:
   11867              :           if (pattern155 (x2, 
   11868              : E_V4SFmode, 
   11869              : E_SFmode, 
   11870              : E_QImode) != 0
   11871              :               || !(
   11872              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11873              : (TARGET_AVX512F) && (
   11874              : #line 28468 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11875              : (TARGET_AVX512F) && 
   11876              : #line 301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11877              : (TARGET_AVX512VL))))
   11878              :             return -1;
   11879              :           return 9348; /* avx512vl_vec_dup_gprv4sf_mask */
   11880              : 
   11881              :         case E_V4DFmode:
   11882              :           if (pattern142 (x2, 
   11883              : E_V4DFmode, 
   11884              : E_QImode) != 0)
   11885              :             return -1;
   11886              :           switch (GET_MODE (operands[1]))
   11887              :             {
   11888              :             case E_DFmode:
   11889              :               if (!nonimmediate_operand (operands[1], E_DFmode)
   11890              :                   || !(
   11891              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11892              : (TARGET_AVX512F) && (
   11893              : #line 28468 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11894              : (TARGET_AVX512F) && 
   11895              : #line 302 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11896              : (TARGET_AVX512VL))))
   11897              :                 return -1;
   11898              :               return 9352; /* avx512vl_vec_dup_gprv4df_mask */
   11899              : 
   11900              :             case E_V2DFmode:
   11901              :               if (!nonimmediate_operand (operands[1], E_V2DFmode)
   11902              :                   || !(
   11903              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11904              : (TARGET_AVX512F) && (
   11905              : #line 28784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11906              : (TARGET_AVX512DQ) && 
   11907              : #line 28778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11908              : (TARGET_AVX512VL))))
   11909              :                 return -1;
   11910              :               return 9418; /* avx512dq_broadcastv4df_mask_1 */
   11911              : 
   11912              :             default:
   11913              :               return -1;
   11914              :             }
   11915              : 
   11916              :         default:
   11917              :           return -1;
   11918              :         }
   11919              : 
   11920              :     default:
   11921              :       return -1;
   11922              :     }
   11923              : }
   11924              : 
   11925              :  int
   11926              : recog_165 (rtx x1 ATTRIBUTE_UNUSED,
   11927              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   11928              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   11929              : {
   11930              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   11931              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   11932              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   11933              :   rtx x18, x19, x20, x21, x22, x23, x24;
   11934              :   int res ATTRIBUTE_UNUSED;
   11935              :   x2 = XEXP (x1, 1);
   11936              :   x3 = XEXP (x2, 0);
   11937              :   x4 = XEXP (x3, 1);
   11938              :   x5 = XVECEXP (x4, 0, 2);
   11939              :   if (GET_CODE (x5) != CONST_INT)
   11940              :     return -1;
   11941              :   x6 = XVECEXP (x4, 0, 3);
   11942              :   if (GET_CODE (x6) != CONST_INT
   11943              :       || pattern1305 (x4) != 0)
   11944              :     return -1;
   11945              :   x7 = XVECEXP (x4, 0, 12);
   11946              :   if (GET_CODE (x7) != CONST_INT)
   11947              :     return -1;
   11948              :   x8 = XVECEXP (x4, 0, 13);
   11949              :   if (GET_CODE (x8) != CONST_INT)
   11950              :     return -1;
   11951              :   x9 = XVECEXP (x4, 0, 14);
   11952              :   if (GET_CODE (x9) != CONST_INT)
   11953              :     return -1;
   11954              :   x10 = XVECEXP (x4, 0, 15);
   11955              :   if (GET_CODE (x10) != CONST_INT)
   11956              :     return -1;
   11957              :   x11 = XEXP (x2, 2);
   11958              :   if (!register_operand (x11, E_HImode))
   11959              :     return -1;
   11960              :   x12 = XVECEXP (x4, 0, 0);
   11961              :   switch (XWINT (x12, 0))
   11962              :     {
   11963              :     case 2L:
   11964              :       x13 = XVECEXP (x4, 0, 1);
   11965              :       if (XWINT (x13, 0) != 18L
   11966              :           || XWINT (x5, 0) != 3L
   11967              :           || XWINT (x6, 0) != 19L
   11968              :           || pattern1867 (x4) != 0)
   11969              :         return -1;
   11970              :       x14 = XVECEXP (x4, 0, 8);
   11971              :       if (XWINT (x14, 0) != 10L)
   11972              :         return -1;
   11973              :       x15 = XVECEXP (x4, 0, 9);
   11974              :       if (XWINT (x15, 0) != 26L)
   11975              :         return -1;
   11976              :       x16 = XVECEXP (x4, 0, 10);
   11977              :       if (XWINT (x16, 0) != 11L)
   11978              :         return -1;
   11979              :       x17 = XVECEXP (x4, 0, 11);
   11980              :       if (XWINT (x17, 0) != 27L
   11981              :           || pattern1899 (x2) != 0)
   11982              :         return -1;
   11983              :       switch (GET_MODE (operands[0]))
   11984              :         {
   11985              :         case E_V16SFmode:
   11986              :           if (pattern1593 (x2, 
   11987              : E_V16SFmode, 
   11988              : E_V32SFmode) != 0
   11989              :               || !
   11990              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11991              : (TARGET_AVX512F))
   11992              :             return -1;
   11993              :           return 5260; /* avx512f_unpckhps512_mask */
   11994              : 
   11995              :         case E_V16SImode:
   11996              :           if (pattern1593 (x2, 
   11997              : E_V16SImode, 
   11998              : E_V32SImode) != 0
   11999              :               || !
   12000              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12001              : (TARGET_AVX512F))
   12002              :             return -1;
   12003              :           return 8414; /* avx512f_interleave_highv16si_mask */
   12004              : 
   12005              :         default:
   12006              :           return -1;
   12007              :         }
   12008              : 
   12009              :     case 0L:
   12010              :       x13 = XVECEXP (x4, 0, 1);
   12011              :       switch (XWINT (x13, 0))
   12012              :         {
   12013              :         case 16L:
   12014              :           if (XWINT (x5, 0) != 1L
   12015              :               || XWINT (x6, 0) != 17L)
   12016              :             return -1;
   12017              :           x18 = XEXP (x3, 0);
   12018              :           x19 = XEXP (x18, 1);
   12019              :           operands[2] = x19;
   12020              :           x20 = XEXP (x2, 1);
   12021              :           operands[3] = x20;
   12022              :           operands[4] = x11;
   12023              :           x21 = XVECEXP (x4, 0, 4);
   12024              :           switch (XWINT (x21, 0))
   12025              :             {
   12026              :             case 4L:
   12027              :               x22 = XVECEXP (x4, 0, 5);
   12028              :               if (XWINT (x22, 0) != 20L)
   12029              :                 return -1;
   12030              :               x23 = XVECEXP (x4, 0, 6);
   12031              :               if (XWINT (x23, 0) != 5L)
   12032              :                 return -1;
   12033              :               x24 = XVECEXP (x4, 0, 7);
   12034              :               if (XWINT (x24, 0) != 21L)
   12035              :                 return -1;
   12036              :               x14 = XVECEXP (x4, 0, 8);
   12037              :               if (XWINT (x14, 0) != 8L)
   12038              :                 return -1;
   12039              :               x15 = XVECEXP (x4, 0, 9);
   12040              :               if (XWINT (x15, 0) != 24L)
   12041              :                 return -1;
   12042              :               x16 = XVECEXP (x4, 0, 10);
   12043              :               if (XWINT (x16, 0) != 9L)
   12044              :                 return -1;
   12045              :               x17 = XVECEXP (x4, 0, 11);
   12046              :               if (XWINT (x17, 0) != 25L
   12047              :                   || XWINT (x7, 0) != 12L
   12048              :                   || XWINT (x8, 0) != 28L
   12049              :                   || XWINT (x9, 0) != 13L
   12050              :                   || XWINT (x10, 0) != 29L)
   12051              :                 return -1;
   12052              :               switch (GET_MODE (operands[0]))
   12053              :                 {
   12054              :                 case E_V16SFmode:
   12055              :                   if (pattern1593 (x2, 
   12056              : E_V16SFmode, 
   12057              : E_V32SFmode) != 0
   12058              :                       || !
   12059              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12060              : (TARGET_AVX512F))
   12061              :                     return -1;
   12062              :                   return 5266; /* avx512f_unpcklps512_mask */
   12063              : 
   12064              :                 case E_V16SImode:
   12065              :                   if (pattern1593 (x2, 
   12066              : E_V16SImode, 
   12067              : E_V32SImode) != 0
   12068              :                       || !
   12069              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12070              : (TARGET_AVX512F))
   12071              :                     return -1;
   12072              :                   return 8420; /* avx512f_interleave_lowv16si_mask */
   12073              : 
   12074              :                 default:
   12075              :                   return -1;
   12076              :                 }
   12077              : 
   12078              :             case 2L:
   12079              :               x22 = XVECEXP (x4, 0, 5);
   12080              :               if (XWINT (x22, 0) != 18L)
   12081              :                 return -1;
   12082              :               x23 = XVECEXP (x4, 0, 6);
   12083              :               if (XWINT (x23, 0) != 3L)
   12084              :                 return -1;
   12085              :               x24 = XVECEXP (x4, 0, 7);
   12086              :               if (XWINT (x24, 0) != 19L)
   12087              :                 return -1;
   12088              :               x14 = XVECEXP (x4, 0, 8);
   12089              :               switch (XWINT (x14, 0))
   12090              :                 {
   12091              :                 case 4L:
   12092              :                   x15 = XVECEXP (x4, 0, 9);
   12093              :                   if (XWINT (x15, 0) != 20L)
   12094              :                     return -1;
   12095              :                   x16 = XVECEXP (x4, 0, 10);
   12096              :                   if (XWINT (x16, 0) != 5L)
   12097              :                     return -1;
   12098              :                   x17 = XVECEXP (x4, 0, 11);
   12099              :                   if (XWINT (x17, 0) != 21L
   12100              :                       || XWINT (x7, 0) != 6L
   12101              :                       || XWINT (x8, 0) != 22L
   12102              :                       || XWINT (x9, 0) != 7L
   12103              :                       || XWINT (x10, 0) != 23L
   12104              :                       || pattern1594 (x2, 
   12105              : E_V16QImode, 
   12106              : E_V32QImode) != 0
   12107              :                       || !(
   12108              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12109              : (TARGET_AVX512F) && 
   12110              : #line 19906 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12111              : (TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12112              :                     return -1;
   12113              :                   return 8374; /* vec_interleave_lowv16qi_mask */
   12114              : 
   12115              :                 case 8L:
   12116              :                   x15 = XVECEXP (x4, 0, 9);
   12117              :                   if (XWINT (x15, 0) != 24L)
   12118              :                     return -1;
   12119              :                   x16 = XVECEXP (x4, 0, 10);
   12120              :                   if (XWINT (x16, 0) != 9L)
   12121              :                     return -1;
   12122              :                   x17 = XVECEXP (x4, 0, 11);
   12123              :                   if (XWINT (x17, 0) != 25L
   12124              :                       || XWINT (x7, 0) != 10L
   12125              :                       || XWINT (x8, 0) != 26L
   12126              :                       || XWINT (x9, 0) != 11L
   12127              :                       || XWINT (x10, 0) != 27L)
   12128              :                     return -1;
   12129              :                   switch (GET_MODE (operands[0]))
   12130              :                     {
   12131              :                     case E_V16HImode:
   12132              :                       if (pattern1593 (x2, 
   12133              : E_V16HImode, 
   12134              : E_V32HImode) != 0
   12135              :                           || !(
   12136              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12137              : (TARGET_AVX512F) && 
   12138              : #line 20026 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12139              : (TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12140              :                         return -1;
   12141              :                       return 8400; /* avx2_interleave_lowv16hi_mask */
   12142              : 
   12143              :                     case E_V16HFmode:
   12144              :                       if (pattern1593 (x2, 
   12145              : E_V16HFmode, 
   12146              : E_V32HFmode) != 0
   12147              :                           || !(
   12148              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12149              : (TARGET_AVX512F) && 
   12150              : #line 20026 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12151              : (TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12152              :                         return -1;
   12153              :                       return 8402; /* avx2_interleave_lowv16hf_mask */
   12154              : 
   12155              :                     case E_V16BFmode:
   12156              :                       if (pattern1593 (x2, 
   12157              : E_V16BFmode, 
   12158              : E_V32BFmode) != 0
   12159              :                           || !(
   12160              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12161              : (TARGET_AVX512F) && 
   12162              : #line 20026 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12163              : (TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12164              :                         return -1;
   12165              :                       return 8404; /* avx2_interleave_lowv16bf_mask */
   12166              : 
   12167              :                     default:
   12168              :                       return -1;
   12169              :                     }
   12170              : 
   12171              :                 default:
   12172              :                   return -1;
   12173              :                 }
   12174              : 
   12175              :             default:
   12176              :               return -1;
   12177              :             }
   12178              : 
   12179              :         case 0L:
   12180              :           if (pattern1688 (x4) != 0)
   12181              :             return -1;
   12182              :           x14 = XVECEXP (x4, 0, 8);
   12183              :           if (XWINT (x14, 0) != 8L)
   12184              :             return -1;
   12185              :           x15 = XVECEXP (x4, 0, 9);
   12186              :           if (XWINT (x15, 0) != 8L)
   12187              :             return -1;
   12188              :           x16 = XVECEXP (x4, 0, 10);
   12189              :           if (XWINT (x16, 0) != 10L)
   12190              :             return -1;
   12191              :           x17 = XVECEXP (x4, 0, 11);
   12192              :           if (XWINT (x17, 0) != 10L
   12193              :               || XWINT (x7, 0) != 12L
   12194              :               || XWINT (x8, 0) != 12L
   12195              :               || XWINT (x9, 0) != 14L
   12196              :               || XWINT (x10, 0) != 14L
   12197              :               || pattern1836 (x2, 
   12198              : E_V16SFmode, 
   12199              : E_V32SFmode) != 0
   12200              :               || !
   12201              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12202              : (TARGET_AVX512F))
   12203              :             return -1;
   12204              :           return 5282; /* avx512f_movsldup512_mask */
   12205              : 
   12206              :         default:
   12207              :           return -1;
   12208              :         }
   12209              : 
   12210              :     case 1L:
   12211              :       x13 = XVECEXP (x4, 0, 1);
   12212              :       if (XWINT (x13, 0) != 1L
   12213              :           || XWINT (x5, 0) != 3L
   12214              :           || XWINT (x6, 0) != 3L)
   12215              :         return -1;
   12216              :       x21 = XVECEXP (x4, 0, 4);
   12217              :       if (XWINT (x21, 0) != 5L)
   12218              :         return -1;
   12219              :       x22 = XVECEXP (x4, 0, 5);
   12220              :       if (XWINT (x22, 0) != 5L)
   12221              :         return -1;
   12222              :       x23 = XVECEXP (x4, 0, 6);
   12223              :       if (XWINT (x23, 0) != 7L)
   12224              :         return -1;
   12225              :       x24 = XVECEXP (x4, 0, 7);
   12226              :       if (XWINT (x24, 0) != 7L)
   12227              :         return -1;
   12228              :       x14 = XVECEXP (x4, 0, 8);
   12229              :       if (XWINT (x14, 0) != 9L)
   12230              :         return -1;
   12231              :       x15 = XVECEXP (x4, 0, 9);
   12232              :       if (XWINT (x15, 0) != 9L)
   12233              :         return -1;
   12234              :       x16 = XVECEXP (x4, 0, 10);
   12235              :       if (XWINT (x16, 0) != 11L)
   12236              :         return -1;
   12237              :       x17 = XVECEXP (x4, 0, 11);
   12238              :       if (XWINT (x17, 0) != 11L
   12239              :           || XWINT (x7, 0) != 13L
   12240              :           || XWINT (x8, 0) != 13L
   12241              :           || XWINT (x9, 0) != 15L
   12242              :           || XWINT (x10, 0) != 15L
   12243              :           || pattern1836 (x2, 
   12244              : E_V16SFmode, 
   12245              : E_V32SFmode) != 0
   12246              :           || !
   12247              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12248              : (TARGET_AVX512F))
   12249              :         return -1;
   12250              :       return 5276; /* avx512f_movshdup512_mask */
   12251              : 
   12252              :     case 8L:
   12253              :       x13 = XVECEXP (x4, 0, 1);
   12254              :       if (XWINT (x13, 0) != 24L
   12255              :           || XWINT (x5, 0) != 9L
   12256              :           || XWINT (x6, 0) != 25L)
   12257              :         return -1;
   12258              :       x21 = XVECEXP (x4, 0, 4);
   12259              :       if (XWINT (x21, 0) != 10L)
   12260              :         return -1;
   12261              :       x22 = XVECEXP (x4, 0, 5);
   12262              :       if (XWINT (x22, 0) != 26L)
   12263              :         return -1;
   12264              :       x23 = XVECEXP (x4, 0, 6);
   12265              :       if (XWINT (x23, 0) != 11L)
   12266              :         return -1;
   12267              :       x24 = XVECEXP (x4, 0, 7);
   12268              :       if (XWINT (x24, 0) != 27L
   12269              :           || pattern1882 (x4) != 0
   12270              :           || XWINT (x7, 0) != 14L
   12271              :           || XWINT (x8, 0) != 30L
   12272              :           || XWINT (x9, 0) != 15L
   12273              :           || XWINT (x10, 0) != 31L
   12274              :           || pattern778 (x2, 
   12275              : E_V32QImode, 
   12276              : E_V16QImode) != 0
   12277              :           || !register_operand (operands[1], E_V16QImode))
   12278              :         return -1;
   12279              :       x18 = XEXP (x3, 0);
   12280              :       x19 = XEXP (x18, 1);
   12281              :       operands[2] = x19;
   12282              :       if (!vector_operand (operands[2], E_V16QImode))
   12283              :         return -1;
   12284              :       x20 = XEXP (x2, 1);
   12285              :       operands[3] = x20;
   12286              :       if (!nonimm_or_0_operand (operands[3], E_V16QImode))
   12287              :         return -1;
   12288              :       operands[4] = x11;
   12289              :       if (!(
   12290              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12291              : (TARGET_AVX512F) && 
   12292              : #line 19810 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12293              : (TARGET_SSE2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12294              :         return -1;
   12295              :       return 8368; /* vec_interleave_highv16qi_mask */
   12296              : 
   12297              :     case 4L:
   12298              :       x13 = XVECEXP (x4, 0, 1);
   12299              :       if (XWINT (x13, 0) != 20L
   12300              :           || XWINT (x5, 0) != 5L
   12301              :           || XWINT (x6, 0) != 21L
   12302              :           || pattern1867 (x4) != 0
   12303              :           || pattern1882 (x4) != 0
   12304              :           || pattern1899 (x2) != 0)
   12305              :         return -1;
   12306              :       switch (GET_MODE (operands[0]))
   12307              :         {
   12308              :         case E_V16HImode:
   12309              :           if (pattern1593 (x2, 
   12310              : E_V16HImode, 
   12311              : E_V32HImode) != 0
   12312              :               || !(
   12313              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12314              : (TARGET_AVX512F) && 
   12315              : #line 19958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12316              : (TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12317              :             return -1;
   12318              :           return 8382; /* avx2_interleave_highv16hi_mask */
   12319              : 
   12320              :         case E_V16HFmode:
   12321              :           if (pattern1593 (x2, 
   12322              : E_V16HFmode, 
   12323              : E_V32HFmode) != 0
   12324              :               || !(
   12325              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12326              : (TARGET_AVX512F) && 
   12327              : #line 19958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12328              : (TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12329              :             return -1;
   12330              :           return 8384; /* avx2_interleave_highv16hf_mask */
   12331              : 
   12332              :         case E_V16BFmode:
   12333              :           if (pattern1593 (x2, 
   12334              : E_V16BFmode, 
   12335              : E_V32BFmode) != 0
   12336              :               || !(
   12337              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12338              : (TARGET_AVX512F) && 
   12339              : #line 19958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12340              : (TARGET_AVX2 && TARGET_AVX512VL && TARGET_AVX512BW)))
   12341              :             return -1;
   12342              :           return 8386; /* avx2_interleave_highv16bf_mask */
   12343              : 
   12344              :         default:
   12345              :           return -1;
   12346              :         }
   12347              : 
   12348              :     default:
   12349              :       return -1;
   12350              :     }
   12351              : }
   12352              : 
   12353              :  int
   12354              : recog_177 (rtx x1 ATTRIBUTE_UNUSED,
   12355              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12356              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12357              : {
   12358              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12359              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   12360              :   rtx x10;
   12361              :   int res ATTRIBUTE_UNUSED;
   12362              :   x2 = XEXP (x1, 1);
   12363              :   x3 = XEXP (x2, 0);
   12364              :   x4 = XEXP (x3, 1);
   12365              :   x5 = XVECEXP (x4, 0, 0);
   12366              :   if (GET_CODE (x5) != CONST_INT)
   12367              :     return -1;
   12368              :   x6 = XVECEXP (x4, 0, 1);
   12369              :   if (GET_CODE (x6) == CONST_INT)
   12370              :     {
   12371              :       res = recog_174 (x1, insn, pnum_clobbers);
   12372              :       if (res >= 0)
   12373              :         return res;
   12374              :     }
   12375              :   operands[2] = x5;
   12376              :   res = recog_176 (x1, insn, pnum_clobbers);
   12377              :   if (res >= 0)
   12378              :     return res;
   12379              :   if (XWINT (x5, 0) != 0L
   12380              :       || x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12381              :     return -1;
   12382              :   x7 = XVECEXP (x4, 0, 2);
   12383              :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
   12384              :     return -1;
   12385              :   x8 = XVECEXP (x4, 0, 3);
   12386              :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 3]
   12387              :       || pattern1306 (x2, 
   12388              : E_V8HImode) != 0
   12389              :       || pattern1558 (x4) != 0)
   12390              :     return -1;
   12391              :   x9 = XEXP (x2, 1);
   12392              :   operands[6] = x9;
   12393              :   if (!nonimm_or_0_operand (operands[6], E_V8HImode))
   12394              :     return -1;
   12395              :   x10 = XEXP (x2, 2);
   12396              :   operands[7] = x10;
   12397              :   if (!register_operand (operands[7], E_QImode)
   12398              :       || !(
   12399              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12400              : (TARGET_AVX512F) && 
   12401              : #line 21343 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12402              : (TARGET_SSE2 && TARGET_AVX512BW && TARGET_AVX512VL)))
   12403              :     return -1;
   12404              :   return 8498; /* sse2_pshufhw_1_mask */
   12405              : }
   12406              : 
   12407              :  int
   12408              : recog_181 (rtx x1 ATTRIBUTE_UNUSED,
   12409              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12410              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12411              : {
   12412              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12413              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   12414              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   12415              :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
   12416              :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
   12417              :   rtx x34, x35, x36, x37, x38, x39, x40, x41;
   12418              :   rtx x42, x43, x44, x45;
   12419              :   int res ATTRIBUTE_UNUSED;
   12420              :   x2 = XEXP (x1, 1);
   12421              :   x3 = XEXP (x2, 0);
   12422              :   x4 = XEXP (x3, 0);
   12423              :   x5 = XEXP (x4, 0);
   12424              :   x6 = XEXP (x5, 1);
   12425              :   if (GET_CODE (x6) != CONST_VECTOR
   12426              :       || XVECLEN (x6, 0) != 32
   12427              :       || GET_MODE (x6) != E_V32HImode)
   12428              :     return -1;
   12429              :   x7 = XVECEXP (x6, 0, 0);
   12430              :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12431              :     return -1;
   12432              :   x8 = XVECEXP (x6, 0, 1);
   12433              :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12434              :     return -1;
   12435              :   x9 = XVECEXP (x6, 0, 2);
   12436              :   if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12437              :     return -1;
   12438              :   x10 = XVECEXP (x6, 0, 3);
   12439              :   if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12440              :     return -1;
   12441              :   x11 = XVECEXP (x6, 0, 4);
   12442              :   if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12443              :     return -1;
   12444              :   x12 = XVECEXP (x6, 0, 5);
   12445              :   if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12446              :     return -1;
   12447              :   x13 = XVECEXP (x6, 0, 6);
   12448              :   if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12449              :     return -1;
   12450              :   x14 = XVECEXP (x6, 0, 7);
   12451              :   if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12452              :     return -1;
   12453              :   x15 = XVECEXP (x6, 0, 8);
   12454              :   if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12455              :     return -1;
   12456              :   x16 = XVECEXP (x6, 0, 9);
   12457              :   if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12458              :     return -1;
   12459              :   x17 = XVECEXP (x6, 0, 10);
   12460              :   if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12461              :     return -1;
   12462              :   x18 = XVECEXP (x6, 0, 11);
   12463              :   if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12464              :     return -1;
   12465              :   x19 = XVECEXP (x6, 0, 12);
   12466              :   if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12467              :     return -1;
   12468              :   x20 = XVECEXP (x6, 0, 13);
   12469              :   if (x20 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12470              :     return -1;
   12471              :   x21 = XVECEXP (x6, 0, 14);
   12472              :   if (x21 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12473              :     return -1;
   12474              :   x22 = XVECEXP (x6, 0, 15);
   12475              :   if (x22 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12476              :     return -1;
   12477              :   x23 = XVECEXP (x6, 0, 16);
   12478              :   if (x23 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12479              :     return -1;
   12480              :   x24 = XVECEXP (x6, 0, 17);
   12481              :   if (x24 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12482              :     return -1;
   12483              :   x25 = XVECEXP (x6, 0, 18);
   12484              :   if (x25 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12485              :     return -1;
   12486              :   x26 = XVECEXP (x6, 0, 19);
   12487              :   if (x26 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12488              :     return -1;
   12489              :   x27 = XVECEXP (x6, 0, 20);
   12490              :   if (x27 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12491              :     return -1;
   12492              :   x28 = XVECEXP (x6, 0, 21);
   12493              :   if (x28 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12494              :     return -1;
   12495              :   x29 = XVECEXP (x6, 0, 22);
   12496              :   if (x29 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12497              :     return -1;
   12498              :   x30 = XVECEXP (x6, 0, 23);
   12499              :   if (x30 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12500              :     return -1;
   12501              :   x31 = XVECEXP (x6, 0, 24);
   12502              :   if (x31 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12503              :     return -1;
   12504              :   x32 = XVECEXP (x6, 0, 25);
   12505              :   if (x32 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12506              :     return -1;
   12507              :   x33 = XVECEXP (x6, 0, 26);
   12508              :   if (x33 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12509              :     return -1;
   12510              :   x34 = XVECEXP (x6, 0, 27);
   12511              :   if (x34 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12512              :     return -1;
   12513              :   x35 = XVECEXP (x6, 0, 28);
   12514              :   if (x35 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12515              :     return -1;
   12516              :   x36 = XVECEXP (x6, 0, 29);
   12517              :   if (x36 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12518              :     return -1;
   12519              :   x37 = XVECEXP (x6, 0, 30);
   12520              :   if (x37 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12521              :     return -1;
   12522              :   x38 = XVECEXP (x6, 0, 31);
   12523              :   if (x38 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   12524              :       || !register_operand (operands[0], E_V32HImode)
   12525              :       || GET_MODE (x2) != E_V32HImode
   12526              :       || GET_MODE (x3) != E_V32HImode
   12527              :       || GET_MODE (x4) != E_V32SImode
   12528              :       || GET_MODE (x5) != E_V32SImode)
   12529              :     return -1;
   12530              :   x39 = XEXP (x5, 0);
   12531              :   if (GET_MODE (x39) != E_V32SImode)
   12532              :     return -1;
   12533              :   x40 = XEXP (x39, 0);
   12534              :   if (GET_MODE (x40) != E_V32SImode)
   12535              :     return -1;
   12536              :   x41 = XEXP (x40, 0);
   12537              :   if (GET_MODE (x41) != E_V32SImode)
   12538              :     return -1;
   12539              :   x42 = XEXP (x40, 1);
   12540              :   if (GET_MODE (x42) != E_V32SImode)
   12541              :     return -1;
   12542              :   x43 = XEXP (x42, 0);
   12543              :   operands[2] = x43;
   12544              :   if (!nonimmediate_operand (operands[2], E_V32HImode))
   12545              :     return -1;
   12546              :   x44 = XEXP (x2, 1);
   12547              :   operands[3] = x44;
   12548              :   if (!nonimm_or_0_operand (operands[3], E_V32HImode))
   12549              :     return -1;
   12550              :   x45 = XEXP (x2, 2);
   12551              :   operands[4] = x45;
   12552              :   if (!register_operand (operands[4], E_SImode)
   12553              :       || !(
   12554              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12555              : (TARGET_AVX512F) && 
   12556              : #line 23182 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12557              : (TARGET_AVX512BW)))
   12558              :     return -1;
   12559              :   return 8657; /* avx512bw_umulhrswv32hi3_mask */
   12560              : }
   12561              : 
   12562              :  int
   12563              : recog_190 (rtx x1 ATTRIBUTE_UNUSED,
   12564              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   12565              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   12566              : {
   12567              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   12568              :   rtx x2, x3, x4, x5, x6, x7;
   12569              :   int res ATTRIBUTE_UNUSED;
   12570              :   x2 = XEXP (x1, 1);
   12571              :   x3 = XEXP (x2, 0);
   12572              :   x4 = XEXP (x3, 0);
   12573              :   switch (GET_CODE (x4))
   12574              :     {
   12575              :     case REG:
   12576              :     case SUBREG:
   12577              :     case MEM:
   12578              :     case VEC_DUPLICATE:
   12579              :       operands[1] = x4;
   12580              :       x5 = XEXP (x3, 1);
   12581              :       operands[2] = x5;
   12582              :       x6 = XEXP (x2, 2);
   12583              :       switch (GET_CODE (x6))
   12584              :         {
   12585              :         case REG:
   12586              :         case SUBREG:
   12587              :           operands[4] = x6;
   12588              :           x7 = XEXP (x2, 1);
   12589              :           operands[3] = x7;
   12590              :           switch (GET_MODE (operands[0]))
   12591              :             {
   12592              :             case E_V32HFmode:
   12593              :               if (pattern489 (x2, 
   12594              : E_V32HFmode, 
   12595              : E_SImode) != 0
   12596              :                   || !(
   12597              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12598              : (TARGET_AVX512F) && (
   12599              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12600              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V32HFmode, operands)
   12601              :    && (64 == 64 || TARGET_AVX512VL) && 1) && 
   12602              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12603              : (TARGET_AVX512FP16))))
   12604              :                 return -1;
   12605              :               return 2849; /* *mulv32hf3_mask */
   12606              : 
   12607              :             case E_V16HFmode:
   12608              :               if (pattern489 (x2, 
   12609              : E_V16HFmode, 
   12610              : E_HImode) != 0
   12611              :                   || !(
   12612              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12613              : (TARGET_AVX512F) && (
   12614              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12615              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V16HFmode, operands)
   12616              :    && (32 == 64 || TARGET_AVX512VL) && 1) && 
   12617              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12618              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   12619              :                 return -1;
   12620              :               return 2853; /* *mulv16hf3_mask */
   12621              : 
   12622              :             case E_V8HFmode:
   12623              :               if (pattern489 (x2, 
   12624              : E_V8HFmode, 
   12625              : E_QImode) != 0
   12626              :                   || !(
   12627              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12628              : (TARGET_AVX512F) && (
   12629              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12630              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V8HFmode, operands)
   12631              :    && (16 == 64 || TARGET_AVX512VL) && 1) && 
   12632              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12633              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   12634              :                 return -1;
   12635              :               return 2857; /* *mulv8hf3_mask */
   12636              : 
   12637              :             case E_V16SFmode:
   12638              :               if (pattern489 (x2, 
   12639              : E_V16SFmode, 
   12640              : E_HImode) != 0
   12641              :                   || !(
   12642              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12643              : (TARGET_AVX512F) && (
   12644              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12645              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V16SFmode, operands)
   12646              :    && (64 == 64 || TARGET_AVX512VL) && 1) && 
   12647              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12648              : (TARGET_AVX512F))))
   12649              :                 return -1;
   12650              :               return 2861; /* *mulv16sf3_mask */
   12651              : 
   12652              :             case E_V8SFmode:
   12653              :               if (pattern489 (x2, 
   12654              : E_V8SFmode, 
   12655              : E_QImode) != 0
   12656              :                   || !(
   12657              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12658              : (TARGET_AVX512F) && (
   12659              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12660              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V8SFmode, operands)
   12661              :    && (32 == 64 || TARGET_AVX512VL) && 1) && 
   12662              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12663              : (TARGET_AVX))))
   12664              :                 return -1;
   12665              :               return 2865; /* *mulv8sf3_mask */
   12666              : 
   12667              :             case E_V4SFmode:
   12668              :               if (pattern489 (x2, 
   12669              : E_V4SFmode, 
   12670              : E_QImode) != 0
   12671              :                   || !(
   12672              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12673              : (TARGET_AVX512F) && 
   12674              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12675              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V4SFmode, operands)
   12676              :    && (16 == 64 || TARGET_AVX512VL) && 1)))
   12677              :                 return -1;
   12678              :               return 2869; /* *mulv4sf3_mask */
   12679              : 
   12680              :             case E_V8DFmode:
   12681              :               if (pattern489 (x2, 
   12682              : E_V8DFmode, 
   12683              : E_QImode) != 0
   12684              :                   || !(
   12685              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12686              : (TARGET_AVX512F) && (
   12687              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12688              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V8DFmode, operands)
   12689              :    && (64 == 64 || TARGET_AVX512VL) && 1) && 
   12690              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12691              : (TARGET_AVX512F))))
   12692              :                 return -1;
   12693              :               return 2873; /* *mulv8df3_mask */
   12694              : 
   12695              :             case E_V4DFmode:
   12696              :               if (pattern489 (x2, 
   12697              : E_V4DFmode, 
   12698              : E_QImode) != 0
   12699              :                   || !(
   12700              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12701              : (TARGET_AVX512F) && (
   12702              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12703              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V4DFmode, operands)
   12704              :    && (32 == 64 || TARGET_AVX512VL) && 1) && 
   12705              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12706              : (TARGET_AVX))))
   12707              :                 return -1;
   12708              :               return 2877; /* *mulv4df3_mask */
   12709              : 
   12710              :             case E_V2DFmode:
   12711              :               if (pattern489 (x2, 
   12712              : E_V2DFmode, 
   12713              : E_QImode) != 0
   12714              :                   || !(
   12715              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12716              : (TARGET_AVX512F) && (
   12717              : #line 2773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12718              : (TARGET_SSE && ix86_binary_operator_ok (MULT, V2DFmode, operands)
   12719              :    && (16 == 64 || TARGET_AVX512VL) && 1) && 
   12720              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12721              : (TARGET_SSE2))))
   12722              :                 return -1;
   12723              :               return 2881; /* *mulv2df3_mask */
   12724              : 
   12725              :             case E_V32HImode:
   12726              :               if (pattern133 (x2, 
   12727              : E_V32HImode, 
   12728              : E_SImode) != 0
   12729              :                   || !(
   12730              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12731              : (TARGET_AVX512F) && (
   12732              : #line 16710 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12733              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   12734              :    && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
   12735              : #line 646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12736              : (TARGET_AVX512BW))))
   12737              :                 return -1;
   12738              :               return 7595; /* *mulv32hi3_mask */
   12739              : 
   12740              :             case E_V16HImode:
   12741              :               if (pattern133 (x2, 
   12742              : E_V16HImode, 
   12743              : E_HImode) != 0
   12744              :                   || !(
   12745              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12746              : (TARGET_AVX512F) && (
   12747              : #line 16710 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12748              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   12749              :    && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
   12750              : #line 646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12751              : (TARGET_AVX2))))
   12752              :                 return -1;
   12753              :               return 7597; /* *mulv16hi3_mask */
   12754              : 
   12755              :             case E_V8HImode:
   12756              :               if (pattern133 (x2, 
   12757              : E_V8HImode, 
   12758              : E_QImode) != 0
   12759              :                   || !(
   12760              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12761              : (TARGET_AVX512F) && 
   12762              : #line 16710 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12763              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   12764              :    && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
   12765              :                 return -1;
   12766              :               return 7599; /* *mulv8hi3_mask */
   12767              : 
   12768              :             case E_V8DImode:
   12769              :               if (pattern489 (x2, 
   12770              : E_V8DImode, 
   12771              : E_QImode) != 0
   12772              :                   || !(
   12773              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12774              : (TARGET_AVX512F) && 
   12775              : #line 17164 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12776              : (TARGET_AVX512DQ && (64 == 64 || TARGET_AVX512VL)
   12777              :   && ix86_binary_operator_ok (MULT, V8DImode, operands))))
   12778              :                 return -1;
   12779              :               return 7633; /* *avx512dq_mulv8di3_mask */
   12780              : 
   12781              :             case E_V4DImode:
   12782              :               if (pattern489 (x2, 
   12783              : E_V4DImode, 
   12784              : E_QImode) != 0
   12785              :                   || !(
   12786              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12787              : (TARGET_AVX512F) && (
   12788              : #line 17164 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12789              : (TARGET_AVX512DQ && (32 == 64 || TARGET_AVX512VL)
   12790              :   && ix86_binary_operator_ok (MULT, V4DImode, operands)) && 
   12791              : #line 617 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12792              : (TARGET_AVX512VL))))
   12793              :                 return -1;
   12794              :               return 7635; /* *avx512dq_mulv4di3_mask */
   12795              : 
   12796              :             case E_V2DImode:
   12797              :               if (pattern489 (x2, 
   12798              : E_V2DImode, 
   12799              : E_QImode) != 0
   12800              :                   || !(
   12801              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12802              : (TARGET_AVX512F) && (
   12803              : #line 17164 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12804              : (TARGET_AVX512DQ && (16 == 64 || TARGET_AVX512VL)
   12805              :   && ix86_binary_operator_ok (MULT, V2DImode, operands)) && 
   12806              : #line 617 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12807              : (TARGET_AVX512VL))))
   12808              :                 return -1;
   12809              :               return 7637; /* *avx512dq_mulv2di3_mask */
   12810              : 
   12811              :             case E_V16SImode:
   12812              :               if (pattern489 (x2, 
   12813              : E_V16SImode, 
   12814              : E_HImode) != 0
   12815              :                   || !(
   12816              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12817              : (TARGET_AVX512F) && (
   12818              : #line 17223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12819              : (TARGET_SSE4_1 && ix86_binary_operator_ok (MULT, V16SImode, operands)
   12820              :   && (64 == 64 || TARGET_AVX512VL)) && 
   12821              : #line 665 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12822              : (TARGET_AVX512F))))
   12823              :                 return -1;
   12824              :               return 7639; /* *avx512f_mulv16si3_mask */
   12825              : 
   12826              :             case E_V8SImode:
   12827              :               if (pattern489 (x2, 
   12828              : E_V8SImode, 
   12829              : E_QImode) != 0
   12830              :                   || !(
   12831              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12832              : (TARGET_AVX512F) && (
   12833              : #line 17223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12834              : (TARGET_SSE4_1 && ix86_binary_operator_ok (MULT, V8SImode, operands)
   12835              :   && (32 == 64 || TARGET_AVX512VL)) && 
   12836              : #line 665 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12837              : (TARGET_AVX2))))
   12838              :                 return -1;
   12839              :               return 7641; /* *avx2_mulv8si3_mask */
   12840              : 
   12841              :             case E_V4SImode:
   12842              :               if (pattern489 (x2, 
   12843              : E_V4SImode, 
   12844              : E_QImode) != 0
   12845              :                   || !(
   12846              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12847              : (TARGET_AVX512F) && 
   12848              : #line 17223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12849              : (TARGET_SSE4_1 && ix86_binary_operator_ok (MULT, V4SImode, operands)
   12850              :   && (16 == 64 || TARGET_AVX512VL))))
   12851              :                 return -1;
   12852              :               return 7643; /* *sse4_1_mulv4si3_mask */
   12853              : 
   12854              :             case E_V32BFmode:
   12855              :               if (pattern136 (x2, 
   12856              : E_V32BFmode, 
   12857              : E_SImode) != 0
   12858              :                   || !(
   12859              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12860              : (TARGET_AVX512F) && 
   12861              : #line 32831 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12862              : (TARGET_AVX10_2)))
   12863              :                 return -1;
   12864              :               return 10682; /* avx10_2_mulbf16_v32bf_mask */
   12865              : 
   12866              :             case E_V16BFmode:
   12867              :               if (pattern136 (x2, 
   12868              : E_V16BFmode, 
   12869              : E_HImode) != 0
   12870              :                   || !(
   12871              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12872              : (TARGET_AVX512F) && 
   12873              : #line 32831 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12874              : (TARGET_AVX10_2)))
   12875              :                 return -1;
   12876              :               return 10690; /* avx10_2_mulbf16_v16bf_mask */
   12877              : 
   12878              :             case E_V8BFmode:
   12879              :               if (pattern136 (x2, 
   12880              : E_V8BFmode, 
   12881              : E_QImode) != 0
   12882              :                   || !(
   12883              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12884              : (TARGET_AVX512F) && 
   12885              : #line 32831 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12886              : (TARGET_AVX10_2)))
   12887              :                 return -1;
   12888              :               return 10698; /* avx10_2_mulbf16_v8bf_mask */
   12889              : 
   12890              :             default:
   12891              :               return -1;
   12892              :             }
   12893              : 
   12894              :         case CONST_INT:
   12895              :           switch (pattern138 (x2))
   12896              :             {
   12897              :             case 0:
   12898              :               if (!(
   12899              : #line 2824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12900              : (TARGET_SSE) && 
   12901              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12902              : (TARGET_AVX512FP16)))
   12903              :                 return -1;
   12904              :               return 2889; /* avx512fp16_vmmulv8hf3 */
   12905              : 
   12906              :             case 1:
   12907              :               if (!
   12908              : #line 2824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12909              : (TARGET_SSE))
   12910              :                 return -1;
   12911              :               return 2897; /* sse_vmmulv4sf3 */
   12912              : 
   12913              :             case 2:
   12914              :               if (!(
   12915              : #line 2824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12916              : (TARGET_SSE) && 
   12917              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12918              : (TARGET_SSE2)))
   12919              :                 return -1;
   12920              :               return 2905; /* sse2_vmmulv2df3 */
   12921              : 
   12922              :             default:
   12923              :               return -1;
   12924              :             }
   12925              : 
   12926              :         default:
   12927              :           return -1;
   12928              :         }
   12929              : 
   12930              :     case ZERO_EXTEND:
   12931              :       switch (pattern317 (x2, 
   12932              : ZERO_EXTEND))
   12933              :         {
   12934              :         case 0:
   12935              :           if (!(
   12936              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12937              : (TARGET_AVX512F) && 
   12938              : #line 16793 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12939              : (TARGET_AVX512F
   12940              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   12941              :             return -1;
   12942              :           return 7613; /* *vec_widen_umult_even_v16si_mask */
   12943              : 
   12944              :         case 1:
   12945              :           if (!(
   12946              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12947              : (TARGET_AVX512F) && 
   12948              : #line 16829 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12949              : (TARGET_AVX2 && TARGET_AVX512VL
   12950              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   12951              :             return -1;
   12952              :           return 7615; /* *vec_widen_umult_even_v8si_mask */
   12953              : 
   12954              :         case 2:
   12955              :           if (!(
   12956              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12957              : (TARGET_AVX512F) && 
   12958              : #line 16861 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12959              : (TARGET_SSE2 && TARGET_AVX512VL
   12960              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   12961              :             return -1;
   12962              :           return 7617; /* *vec_widen_umult_even_v4si_mask */
   12963              : 
   12964              :         default:
   12965              :           return -1;
   12966              :         }
   12967              : 
   12968              :     case SIGN_EXTEND:
   12969              :       switch (pattern317 (x2, 
   12970              : SIGN_EXTEND))
   12971              :         {
   12972              :         case 0:
   12973              :           if (!(
   12974              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12975              : (TARGET_AVX512F) && 
   12976              : #line 16909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12977              : (TARGET_AVX512F
   12978              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   12979              :             return -1;
   12980              :           return 7619; /* *vec_widen_smult_even_v16si_mask */
   12981              : 
   12982              :         case 1:
   12983              :           if (!(
   12984              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12985              : (TARGET_AVX512F) && 
   12986              : #line 16945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12987              : (TARGET_AVX2 && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   12988              :             return -1;
   12989              :           return 7621; /* *vec_widen_smult_even_v8si_mask */
   12990              : 
   12991              :         case 2:
   12992              :           if (!(
   12993              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12994              : (TARGET_AVX512F) && 
   12995              : #line 16977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12996              : (TARGET_SSE4_1 && TARGET_AVX512VL
   12997              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   12998              :             return -1;
   12999              :           return 7623; /* *sse4_1_mulv2siv2di3_mask */
   13000              : 
   13001              :         default:
   13002              :           return -1;
   13003              :         }
   13004              : 
   13005              :     default:
   13006              :       return -1;
   13007              :     }
   13008              : }
   13009              : 
   13010              :  int
   13011              : recog_195 (rtx x1 ATTRIBUTE_UNUSED,
   13012              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13013              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13014              : {
   13015              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13016              :   rtx x2, x3, x4, x5, x6, x7, x8;
   13017              :   int res ATTRIBUTE_UNUSED;
   13018              :   x2 = XEXP (x1, 1);
   13019              :   x3 = XEXP (x2, 0);
   13020              :   x4 = XEXP (x3, 1);
   13021              :   operands[2] = x4;
   13022              :   x5 = XEXP (x2, 1);
   13023              :   operands[3] = x5;
   13024              :   x6 = XEXP (x2, 2);
   13025              :   operands[4] = x6;
   13026              :   x7 = XEXP (x3, 0);
   13027              :   switch (GET_CODE (x7))
   13028              :     {
   13029              :     case NOT:
   13030              :       x8 = XEXP (x7, 0);
   13031              :       operands[1] = x8;
   13032              :       switch (GET_MODE (operands[0]))
   13033              :         {
   13034              :         case E_V8SFmode:
   13035              :           if (pattern1019 (x2, 
   13036              : E_V8SFmode) != 0
   13037              :               || !(
   13038              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13039              : (TARGET_AVX512F) && (
   13040              : #line 5590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13041              : (TARGET_SSE && TARGET_AVX512VL
   13042              :    && (!true || 32 != 16)) && 
   13043              : #line 432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13044              : (TARGET_AVX))))
   13045              :             return -1;
   13046              :           return 3769; /* avx_andnotv8sf3_mask */
   13047              : 
   13048              :         case E_V4SFmode:
   13049              :           if (pattern1019 (x2, 
   13050              : E_V4SFmode) != 0
   13051              :               || !(
   13052              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13053              : (TARGET_AVX512F) && 
   13054              : #line 5590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13055              : (TARGET_SSE && TARGET_AVX512VL
   13056              :    && (!true || 32 != 16))))
   13057              :             return -1;
   13058              :           return 3771; /* sse_andnotv4sf3_mask */
   13059              : 
   13060              :         case E_V4DFmode:
   13061              :           if (pattern1019 (x2, 
   13062              : E_V4DFmode) != 0
   13063              :               || !(
   13064              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13065              : (TARGET_AVX512F) && (
   13066              : #line 5590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13067              : (TARGET_SSE && TARGET_AVX512VL
   13068              :    && (!true || 64 != 16)) && 
   13069              : #line 433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13070              : (TARGET_AVX))))
   13071              :             return -1;
   13072              :           return 3773; /* avx_andnotv4df3_mask */
   13073              : 
   13074              :         case E_V2DFmode:
   13075              :           if (pattern1019 (x2, 
   13076              : E_V2DFmode) != 0
   13077              :               || !(
   13078              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13079              : (TARGET_AVX512F) && (
   13080              : #line 5590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13081              : (TARGET_SSE && TARGET_AVX512VL
   13082              :    && (!true || 64 != 16)) && 
   13083              : #line 433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13084              : (TARGET_SSE2))))
   13085              :             return -1;
   13086              :           return 3775; /* sse2_andnotv2df3_mask */
   13087              : 
   13088              :         case E_V16SFmode:
   13089              :           if (pattern1020 (x2, 
   13090              : E_V16SFmode, 
   13091              : E_HImode) != 0
   13092              :               || !(
   13093              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13094              : (TARGET_AVX512F) && 
   13095              : #line 5665 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13096              : (TARGET_AVX512F && (!true || 32 != 16))))
   13097              :             return -1;
   13098              :           return 3779; /* avx512f_andnotv16sf3_mask */
   13099              : 
   13100              :         case E_V8DFmode:
   13101              :           if (pattern1020 (x2, 
   13102              : E_V8DFmode, 
   13103              : E_QImode) != 0
   13104              :               || !(
   13105              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13106              : (TARGET_AVX512F) && 
   13107              : #line 5665 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13108              : (TARGET_AVX512F && (!true || 64 != 16))))
   13109              :             return -1;
   13110              :           return 3781; /* avx512f_andnotv8df3_mask */
   13111              : 
   13112              :         case E_V16SImode:
   13113              :           if (pattern1020 (x2, 
   13114              : E_V16SImode, 
   13115              : E_HImode) != 0
   13116              :               || !
   13117              : #line 19018 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13118              : (TARGET_AVX512F))
   13119              :             return -1;
   13120              :           return 8042; /* *andnotv16si3_mask */
   13121              : 
   13122              :         case E_V8SImode:
   13123              :           if (pattern1020 (x2, 
   13124              : E_V8SImode, 
   13125              : E_QImode) != 0
   13126              :               || !(
   13127              : #line 19018 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13128              : (TARGET_AVX512F) && 
   13129              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13130              : (TARGET_AVX512VL)))
   13131              :             return -1;
   13132              :           return 8043; /* *andnotv8si3_mask */
   13133              : 
   13134              :         case E_V4SImode:
   13135              :           if (pattern1020 (x2, 
   13136              : E_V4SImode, 
   13137              : E_QImode) != 0
   13138              :               || !(
   13139              : #line 19018 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13140              : (TARGET_AVX512F) && 
   13141              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13142              : (TARGET_AVX512VL)))
   13143              :             return -1;
   13144              :           return 8044; /* *andnotv4si3_mask */
   13145              : 
   13146              :         case E_V8DImode:
   13147              :           if (pattern1020 (x2, 
   13148              : E_V8DImode, 
   13149              : E_QImode) != 0
   13150              :               || !
   13151              : #line 19018 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13152              : (TARGET_AVX512F))
   13153              :             return -1;
   13154              :           return 8045; /* *andnotv8di3_mask */
   13155              : 
   13156              :         case E_V4DImode:
   13157              :           if (pattern1020 (x2, 
   13158              : E_V4DImode, 
   13159              : E_QImode) != 0
   13160              :               || !(
   13161              : #line 19018 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13162              : (TARGET_AVX512F) && 
   13163              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13164              : (TARGET_AVX512VL)))
   13165              :             return -1;
   13166              :           return 8046; /* *andnotv4di3_mask */
   13167              : 
   13168              :         case E_V2DImode:
   13169              :           if (pattern1020 (x2, 
   13170              : E_V2DImode, 
   13171              : E_QImode) != 0
   13172              :               || !(
   13173              : #line 19018 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13174              : (TARGET_AVX512F) && 
   13175              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13176              : (TARGET_AVX512VL)))
   13177              :             return -1;
   13178              :           return 8047; /* *andnotv2di3_mask */
   13179              : 
   13180              :         default:
   13181              :           return -1;
   13182              :         }
   13183              : 
   13184              :     case REG:
   13185              :     case SUBREG:
   13186              :     case MEM:
   13187              :     case VEC_DUPLICATE:
   13188              :       operands[1] = x7;
   13189              :       switch (GET_MODE (operands[0]))
   13190              :         {
   13191              :         case E_V8SFmode:
   13192              :           if (pattern133 (x2, 
   13193              : E_V8SFmode, 
   13194              : E_QImode) != 0
   13195              :               || !(
   13196              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13197              : (TARGET_AVX512F) && (
   13198              : #line 5717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13199              : (TARGET_SSE && TARGET_AVX512VL
   13200              :    && (!true || 32 != 16)
   13201              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13202              : #line 432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13203              : (TARGET_AVX))))
   13204              :             return -1;
   13205              :           return 3795; /* *andv8sf3_mask */
   13206              : 
   13207              :         case E_V4SFmode:
   13208              :           if (pattern133 (x2, 
   13209              : E_V4SFmode, 
   13210              : E_QImode) != 0
   13211              :               || !(
   13212              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13213              : (TARGET_AVX512F) && 
   13214              : #line 5717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13215              : (TARGET_SSE && TARGET_AVX512VL
   13216              :    && (!true || 32 != 16)
   13217              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   13218              :             return -1;
   13219              :           return 3801; /* *andv4sf3_mask */
   13220              : 
   13221              :         case E_V4DFmode:
   13222              :           if (pattern133 (x2, 
   13223              : E_V4DFmode, 
   13224              : E_QImode) != 0
   13225              :               || !(
   13226              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13227              : (TARGET_AVX512F) && (
   13228              : #line 5717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13229              : (TARGET_SSE && TARGET_AVX512VL
   13230              :    && (!true || 64 != 16)
   13231              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13232              : #line 433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13233              : (TARGET_AVX))))
   13234              :             return -1;
   13235              :           return 3807; /* *andv4df3_mask */
   13236              : 
   13237              :         case E_V2DFmode:
   13238              :           if (pattern133 (x2, 
   13239              : E_V2DFmode, 
   13240              : E_QImode) != 0
   13241              :               || !(
   13242              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13243              : (TARGET_AVX512F) && (
   13244              : #line 5717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13245              : (TARGET_SSE && TARGET_AVX512VL
   13246              :    && (!true || 64 != 16)
   13247              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   13248              : #line 433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13249              : (TARGET_SSE2))))
   13250              :             return -1;
   13251              :           return 3813; /* *andv2df3_mask */
   13252              : 
   13253              :         case E_V16SFmode:
   13254              :           if (pattern134 (x2, 
   13255              : E_V16SFmode, 
   13256              : E_HImode) != 0
   13257              :               || !(
   13258              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13259              : (TARGET_AVX512F) && 
   13260              : #line 5787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13261              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13262              :    && (!true || 32 != 16))))
   13263              :             return -1;
   13264              :           return 3825; /* *andv16sf3_mask */
   13265              : 
   13266              :         case E_V8DFmode:
   13267              :           if (pattern134 (x2, 
   13268              : E_V8DFmode, 
   13269              : E_QImode) != 0
   13270              :               || !(
   13271              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13272              : (TARGET_AVX512F) && 
   13273              : #line 5787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13274              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13275              :    && (!true || 64 != 16))))
   13276              :             return -1;
   13277              :           return 3831; /* *andv8df3_mask */
   13278              : 
   13279              :         case E_V16SImode:
   13280              :           if (pattern489 (x2, 
   13281              : E_V16SImode, 
   13282              : E_HImode) != 0
   13283              :               || !(
   13284              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13285              : (TARGET_AVX512F) && (
   13286              : #line 19069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13287              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL)
   13288              :    && ix86_binary_operator_ok (AND, V16SImode, operands)) && 
   13289              : #line 799 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13290              : (TARGET_AVX512F))))
   13291              :             return -1;
   13292              :           return 8049; /* *andv16si3_mask */
   13293              : 
   13294              :         case E_V8SImode:
   13295              :           if (pattern489 (x2, 
   13296              : E_V8SImode, 
   13297              : E_QImode) != 0
   13298              :               || !(
   13299              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13300              : (TARGET_AVX512F) && (
   13301              : #line 19069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13302              : (TARGET_SSE && (32 == 64 || TARGET_AVX512VL)
   13303              :    && ix86_binary_operator_ok (AND, V8SImode, operands)) && 
   13304              : #line 799 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13305              : (TARGET_AVX))))
   13306              :             return -1;
   13307              :           return 8055; /* *andv8si3_mask */
   13308              : 
   13309              :         case E_V4SImode:
   13310              :           if (pattern489 (x2, 
   13311              : E_V4SImode, 
   13312              : E_QImode) != 0
   13313              :               || !(
   13314              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13315              : (TARGET_AVX512F) && 
   13316              : #line 19069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13317              : (TARGET_SSE && (16 == 64 || TARGET_AVX512VL)
   13318              :    && ix86_binary_operator_ok (AND, V4SImode, operands))))
   13319              :             return -1;
   13320              :           return 8061; /* *andv4si3_mask */
   13321              : 
   13322              :         case E_V8DImode:
   13323              :           if (pattern489 (x2, 
   13324              : E_V8DImode, 
   13325              : E_QImode) != 0
   13326              :               || !(
   13327              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13328              : (TARGET_AVX512F) && (
   13329              : #line 19069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13330              : (TARGET_SSE && (64 == 64 || TARGET_AVX512VL)
   13331              :    && ix86_binary_operator_ok (AND, V8DImode, operands)) && 
   13332              : #line 800 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13333              : (TARGET_AVX512F))))
   13334              :             return -1;
   13335              :           return 8067; /* *andv8di3_mask */
   13336              : 
   13337              :         case E_V4DImode:
   13338              :           if (pattern489 (x2, 
   13339              : E_V4DImode, 
   13340              : E_QImode) != 0
   13341              :               || !(
   13342              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13343              : (TARGET_AVX512F) && (
   13344              : #line 19069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13345              : (TARGET_SSE && (32 == 64 || TARGET_AVX512VL)
   13346              :    && ix86_binary_operator_ok (AND, V4DImode, operands)) && 
   13347              : #line 800 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13348              : (TARGET_AVX))))
   13349              :             return -1;
   13350              :           return 8073; /* *andv4di3_mask */
   13351              : 
   13352              :         case E_V2DImode:
   13353              :           if (pattern489 (x2, 
   13354              : E_V2DImode, 
   13355              : E_QImode) != 0
   13356              :               || !(
   13357              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13358              : (TARGET_AVX512F) && 
   13359              : #line 19069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13360              : (TARGET_SSE && (16 == 64 || TARGET_AVX512VL)
   13361              :    && ix86_binary_operator_ok (AND, V2DImode, operands))))
   13362              :             return -1;
   13363              :           return 8079; /* *andv2di3_mask */
   13364              : 
   13365              :         default:
   13366              :           return -1;
   13367              :         }
   13368              : 
   13369              :     default:
   13370              :       return -1;
   13371              :     }
   13372              : }
   13373              : 
   13374              :  int
   13375              : recog_204 (rtx x1 ATTRIBUTE_UNUSED,
   13376              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13377              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13378              : {
   13379              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13380              :   rtx x2;
   13381              :   int res ATTRIBUTE_UNUSED;
   13382              :   x2 = XEXP (x1, 1);
   13383              :   switch (pattern140 (x2))
   13384              :     {
   13385              :     case 0:
   13386              :       switch (pattern901 (x2))
   13387              :         {
   13388              :         case 0:
   13389              :           if (!(
   13390              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13391              : (TARGET_AVX512F) && (
   13392              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13393              : (TARGET_AVX512FP16) && 
   13394              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13395              : (TARGET_AVX512VL))))
   13396              :             return -1;
   13397              :           return 4519; /* avx512fp16_vcvtw2ph_v8hi_mask */
   13398              : 
   13399              :         case 1:
   13400              :           if (!(
   13401              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13402              : (TARGET_AVX512F) && (
   13403              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13404              : (TARGET_AVX512FP16) && 
   13405              : #line 688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13406              : (TARGET_AVX512VL))))
   13407              :             return -1;
   13408              :           return 4543; /* avx512fp16_vcvtdq2ph_v8si_mask */
   13409              : 
   13410              :         case 2:
   13411              :           if (!(
   13412              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13413              : (TARGET_AVX512F) && 
   13414              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13415              : (TARGET_AVX512FP16)))
   13416              :             return -1;
   13417              :           return 4559; /* avx512fp16_vcvtqq2ph_v8di_mask */
   13418              : 
   13419              :         default:
   13420              :           return -1;
   13421              :         }
   13422              : 
   13423              :     case 1:
   13424              :       switch (pattern902 (x2))
   13425              :         {
   13426              :         case 0:
   13427              :           if (!(
   13428              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13429              : (TARGET_AVX512F) && (
   13430              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13431              : (TARGET_AVX512FP16) && 
   13432              : #line 687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13433              : (TARGET_AVX512VL))))
   13434              :             return -1;
   13435              :           return 4527; /* avx512fp16_vcvtw2ph_v16hi_mask */
   13436              : 
   13437              :         case 1:
   13438              :           if (!(
   13439              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13440              : (TARGET_AVX512F) && 
   13441              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13442              : (TARGET_AVX512FP16)))
   13443              :             return -1;
   13444              :           return 4551; /* avx512fp16_vcvtdq2ph_v16si_mask */
   13445              : 
   13446              :         default:
   13447              :           return -1;
   13448              :         }
   13449              : 
   13450              :     case 2:
   13451              :       if (pattern141 (x2, 
   13452              : E_V32HFmode, 
   13453              : E_SImode, 
   13454              : E_V32HImode) != 0
   13455              :           || !(
   13456              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13457              : (TARGET_AVX512F) && 
   13458              : #line 7993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13459              : (TARGET_AVX512FP16)))
   13460              :         return -1;
   13461              :       return 4535; /* avx512fp16_vcvtw2ph_v32hi_mask */
   13462              : 
   13463              :     case 3:
   13464              :       if (pattern141 (x2, 
   13465              : E_V16SFmode, 
   13466              : E_HImode, 
   13467              : E_V16SImode) != 0
   13468              :           || !(
   13469              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13470              : (TARGET_AVX512F) && (
   13471              : #line 8971 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13472              : (TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && 1) && 
   13473              : #line 437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13474              : (TARGET_AVX512F))))
   13475              :         return -1;
   13476              :       return 4855; /* floatv16siv16sf2_mask */
   13477              : 
   13478              :     case 4:
   13479              :       if (pattern142 (x2, 
   13480              : E_V8SFmode, 
   13481              : E_QImode) != 0)
   13482              :         return -1;
   13483              :       switch (GET_MODE (operands[1]))
   13484              :         {
   13485              :         case E_V8SImode:
   13486              :           if (!vector_operand (operands[1], E_V8SImode)
   13487              :               || !(
   13488              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13489              : (TARGET_AVX512F) && (
   13490              : #line 8971 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13491              : (TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && 1) && 
   13492              : #line 437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13493              : (TARGET_AVX))))
   13494              :             return -1;
   13495              :           return 4858; /* floatv8siv8sf2_mask */
   13496              : 
   13497              :         case E_V8DImode:
   13498              :           if (!nonimmediate_operand (operands[1], E_V8DImode)
   13499              :               || !(
   13500              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13501              : (TARGET_AVX512F) && 
   13502              : #line 9518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13503              : (TARGET_AVX512DQ && 1)))
   13504              :             return -1;
   13505              :           return 5011; /* floatv8div8sf2_mask */
   13506              : 
   13507              :         default:
   13508              :           return -1;
   13509              :         }
   13510              : 
   13511              :     case 5:
   13512              :       if (pattern142 (x2, 
   13513              : E_V4SFmode, 
   13514              : E_QImode) != 0)
   13515              :         return -1;
   13516              :       switch (GET_MODE (operands[1]))
   13517              :         {
   13518              :         case E_V4SImode:
   13519              :           if (!vector_operand (operands[1], E_V4SImode)
   13520              :               || !(
   13521              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13522              : (TARGET_AVX512F) && 
   13523              : #line 8971 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13524              : (TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && 1)))
   13525              :             return -1;
   13526              :           return 4860; /* floatv4siv4sf2_mask */
   13527              : 
   13528              :         case E_V4DImode:
   13529              :           if (!nonimmediate_operand (operands[1], E_V4DImode)
   13530              :               || !(
   13531              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13532              : (TARGET_AVX512F) && (
   13533              : #line 9518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13534              : (TARGET_AVX512DQ && 1) && 
   13535              : #line 620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13536              : (TARGET_AVX512VL))))
   13537              :             return -1;
   13538              :           return 5018; /* floatv4div4sf2_mask */
   13539              : 
   13540              :         default:
   13541              :           return -1;
   13542              :         }
   13543              : 
   13544              :     case 6:
   13545              :       switch (pattern903 (x2, 
   13546              : E_V8DFmode))
   13547              :         {
   13548              :         case 0:
   13549              :           if (!(
   13550              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13551              : (TARGET_AVX512F) && (
   13552              : #line 9494 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13553              : (TARGET_AVX && (64 == 64 || TARGET_AVX512VL)) && 
   13554              : #line 466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13555              : (TARGET_AVX512F))))
   13556              :             return -1;
   13557              :           return 4982; /* floatv8siv8df2_mask */
   13558              : 
   13559              :         case 1:
   13560              :           if (!(
   13561              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13562              : (TARGET_AVX512F) && 
   13563              : #line 9504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13564              : (TARGET_AVX512DQ)))
   13565              :             return -1;
   13566              :           return 4987; /* floatv8div8df2_mask */
   13567              : 
   13568              :         default:
   13569              :           return -1;
   13570              :         }
   13571              : 
   13572              :     case 7:
   13573              :       switch (pattern904 (x2, 
   13574              : E_V4DFmode))
   13575              :         {
   13576              :         case 0:
   13577              :           if (!(
   13578              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13579              : (TARGET_AVX512F) && 
   13580              : #line 9494 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13581              : (TARGET_AVX && (32 == 64 || TARGET_AVX512VL))))
   13582              :             return -1;
   13583              :           return 4984; /* floatv4siv4df2_mask */
   13584              : 
   13585              :         case 1:
   13586              :           if (!(
   13587              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13588              : (TARGET_AVX512F) && (
   13589              : #line 9504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13590              : (TARGET_AVX512DQ) && 
   13591              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13592              : (TARGET_AVX512VL))))
   13593              :             return -1;
   13594              :           return 4995; /* floatv4div4df2_mask */
   13595              : 
   13596              :         default:
   13597              :           return -1;
   13598              :         }
   13599              : 
   13600              :     case 8:
   13601              :       if (pattern155 (x2, 
   13602              : E_V2DFmode, 
   13603              : E_V2DImode, 
   13604              : E_QImode) != 0
   13605              :           || !(
   13606              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13607              : (TARGET_AVX512F) && (
   13608              : #line 9504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13609              : (TARGET_AVX512DQ) && 
   13610              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13611              : (TARGET_AVX512VL))))
   13612              :         return -1;
   13613              :       return 5003; /* floatv2div2df2_mask */
   13614              : 
   13615              :     case 9:
   13616              :       if (!(
   13617              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13618              : (TARGET_AVX512F) && 
   13619              : #line 9720 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13620              : (TARGET_SSE2 && TARGET_AVX512VL)))
   13621              :         return -1;
   13622              :       return 5036; /* sse2_cvtdq2pd_mask */
   13623              : 
   13624              :     default:
   13625              :       return -1;
   13626              :     }
   13627              : }
   13628              : 
   13629              :  int
   13630              : recog_214 (rtx x1 ATTRIBUTE_UNUSED,
   13631              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13632              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13633              : {
   13634              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13635              :   rtx x2;
   13636              :   int res ATTRIBUTE_UNUSED;
   13637              :   x2 = XEXP (x1, 1);
   13638              :   switch (pattern326 (x2))
   13639              :     {
   13640              :     case 0:
   13641              :       if (!register_operand (operands[0], E_V32HImode)
   13642              :           || GET_MODE (x2) != E_V32HImode
   13643              :           || !vector_operand (operands[1], E_V32HFmode)
   13644              :           || !
   13645              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13646              : (TARGET_AVX512FP16))
   13647              :         return -1;
   13648              :       return 4445; /* avx512fp16_vcvtph2uw_v32hi */
   13649              : 
   13650              :     case 1:
   13651              :       if (!register_operand (operands[0], E_V16SImode)
   13652              :           || GET_MODE (x2) != E_V16SImode)
   13653              :         return -1;
   13654              :       switch (GET_MODE (operands[1]))
   13655              :         {
   13656              :         case E_V16HFmode:
   13657              :           if (!vector_operand (operands[1], E_V16HFmode)
   13658              :               || !
   13659              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13660              : (TARGET_AVX512FP16))
   13661              :             return -1;
   13662              :           return 4453; /* avx512fp16_vcvtph2udq_v16si */
   13663              : 
   13664              :         case E_V16SFmode:
   13665              :           if (!nonimmediate_operand (operands[1], E_V16SFmode)
   13666              :               || !
   13667              : #line 9040 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13668              : (TARGET_AVX512F))
   13669              :             return -1;
   13670              :           return 4881; /* *avx512f_fixuns_notruncv16sfv16si */
   13671              : 
   13672              :         default:
   13673              :           return -1;
   13674              :         }
   13675              : 
   13676              :     case 2:
   13677              :       switch (pattern779 (x2, 
   13678              : E_V8DImode))
   13679              :         {
   13680              :         case 0:
   13681              :           if (!
   13682              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13683              : (TARGET_AVX512FP16))
   13684              :             return -1;
   13685              :           return 4461; /* avx512fp16_vcvtph2uqq_v8di */
   13686              : 
   13687              :         case 1:
   13688              :           if (!
   13689              : #line 9073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13690              : (TARGET_AVX512DQ && 1))
   13691              :             return -1;
   13692              :           return 4901; /* *avx512dq_cvtps2uqqv8di */
   13693              : 
   13694              :         case 2:
   13695              :           if (!
   13696              : #line 10051 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13697              : (TARGET_AVX512DQ && 1))
   13698              :             return -1;
   13699              :           return 5127; /* fixuns_notruncv8dfv8di2 */
   13700              : 
   13701              :         default:
   13702              :           return -1;
   13703              :         }
   13704              : 
   13705              :     case 3:
   13706              :       if (!register_operand (operands[0], E_V16HImode)
   13707              :           || GET_MODE (x2) != E_V16HImode
   13708              :           || !vector_operand (operands[1], E_V16HFmode)
   13709              :           || !(
   13710              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13711              : (TARGET_AVX512FP16) && 
   13712              : #line 751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13713              : (TARGET_AVX512VL)))
   13714              :         return -1;
   13715              :       return 4469; /* avx512fp16_vcvtph2uw_v16hi */
   13716              : 
   13717              :     case 4:
   13718              :       switch (pattern779 (x2, 
   13719              : E_V8SImode))
   13720              :         {
   13721              :         case 0:
   13722              :           if (!(
   13723              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13724              : (TARGET_AVX512FP16) && 
   13725              : #line 751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13726              : (TARGET_AVX512VL)))
   13727              :             return -1;
   13728              :           return 4477; /* avx512fp16_vcvtph2udq_v8si */
   13729              : 
   13730              :         case 1:
   13731              :           if (!(
   13732              : #line 9040 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13733              : (TARGET_AVX512F) && 
   13734              : #line 668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13735              : (TARGET_AVX512VL)))
   13736              :             return -1;
   13737              :           return 4885; /* *avx512vl_fixuns_notruncv8sfv8si */
   13738              : 
   13739              :         case 2:
   13740              :           if (!
   13741              : #line 9832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13742              : (TARGET_AVX512F))
   13743              :             return -1;
   13744              :           return 5047; /* fixuns_notruncv8dfv8si2 */
   13745              : 
   13746              :         default:
   13747              :           return -1;
   13748              :         }
   13749              : 
   13750              :     case 5:
   13751              :       switch (pattern780 (x2, 
   13752              : E_V4DImode))
   13753              :         {
   13754              :         case 0:
   13755              :           if (!(
   13756              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13757              : (TARGET_AVX512FP16) && 
   13758              : #line 752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13759              : (TARGET_AVX512VL)))
   13760              :             return -1;
   13761              :           return 4485; /* avx512fp16_vcvtph2uqq_v4di */
   13762              : 
   13763              :         case 1:
   13764              :           if (!(
   13765              : #line 9073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13766              : (TARGET_AVX512DQ && 1) && 
   13767              : #line 620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13768              : (TARGET_AVX512VL)))
   13769              :             return -1;
   13770              :           return 4905; /* *avx512dq_cvtps2uqqv4di */
   13771              : 
   13772              :         case 2:
   13773              :           if (!(
   13774              : #line 10051 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13775              : (TARGET_AVX512DQ && 1) && 
   13776              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13777              : (TARGET_AVX512VL)))
   13778              :             return -1;
   13779              :           return 5131; /* fixuns_notruncv4dfv4di2 */
   13780              : 
   13781              :         default:
   13782              :           return -1;
   13783              :         }
   13784              : 
   13785              :     case 6:
   13786              :       if (!register_operand (operands[0], E_V8HImode)
   13787              :           || GET_MODE (x2) != E_V8HImode
   13788              :           || !vector_operand (operands[1], E_V8HFmode)
   13789              :           || !(
   13790              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13791              : (TARGET_AVX512FP16) && 
   13792              : #line 752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13793              : (TARGET_AVX512VL)))
   13794              :         return -1;
   13795              :       return 4493; /* avx512fp16_vcvtph2uw_v8hi */
   13796              : 
   13797              :     case 7:
   13798              :       switch (pattern780 (x2, 
   13799              : E_V4SImode))
   13800              :         {
   13801              :         case 0:
   13802              :           if (!(
   13803              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13804              : (TARGET_AVX512FP16) && 
   13805              : #line 753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13806              : (TARGET_AVX512VL)))
   13807              :             return -1;
   13808              :           return 4501; /* avx512fp16_vcvtph2udq_v4si */
   13809              : 
   13810              :         case 1:
   13811              :           if (!(
   13812              : #line 9040 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13813              : (TARGET_AVX512F) && 
   13814              : #line 668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13815              : (TARGET_AVX512VL)))
   13816              :             return -1;
   13817              :           return 4889; /* *avx512vl_fixuns_notruncv4sfv4si */
   13818              : 
   13819              :         case 2:
   13820              :           if (!(
   13821              : #line 9832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13822              : (TARGET_AVX512F) && 
   13823              : #line 469 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13824              : (TARGET_AVX512VL)))
   13825              :             return -1;
   13826              :           return 5051; /* fixuns_notruncv4dfv4si2 */
   13827              : 
   13828              :         default:
   13829              :           return -1;
   13830              :         }
   13831              : 
   13832              :     case 8:
   13833              :       if (!register_operand (operands[0], E_V2DImode)
   13834              :           || GET_MODE (x2) != E_V2DImode)
   13835              :         return -1;
   13836              :       switch (GET_MODE (operands[1]))
   13837              :         {
   13838              :         case E_V8HFmode:
   13839              :           if (!vector_operand (operands[1], E_V8HFmode)
   13840              :               || !(
   13841              : #line 7977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13842              : (TARGET_AVX512FP16) && 
   13843              : #line 753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13844              : (TARGET_AVX512VL)))
   13845              :             return -1;
   13846              :           return 4509; /* avx512fp16_vcvtph2uqq_v2di */
   13847              : 
   13848              :         case E_V2DFmode:
   13849              :           if (!nonimmediate_operand (operands[1], E_V2DFmode)
   13850              :               || !(
   13851              : #line 10051 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13852              : (TARGET_AVX512DQ && 1) && 
   13853              : #line 531 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13854              : (TARGET_AVX512VL)))
   13855              :             return -1;
   13856              :           return 5133; /* fixuns_notruncv2dfv2di2 */
   13857              : 
   13858              :         default:
   13859              :           return -1;
   13860              :         }
   13861              : 
   13862              :     case 9:
   13863              :       if (!
   13864              : #line 9086 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13865              : (TARGET_AVX512DQ && TARGET_AVX512VL))
   13866              :         return -1;
   13867              :       return 4907; /* *avx512dq_cvtps2uqqv2di */
   13868              : 
   13869              :     default:
   13870              :       return -1;
   13871              :     }
   13872              : }
   13873              : 
   13874              :  int
   13875              : recog_229 (rtx x1 ATTRIBUTE_UNUSED,
   13876              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13877              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13878              : {
   13879              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13880              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   13881              :   rtx x10, x11;
   13882              :   int res ATTRIBUTE_UNUSED;
   13883              :   x2 = XEXP (x1, 1);
   13884              :   x3 = XVECEXP (x2, 0, 0);
   13885              :   x4 = XEXP (x3, 0);
   13886              :   switch (XVECLEN (x4, 0))
   13887              :     {
   13888              :     case 2:
   13889              :       return recog_224 (x1, insn, pnum_clobbers);
   13890              : 
   13891              :     case 3:
   13892              :       x5 = XVECEXP (x4, 0, 0);
   13893              :       operands[1] = x5;
   13894              :       x6 = XVECEXP (x4, 0, 1);
   13895              :       operands[2] = x6;
   13896              :       switch (XINT (x4, 1))
   13897              :         {
   13898              :         case 193:
   13899              :           x7 = XEXP (x3, 2);
   13900              :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   13901              :             return -1;
   13902              :           x8 = XVECEXP (x4, 0, 2);
   13903              :           operands[3] = x8;
   13904              :           if (!const_0_to_255_operand (operands[3], E_SImode))
   13905              :             return -1;
   13906              :           switch (pattern1418 (x2))
   13907              :             {
   13908              :             case 0:
   13909              :               if (!(
   13910              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13911              : (TARGET_AVX512F) && (
   13912              : #line 4269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13913              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V8HFmode))) && 
   13914              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13915              : (TARGET_AVX512FP16))))
   13916              :                 return -1;
   13917              :               return 3267; /* reducesv8hf_round */
   13918              : 
   13919              :             case 1:
   13920              :               if (!(
   13921              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13922              : (TARGET_AVX512F) && 
   13923              : #line 4269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13924              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V4SFmode)))))
   13925              :                 return -1;
   13926              :               return 3271; /* reducesv4sf_round */
   13927              : 
   13928              :             case 2:
   13929              :               if (!(
   13930              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13931              : (TARGET_AVX512F) && (
   13932              : #line 4269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13933              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V2DFmode))) && 
   13934              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13935              : (TARGET_SSE2))))
   13936              :                 return -1;
   13937              :               return 3275; /* reducesv2df_round */
   13938              : 
   13939              :             default:
   13940              :               return -1;
   13941              :             }
   13942              : 
   13943              :         case 134:
   13944              :           return recog_223 (x1, insn, pnum_clobbers);
   13945              : 
   13946              :         case 218:
   13947              :           switch (pattern1142 (x2))
   13948              :             {
   13949              :             case 0:
   13950              :               if (!(
   13951              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13952              : (TARGET_AVX512F) && 
   13953              : #line 7507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13954              : (TARGET_AVX512FP16 && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   13955              :                                                               || V32HFmode == V8DFmode
   13956              :                                                               || V32HFmode == V8DImode
   13957              :                                                               || V32HFmode == V16SImode
   13958              :                                                               || V32HFmode == V32HFmode))))
   13959              :                 return -1;
   13960              :               return 4364; /* fma_fmaddc_v32hf_maskz_1_round */
   13961              : 
   13962              :             case 1:
   13963              :               if (!(
   13964              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13965              : (TARGET_AVX512F) && 
   13966              : #line 7645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13967              : (TARGET_AVX512FP16 && (V32HFmode == V16SFmode
   13968              :                                                               || V32HFmode == V8DFmode
   13969              :                                                               || V32HFmode == V8DImode
   13970              :                                                               || V32HFmode == V16SImode
   13971              :                                                               || V32HFmode == V32HFmode))))
   13972              :                 return -1;
   13973              :               return 4402; /* avx512bw_fmaddc_v32hf_mask_round */
   13974              : 
   13975              :             case 2:
   13976              :               if (!(
   13977              : #line 437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13978              : (TARGET_AVX512F) && 
   13979              : #line 7834 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13980              : (TARGET_AVX512FP16)))
   13981              :                 return -1;
   13982              :               return 4427; /* avx512fp16_fma_fmaddcsh_v8hf_round */
   13983              : 
   13984              :             default:
   13985              :               return -1;
   13986              :             }
   13987              : 
   13988              :         case 220:
   13989              :           switch (pattern1142 (x2))
   13990              :             {
   13991              :             case 0:
   13992              :               if (!(
   13993              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13994              : (TARGET_AVX512F) && 
   13995              : #line 7507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13996              : (TARGET_AVX512FP16 && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   13997              :                                                               || V32HFmode == V8DFmode
   13998              :                                                               || V32HFmode == V8DImode
   13999              :                                                               || V32HFmode == V16SImode
   14000              :                                                               || V32HFmode == V32HFmode))))
   14001              :                 return -1;
   14002              :               return 4368; /* fma_fcmaddc_v32hf_maskz_1_round */
   14003              : 
   14004              :             case 1:
   14005              :               if (!(
   14006              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14007              : (TARGET_AVX512F) && 
   14008              : #line 7645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14009              : (TARGET_AVX512FP16 && (V32HFmode == V16SFmode
   14010              :                                                               || V32HFmode == V8DFmode
   14011              :                                                               || V32HFmode == V8DImode
   14012              :                                                               || V32HFmode == V16SImode
   14013              :                                                               || V32HFmode == V32HFmode))))
   14014              :                 return -1;
   14015              :               return 4404; /* avx512bw_fcmaddc_v32hf_mask_round */
   14016              : 
   14017              :             case 2:
   14018              :               if (!(
   14019              : #line 437 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14020              : (TARGET_AVX512F) && 
   14021              : #line 7834 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14022              : (TARGET_AVX512FP16)))
   14023              :                 return -1;
   14024              :               return 4431; /* avx512fp16_fma_fcmaddcsh_v8hf_round */
   14025              : 
   14026              :             default:
   14027              :               return -1;
   14028              :             }
   14029              : 
   14030              :         case 195:
   14031              :           x8 = XVECEXP (x4, 0, 2);
   14032              :           operands[3] = x8;
   14033              :           if (!const_0_to_15_operand (operands[3], E_SImode))
   14034              :             return -1;
   14035              :           x9 = XVECEXP (x2, 0, 1);
   14036              :           if (!const48_operand (x9, E_SImode))
   14037              :             return -1;
   14038              :           x7 = XEXP (x3, 2);
   14039              :           switch (GET_CODE (x7))
   14040              :             {
   14041              :             case REG:
   14042              :             case SUBREG:
   14043              :               operands[5] = x7;
   14044              :               x10 = XEXP (x3, 1);
   14045              :               operands[4] = x10;
   14046              :               operands[6] = x9;
   14047              :               switch (GET_MODE (operands[0]))
   14048              :                 {
   14049              :                 case E_V16SFmode:
   14050              :                   if (pattern1665 (x2, 
   14051              : E_V16SFmode, 
   14052              : E_HImode) != 0
   14053              :                       || !(
   14054              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14055              : (TARGET_AVX512F) && (
   14056              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14057              : (TARGET_AVX512F) && 
   14058              : #line 30513 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14059              : (TARGET_AVX512DQ && (V16SFmode == V16SFmode
   14060              :                                                                               || V16SFmode == V8DFmode
   14061              :                                                                               || V16SFmode == V8DImode
   14062              :                                                                               || V16SFmode == V16SImode
   14063              :                                                                               || V16SFmode == V32HFmode)))))
   14064              :                     return -1;
   14065              :                   return 10034; /* avx512dq_rangepv16sf_mask_round */
   14066              : 
   14067              :                 case E_V8DFmode:
   14068              :                   if (pattern1665 (x2, 
   14069              : E_V8DFmode, 
   14070              : E_QImode) != 0
   14071              :                       || !(
   14072              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14073              : (TARGET_AVX512F) && (
   14074              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14075              : (TARGET_AVX512F) && 
   14076              : #line 30513 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14077              : (TARGET_AVX512DQ && (V8DFmode == V16SFmode
   14078              :                                                                               || V8DFmode == V8DFmode
   14079              :                                                                               || V8DFmode == V8DImode
   14080              :                                                                               || V8DFmode == V16SImode
   14081              :                                                                               || V8DFmode == V32HFmode)))))
   14082              :                     return -1;
   14083              :                   return 10042; /* avx512dq_rangepv8df_mask_round */
   14084              : 
   14085              :                 default:
   14086              :                   return -1;
   14087              :                 }
   14088              : 
   14089              :             case CONST_INT:
   14090              :               if (XWINT (x7, 0) != 1L)
   14091              :                 return -1;
   14092              :               operands[4] = x9;
   14093              :               x10 = XEXP (x3, 1);
   14094              :               if (!rtx_equal_p (x10, operands[1]))
   14095              :                 return -1;
   14096              :               switch (GET_MODE (operands[0]))
   14097              :                 {
   14098              :                 case E_V4SFmode:
   14099              :                   if (pattern1416 (x2, 
   14100              : E_V4SFmode) != 0
   14101              :                       || !(
   14102              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14103              : (TARGET_AVX512F) && 
   14104              : #line 30536 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14105              : (TARGET_AVX512DQ)))
   14106              :                     return -1;
   14107              :                   return 10049; /* avx512dq_rangesv4sf_round */
   14108              : 
   14109              :                 case E_V2DFmode:
   14110              :                   if (pattern1416 (x2, 
   14111              : E_V2DFmode) != 0
   14112              :                       || !(
   14113              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14114              : (TARGET_AVX512F) && (
   14115              : #line 30536 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14116              : (TARGET_AVX512DQ) && 
   14117              : #line 473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14118              : (TARGET_SSE2))))
   14119              :                     return -1;
   14120              :                   return 10053; /* avx512dq_rangesv2df_round */
   14121              : 
   14122              :                 default:
   14123              :                   return -1;
   14124              :                 }
   14125              : 
   14126              :             default:
   14127              :               return -1;
   14128              :             }
   14129              : 
   14130              :         case 167:
   14131              :           x7 = XEXP (x3, 2);
   14132              :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   14133              :             return -1;
   14134              :           x8 = XVECEXP (x4, 0, 2);
   14135              :           operands[3] = x8;
   14136              :           if (!const_0_to_15_operand (operands[3], E_SImode))
   14137              :             return -1;
   14138              :           switch (pattern1418 (x2))
   14139              :             {
   14140              :             case 0:
   14141              :               if (!(
   14142              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14143              : (TARGET_AVX512F) && (
   14144              : #line 30604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14145              : (TARGET_AVX512F) && 
   14146              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14147              : (TARGET_AVX512FP16))))
   14148              :                 return -1;
   14149              :               return 10117; /* avx512f_vgetmantv8hf_round */
   14150              : 
   14151              :             case 1:
   14152              :               if (!
   14153              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14154              : (TARGET_AVX512F))
   14155              :                 return -1;
   14156              :               return 10121; /* avx512f_vgetmantv4sf_round */
   14157              : 
   14158              :             case 2:
   14159              :               if (!(
   14160              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14161              : (TARGET_AVX512F) && (
   14162              : #line 30604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14163              : (TARGET_AVX512F) && 
   14164              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14165              : (TARGET_SSE2))))
   14166              :                 return -1;
   14167              :               return 10125; /* avx512f_vgetmantv2df_round */
   14168              : 
   14169              :             default:
   14170              :               return -1;
   14171              :             }
   14172              : 
   14173              :         case 279:
   14174              :           x8 = XVECEXP (x4, 0, 2);
   14175              :           operands[3] = x8;
   14176              :           if (!const_0_to_255_operand (operands[3], E_SImode))
   14177              :             return -1;
   14178              :           x9 = XVECEXP (x2, 0, 1);
   14179              :           if (!const48_operand (x9, E_SImode))
   14180              :             return -1;
   14181              :           x7 = XEXP (x3, 2);
   14182              :           switch (GET_CODE (x7))
   14183              :             {
   14184              :             case REG:
   14185              :             case SUBREG:
   14186              :               operands[5] = x7;
   14187              :               x10 = XEXP (x3, 1);
   14188              :               operands[4] = x10;
   14189              :               operands[6] = x9;
   14190              :               switch (GET_MODE (operands[0]))
   14191              :                 {
   14192              :                 case E_V32HFmode:
   14193              :                   if (pattern1665 (x2, 
   14194              : E_V32HFmode, 
   14195              : E_SImode) != 0
   14196              :                       || !(
   14197              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14198              : (TARGET_AVX512F) && (
   14199              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14200              : (TARGET_AVX512F) && (
   14201              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14202              : (TARGET_AVX10_2) && 
   14203              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14204              : (TARGET_AVX512FP16)))))
   14205              :                     return -1;
   14206              :                   return 10980; /* avx10_2_minmaxpv32hf_mask_round */
   14207              : 
   14208              :                 case E_V16HFmode:
   14209              :                   if (pattern1665 (x2, 
   14210              : E_V16HFmode, 
   14211              : E_HImode) != 0
   14212              :                       || !(
   14213              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14214              : (TARGET_AVX512F) && (
   14215              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14216              : (TARGET_AVX512F) && (
   14217              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14218              : (TARGET_AVX10_2) && 
   14219              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14220              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14221              :                     return -1;
   14222              :                   return 10984; /* avx10_2_minmaxpv16hf_mask_round */
   14223              : 
   14224              :                 case E_V8HFmode:
   14225              :                   if (pattern1665 (x2, 
   14226              : E_V8HFmode, 
   14227              : E_QImode) != 0
   14228              :                       || !(
   14229              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14230              : (TARGET_AVX512F) && (
   14231              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14232              : (TARGET_AVX512F) && (
   14233              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14234              : (TARGET_AVX10_2) && 
   14235              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14236              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))))
   14237              :                     return -1;
   14238              :                   return 10988; /* avx10_2_minmaxpv8hf_mask_round */
   14239              : 
   14240              :                 case E_V16SFmode:
   14241              :                   if (pattern1665 (x2, 
   14242              : E_V16SFmode, 
   14243              : E_HImode) != 0
   14244              :                       || !(
   14245              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14246              : (TARGET_AVX512F) && (
   14247              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14248              : (TARGET_AVX512F) && 
   14249              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14250              : (TARGET_AVX10_2))))
   14251              :                     return -1;
   14252              :                   return 10992; /* avx10_2_minmaxpv16sf_mask_round */
   14253              : 
   14254              :                 case E_V8SFmode:
   14255              :                   if (pattern1665 (x2, 
   14256              : E_V8SFmode, 
   14257              : E_QImode) != 0
   14258              :                       || !(
   14259              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14260              : (TARGET_AVX512F) && (
   14261              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14262              : (TARGET_AVX512F) && (
   14263              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14264              : (TARGET_AVX10_2) && 
   14265              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14266              : (TARGET_AVX512VL)))))
   14267              :                     return -1;
   14268              :                   return 10996; /* avx10_2_minmaxpv8sf_mask_round */
   14269              : 
   14270              :                 case E_V4SFmode:
   14271              :                   if (pattern1665 (x2, 
   14272              : E_V4SFmode, 
   14273              : E_QImode) != 0
   14274              :                       || !(
   14275              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14276              : (TARGET_AVX512F) && (
   14277              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14278              : (TARGET_AVX512F) && (
   14279              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14280              : (TARGET_AVX10_2) && 
   14281              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14282              : (TARGET_AVX512VL)))))
   14283              :                     return -1;
   14284              :                   return 11000; /* avx10_2_minmaxpv4sf_mask_round */
   14285              : 
   14286              :                 case E_V8DFmode:
   14287              :                   if (pattern1665 (x2, 
   14288              : E_V8DFmode, 
   14289              : E_QImode) != 0
   14290              :                       || !(
   14291              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14292              : (TARGET_AVX512F) && (
   14293              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14294              : (TARGET_AVX512F) && 
   14295              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14296              : (TARGET_AVX10_2))))
   14297              :                     return -1;
   14298              :                   return 11004; /* avx10_2_minmaxpv8df_mask_round */
   14299              : 
   14300              :                 case E_V4DFmode:
   14301              :                   if (pattern1665 (x2, 
   14302              : E_V4DFmode, 
   14303              : E_QImode) != 0
   14304              :                       || !(
   14305              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14306              : (TARGET_AVX512F) && (
   14307              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14308              : (TARGET_AVX512F) && (
   14309              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14310              : (TARGET_AVX10_2) && 
   14311              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14312              : (TARGET_AVX512VL)))))
   14313              :                     return -1;
   14314              :                   return 11008; /* avx10_2_minmaxpv4df_mask_round */
   14315              : 
   14316              :                 case E_V2DFmode:
   14317              :                   if (pattern1665 (x2, 
   14318              : E_V2DFmode, 
   14319              : E_QImode) != 0
   14320              :                       || !(
   14321              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14322              : (TARGET_AVX512F) && (
   14323              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14324              : (TARGET_AVX512F) && (
   14325              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14326              : (TARGET_AVX10_2) && 
   14327              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14328              : (TARGET_AVX512VL)))))
   14329              :                     return -1;
   14330              :                   return 11012; /* avx10_2_minmaxpv2df_mask_round */
   14331              : 
   14332              :                 default:
   14333              :                   return -1;
   14334              :                 }
   14335              : 
   14336              :             case CONST_INT:
   14337              :               if (XWINT (x7, 0) != 1L)
   14338              :                 return -1;
   14339              :               operands[4] = x9;
   14340              :               switch (pattern1417 (x2))
   14341              :                 {
   14342              :                 case 0:
   14343              :                   if (!(
   14344              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14345              : (TARGET_AVX512F) && (
   14346              : #line 33376 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14347              : (TARGET_AVX10_2) && 
   14348              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14349              : (TARGET_AVX512FP16))))
   14350              :                     return -1;
   14351              :                   return 11015; /* avx10_2_minmaxsv8hf_round */
   14352              : 
   14353              :                 case 1:
   14354              :                   if (!(
   14355              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14356              : (TARGET_AVX512F) && 
   14357              : #line 33376 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14358              : (TARGET_AVX10_2)))
   14359              :                     return -1;
   14360              :                   return 11019; /* avx10_2_minmaxsv4sf_round */
   14361              : 
   14362              :                 case 2:
   14363              :                   if (!(
   14364              : #line 463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14365              : (TARGET_AVX512F) && (
   14366              : #line 33376 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14367              : (TARGET_AVX10_2) && 
   14368              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14369              : (TARGET_SSE2))))
   14370              :                     return -1;
   14371              :                   return 11023; /* avx10_2_minmaxsv2df_round */
   14372              : 
   14373              :                 default:
   14374              :                   return -1;
   14375              :                 }
   14376              : 
   14377              :             default:
   14378              :               return -1;
   14379              :             }
   14380              : 
   14381              :         default:
   14382              :           return -1;
   14383              :         }
   14384              : 
   14385              :     case 1:
   14386              :       return recog_225 (x1, insn, pnum_clobbers);
   14387              : 
   14388              :     case 4:
   14389              :       if (XINT (x4, 1) != 164)
   14390              :         return -1;
   14391              :       x5 = XVECEXP (x4, 0, 0);
   14392              :       operands[1] = x5;
   14393              :       x6 = XVECEXP (x4, 0, 1);
   14394              :       operands[2] = x6;
   14395              :       x8 = XVECEXP (x4, 0, 2);
   14396              :       operands[3] = x8;
   14397              :       x11 = XVECEXP (x4, 0, 3);
   14398              :       operands[4] = x11;
   14399              :       if (!const_0_to_255_operand (operands[4], E_SImode))
   14400              :         return -1;
   14401              :       x9 = XVECEXP (x2, 0, 1);
   14402              :       if (!const48_operand (x9, E_SImode))
   14403              :         return -1;
   14404              :       x10 = XEXP (x3, 1);
   14405              :       switch (GET_CODE (x10))
   14406              :         {
   14407              :         case CONST_INT:
   14408              :         case CONST_DOUBLE:
   14409              :         case CONST_VECTOR:
   14410              :           operands[5] = x10;
   14411              :           x7 = XEXP (x3, 2);
   14412              :           operands[6] = x7;
   14413              :           operands[7] = x9;
   14414              :           switch (GET_MODE (operands[0]))
   14415              :             {
   14416              :             case E_V16SFmode:
   14417              :               if (pattern1694 (x2, 
   14418              : E_V16SFmode, 
   14419              : E_V16SImode, 
   14420              : E_HImode) != 0
   14421              :                   || !
   14422              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14423              : (TARGET_AVX512F))
   14424              :                 return -1;
   14425              :               return 7126; /* avx512f_fixupimmv16sf_maskz_1_round */
   14426              : 
   14427              :             case E_V8SFmode:
   14428              :               if (pattern1694 (x2, 
   14429              : E_V8SFmode, 
   14430              : E_V8SImode, 
   14431              : E_QImode) != 0
   14432              :                   || !(
   14433              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14434              : (TARGET_AVX512F) && (
   14435              : #line 14471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14436              : (TARGET_AVX512F) && 
   14437              : #line 510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14438              : (TARGET_AVX512VL))))
   14439              :                 return -1;
   14440              :               return 7130; /* avx512vl_fixupimmv8sf_maskz_1_round */
   14441              : 
   14442              :             case E_V4SFmode:
   14443              :               if (pattern1694 (x2, 
   14444              : E_V4SFmode, 
   14445              : E_V4SImode, 
   14446              : E_QImode) != 0
   14447              :                   || !(
   14448              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14449              : (TARGET_AVX512F) && (
   14450              : #line 14471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14451              : (TARGET_AVX512F) && 
   14452              : #line 510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14453              : (TARGET_AVX512VL))))
   14454              :                 return -1;
   14455              :               return 7134; /* avx512vl_fixupimmv4sf_maskz_1_round */
   14456              : 
   14457              :             case E_V8DFmode:
   14458              :               if (pattern1694 (x2, 
   14459              : E_V8DFmode, 
   14460              : E_V8DImode, 
   14461              : E_QImode) != 0
   14462              :                   || !
   14463              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14464              : (TARGET_AVX512F))
   14465              :                 return -1;
   14466              :               return 7138; /* avx512f_fixupimmv8df_maskz_1_round */
   14467              : 
   14468              :             case E_V4DFmode:
   14469              :               if (pattern1694 (x2, 
   14470              : E_V4DFmode, 
   14471              : E_V4DImode, 
   14472              : E_QImode) != 0
   14473              :                   || !(
   14474              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14475              : (TARGET_AVX512F) && (
   14476              : #line 14471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14477              : (TARGET_AVX512F) && 
   14478              : #line 511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14479              : (TARGET_AVX512VL))))
   14480              :                 return -1;
   14481              :               return 7142; /* avx512vl_fixupimmv4df_maskz_1_round */
   14482              : 
   14483              :             case E_V2DFmode:
   14484              :               if (pattern1694 (x2, 
   14485              : E_V2DFmode, 
   14486              : E_V2DImode, 
   14487              : E_QImode) != 0
   14488              :                   || !(
   14489              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14490              : (TARGET_AVX512F) && (
   14491              : #line 14471 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14492              : (TARGET_AVX512F) && 
   14493              : #line 511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14494              : (TARGET_AVX512VL))))
   14495              :                 return -1;
   14496              :               return 7146; /* avx512vl_fixupimmv2df_maskz_1_round */
   14497              : 
   14498              :             default:
   14499              :               return -1;
   14500              :             }
   14501              : 
   14502              :         case REG:
   14503              :         case SUBREG:
   14504              :           x7 = XEXP (x3, 2);
   14505              :           switch (GET_CODE (x7))
   14506              :             {
   14507              :             case REG:
   14508              :             case SUBREG:
   14509              :               operands[5] = x7;
   14510              :               operands[6] = x9;
   14511              :               if (!rtx_equal_p (x10, operands[1]))
   14512              :                 return -1;
   14513              :               switch (GET_MODE (operands[0]))
   14514              :                 {
   14515              :                 case E_V16SFmode:
   14516              :                   if (pattern1718 (x2, 
   14517              : E_V16SImode, 
   14518              : E_V16SFmode, 
   14519              : E_HImode) != 0
   14520              :                       || !
   14521              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14522              : (TARGET_AVX512F))
   14523              :                     return -1;
   14524              :                   return 7148; /* avx512f_fixupimmv16sf_mask_round */
   14525              : 
   14526              :                 case E_V8SFmode:
   14527              :                   if (pattern1718 (x2, 
   14528              : E_V8SImode, 
   14529              : E_V8SFmode, 
   14530              : E_QImode) != 0
   14531              :                       || !(
   14532              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14533              : (TARGET_AVX512F) && (
   14534              : #line 14487 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14535              : (TARGET_AVX512F) && 
   14536              : #line 510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14537              : (TARGET_AVX512VL))))
   14538              :                     return -1;
   14539              :                   return 7150; /* avx512vl_fixupimmv8sf_mask_round */
   14540              : 
   14541              :                 case E_V4SFmode:
   14542              :                   if (pattern1718 (x2, 
   14543              : E_V4SImode, 
   14544              : E_V4SFmode, 
   14545              : E_QImode) != 0
   14546              :                       || !(
   14547              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14548              : (TARGET_AVX512F) && (
   14549              : #line 14487 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14550              : (TARGET_AVX512F) && 
   14551              : #line 510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14552              : (TARGET_AVX512VL))))
   14553              :                     return -1;
   14554              :                   return 7152; /* avx512vl_fixupimmv4sf_mask_round */
   14555              : 
   14556              :                 case E_V8DFmode:
   14557              :                   if (pattern1718 (x2, 
   14558              : E_V8DImode, 
   14559              : E_V8DFmode, 
   14560              : E_QImode) != 0
   14561              :                       || !
   14562              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14563              : (TARGET_AVX512F))
   14564              :                     return -1;
   14565              :                   return 7154; /* avx512f_fixupimmv8df_mask_round */
   14566              : 
   14567              :                 case E_V4DFmode:
   14568              :                   if (pattern1718 (x2, 
   14569              : E_V4DImode, 
   14570              : E_V4DFmode, 
   14571              : E_QImode) != 0
   14572              :                       || !(
   14573              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14574              : (TARGET_AVX512F) && (
   14575              : #line 14487 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14576              : (TARGET_AVX512F) && 
   14577              : #line 511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14578              : (TARGET_AVX512VL))))
   14579              :                     return -1;
   14580              :                   return 7156; /* avx512vl_fixupimmv4df_mask_round */
   14581              : 
   14582              :                 case E_V2DFmode:
   14583              :                   if (pattern1718 (x2, 
   14584              : E_V2DImode, 
   14585              : E_V2DFmode, 
   14586              : E_QImode) != 0
   14587              :                       || !(
   14588              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14589              : (TARGET_AVX512F) && (
   14590              : #line 14487 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14591              : (TARGET_AVX512F) && 
   14592              : #line 511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14593              : (TARGET_AVX512VL))))
   14594              :                     return -1;
   14595              :                   return 7158; /* avx512vl_fixupimmv2df_mask_round */
   14596              : 
   14597              :                 default:
   14598              :                   return -1;
   14599              :                 }
   14600              : 
   14601              :             case CONST_INT:
   14602              :               if (XWINT (x7, 0) != 1L)
   14603              :                 return -1;
   14604              :               operands[5] = x9;
   14605              :               if (!rtx_equal_p (x10, operands[2]))
   14606              :                 return -1;
   14607              :               switch (GET_MODE (operands[0]))
   14608              :                 {
   14609              :                 case E_V4SFmode:
   14610              :                   if (pattern1719 (x2, 
   14611              : E_V4SImode, 
   14612              : E_V4SFmode) != 0
   14613              :                       || !
   14614              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14615              : (TARGET_AVX512F))
   14616              :                     return -1;
   14617              :                   return 7160; /* avx512f_sfixupimmv4sf_round */
   14618              : 
   14619              :                 case E_V2DFmode:
   14620              :                   if (pattern1719 (x2, 
   14621              : E_V2DImode, 
   14622              : E_V2DFmode) != 0
   14623              :                       || !(
   14624              : #line 263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14625              : (TARGET_AVX512F) && (
   14626              : #line 14519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14627              : (TARGET_AVX512F) && 
   14628              : #line 473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14629              : (TARGET_SSE2))))
   14630              :                     return -1;
   14631              :                   return 7164; /* avx512f_sfixupimmv2df_round */
   14632              : 
   14633              :                 default:
   14634              :                   return -1;
   14635              :                 }
   14636              : 
   14637              :             default:
   14638              :               return -1;
   14639              :             }
   14640              : 
   14641              :         default:
   14642              :           return -1;
   14643              :         }
   14644              : 
   14645              :     default:
   14646              :       return -1;
   14647              :     }
   14648              : }
   14649              : 
   14650              :  int
   14651              : recog_237 (rtx x1 ATTRIBUTE_UNUSED,
   14652              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   14653              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   14654              : {
   14655              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   14656              :   rtx x2, x3, x4, x5;
   14657              :   int res ATTRIBUTE_UNUSED;
   14658              :   x2 = XEXP (x1, 0);
   14659              :   if (GET_CODE (x2) != REG
   14660              :       || REGNO (x2) != 17)
   14661              :     return -1;
   14662              :   x3 = XEXP (x1, 1);
   14663              :   x4 = XVECEXP (x3, 0, 0);
   14664              :   operands[0] = x4;
   14665              :   x5 = XVECEXP (x3, 0, 1);
   14666              :   operands[1] = x5;
   14667              :   switch (GET_MODE (operands[0]))
   14668              :     {
   14669              :     case E_V16QImode:
   14670              :       if (!register_operand (operands[0], E_V16QImode)
   14671              :           || !vector_operand (operands[1], E_V16QImode)
   14672              :           || !
   14673              : #line 25902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14674              : (TARGET_SSE4_1 && ix86_match_ptest_ccmode (insn)))
   14675              :         return -1;
   14676              :       return 8984; /* *sse4_1_ptestv16qi */
   14677              : 
   14678              :     case E_V8HImode:
   14679              :       if (!register_operand (operands[0], E_V8HImode)
   14680              :           || !vector_operand (operands[1], E_V8HImode)
   14681              :           || !
   14682              : #line 25902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14683              : (TARGET_SSE4_1 && ix86_match_ptest_ccmode (insn)))
   14684              :         return -1;
   14685              :       return 8985; /* *sse4_1_ptestv8hi */
   14686              : 
   14687              :     case E_V4SImode:
   14688              :       if (!register_operand (operands[0], E_V4SImode)
   14689              :           || !vector_operand (operands[1], E_V4SImode)
   14690              :           || !
   14691              : #line 25902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14692              : (TARGET_SSE4_1 && ix86_match_ptest_ccmode (insn)))
   14693              :         return -1;
   14694              :       return 8986; /* *sse4_1_ptestv4si */
   14695              : 
   14696              :     case E_V2DImode:
   14697              :       if (!register_operand (operands[0], E_V2DImode)
   14698              :           || !vector_operand (operands[1], E_V2DImode)
   14699              :           || !
   14700              : #line 25902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14701              : (TARGET_SSE4_1 && ix86_match_ptest_ccmode (insn)))
   14702              :         return -1;
   14703              :       return 8987; /* *sse4_1_ptestv2di */
   14704              : 
   14705              :     case E_V1TImode:
   14706              :       if (!register_operand (operands[0], E_V1TImode)
   14707              :           || !vector_operand (operands[1], E_V1TImode)
   14708              :           || !
   14709              : #line 25902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14710              : (TARGET_SSE4_1 && ix86_match_ptest_ccmode (insn)))
   14711              :         return -1;
   14712              :       return 8988; /* *sse4_1_ptestv1ti */
   14713              : 
   14714              :     case E_V4SFmode:
   14715              :       if (!register_operand (operands[0], E_V4SFmode)
   14716              :           || !vector_operand (operands[1], E_V4SFmode)
   14717              :           || !
   14718              : #line 25902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14719              : (TARGET_SSE4_1 && ix86_match_ptest_ccmode (insn)))
   14720              :         return -1;
   14721              :       return 8989; /* *sse4_1_ptestv4sf */
   14722              : 
   14723              :     case E_V2DFmode:
   14724              :       if (!register_operand (operands[0], E_V2DFmode)
   14725              :           || !vector_operand (operands[1], E_V2DFmode)
   14726              :           || !
   14727              : #line 25902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14728              : (TARGET_SSE4_1 && ix86_match_ptest_ccmode (insn)))
   14729              :         return -1;
   14730              :       return 8990; /* *sse4_1_ptestv2df */
   14731              : 
   14732              :     case E_V32QImode:
   14733              :       if (!register_operand (operands[0], E_V32QImode)
   14734              :           || !vector_operand (operands[1], E_V32QImode)
   14735              :           || !(
   14736              : #line 25902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14737              : (TARGET_SSE4_1 && ix86_match_ptest_ccmode (insn)) && 
   14738              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14739              : (TARGET_AVX)))
   14740              :         return -1;
   14741              :       return 8991; /* *avx_ptestv32qi */
   14742              : 
   14743              :     case E_V16HImode:
   14744              :       if (!register_operand (operands[0], E_V16HImode)
   14745              :           || !vector_operand (operands[1], E_V16HImode)
   14746              :           || !(
   14747              : #line 25902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14748              : (TARGET_SSE4_1 && ix86_match_ptest_ccmode (insn)) && 
   14749              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14750              : (TARGET_AVX)))
   14751              :         return -1;
   14752              :       return 8992; /* *avx_ptestv16hi */
   14753              : 
   14754              :     case E_V8SImode:
   14755              :       if (!register_operand (operands[0], E_V8SImode)
   14756              :           || !vector_operand (operands[1], E_V8SImode)
   14757              :           || !(
   14758              : #line 25902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14759              : (TARGET_SSE4_1 && ix86_match_ptest_ccmode (insn)) && 
   14760              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14761              : (TARGET_AVX)))
   14762              :         return -1;
   14763              :       return 8993; /* *avx_ptestv8si */
   14764              : 
   14765              :     case E_V4DImode:
   14766              :       if (!register_operand (operands[0], E_V4DImode)
   14767              :           || !vector_operand (operands[1], E_V4DImode)
   14768              :           || !(
   14769              : #line 25902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14770              : (TARGET_SSE4_1 && ix86_match_ptest_ccmode (insn)) && 
   14771              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14772              : (TARGET_AVX)))
   14773              :         return -1;
   14774              :       return 8994; /* *avx_ptestv4di */
   14775              : 
   14776              :     case E_V2TImode:
   14777              :       if (!register_operand (operands[0], E_V2TImode)
   14778              :           || !vector_operand (operands[1], E_V2TImode)
   14779              :           || !(
   14780              : #line 25902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14781              : (TARGET_SSE4_1 && ix86_match_ptest_ccmode (insn)) && 
   14782              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14783              : (TARGET_AVX)))
   14784              :         return -1;
   14785              :       return 8995; /* *avx_ptestv2ti */
   14786              : 
   14787              :     case E_V8SFmode:
   14788              :       if (!register_operand (operands[0], E_V8SFmode)
   14789              :           || !vector_operand (operands[1], E_V8SFmode)
   14790              :           || !(
   14791              : #line 25902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14792              : (TARGET_SSE4_1 && ix86_match_ptest_ccmode (insn)) && 
   14793              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14794              : (TARGET_AVX)))
   14795              :         return -1;
   14796              :       return 8996; /* *avx_ptestv8sf */
   14797              : 
   14798              :     case E_V4DFmode:
   14799              :       if (!register_operand (operands[0], E_V4DFmode)
   14800              :           || !vector_operand (operands[1], E_V4DFmode)
   14801              :           || !(
   14802              : #line 25902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14803              : (TARGET_SSE4_1 && ix86_match_ptest_ccmode (insn)) && 
   14804              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14805              : (TARGET_AVX)))
   14806              :         return -1;
   14807              :       return 8997; /* *avx_ptestv4df */
   14808              : 
   14809              :     default:
   14810              :       return -1;
   14811              :     }
   14812              : }
   14813              : 
   14814              :  int
   14815              : recog_238 (rtx x1 ATTRIBUTE_UNUSED,
   14816              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   14817              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   14818              : {
   14819              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   14820              :   rtx x2, x3, x4, x5;
   14821              :   int res ATTRIBUTE_UNUSED;
   14822              :   x2 = XEXP (x1, 0);
   14823              :   operands[0] = x2;
   14824              :   x3 = XEXP (x1, 1);
   14825              :   x4 = XVECEXP (x3, 0, 0);
   14826              :   operands[1] = x4;
   14827              :   x5 = XVECEXP (x3, 0, 1);
   14828              :   operands[2] = x5;
   14829              :   switch (GET_MODE (operands[0]))
   14830              :     {
   14831              :     case E_V32HFmode:
   14832              :       if (pattern785 (x3, 
   14833              : E_V32HFmode) != 0
   14834              :           || !(
   14835              : #line 14549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14836              : (TARGET_AVX512F) && 
   14837              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14838              : (TARGET_AVX512FP16)))
   14839              :         return -1;
   14840              :       return 7171; /* avx512bw_rndscalev32hf */
   14841              : 
   14842              :     case E_V16HFmode:
   14843              :       if (pattern785 (x3, 
   14844              : E_V16HFmode) != 0
   14845              :           || !(
   14846              : #line 14549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14847              : (TARGET_AVX512F) && 
   14848              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14849              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   14850              :         return -1;
   14851              :       return 7175; /* avx512vl_rndscalev16hf */
   14852              : 
   14853              :     case E_V8HFmode:
   14854              :       if (pattern785 (x3, 
   14855              : E_V8HFmode) != 0
   14856              :           || !(
   14857              : #line 14549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14858              : (TARGET_AVX512F) && 
   14859              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14860              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   14861              :         return -1;
   14862              :       return 7179; /* avx512fp16_rndscalev8hf */
   14863              : 
   14864              :     case E_V16SFmode:
   14865              :       if (pattern785 (x3, 
   14866              : E_V16SFmode) != 0
   14867              :           || !
   14868              : #line 14549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14869              : (TARGET_AVX512F))
   14870              :         return -1;
   14871              :       return 7183; /* avx512f_rndscalev16sf */
   14872              : 
   14873              :     case E_V8SFmode:
   14874              :       if (!register_operand (operands[0], E_V8SFmode)
   14875              :           || GET_MODE (x3) != E_V8SFmode)
   14876              :         return -1;
   14877              :       if (nonimmediate_operand (operands[1], E_V8SFmode)
   14878              :           && const_0_to_255_operand (operands[2], E_SImode)
   14879              :           && (
   14880              : #line 14549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14881              : (TARGET_AVX512F) && 
   14882              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14883              : (TARGET_AVX512VL)))
   14884              :         return 7187; /* avx512vl_rndscalev8sf */
   14885              :       if (!vector_operand (operands[1], E_V8SFmode)
   14886              :           || !const_0_to_15_operand (operands[2], E_SImode)
   14887              :           || !(
   14888              : #line 26093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14889              : (TARGET_SSE4_1) && 
   14890              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14891              : (TARGET_AVX)))
   14892              :         return -1;
   14893              :       return 9021; /* avx_roundps256 */
   14894              : 
   14895              :     case E_V4SFmode:
   14896              :       if (!register_operand (operands[0], E_V4SFmode)
   14897              :           || GET_MODE (x3) != E_V4SFmode)
   14898              :         return -1;
   14899              :       if (nonimmediate_operand (operands[1], E_V4SFmode)
   14900              :           && const_0_to_255_operand (operands[2], E_SImode)
   14901              :           && (
   14902              : #line 14549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14903              : (TARGET_AVX512F) && 
   14904              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14905              : (TARGET_AVX512VL)))
   14906              :         return 7191; /* avx512vl_rndscalev4sf */
   14907              :       if (!vector_operand (operands[1], E_V4SFmode)
   14908              :           || !const_0_to_15_operand (operands[2], E_SImode)
   14909              :           || !
   14910              : #line 26093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14911              : (TARGET_SSE4_1))
   14912              :         return -1;
   14913              :       return 9022; /* sse4_1_roundps */
   14914              : 
   14915              :     case E_V8DFmode:
   14916              :       if (pattern785 (x3, 
   14917              : E_V8DFmode) != 0
   14918              :           || !
   14919              : #line 14549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14920              : (TARGET_AVX512F))
   14921              :         return -1;
   14922              :       return 7195; /* avx512f_rndscalev8df */
   14923              : 
   14924              :     case E_V4DFmode:
   14925              :       if (!register_operand (operands[0], E_V4DFmode)
   14926              :           || GET_MODE (x3) != E_V4DFmode)
   14927              :         return -1;
   14928              :       if (nonimmediate_operand (operands[1], E_V4DFmode)
   14929              :           && const_0_to_255_operand (operands[2], E_SImode)
   14930              :           && (
   14931              : #line 14549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14932              : (TARGET_AVX512F) && 
   14933              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14934              : (TARGET_AVX512VL)))
   14935              :         return 7199; /* avx512vl_rndscalev4df */
   14936              :       if (!vector_operand (operands[1], E_V4DFmode)
   14937              :           || !const_0_to_15_operand (operands[2], E_SImode)
   14938              :           || !(
   14939              : #line 26093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14940              : (TARGET_SSE4_1) && 
   14941              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14942              : (TARGET_AVX)))
   14943              :         return -1;
   14944              :       return 9023; /* avx_roundpd256 */
   14945              : 
   14946              :     case E_V2DFmode:
   14947              :       if (!register_operand (operands[0], E_V2DFmode)
   14948              :           || GET_MODE (x3) != E_V2DFmode)
   14949              :         return -1;
   14950              :       if (nonimmediate_operand (operands[1], E_V2DFmode)
   14951              :           && const_0_to_255_operand (operands[2], E_SImode)
   14952              :           && (
   14953              : #line 14549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14954              : (TARGET_AVX512F) && 
   14955              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14956              : (TARGET_AVX512VL)))
   14957              :         return 7203; /* avx512vl_rndscalev2df */
   14958              :       if (!vector_operand (operands[1], E_V2DFmode)
   14959              :           || !const_0_to_15_operand (operands[2], E_SImode)
   14960              :           || !(
   14961              : #line 26093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14962              : (TARGET_SSE4_1) && 
   14963              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14964              : (TARGET_SSE2)))
   14965              :         return -1;
   14966              :       return 9024; /* sse4_1_roundpd */
   14967              : 
   14968              :     default:
   14969              :       return -1;
   14970              :     }
   14971              : }
   14972              : 
   14973              :  int
   14974              : recog_241 (rtx x1 ATTRIBUTE_UNUSED,
   14975              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   14976              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   14977              : {
   14978              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   14979              :   rtx x2, x3, x4, x5;
   14980              :   int res ATTRIBUTE_UNUSED;
   14981              :   x2 = XEXP (x1, 0);
   14982              :   operands[0] = x2;
   14983              :   x3 = XEXP (x1, 1);
   14984              :   x4 = XVECEXP (x3, 0, 0);
   14985              :   operands[1] = x4;
   14986              :   x5 = XVECEXP (x3, 0, 1);
   14987              :   operands[2] = x5;
   14988              :   if (!const_0_to_255_operand (operands[2], E_SImode))
   14989              :     return -1;
   14990              :   switch (GET_MODE (operands[0]))
   14991              :     {
   14992              :     case E_V32HFmode:
   14993              :       if (!register_operand (operands[0], E_V32HFmode)
   14994              :           || GET_MODE (x3) != E_V32HFmode
   14995              :           || !vector_operand (operands[1], E_V32HFmode)
   14996              :           || !(
   14997              : #line 4253 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14998              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V32HFmode))) && 
   14999              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15000              : (TARGET_AVX512FP16)))
   15001              :         return -1;
   15002              :       return 3229; /* *reducepv32hf */
   15003              : 
   15004              :     case E_V16HFmode:
   15005              :       if (!register_operand (operands[0], E_V16HFmode)
   15006              :           || GET_MODE (x3) != E_V16HFmode
   15007              :           || !vector_operand (operands[1], E_V16HFmode)
   15008              :           || !(
   15009              : #line 4253 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15010              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V16HFmode))) && 
   15011              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15012              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   15013              :         return -1;
   15014              :       return 3233; /* *reducepv16hf */
   15015              : 
   15016              :     case E_V8HFmode:
   15017              :       if (!register_operand (operands[0], E_V8HFmode)
   15018              :           || GET_MODE (x3) != E_V8HFmode
   15019              :           || !vector_operand (operands[1], E_V8HFmode)
   15020              :           || !(
   15021              : #line 4253 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15022              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V8HFmode))) && 
   15023              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15024              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   15025              :         return -1;
   15026              :       return 3237; /* *reducepv8hf */
   15027              : 
   15028              :     case E_V16SFmode:
   15029              :       if (!register_operand (operands[0], E_V16SFmode)
   15030              :           || GET_MODE (x3) != E_V16SFmode
   15031              :           || !vector_operand (operands[1], E_V16SFmode)
   15032              :           || !
   15033              : #line 4253 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15034              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V16SFmode))))
   15035              :         return -1;
   15036              :       return 3241; /* *reducepv16sf */
   15037              : 
   15038              :     case E_V8SFmode:
   15039              :       if (!register_operand (operands[0], E_V8SFmode)
   15040              :           || GET_MODE (x3) != E_V8SFmode
   15041              :           || !vector_operand (operands[1], E_V8SFmode)
   15042              :           || !(
   15043              : #line 4253 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15044              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V8SFmode))) && 
   15045              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15046              : (TARGET_AVX512VL)))
   15047              :         return -1;
   15048              :       return 3245; /* *reducepv8sf */
   15049              : 
   15050              :     case E_V4SFmode:
   15051              :       if (!register_operand (operands[0], E_V4SFmode)
   15052              :           || GET_MODE (x3) != E_V4SFmode
   15053              :           || !vector_operand (operands[1], E_V4SFmode)
   15054              :           || !(
   15055              : #line 4253 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15056              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V4SFmode))) && 
   15057              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15058              : (TARGET_AVX512VL)))
   15059              :         return -1;
   15060              :       return 3249; /* *reducepv4sf */
   15061              : 
   15062              :     case E_V8DFmode:
   15063              :       if (!register_operand (operands[0], E_V8DFmode)
   15064              :           || GET_MODE (x3) != E_V8DFmode
   15065              :           || !vector_operand (operands[1], E_V8DFmode)
   15066              :           || !
   15067              : #line 4253 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15068              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V8DFmode))))
   15069              :         return -1;
   15070              :       return 3253; /* *reducepv8df */
   15071              : 
   15072              :     case E_V4DFmode:
   15073              :       if (!register_operand (operands[0], E_V4DFmode)
   15074              :           || GET_MODE (x3) != E_V4DFmode
   15075              :           || !vector_operand (operands[1], E_V4DFmode)
   15076              :           || !(
   15077              : #line 4253 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15078              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V4DFmode))) && 
   15079              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15080              : (TARGET_AVX512VL)))
   15081              :         return -1;
   15082              :       return 3257; /* *reducepv4df */
   15083              : 
   15084              :     case E_V2DFmode:
   15085              :       if (!register_operand (operands[0], E_V2DFmode)
   15086              :           || GET_MODE (x3) != E_V2DFmode
   15087              :           || !vector_operand (operands[1], E_V2DFmode)
   15088              :           || !(
   15089              : #line 4253 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15090              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V2DFmode))) && 
   15091              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15092              : (TARGET_AVX512VL)))
   15093              :         return -1;
   15094              :       return 3261; /* *reducepv2df */
   15095              : 
   15096              :     default:
   15097              :       return -1;
   15098              :     }
   15099              : }
   15100              : 
   15101              :  int
   15102              : recog_247 (rtx x1 ATTRIBUTE_UNUSED,
   15103              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15104              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15105              : {
   15106              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15107              :   rtx x2, x3, x4, x5;
   15108              :   int res ATTRIBUTE_UNUSED;
   15109              :   x2 = XEXP (x1, 1);
   15110              :   x3 = XVECEXP (x2, 0, 2);
   15111              :   if (GET_MODE (x3) != E_V16QImode)
   15112              :     return -1;
   15113              :   x4 = XEXP (x1, 0);
   15114              :   if (GET_CODE (x4) != MEM
   15115              :       || GET_MODE (x4) != E_V16QImode)
   15116              :     return -1;
   15117              :   x5 = XEXP (x4, 0);
   15118              :   operands[0] = x5;
   15119              :   if (GET_MODE (x2) != E_V16QImode)
   15120              :     return -1;
   15121              :   switch (pattern1078 (x2, 
   15122              : E_V16QImode))
   15123              :     {
   15124              :     case 0:
   15125              :       if (!(
   15126              : #line 22816 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15127              : (TARGET_SSE2) && 
   15128              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15129              : (Pmode == SImode)))
   15130              :         return -1;
   15131              :       return 8623; /* *sse2_maskmovdqu */
   15132              : 
   15133              :     case 1:
   15134              :       if (!(
   15135              : #line 22816 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15136              : (TARGET_SSE2) && 
   15137              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15138              : (Pmode == DImode)))
   15139              :         return -1;
   15140              :       return 8624; /* *sse2_maskmovdqu */
   15141              : 
   15142              :     default:
   15143              :       return -1;
   15144              :     }
   15145              : }
   15146              : 
   15147              :  int
   15148              : recog_250 (rtx x1 ATTRIBUTE_UNUSED,
   15149              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15150              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15151              : {
   15152              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15153              :   rtx x2, x3, x4, x5, x6, x7;
   15154              :   int res ATTRIBUTE_UNUSED;
   15155              :   x2 = XEXP (x1, 0);
   15156              :   operands[0] = x2;
   15157              :   x3 = XEXP (x1, 1);
   15158              :   x4 = XVECEXP (x3, 0, 0);
   15159              :   operands[1] = x4;
   15160              :   x5 = XVECEXP (x3, 0, 1);
   15161              :   operands[2] = x5;
   15162              :   x6 = XVECEXP (x3, 0, 2);
   15163              :   switch (GET_CODE (x6))
   15164              :     {
   15165              :     case REG:
   15166              :     case SUBREG:
   15167              :     case MEM:
   15168              :       operands[3] = x6;
   15169              :       switch (GET_MODE (operands[0]))
   15170              :         {
   15171              :         case E_V8SFmode:
   15172              :           if (!register_operand (operands[0], E_V8SFmode)
   15173              :               || GET_MODE (x3) != E_V8SFmode)
   15174              :             return -1;
   15175              :           if (nonimmediate_operand (operands[1], E_V8SFmode)
   15176              :               && nonimmediate_operand (operands[2], E_V8SFmode)
   15177              :               && nonimmediate_operand (operands[3], E_V8SFmode)
   15178              :               && (
   15179              : #line 6750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15180              : (TARGET_FMA || TARGET_FMA4) && 
   15181              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15182              : (TARGET_AVX)))
   15183              :             return 4129; /* *fma_fmaddsub_v8sf */
   15184              :           if (!vector_operand (operands[1], E_V8SFmode)
   15185              :               || !vector_operand (operands[2], E_V8SFmode)
   15186              :               || !vector_operand (operands[3], E_V8SFmode)
   15187              :               || !(
   15188              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15189              : (TARGET_AVX512F && 1 && 1) && 
   15190              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15191              : (TARGET_AVX512VL)))
   15192              :             return -1;
   15193              :           return 4145; /* *fma_fmaddsub_v8sf */
   15194              : 
   15195              :         case E_V4SFmode:
   15196              :           if (!register_operand (operands[0], E_V4SFmode)
   15197              :               || GET_MODE (x3) != E_V4SFmode)
   15198              :             return -1;
   15199              :           if (nonimmediate_operand (operands[1], E_V4SFmode)
   15200              :               && nonimmediate_operand (operands[2], E_V4SFmode)
   15201              :               && nonimmediate_operand (operands[3], E_V4SFmode)
   15202              :               && 
   15203              : #line 6750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15204              : (TARGET_FMA || TARGET_FMA4))
   15205              :             return 4130; /* *fma_fmaddsub_v4sf */
   15206              :           if (!vector_operand (operands[1], E_V4SFmode)
   15207              :               || !vector_operand (operands[2], E_V4SFmode)
   15208              :               || !vector_operand (operands[3], E_V4SFmode)
   15209              :               || !(
   15210              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15211              : (TARGET_AVX512F && 1 && 1) && 
   15212              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15213              : (TARGET_AVX512VL)))
   15214              :             return -1;
   15215              :           return 4147; /* *fma_fmaddsub_v4sf */
   15216              : 
   15217              :         case E_V4DFmode:
   15218              :           if (!register_operand (operands[0], E_V4DFmode)
   15219              :               || GET_MODE (x3) != E_V4DFmode)
   15220              :             return -1;
   15221              :           if (nonimmediate_operand (operands[1], E_V4DFmode)
   15222              :               && nonimmediate_operand (operands[2], E_V4DFmode)
   15223              :               && nonimmediate_operand (operands[3], E_V4DFmode)
   15224              :               && (
   15225              : #line 6750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15226              : (TARGET_FMA || TARGET_FMA4) && 
   15227              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15228              : (TARGET_AVX)))
   15229              :             return 4131; /* *fma_fmaddsub_v4df */
   15230              :           if (!vector_operand (operands[1], E_V4DFmode)
   15231              :               || !vector_operand (operands[2], E_V4DFmode)
   15232              :               || !vector_operand (operands[3], E_V4DFmode)
   15233              :               || !(
   15234              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15235              : (TARGET_AVX512F && 1 && 1) && 
   15236              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15237              : (TARGET_AVX512VL)))
   15238              :             return -1;
   15239              :           return 4153; /* *fma_fmaddsub_v4df */
   15240              : 
   15241              :         case E_V2DFmode:
   15242              :           if (!register_operand (operands[0], E_V2DFmode)
   15243              :               || GET_MODE (x3) != E_V2DFmode)
   15244              :             return -1;
   15245              :           if (nonimmediate_operand (operands[1], E_V2DFmode)
   15246              :               && nonimmediate_operand (operands[2], E_V2DFmode)
   15247              :               && nonimmediate_operand (operands[3], E_V2DFmode)
   15248              :               && (
   15249              : #line 6750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15250              : (TARGET_FMA || TARGET_FMA4) && 
   15251              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15252              : (TARGET_SSE2)))
   15253              :             return 4132; /* *fma_fmaddsub_v2df */
   15254              :           if (!vector_operand (operands[1], E_V2DFmode)
   15255              :               || !vector_operand (operands[2], E_V2DFmode)
   15256              :               || !vector_operand (operands[3], E_V2DFmode)
   15257              :               || !(
   15258              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15259              : (TARGET_AVX512F && 1 && 1) && 
   15260              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15261              : (TARGET_AVX512VL)))
   15262              :             return -1;
   15263              :           return 4155; /* *fma_fmaddsub_v2df */
   15264              : 
   15265              :         case E_V32HFmode:
   15266              :           if (pattern676 (x3, 
   15267              : E_V32HFmode) != 0
   15268              :               || !(
   15269              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15270              : (TARGET_AVX512F && 1 && 1) && 
   15271              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15272              : (TARGET_AVX512FP16)))
   15273              :             return -1;
   15274              :           return 4133; /* *fma_fmaddsub_v32hf */
   15275              : 
   15276              :         case E_V16HFmode:
   15277              :           if (pattern676 (x3, 
   15278              : E_V16HFmode) != 0
   15279              :               || !(
   15280              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15281              : (TARGET_AVX512F && 1 && 1) && 
   15282              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15283              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   15284              :             return -1;
   15285              :           return 4137; /* *fma_fmaddsub_v16hf */
   15286              : 
   15287              :         case E_V8HFmode:
   15288              :           if (pattern676 (x3, 
   15289              : E_V8HFmode) != 0
   15290              :               || !(
   15291              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15292              : (TARGET_AVX512F && 1 && 1) && 
   15293              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15294              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   15295              :             return -1;
   15296              :           return 4139; /* *fma_fmaddsub_v8hf */
   15297              : 
   15298              :         case E_V16SFmode:
   15299              :           if (pattern676 (x3, 
   15300              : E_V16SFmode) != 0
   15301              :               || !
   15302              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15303              : (TARGET_AVX512F && 1 && 1))
   15304              :             return -1;
   15305              :           return 4141; /* *fma_fmaddsub_v16sf */
   15306              : 
   15307              :         case E_V8DFmode:
   15308              :           if (pattern676 (x3, 
   15309              : E_V8DFmode) != 0
   15310              :               || !
   15311              : #line 6768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15312              : (TARGET_AVX512F && 1 && 1))
   15313              :             return -1;
   15314              :           return 4149; /* *fma_fmaddsub_v8df */
   15315              : 
   15316              :         default:
   15317              :           return -1;
   15318              :         }
   15319              : 
   15320              :     case NEG:
   15321              :       x7 = XEXP (x6, 0);
   15322              :       operands[3] = x7;
   15323              :       switch (GET_MODE (operands[0]))
   15324              :         {
   15325              :         case E_V8SFmode:
   15326              :           if (!register_operand (operands[0], E_V8SFmode)
   15327              :               || GET_MODE (x3) != E_V8SFmode
   15328              :               || GET_MODE (x6) != E_V8SFmode)
   15329              :             return -1;
   15330              :           if (nonimmediate_operand (operands[1], E_V8SFmode)
   15331              :               && nonimmediate_operand (operands[2], E_V8SFmode)
   15332              :               && nonimmediate_operand (operands[3], E_V8SFmode)
   15333              :               && (
   15334              : #line 6819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15335              : (TARGET_FMA || TARGET_FMA4) && 
   15336              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15337              : (TARGET_AVX)))
   15338              :             return 4193; /* *fma_fmsubadd_v8sf */
   15339              :           if (!vector_operand (operands[1], E_V8SFmode)
   15340              :               || !vector_operand (operands[2], E_V8SFmode)
   15341              :               || !vector_operand (operands[3], E_V8SFmode)
   15342              :               || !(
   15343              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15344              : (TARGET_AVX512F && 1 && 1) && 
   15345              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15346              : (TARGET_AVX512VL)))
   15347              :             return -1;
   15348              :           return 4209; /* *fma_fmsubadd_v8sf */
   15349              : 
   15350              :         case E_V4SFmode:
   15351              :           if (!register_operand (operands[0], E_V4SFmode)
   15352              :               || GET_MODE (x3) != E_V4SFmode
   15353              :               || GET_MODE (x6) != E_V4SFmode)
   15354              :             return -1;
   15355              :           if (nonimmediate_operand (operands[1], E_V4SFmode)
   15356              :               && nonimmediate_operand (operands[2], E_V4SFmode)
   15357              :               && nonimmediate_operand (operands[3], E_V4SFmode)
   15358              :               && 
   15359              : #line 6819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15360              : (TARGET_FMA || TARGET_FMA4))
   15361              :             return 4194; /* *fma_fmsubadd_v4sf */
   15362              :           if (!vector_operand (operands[1], E_V4SFmode)
   15363              :               || !vector_operand (operands[2], E_V4SFmode)
   15364              :               || !vector_operand (operands[3], E_V4SFmode)
   15365              :               || !(
   15366              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15367              : (TARGET_AVX512F && 1 && 1) && 
   15368              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15369              : (TARGET_AVX512VL)))
   15370              :             return -1;
   15371              :           return 4211; /* *fma_fmsubadd_v4sf */
   15372              : 
   15373              :         case E_V4DFmode:
   15374              :           if (!register_operand (operands[0], E_V4DFmode)
   15375              :               || GET_MODE (x3) != E_V4DFmode
   15376              :               || GET_MODE (x6) != E_V4DFmode)
   15377              :             return -1;
   15378              :           if (nonimmediate_operand (operands[1], E_V4DFmode)
   15379              :               && nonimmediate_operand (operands[2], E_V4DFmode)
   15380              :               && nonimmediate_operand (operands[3], E_V4DFmode)
   15381              :               && (
   15382              : #line 6819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15383              : (TARGET_FMA || TARGET_FMA4) && 
   15384              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15385              : (TARGET_AVX)))
   15386              :             return 4195; /* *fma_fmsubadd_v4df */
   15387              :           if (!vector_operand (operands[1], E_V4DFmode)
   15388              :               || !vector_operand (operands[2], E_V4DFmode)
   15389              :               || !vector_operand (operands[3], E_V4DFmode)
   15390              :               || !(
   15391              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15392              : (TARGET_AVX512F && 1 && 1) && 
   15393              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15394              : (TARGET_AVX512VL)))
   15395              :             return -1;
   15396              :           return 4217; /* *fma_fmsubadd_v4df */
   15397              : 
   15398              :         case E_V2DFmode:
   15399              :           if (!register_operand (operands[0], E_V2DFmode)
   15400              :               || GET_MODE (x3) != E_V2DFmode
   15401              :               || GET_MODE (x6) != E_V2DFmode)
   15402              :             return -1;
   15403              :           if (nonimmediate_operand (operands[1], E_V2DFmode)
   15404              :               && nonimmediate_operand (operands[2], E_V2DFmode)
   15405              :               && nonimmediate_operand (operands[3], E_V2DFmode)
   15406              :               && (
   15407              : #line 6819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15408              : (TARGET_FMA || TARGET_FMA4) && 
   15409              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15410              : (TARGET_SSE2)))
   15411              :             return 4196; /* *fma_fmsubadd_v2df */
   15412              :           if (!vector_operand (operands[1], E_V2DFmode)
   15413              :               || !vector_operand (operands[2], E_V2DFmode)
   15414              :               || !vector_operand (operands[3], E_V2DFmode)
   15415              :               || !(
   15416              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15417              : (TARGET_AVX512F && 1 && 1) && 
   15418              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15419              : (TARGET_AVX512VL)))
   15420              :             return -1;
   15421              :           return 4219; /* *fma_fmsubadd_v2df */
   15422              : 
   15423              :         case E_V32HFmode:
   15424              :           if (pattern1036 (x3, 
   15425              : E_V32HFmode) != 0
   15426              :               || !(
   15427              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15428              : (TARGET_AVX512F && 1 && 1) && 
   15429              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15430              : (TARGET_AVX512FP16)))
   15431              :             return -1;
   15432              :           return 4197; /* *fma_fmsubadd_v32hf */
   15433              : 
   15434              :         case E_V16HFmode:
   15435              :           if (pattern1036 (x3, 
   15436              : E_V16HFmode) != 0
   15437              :               || !(
   15438              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15439              : (TARGET_AVX512F && 1 && 1) && 
   15440              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15441              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   15442              :             return -1;
   15443              :           return 4201; /* *fma_fmsubadd_v16hf */
   15444              : 
   15445              :         case E_V8HFmode:
   15446              :           if (pattern1036 (x3, 
   15447              : E_V8HFmode) != 0
   15448              :               || !(
   15449              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15450              : (TARGET_AVX512F && 1 && 1) && 
   15451              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15452              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   15453              :             return -1;
   15454              :           return 4203; /* *fma_fmsubadd_v8hf */
   15455              : 
   15456              :         case E_V16SFmode:
   15457              :           if (pattern1036 (x3, 
   15458              : E_V16SFmode) != 0
   15459              :               || !
   15460              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15461              : (TARGET_AVX512F && 1 && 1))
   15462              :             return -1;
   15463              :           return 4205; /* *fma_fmsubadd_v16sf */
   15464              : 
   15465              :         case E_V8DFmode:
   15466              :           if (pattern1036 (x3, 
   15467              : E_V8DFmode) != 0
   15468              :               || !
   15469              : #line 6838 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15470              : (TARGET_AVX512F && 1 && 1))
   15471              :             return -1;
   15472              :           return 4213; /* *fma_fmsubadd_v8df */
   15473              : 
   15474              :         default:
   15475              :           return -1;
   15476              :         }
   15477              : 
   15478              :     default:
   15479              :       return -1;
   15480              :     }
   15481              : }
   15482              : 
   15483              :  int
   15484              : recog_256 (rtx x1 ATTRIBUTE_UNUSED,
   15485              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15486              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15487              : {
   15488              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15489              :   rtx x2, x3, x4, x5, x6;
   15490              :   int res ATTRIBUTE_UNUSED;
   15491              :   x2 = XEXP (x1, 0);
   15492              :   operands[0] = x2;
   15493              :   x3 = XEXP (x1, 1);
   15494              :   x4 = XVECEXP (x3, 0, 0);
   15495              :   operands[1] = x4;
   15496              :   x5 = XVECEXP (x3, 0, 1);
   15497              :   operands[2] = x5;
   15498              :   x6 = XVECEXP (x3, 0, 2);
   15499              :   operands[3] = x6;
   15500              :   if (!const_0_to_255_operand (operands[3], E_SImode))
   15501              :     return -1;
   15502              :   switch (GET_MODE (operands[0]))
   15503              :     {
   15504              :     case E_V32HFmode:
   15505              :       if (pattern158 (x3, 
   15506              : E_V32HFmode) != 0
   15507              :           || !(
   15508              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15509              : (TARGET_AVX10_2) && 
   15510              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15511              : (TARGET_AVX512FP16)))
   15512              :         return -1;
   15513              :       return 10977; /* avx10_2_minmaxpv32hf */
   15514              : 
   15515              :     case E_V16HFmode:
   15516              :       if (pattern158 (x3, 
   15517              : E_V16HFmode) != 0
   15518              :           || !(
   15519              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15520              : (TARGET_AVX10_2) && 
   15521              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15522              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   15523              :         return -1;
   15524              :       return 10981; /* avx10_2_minmaxpv16hf */
   15525              : 
   15526              :     case E_V8HFmode:
   15527              :       if (pattern158 (x3, 
   15528              : E_V8HFmode) != 0
   15529              :           || !(
   15530              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15531              : (TARGET_AVX10_2) && 
   15532              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15533              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   15534              :         return -1;
   15535              :       return 10985; /* avx10_2_minmaxpv8hf */
   15536              : 
   15537              :     case E_V16SFmode:
   15538              :       if (pattern158 (x3, 
   15539              : E_V16SFmode) != 0
   15540              :           || !
   15541              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15542              : (TARGET_AVX10_2))
   15543              :         return -1;
   15544              :       return 10989; /* avx10_2_minmaxpv16sf */
   15545              : 
   15546              :     case E_V8SFmode:
   15547              :       if (pattern158 (x3, 
   15548              : E_V8SFmode) != 0
   15549              :           || !(
   15550              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15551              : (TARGET_AVX10_2) && 
   15552              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15553              : (TARGET_AVX512VL)))
   15554              :         return -1;
   15555              :       return 10993; /* avx10_2_minmaxpv8sf */
   15556              : 
   15557              :     case E_V4SFmode:
   15558              :       if (pattern158 (x3, 
   15559              : E_V4SFmode) != 0
   15560              :           || !(
   15561              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15562              : (TARGET_AVX10_2) && 
   15563              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15564              : (TARGET_AVX512VL)))
   15565              :         return -1;
   15566              :       return 10997; /* avx10_2_minmaxpv4sf */
   15567              : 
   15568              :     case E_V8DFmode:
   15569              :       if (pattern158 (x3, 
   15570              : E_V8DFmode) != 0
   15571              :           || !
   15572              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15573              : (TARGET_AVX10_2))
   15574              :         return -1;
   15575              :       return 11001; /* avx10_2_minmaxpv8df */
   15576              : 
   15577              :     case E_V4DFmode:
   15578              :       if (pattern158 (x3, 
   15579              : E_V4DFmode) != 0
   15580              :           || !(
   15581              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15582              : (TARGET_AVX10_2) && 
   15583              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15584              : (TARGET_AVX512VL)))
   15585              :         return -1;
   15586              :       return 11005; /* avx10_2_minmaxpv4df */
   15587              : 
   15588              :     case E_V2DFmode:
   15589              :       if (pattern158 (x3, 
   15590              : E_V2DFmode) != 0
   15591              :           || !(
   15592              : #line 33361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15593              : (TARGET_AVX10_2) && 
   15594              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15595              : (TARGET_AVX512VL)))
   15596              :         return -1;
   15597              :       return 11009; /* avx10_2_minmaxpv2df */
   15598              : 
   15599              :     default:
   15600              :       return -1;
   15601              :     }
   15602              : }
   15603              : 
   15604              :  int
   15605              : recog_261 (rtx x1 ATTRIBUTE_UNUSED,
   15606              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15607              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15608              : {
   15609              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15610              :   int res ATTRIBUTE_UNUSED;
   15611              :   switch (pattern182 (x1))
   15612              :     {
   15613              :     case 0:
   15614              :       if (!
   15615              : #line 31119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15616              : (TARGET_AVX512VBMI2))
   15617              :         return -1;
   15618              :       return 10292; /* vpshrdv_v32hi */
   15619              : 
   15620              :     case 1:
   15621              :       if (!
   15622              : #line 31119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15623              : (TARGET_AVX512VBMI2))
   15624              :         return -1;
   15625              :       return 10293; /* vpshrdv_v16si */
   15626              : 
   15627              :     case 2:
   15628              :       if (!
   15629              : #line 31119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15630              : (TARGET_AVX512VBMI2))
   15631              :         return -1;
   15632              :       return 10294; /* vpshrdv_v8di */
   15633              : 
   15634              :     case 3:
   15635              :       if (!(
   15636              : #line 31119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15637              : (TARGET_AVX512VBMI2) && 
   15638              : #line 751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15639              : (TARGET_AVX512VL)))
   15640              :         return -1;
   15641              :       return 10295; /* vpshrdv_v16hi */
   15642              : 
   15643              :     case 4:
   15644              :       if (!(
   15645              : #line 31119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15646              : (TARGET_AVX512VBMI2) && 
   15647              : #line 751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15648              : (TARGET_AVX512VL)))
   15649              :         return -1;
   15650              :       return 10296; /* vpshrdv_v8si */
   15651              : 
   15652              :     case 5:
   15653              :       if (!(
   15654              : #line 31119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15655              : (TARGET_AVX512VBMI2) && 
   15656              : #line 752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15657              : (TARGET_AVX512VL)))
   15658              :         return -1;
   15659              :       return 10297; /* vpshrdv_v4di */
   15660              : 
   15661              :     case 6:
   15662              :       if (!(
   15663              : #line 31119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15664              : (TARGET_AVX512VBMI2) && 
   15665              : #line 752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15666              : (TARGET_AVX512VL)))
   15667              :         return -1;
   15668              :       return 10298; /* vpshrdv_v8hi */
   15669              : 
   15670              :     case 7:
   15671              :       if (!(
   15672              : #line 31119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15673              : (TARGET_AVX512VBMI2) && 
   15674              : #line 753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15675              : (TARGET_AVX512VL)))
   15676              :         return -1;
   15677              :       return 10299; /* vpshrdv_v4si */
   15678              : 
   15679              :     case 8:
   15680              :       if (!(
   15681              : #line 31119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15682              : (TARGET_AVX512VBMI2) && 
   15683              : #line 753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15684              : (TARGET_AVX512VL)))
   15685              :         return -1;
   15686              :       return 10300; /* vpshrdv_v2di */
   15687              : 
   15688              :     default:
   15689              :       return -1;
   15690              :     }
   15691              : }
   15692              : 
   15693              :  int
   15694              : recog_267 (rtx x1 ATTRIBUTE_UNUSED,
   15695              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15696              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15697              : {
   15698              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15699              :   rtx x2, x3, x4, x5;
   15700              :   int res ATTRIBUTE_UNUSED;
   15701              :   x2 = XEXP (x1, 0);
   15702              :   operands[0] = x2;
   15703              :   x3 = XEXP (x1, 1);
   15704              :   x4 = XVECEXP (x3, 0, 0);
   15705              :   operands[1] = x4;
   15706              :   x5 = XVECEXP (x3, 0, 1);
   15707              :   operands[2] = x5;
   15708              :   switch (pattern677 (x3))
   15709              :     {
   15710              :     case 0:
   15711              :       if (
   15712              : #line 7507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15713              : (TARGET_AVX512FP16 && 1 && 1))
   15714              :         return 4365; /* fma_fcmaddc_v32hf */
   15715              :       break;
   15716              : 
   15717              :     case 1:
   15718              :       if ((
   15719              : #line 7507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15720              : (TARGET_AVX512FP16 && 1 && 1) && 
   15721              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15722              : (TARGET_AVX512VL)))
   15723              :         return 4371; /* fma_fcmaddc_v16hf */
   15724              :       break;
   15725              : 
   15726              :     case 2:
   15727              :       if ((
   15728              : #line 7507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15729              : (TARGET_AVX512FP16 && 1 && 1) && 
   15730              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15731              : (TARGET_AVX512VL)))
   15732              :         return 4375; /* fma_fcmaddc_v8hf */
   15733              :       break;
   15734              : 
   15735              :     default:
   15736              :       break;
   15737              :     }
   15738              :   if (GET_CODE (x5) != SUBREG
   15739              :       || maybe_ne (SUBREG_BYTE (x5), 0))
   15740              :     return -1;
   15741              :   switch (pattern602 (x3))
   15742              :     {
   15743              :     case 0:
   15744              :       if (!
   15745              : #line 7613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15746              : (TARGET_AVX512FP16 && ix86_pre_reload_split ()))
   15747              :         return -1;
   15748              :       return 4398; /* fma_v32hf_fcmaddc_bcst */
   15749              : 
   15750              :     case 1:
   15751              :       if (!(
   15752              : #line 7613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15753              : (TARGET_AVX512FP16 && ix86_pre_reload_split ()) && 
   15754              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15755              : (TARGET_AVX512VL)))
   15756              :         return -1;
   15757              :       return 4399; /* fma_v16hf_fcmaddc_bcst */
   15758              : 
   15759              :     case 2:
   15760              :       if (!(
   15761              : #line 7613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15762              : (TARGET_AVX512FP16 && ix86_pre_reload_split ()) && 
   15763              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15764              : (TARGET_AVX512VL)))
   15765              :         return -1;
   15766              :       return 4400; /* fma_v8hf_fcmaddc_bcst */
   15767              : 
   15768              :     default:
   15769              :       return -1;
   15770              :     }
   15771              : }
   15772              : 
   15773              :  int
   15774              : recog_274 (rtx x1 ATTRIBUTE_UNUSED,
   15775              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15776              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15777              : {
   15778              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15779              :   rtx x2, x3, x4, x5, x6, x7, x8;
   15780              :   int res ATTRIBUTE_UNUSED;
   15781              :   x2 = XEXP (x1, 1);
   15782              :   x3 = XEXP (x2, 0);
   15783              :   x4 = XEXP (x3, 1);
   15784              :   if (GET_CODE (x4) != PARALLEL)
   15785              :     return -1;
   15786              :   x5 = XEXP (x3, 0);
   15787              :   operands[1] = x5;
   15788              :   x6 = XEXP (x2, 1);
   15789              :   operands[2] = x6;
   15790              :   switch (XVECLEN (x4, 0))
   15791              :     {
   15792              :     case 1:
   15793              :       x7 = XVECEXP (x4, 0, 0);
   15794              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   15795              :         return -1;
   15796              :       switch (GET_CODE (operands[2]))
   15797              :         {
   15798              :         case CONST_INT:
   15799              :         case CONST_DOUBLE:
   15800              :         case CONST_VECTOR:
   15801              :           switch (GET_MODE (operands[0]))
   15802              :             {
   15803              :             case E_V2DImode:
   15804              :               if (pattern1150 (x2, 
   15805              : E_DImode, 
   15806              : E_V2DImode) != 0
   15807              :                   || !
   15808              : #line 1871 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15809              : (TARGET_SSE2))
   15810              :                 return -1;
   15811              :               return 2616; /* *sse2_movq128_v2di */
   15812              : 
   15813              :             case E_V2DFmode:
   15814              :               if (pattern1150 (x2, 
   15815              : E_DFmode, 
   15816              : E_V2DFmode) != 0
   15817              :                   || !
   15818              : #line 1871 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15819              : (TARGET_SSE2))
   15820              :                 return -1;
   15821              :               return 2617; /* *sse2_movq128_v2df */
   15822              : 
   15823              :             default:
   15824              :               return -1;
   15825              :             }
   15826              : 
   15827              :         case REG:
   15828              :         case SUBREG:
   15829              :         case MEM:
   15830              :           if (!nonimmediate_operand (operands[2], E_DFmode)
   15831              :               || pattern1151 (x2, 
   15832              : E_V2DFmode, 
   15833              : E_DFmode) != 0
   15834              :               || !
   15835              : #line 15053 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15836              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   15837              :             return -1;
   15838              :           return 7250; /* sse2_loadhpd */
   15839              : 
   15840              :         default:
   15841              :           return -1;
   15842              :         }
   15843              : 
   15844              :     case 2:
   15845              :       x7 = XVECEXP (x4, 0, 0);
   15846              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   15847              :         return -1;
   15848              :       x8 = XVECEXP (x4, 0, 1);
   15849              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   15850              :         return -1;
   15851              :       switch (GET_MODE (operands[0]))
   15852              :         {
   15853              :         case E_V4SFmode:
   15854              :           if (pattern1151 (x2, 
   15855              : E_V4SFmode, 
   15856              : E_V2SFmode) != 0
   15857              :               || !nonimmediate_operand (operands[2], E_V2SFmode)
   15858              :               || !
   15859              : #line 11951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15860              : (TARGET_SSE))
   15861              :             return -1;
   15862              :           return 5289; /* sse_loadhps */
   15863              : 
   15864              :         case E_V4DImode:
   15865              :           if (pattern1152 (x2, 
   15866              : E_V2DImode, 
   15867              : E_V4DImode) != 0
   15868              :               || !
   15869              : #line 29159 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15870              : (TARGET_AVX && 1))
   15871              :             return -1;
   15872              :           return 9539; /* vec_set_hi_v4di */
   15873              : 
   15874              :         case E_V4DFmode:
   15875              :           if (pattern1152 (x2, 
   15876              : E_V2DFmode, 
   15877              : E_V4DFmode) != 0
   15878              :               || !
   15879              : #line 29159 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15880              : (TARGET_AVX && 1))
   15881              :             return -1;
   15882              :           return 9541; /* vec_set_hi_v4df */
   15883              : 
   15884              :         default:
   15885              :           return -1;
   15886              :         }
   15887              : 
   15888              :     case 8:
   15889              :       if (pattern681 (x4) != 0)
   15890              :         return -1;
   15891              :       switch (GET_MODE (operands[0]))
   15892              :         {
   15893              :         case E_V16SFmode:
   15894              :           if (pattern1152 (x2, 
   15895              : E_V8SFmode, 
   15896              : E_V16SFmode) != 0
   15897              :               || !
   15898              : #line 20450 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15899              : (TARGET_AVX512DQ))
   15900              :             return -1;
   15901              :           return 8445; /* vec_set_hi_v16sf */
   15902              : 
   15903              :         case E_V16SImode:
   15904              :           if (pattern1152 (x2, 
   15905              : E_V8SImode, 
   15906              : E_V16SImode) != 0
   15907              :               || !
   15908              : #line 20450 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15909              : (TARGET_AVX512DQ))
   15910              :             return -1;
   15911              :           return 8447; /* vec_set_hi_v16si */
   15912              : 
   15913              :         case E_V16HImode:
   15914              :           if (pattern1152 (x2, 
   15915              : E_V8HImode, 
   15916              : E_V16HImode) != 0
   15917              :               || !
   15918              : #line 29254 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15919              : (TARGET_AVX))
   15920              :             return -1;
   15921              :           return 9554; /* vec_set_hi_v16hi */
   15922              : 
   15923              :         case E_V16HFmode:
   15924              :           if (pattern1152 (x2, 
   15925              : E_V8HFmode, 
   15926              : E_V16HFmode) != 0
   15927              :               || !
   15928              : #line 29254 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15929              : (TARGET_AVX))
   15930              :             return -1;
   15931              :           return 9555; /* vec_set_hi_v16hf */
   15932              : 
   15933              :         case E_V16BFmode:
   15934              :           if (pattern1152 (x2, 
   15935              : E_V8BFmode, 
   15936              : E_V16BFmode) != 0
   15937              :               || !
   15938              : #line 29254 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15939              : (TARGET_AVX))
   15940              :             return -1;
   15941              :           return 9556; /* vec_set_hi_v16bf */
   15942              : 
   15943              :         default:
   15944              :           return -1;
   15945              :         }
   15946              : 
   15947              :     case 4:
   15948              :       if (pattern682 (x4, 
   15949              : 3, 
   15950              : 2, 
   15951              : 1) != 0)
   15952              :         return -1;
   15953              :       switch (GET_MODE (operands[0]))
   15954              :         {
   15955              :         case E_V8DFmode:
   15956              :           if (pattern1152 (x2, 
   15957              : E_V4DFmode, 
   15958              : E_V8DFmode) != 0
   15959              :               || !
   15960              : #line 20480 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15961              : (TARGET_AVX512F))
   15962              :             return -1;
   15963              :           return 8453; /* vec_set_hi_v8df */
   15964              : 
   15965              :         case E_V8DImode:
   15966              :           if (pattern1152 (x2, 
   15967              : E_V4DImode, 
   15968              : E_V8DImode) != 0
   15969              :               || !
   15970              : #line 20480 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15971              : (TARGET_AVX512F))
   15972              :             return -1;
   15973              :           return 8455; /* vec_set_hi_v8di */
   15974              : 
   15975              :         case E_V8SImode:
   15976              :           if (pattern1152 (x2, 
   15977              : E_V4SImode, 
   15978              : E_V8SImode) != 0
   15979              :               || !
   15980              : #line 29207 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15981              : (TARGET_AVX))
   15982              :             return -1;
   15983              :           return 9547; /* vec_set_hi_v8si */
   15984              : 
   15985              :         case E_V8SFmode:
   15986              :           if (pattern1152 (x2, 
   15987              : E_V4SFmode, 
   15988              : E_V8SFmode) != 0
   15989              :               || !
   15990              : #line 29207 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15991              : (TARGET_AVX))
   15992              :             return -1;
   15993              :           return 9549; /* vec_set_hi_v8sf */
   15994              : 
   15995              :         default:
   15996              :           return -1;
   15997              :         }
   15998              : 
   15999              :     case 16:
   16000              :       if (pattern795 (x4, 
   16001              : 6, 
   16002              : 5, 
   16003              : 4) != 0
   16004              :           || pattern1490 (x4, 
   16005              : 11, 
   16006              : 10, 
   16007              : 9, 
   16008              : 8, 
   16009              : 7) != 0
   16010              :           || pattern1152 (x2, 
   16011              : E_V16QImode, 
   16012              : E_V32QImode) != 0
   16013              :           || !
   16014              : #line 29306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16015              : (TARGET_AVX))
   16016              :         return -1;
   16017              :       return 9558; /* vec_set_hi_v32qi */
   16018              : 
   16019              :     default:
   16020              :       return -1;
   16021              :     }
   16022              : }
   16023              : 
   16024              :  int
   16025              : recog_275 (rtx x1 ATTRIBUTE_UNUSED,
   16026              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16027              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16028              : {
   16029              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16030              :   rtx x2, x3, x4, x5, x6;
   16031              :   int res ATTRIBUTE_UNUSED;
   16032              :   x2 = XEXP (x1, 1);
   16033              :   x3 = XEXP (x2, 0);
   16034              :   switch (XVECLEN (x3, 0))
   16035              :     {
   16036              :     case 1:
   16037              :       x4 = XVECEXP (x3, 0, 0);
   16038              :       operands[1] = x4;
   16039              :       switch (XINT (x3, 1))
   16040              :         {
   16041              :         case 47:
   16042              :           if (GET_MODE (x3) == E_V4SImode
   16043              :               && pattern798 (x2, 
   16044              : E_V4SImode, 
   16045              : E_V4DFmode, 
   16046              : E_V8SImode) == 0
   16047              :               && 
   16048              : #line 9762 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16049              : (TARGET_AVX))
   16050              :             return 5043; /* *avx_cvtpd2dq256_2 */
   16051              :           if (GET_MODE (x3) != E_V2SImode)
   16052              :             return -1;
   16053              :           x5 = XEXP (x2, 1);
   16054              :           if (GET_CODE (x5) != CONST_VECTOR
   16055              :               || pattern512 (x5, 
   16056              : E_V2SImode, 
   16057              : 2) != 0
   16058              :               || !register_operand (operands[0], E_V4SImode)
   16059              :               || GET_MODE (x2) != E_V4SImode
   16060              :               || !vector_operand (operands[1], E_V2DFmode)
   16061              :               || !
   16062              : #line 9775 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16063              : (TARGET_SSE2))
   16064              :             return -1;
   16065              :           return 5044; /* sse2_cvtpd2dq */
   16066              : 
   16067              :         case 157:
   16068              :           if (pattern679 (x2) != 0
   16069              :               || !
   16070              : #line 9845 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16071              : (TARGET_AVX512VL))
   16072              :             return -1;
   16073              :           return 5055; /* fixuns_notruncv2dfv2si2 */
   16074              : 
   16075              :         case 174:
   16076              :           if (pattern679 (x2) != 0
   16077              :               || !
   16078              : #line 9912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16079              : (TARGET_AVX512VL))
   16080              :             return -1;
   16081              :           return 5074; /* *unspec_fixuns_truncv2dfv2si2 */
   16082              : 
   16083              :         case 254:
   16084              :           if (GET_MODE (x3) != E_V8QImode
   16085              :               || pattern798 (x2, 
   16086              : E_V8QImode, 
   16087              : E_V8HFmode, 
   16088              : E_V16QImode) != 0
   16089              :               || !
   16090              : #line 32575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16091              : (TARGET_AVX10_2))
   16092              :             return -1;
   16093              :           return 10566; /* *vcvtph2bf8v8hf */
   16094              : 
   16095              :         case 255:
   16096              :           if (GET_MODE (x3) != E_V8QImode
   16097              :               || pattern798 (x2, 
   16098              : E_V8QImode, 
   16099              : E_V8HFmode, 
   16100              : E_V16QImode) != 0
   16101              :               || !
   16102              : #line 32575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16103              : (TARGET_AVX10_2))
   16104              :             return -1;
   16105              :           return 10567; /* *vcvtph2bf8sv8hf */
   16106              : 
   16107              :         case 256:
   16108              :           if (GET_MODE (x3) != E_V8QImode
   16109              :               || pattern798 (x2, 
   16110              : E_V8QImode, 
   16111              : E_V8HFmode, 
   16112              : E_V16QImode) != 0
   16113              :               || !
   16114              : #line 32575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16115              : (TARGET_AVX10_2))
   16116              :             return -1;
   16117              :           return 10568; /* *vcvtph2hf8v8hf */
   16118              : 
   16119              :         case 257:
   16120              :           if (GET_MODE (x3) != E_V8QImode
   16121              :               || pattern798 (x2, 
   16122              : E_V8QImode, 
   16123              : E_V8HFmode, 
   16124              : E_V16QImode) != 0
   16125              :               || !
   16126              : #line 32575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16127              : (TARGET_AVX10_2))
   16128              :             return -1;
   16129              :           return 10569; /* *vcvtph2hf8sv8hf */
   16130              : 
   16131              :         default:
   16132              :           return -1;
   16133              :         }
   16134              : 
   16135              :     case 2:
   16136              :       x4 = XVECEXP (x3, 0, 0);
   16137              :       operands[1] = x4;
   16138              :       x6 = XVECEXP (x3, 0, 1);
   16139              :       operands[2] = x6;
   16140              :       x5 = XEXP (x2, 1);
   16141              :       operands[3] = x5;
   16142              :       switch (XINT (x3, 1))
   16143              :         {
   16144              :         case 151:
   16145              :           if (GET_MODE (x3) != E_V4HImode
   16146              :               || !register_operand (operands[0], E_V8HImode)
   16147              :               || GET_MODE (x2) != E_V8HImode
   16148              :               || !register_operand (operands[1], E_V4SFmode)
   16149              :               || !const_0_to_255_operand (operands[2], E_SImode)
   16150              :               || !const0_operand (operands[3], E_V4HImode)
   16151              :               || !
   16152              : #line 29846 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16153              : ((TARGET_F16C || TARGET_AVX512VL) && 1))
   16154              :             return -1;
   16155              :           return 9730; /* *vcvtps2ph */
   16156              : 
   16157              :         case 246:
   16158              :           if (pattern922 (x2) != 0
   16159              :               || !
   16160              : #line 32485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16161              : (TARGET_AVX10_2))
   16162              :             return -1;
   16163              :           return 10542; /* *vcvtbiasph2bf8v8hf */
   16164              : 
   16165              :         case 247:
   16166              :           if (pattern922 (x2) != 0
   16167              :               || !
   16168              : #line 32485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16169              : (TARGET_AVX10_2))
   16170              :             return -1;
   16171              :           return 10543; /* *vcvtbiasph2bf8sv8hf */
   16172              : 
   16173              :         case 248:
   16174              :           if (pattern922 (x2) != 0
   16175              :               || !
   16176              : #line 32485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16177              : (TARGET_AVX10_2))
   16178              :             return -1;
   16179              :           return 10544; /* *vcvtbiasph2hf8v8hf */
   16180              : 
   16181              :         case 249:
   16182              :           if (pattern922 (x2) != 0
   16183              :               || !
   16184              : #line 32485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16185              : (TARGET_AVX10_2))
   16186              :             return -1;
   16187              :           return 10545; /* *vcvtbiasph2hf8sv8hf */
   16188              : 
   16189              :         default:
   16190              :           return -1;
   16191              :         }
   16192              : 
   16193              :     default:
   16194              :       return -1;
   16195              :     }
   16196              : }
   16197              : 
   16198              :  int
   16199              : recog_279 (rtx x1 ATTRIBUTE_UNUSED,
   16200              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16201              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16202              : {
   16203              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16204              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   16205              :   int res ATTRIBUTE_UNUSED;
   16206              :   x2 = XEXP (x1, 1);
   16207              :   x3 = XEXP (x2, 1);
   16208              :   x4 = XVECEXP (x3, 0, 2);
   16209              :   if (GET_CODE (x4) != CONST_INT)
   16210              :     return -1;
   16211              :   x5 = XVECEXP (x3, 0, 3);
   16212              :   if (GET_CODE (x5) != CONST_INT)
   16213              :     return -1;
   16214              :   x6 = XVECEXP (x3, 0, 0);
   16215              :   switch (XWINT (x6, 0))
   16216              :     {
   16217              :     case 6L:
   16218              :       x7 = XVECEXP (x3, 0, 1);
   16219              :       if (XWINT (x7, 0) != 7L
   16220              :           || XWINT (x4, 0) != 2L
   16221              :           || XWINT (x5, 0) != 3L
   16222              :           || pattern1568 (x2) != 0
   16223              :           || !
   16224              : #line 11389 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16225              : (TARGET_SSE && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   16226              :         return -1;
   16227              :       return 5254; /* sse_movhlps */
   16228              : 
   16229              :     case 0L:
   16230              :       x7 = XVECEXP (x3, 0, 1);
   16231              :       switch (XWINT (x7, 0))
   16232              :         {
   16233              :         case 1L:
   16234              :           if (XWINT (x4, 0) != 4L
   16235              :               || XWINT (x5, 0) != 5L
   16236              :               || pattern1568 (x2) != 0
   16237              :               || !
   16238              : #line 11434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16239              : (TARGET_SSE && ix86_binary_operator_ok (UNKNOWN, V4SFmode, operands)))
   16240              :             return -1;
   16241              :           return 5255; /* sse_movlhps */
   16242              : 
   16243              :         case 4L:
   16244              :           switch (XWINT (x4, 0))
   16245              :             {
   16246              :             case 1L:
   16247              :               if (XWINT (x5, 0) != 5L
   16248              :                   || pattern1323 (x2, 
   16249              : E_V4SFmode, 
   16250              : E_V8SFmode) != 0
   16251              :                   || !
   16252              : #line 11651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16253              : (TARGET_SSE))
   16254              :                 return -1;
   16255              :               return 5270; /* vec_interleave_lowv4sf */
   16256              : 
   16257              :             case 2L:
   16258              :               if (XWINT (x5, 0) != 6L)
   16259              :                 return -1;
   16260              :               switch (GET_MODE (operands[0]))
   16261              :                 {
   16262              :                 case E_V4DFmode:
   16263              :                   if (!register_operand (operands[0], E_V4DFmode)
   16264              :                       || GET_MODE (x2) != E_V4DFmode)
   16265              :                     return -1;
   16266              :                   x8 = XEXP (x2, 0);
   16267              :                   if (GET_MODE (x8) != E_V8DFmode)
   16268              :                     return -1;
   16269              :                   if (nonimmediate_operand (operands[1], E_V4DFmode))
   16270              :                     {
   16271              :                       x9 = XEXP (x8, 1);
   16272              :                       if (rtx_equal_p (x9, operands[1])
   16273              :                           && 
   16274              : #line 13794 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16275              : (TARGET_AVX && 1))
   16276              :                         return 5423; /* avx_movddup256 */
   16277              :                     }
   16278              :                   if (!register_operand (operands[1], E_V4DFmode))
   16279              :                     return -1;
   16280              :                   x9 = XEXP (x8, 1);
   16281              :                   operands[2] = x9;
   16282              :                   if (!nonimmediate_operand (operands[2], E_V4DFmode)
   16283              :                       || !
   16284              : #line 13808 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16285              : (TARGET_AVX && 1))
   16286              :                     return -1;
   16287              :                   return 5425; /* avx_unpcklpd256 */
   16288              : 
   16289              :                 case E_V4DImode:
   16290              :                   if (pattern1631 (x2, 
   16291              : E_V4DImode, 
   16292              : E_V8DImode) != 0
   16293              :                       || !
   16294              : #line 14840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16295              : (TARGET_AVX2 && 1))
   16296              :                     return -1;
   16297              :                   return 7238; /* avx2_interleave_lowv4di */
   16298              : 
   16299              :                 default:
   16300              :                   return -1;
   16301              :                 }
   16302              : 
   16303              :             default:
   16304              :               return -1;
   16305              :             }
   16306              : 
   16307              :         case 0L:
   16308              :           if (XWINT (x4, 0) != 6L
   16309              :               || XWINT (x5, 0) != 6L
   16310              :               || pattern1569 (x2) != 0
   16311              :               || !
   16312              : #line 11741 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16313              : (TARGET_SSE3 && 1))
   16314              :             return -1;
   16315              :           return 5279; /* sse3_movsldup */
   16316              : 
   16317              :         default:
   16318              :           return -1;
   16319              :         }
   16320              : 
   16321              :     case 2L:
   16322              :       x7 = XVECEXP (x3, 0, 1);
   16323              :       if (XWINT (x7, 0) != 6L
   16324              :           || XWINT (x4, 0) != 3L
   16325              :           || XWINT (x5, 0) != 7L
   16326              :           || pattern1323 (x2, 
   16327              : E_V4SFmode, 
   16328              : E_V8SFmode) != 0
   16329              :           || !
   16330              : #line 11546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16331              : (TARGET_SSE && 1))
   16332              :         return -1;
   16333              :       return 5263; /* vec_interleave_highv4sf */
   16334              : 
   16335              :     case 1L:
   16336              :       if (XWINT (x5, 0) != 7L)
   16337              :         return -1;
   16338              :       x7 = XVECEXP (x3, 0, 1);
   16339              :       switch (XWINT (x7, 0))
   16340              :         {
   16341              :         case 1L:
   16342              :           if (XWINT (x4, 0) != 7L
   16343              :               || pattern1569 (x2) != 0
   16344              :               || !
   16345              : #line 11688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16346              : (TARGET_SSE3 && 1))
   16347              :             return -1;
   16348              :           return 5273; /* sse3_movshdup */
   16349              : 
   16350              :         case 5L:
   16351              :           if (XWINT (x4, 0) != 3L)
   16352              :             return -1;
   16353              :           x8 = XEXP (x2, 0);
   16354              :           x9 = XEXP (x8, 1);
   16355              :           operands[2] = x9;
   16356              :           switch (GET_MODE (operands[0]))
   16357              :             {
   16358              :             case E_V4DFmode:
   16359              :               if (pattern1425 (x2, 
   16360              : E_V4DFmode, 
   16361              : E_V8DFmode) != 0
   16362              :                   || !
   16363              : #line 13664 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16364              : (TARGET_AVX && 1))
   16365              :                 return -1;
   16366              :               return 5415; /* avx_unpckhpd256 */
   16367              : 
   16368              :             case E_V4DImode:
   16369              :               if (pattern1425 (x2, 
   16370              : E_V4DImode, 
   16371              : E_V8DImode) != 0
   16372              :                   || !
   16373              : #line 14790 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16374              : (TARGET_AVX2 && 1))
   16375              :                 return -1;
   16376              :               return 7232; /* avx2_interleave_highv4di */
   16377              : 
   16378              :             default:
   16379              :               return -1;
   16380              :             }
   16381              : 
   16382              :         default:
   16383              :           return -1;
   16384              :         }
   16385              : 
   16386              :     default:
   16387              :       return -1;
   16388              :     }
   16389              : }
   16390              : 
   16391              :  int
   16392              : recog_283 (rtx x1 ATTRIBUTE_UNUSED,
   16393              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16394              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16395              : {
   16396              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16397              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   16398              :   rtx x10, x11, x12, x13;
   16399              :   int res ATTRIBUTE_UNUSED;
   16400              :   x2 = XEXP (x1, 1);
   16401              :   x3 = XEXP (x2, 1);
   16402              :   x4 = XVECEXP (x3, 0, 0);
   16403              :   if (GET_CODE (x4) != CONST_INT)
   16404              :     return -1;
   16405              :   x5 = XVECEXP (x3, 0, 1);
   16406              :   if (GET_CODE (x5) == CONST_INT)
   16407              :     {
   16408              :       res = recog_282 (x1, insn, pnum_clobbers);
   16409              :       if (res >= 0)
   16410              :         return res;
   16411              :     }
   16412              :   operands[3] = x4;
   16413              :   x6 = XEXP (x2, 0);
   16414              :   x7 = XEXP (x6, 1);
   16415              :   operands[2] = x7;
   16416              :   operands[4] = x5;
   16417              :   x8 = XVECEXP (x3, 0, 2);
   16418              :   operands[5] = x8;
   16419              :   x9 = XVECEXP (x3, 0, 3);
   16420              :   operands[6] = x9;
   16421              :   x10 = XVECEXP (x3, 0, 4);
   16422              :   operands[7] = x10;
   16423              :   x11 = XVECEXP (x3, 0, 5);
   16424              :   operands[8] = x11;
   16425              :   x12 = XVECEXP (x3, 0, 6);
   16426              :   operands[9] = x12;
   16427              :   x13 = XVECEXP (x3, 0, 7);
   16428              :   operands[10] = x13;
   16429              :   switch (GET_MODE (operands[0]))
   16430              :     {
   16431              :     case E_V8SFmode:
   16432              :       if (pattern1425 (x2, 
   16433              : E_V8SFmode, 
   16434              : E_V16SFmode) != 0)
   16435              :         return -1;
   16436              :       if (const_0_to_3_operand (operands[3], E_VOIDmode)
   16437              :           && const_0_to_3_operand (operands[4], E_VOIDmode)
   16438              :           && const_8_to_11_operand (operands[5], E_VOIDmode)
   16439              :           && const_8_to_11_operand (operands[6], E_VOIDmode)
   16440              :           && const_4_to_7_operand (operands[7], E_VOIDmode)
   16441              :           && const_4_to_7_operand (operands[8], E_VOIDmode)
   16442              :           && const_12_to_15_operand (operands[9], E_VOIDmode)
   16443              :           && const_12_to_15_operand (operands[10], E_VOIDmode)
   16444              :           && 
   16445              : #line 11806 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16446              : (TARGET_AVX
   16447              :    && 1
   16448              :    && (INTVAL (operands[3]) == (INTVAL (operands[7]) - 4)
   16449              :        && INTVAL (operands[4]) == (INTVAL (operands[8]) - 4)
   16450              :        && INTVAL (operands[5]) == (INTVAL (operands[9]) - 4)
   16451              :        && INTVAL (operands[6]) == (INTVAL (operands[10]) - 4))))
   16452              :         return 5283; /* avx_shufps256_1 */
   16453              :       if (!const_0_to_7_operand (operands[3], E_VOIDmode)
   16454              :           || pattern1695 () != 0
   16455              :           || !
   16456              : #line 20673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16457              : (TARGET_AVX512VL
   16458              :    && (INTVAL (operands[3]) & 3) == 0
   16459              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   16460              :    && INTVAL (operands[3]) == INTVAL (operands[5]) - 2
   16461              :    && INTVAL (operands[3]) == INTVAL (operands[6]) - 3
   16462              :    && (INTVAL (operands[7]) & 3) == 0
   16463              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   16464              :    && INTVAL (operands[7]) == INTVAL (operands[9]) - 2
   16465              :    && INTVAL (operands[7]) == INTVAL (operands[10]) - 3))
   16466              :         return -1;
   16467              :       return 8471; /* avx512vl_shuf_f32x4_1 */
   16468              : 
   16469              :     case E_V8DFmode:
   16470              :       if (pattern1425 (x2, 
   16471              : E_V8DFmode, 
   16472              : E_V16DFmode) != 0)
   16473              :         return -1;
   16474              :       if (const_0_to_1_operand (operands[3], E_VOIDmode)
   16475              :           && const_8_to_9_operand (operands[4], E_VOIDmode)
   16476              :           && const_2_to_3_operand (operands[5], E_VOIDmode)
   16477              :           && const_10_to_11_operand (operands[6], E_VOIDmode)
   16478              :           && const_4_to_5_operand (operands[7], E_VOIDmode)
   16479              :           && const_12_to_13_operand (operands[8], E_VOIDmode)
   16480              :           && const_6_to_7_operand (operands[9], E_VOIDmode)
   16481              :           && const_14_to_15_operand (operands[10], E_VOIDmode)
   16482              :           && 
   16483              : #line 14674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16484              : (TARGET_AVX512F))
   16485              :         return 7227; /* avx512f_shufpd512_1 */
   16486              :       if (!const_0_to_7_operand (operands[3], E_VOIDmode)
   16487              :           || pattern1695 () != 0
   16488              :           || !
   16489              : #line 20575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16490              : (TARGET_AVX512F
   16491              :    && (INTVAL (operands[3]) & 1) == 0
   16492              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   16493              :    && (INTVAL (operands[5]) & 1) == 0
   16494              :    && INTVAL (operands[5]) == INTVAL (operands[6]) - 1
   16495              :    && (INTVAL (operands[7]) & 1) == 0
   16496              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   16497              :    && (INTVAL (operands[9]) & 1) == 0
   16498              :    && INTVAL (operands[9]) == INTVAL (operands[10]) - 1))
   16499              :         return -1;
   16500              :       return 8461; /* avx512f_shuf_f64x2_1 */
   16501              : 
   16502              :     case E_V8DImode:
   16503              :       if (pattern1696 (x2, 
   16504              : E_V8DImode, 
   16505              : E_V16DImode) != 0
   16506              :           || !
   16507              : #line 20575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16508              : (TARGET_AVX512F
   16509              :    && (INTVAL (operands[3]) & 1) == 0
   16510              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   16511              :    && (INTVAL (operands[5]) & 1) == 0
   16512              :    && INTVAL (operands[5]) == INTVAL (operands[6]) - 1
   16513              :    && (INTVAL (operands[7]) & 1) == 0
   16514              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   16515              :    && (INTVAL (operands[9]) & 1) == 0
   16516              :    && INTVAL (operands[9]) == INTVAL (operands[10]) - 1))
   16517              :         return -1;
   16518              :       return 8463; /* avx512f_shuf_i64x2_1 */
   16519              : 
   16520              :     case E_V8SImode:
   16521              :       if (pattern1696 (x2, 
   16522              : E_V8SImode, 
   16523              : E_V16SImode) != 0
   16524              :           || !
   16525              : #line 20673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16526              : (TARGET_AVX512VL
   16527              :    && (INTVAL (operands[3]) & 3) == 0
   16528              :    && INTVAL (operands[3]) == INTVAL (operands[4]) - 1
   16529              :    && INTVAL (operands[3]) == INTVAL (operands[5]) - 2
   16530              :    && INTVAL (operands[3]) == INTVAL (operands[6]) - 3
   16531              :    && (INTVAL (operands[7]) & 3) == 0
   16532              :    && INTVAL (operands[7]) == INTVAL (operands[8]) - 1
   16533              :    && INTVAL (operands[7]) == INTVAL (operands[9]) - 2
   16534              :    && INTVAL (operands[7]) == INTVAL (operands[10]) - 3))
   16535              :         return -1;
   16536              :       return 8469; /* avx512vl_shuf_i32x4_1 */
   16537              : 
   16538              :     default:
   16539              :       return -1;
   16540              :     }
   16541              : }
   16542              : 
   16543              :  int
   16544              : recog_286 (rtx x1 ATTRIBUTE_UNUSED,
   16545              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16546              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16547              : {
   16548              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16549              :   rtx x2, x3, x4, x5, x6, x7;
   16550              :   int res ATTRIBUTE_UNUSED;
   16551              :   x2 = XEXP (x1, 1);
   16552              :   x3 = XEXP (x2, 1);
   16553              :   x4 = XVECEXP (x3, 0, 0);
   16554              :   if (GET_CODE (x4) != CONST_INT)
   16555              :     return -1;
   16556              :   x5 = XVECEXP (x3, 0, 1);
   16557              :   if (GET_CODE (x5) == CONST_INT)
   16558              :     {
   16559              :       x6 = XEXP (x2, 0);
   16560              :       x7 = XEXP (x6, 1);
   16561              :       operands[2] = x7;
   16562              :       switch (XWINT (x4, 0))
   16563              :         {
   16564              :         case 1L:
   16565              :           if (XWINT (x5, 0) == 3L)
   16566              :             {
   16567              :               switch (GET_MODE (operands[0]))
   16568              :                 {
   16569              :                 case E_V2DFmode:
   16570              :                   if (pattern1493 (x2, 
   16571              : E_V2DFmode, 
   16572              : E_V4DFmode) == 0
   16573              :                       && 
   16574              : #line 13737 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16575              : (TARGET_SSE2 && ix86_vec_interleave_v2df_operator_ok (operands, 1)))
   16576              :                     return 5418; /* *vec_interleave_highv2df */
   16577              :                   break;
   16578              : 
   16579              :                 case E_V2DImode:
   16580              :                   if (pattern1494 (x2, 
   16581              : E_V2DImode, 
   16582              : E_V4DImode) == 0
   16583              :                       && 
   16584              : #line 14820 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16585              : (TARGET_SSE2 && 1))
   16586              :                     return 7236; /* vec_interleave_highv2di */
   16587              :                   break;
   16588              : 
   16589              :                 default:
   16590              :                   break;
   16591              :                 }
   16592              :             }
   16593              :           break;
   16594              : 
   16595              :         case 0L:
   16596              :           if (XWINT (x5, 0) == 2L)
   16597              :             {
   16598              :               switch (GET_MODE (operands[0]))
   16599              :                 {
   16600              :                 case E_V2DFmode:
   16601              :                   if (pattern1493 (x2, 
   16602              : E_V2DFmode, 
   16603              : E_V4DFmode) == 0
   16604              :                       && 
   16605              : #line 13880 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16606              : (TARGET_SSE2 && ix86_vec_interleave_v2df_operator_ok (operands, 0)))
   16607              :                     return 5428; /* *vec_interleave_lowv2df */
   16608              :                   break;
   16609              : 
   16610              :                 case E_V2DImode:
   16611              :                   if (pattern1494 (x2, 
   16612              : E_V2DImode, 
   16613              : E_V4DImode) == 0
   16614              :                       && 
   16615              : #line 14870 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16616              : (TARGET_SSE2 && 1))
   16617              :                     return 7242; /* vec_interleave_lowv2di */
   16618              :                   break;
   16619              : 
   16620              :                 default:
   16621              :                   break;
   16622              :                 }
   16623              :             }
   16624              :           break;
   16625              : 
   16626              :         default:
   16627              :           break;
   16628              :         }
   16629              :     }
   16630              :   operands[3] = x4;
   16631              :   if (!const_0_to_1_operand (operands[3], E_VOIDmode))
   16632              :     return -1;
   16633              :   x6 = XEXP (x2, 0);
   16634              :   x7 = XEXP (x6, 1);
   16635              :   operands[2] = x7;
   16636              :   operands[4] = x5;
   16637              :   if (!const_2_to_3_operand (operands[4], E_VOIDmode))
   16638              :     return -1;
   16639              :   switch (GET_MODE (operands[0]))
   16640              :     {
   16641              :     case E_V2DImode:
   16642              :       if (pattern1494 (x2, 
   16643              : E_V2DImode, 
   16644              : E_V4DImode) != 0
   16645              :           || !
   16646              : #line 14888 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16647              : (TARGET_SSE2))
   16648              :         return -1;
   16649              :       return 7244; /* sse2_shufpd_v2di */
   16650              : 
   16651              :     case E_V2DFmode:
   16652              :       if (pattern1494 (x2, 
   16653              : E_V2DFmode, 
   16654              : E_V4DFmode) != 0
   16655              :           || !
   16656              : #line 14888 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16657              : (TARGET_SSE2))
   16658              :         return -1;
   16659              :       return 7245; /* sse2_shufpd_v2df */
   16660              : 
   16661              :     default:
   16662              :       return -1;
   16663              :     }
   16664              : }
   16665              : 
   16666              :  int
   16667              : recog_288 (rtx x1 ATTRIBUTE_UNUSED,
   16668              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16669              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16670              : {
   16671              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16672              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   16673              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   16674              :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
   16675              :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
   16676              :   rtx x34, x35, x36, x37;
   16677              :   int res ATTRIBUTE_UNUSED;
   16678              :   x2 = XEXP (x1, 1);
   16679              :   x3 = XEXP (x2, 1);
   16680              :   if (pattern683 (x3) != 0)
   16681              :     return -1;
   16682              :   x4 = XEXP (x2, 0);
   16683              :   x5 = XEXP (x4, 1);
   16684              :   operands[2] = x5;
   16685              :   x6 = XVECEXP (x3, 0, 0);
   16686              :   switch (XWINT (x6, 0))
   16687              :     {
   16688              :     case 8L:
   16689              :       x7 = XVECEXP (x3, 0, 1);
   16690              :       if (XWINT (x7, 0) != 40L)
   16691              :         return -1;
   16692              :       x8 = XVECEXP (x3, 0, 2);
   16693              :       if (XWINT (x8, 0) != 9L)
   16694              :         return -1;
   16695              :       x9 = XVECEXP (x3, 0, 3);
   16696              :       if (XWINT (x9, 0) != 41L)
   16697              :         return -1;
   16698              :       x10 = XVECEXP (x3, 0, 4);
   16699              :       if (XWINT (x10, 0) != 10L)
   16700              :         return -1;
   16701              :       x11 = XVECEXP (x3, 0, 5);
   16702              :       if (XWINT (x11, 0) != 42L)
   16703              :         return -1;
   16704              :       x12 = XVECEXP (x3, 0, 6);
   16705              :       if (XWINT (x12, 0) != 11L)
   16706              :         return -1;
   16707              :       x13 = XVECEXP (x3, 0, 7);
   16708              :       if (XWINT (x13, 0) != 43L
   16709              :           || pattern1913 (x3) != 0)
   16710              :         return -1;
   16711              :       x14 = XVECEXP (x3, 0, 16);
   16712              :       if (XWINT (x14, 0) != 24L)
   16713              :         return -1;
   16714              :       x15 = XVECEXP (x3, 0, 17);
   16715              :       if (XWINT (x15, 0) != 56L)
   16716              :         return -1;
   16717              :       x16 = XVECEXP (x3, 0, 18);
   16718              :       if (XWINT (x16, 0) != 25L)
   16719              :         return -1;
   16720              :       x17 = XVECEXP (x3, 0, 19);
   16721              :       if (XWINT (x17, 0) != 57L)
   16722              :         return -1;
   16723              :       x18 = XVECEXP (x3, 0, 20);
   16724              :       if (XWINT (x18, 0) != 26L)
   16725              :         return -1;
   16726              :       x19 = XVECEXP (x3, 0, 21);
   16727              :       if (XWINT (x19, 0) != 58L)
   16728              :         return -1;
   16729              :       x20 = XVECEXP (x3, 0, 22);
   16730              :       if (XWINT (x20, 0) != 27L)
   16731              :         return -1;
   16732              :       x21 = XVECEXP (x3, 0, 23);
   16733              :       if (XWINT (x21, 0) != 59L
   16734              :           || pattern1919 (x3) != 0
   16735              :           || pattern1425 (x2, 
   16736              : E_V32QImode, 
   16737              : E_V64QImode) != 0
   16738              :           || !
   16739              : #line 19790 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16740              : (TARGET_AVX2 && 1 && 1))
   16741              :         return -1;
   16742              :       return 8365; /* avx2_interleave_highv32qi */
   16743              : 
   16744              :     case 0L:
   16745              :       x7 = XVECEXP (x3, 0, 1);
   16746              :       if (XWINT (x7, 0) != 32L)
   16747              :         return -1;
   16748              :       x8 = XVECEXP (x3, 0, 2);
   16749              :       if (XWINT (x8, 0) != 1L)
   16750              :         return -1;
   16751              :       x9 = XVECEXP (x3, 0, 3);
   16752              :       if (XWINT (x9, 0) != 33L)
   16753              :         return -1;
   16754              :       x10 = XVECEXP (x3, 0, 4);
   16755              :       if (XWINT (x10, 0) != 2L)
   16756              :         return -1;
   16757              :       x11 = XVECEXP (x3, 0, 5);
   16758              :       if (XWINT (x11, 0) != 34L)
   16759              :         return -1;
   16760              :       x12 = XVECEXP (x3, 0, 6);
   16761              :       if (XWINT (x12, 0) != 3L)
   16762              :         return -1;
   16763              :       x13 = XVECEXP (x3, 0, 7);
   16764              :       if (XWINT (x13, 0) != 35L)
   16765              :         return -1;
   16766              :       x14 = XVECEXP (x3, 0, 16);
   16767              :       if (XWINT (x14, 0) != 16L)
   16768              :         return -1;
   16769              :       x15 = XVECEXP (x3, 0, 17);
   16770              :       if (XWINT (x15, 0) != 48L)
   16771              :         return -1;
   16772              :       x16 = XVECEXP (x3, 0, 18);
   16773              :       if (XWINT (x16, 0) != 17L)
   16774              :         return -1;
   16775              :       x17 = XVECEXP (x3, 0, 19);
   16776              :       if (XWINT (x17, 0) != 49L)
   16777              :         return -1;
   16778              :       x18 = XVECEXP (x3, 0, 20);
   16779              :       if (XWINT (x18, 0) != 18L)
   16780              :         return -1;
   16781              :       x19 = XVECEXP (x3, 0, 21);
   16782              :       if (XWINT (x19, 0) != 50L)
   16783              :         return -1;
   16784              :       x20 = XVECEXP (x3, 0, 22);
   16785              :       if (XWINT (x20, 0) != 19L)
   16786              :         return -1;
   16787              :       x21 = XVECEXP (x3, 0, 23);
   16788              :       if (XWINT (x21, 0) != 51L)
   16789              :         return -1;
   16790              :       x22 = XVECEXP (x3, 0, 8);
   16791              :       switch (XWINT (x22, 0))
   16792              :         {
   16793              :         case 4L:
   16794              :           x23 = XVECEXP (x3, 0, 9);
   16795              :           if (XWINT (x23, 0) != 36L)
   16796              :             return -1;
   16797              :           x24 = XVECEXP (x3, 0, 10);
   16798              :           if (XWINT (x24, 0) != 5L)
   16799              :             return -1;
   16800              :           x25 = XVECEXP (x3, 0, 11);
   16801              :           if (XWINT (x25, 0) != 37L)
   16802              :             return -1;
   16803              :           x26 = XVECEXP (x3, 0, 12);
   16804              :           if (XWINT (x26, 0) != 6L)
   16805              :             return -1;
   16806              :           x27 = XVECEXP (x3, 0, 13);
   16807              :           if (XWINT (x27, 0) != 38L)
   16808              :             return -1;
   16809              :           x28 = XVECEXP (x3, 0, 14);
   16810              :           if (XWINT (x28, 0) != 7L)
   16811              :             return -1;
   16812              :           x29 = XVECEXP (x3, 0, 15);
   16813              :           if (XWINT (x29, 0) != 39L)
   16814              :             return -1;
   16815              :           x30 = XVECEXP (x3, 0, 24);
   16816              :           if (XWINT (x30, 0) != 20L)
   16817              :             return -1;
   16818              :           x31 = XVECEXP (x3, 0, 25);
   16819              :           if (XWINT (x31, 0) != 52L)
   16820              :             return -1;
   16821              :           x32 = XVECEXP (x3, 0, 26);
   16822              :           if (XWINT (x32, 0) != 21L)
   16823              :             return -1;
   16824              :           x33 = XVECEXP (x3, 0, 27);
   16825              :           if (XWINT (x33, 0) != 53L)
   16826              :             return -1;
   16827              :           x34 = XVECEXP (x3, 0, 28);
   16828              :           if (XWINT (x34, 0) != 22L)
   16829              :             return -1;
   16830              :           x35 = XVECEXP (x3, 0, 29);
   16831              :           if (XWINT (x35, 0) != 54L)
   16832              :             return -1;
   16833              :           x36 = XVECEXP (x3, 0, 30);
   16834              :           if (XWINT (x36, 0) != 23L)
   16835              :             return -1;
   16836              :           x37 = XVECEXP (x3, 0, 31);
   16837              :           if (XWINT (x37, 0) != 55L
   16838              :               || pattern1425 (x2, 
   16839              : E_V32QImode, 
   16840              : E_V64QImode) != 0
   16841              :               || !
   16842              : #line 19886 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16843              : (TARGET_AVX2 && 1 && 1))
   16844              :             return -1;
   16845              :           return 8371; /* avx2_interleave_lowv32qi */
   16846              : 
   16847              :         case 8L:
   16848              :           x23 = XVECEXP (x3, 0, 9);
   16849              :           if (XWINT (x23, 0) != 40L)
   16850              :             return -1;
   16851              :           x24 = XVECEXP (x3, 0, 10);
   16852              :           if (XWINT (x24, 0) != 9L)
   16853              :             return -1;
   16854              :           x25 = XVECEXP (x3, 0, 11);
   16855              :           if (XWINT (x25, 0) != 41L)
   16856              :             return -1;
   16857              :           x26 = XVECEXP (x3, 0, 12);
   16858              :           if (XWINT (x26, 0) != 10L)
   16859              :             return -1;
   16860              :           x27 = XVECEXP (x3, 0, 13);
   16861              :           if (XWINT (x27, 0) != 42L)
   16862              :             return -1;
   16863              :           x28 = XVECEXP (x3, 0, 14);
   16864              :           if (XWINT (x28, 0) != 11L)
   16865              :             return -1;
   16866              :           x29 = XVECEXP (x3, 0, 15);
   16867              :           if (XWINT (x29, 0) != 43L)
   16868              :             return -1;
   16869              :           x30 = XVECEXP (x3, 0, 24);
   16870              :           if (XWINT (x30, 0) != 24L)
   16871              :             return -1;
   16872              :           x31 = XVECEXP (x3, 0, 25);
   16873              :           if (XWINT (x31, 0) != 56L)
   16874              :             return -1;
   16875              :           x32 = XVECEXP (x3, 0, 26);
   16876              :           if (XWINT (x32, 0) != 25L)
   16877              :             return -1;
   16878              :           x33 = XVECEXP (x3, 0, 27);
   16879              :           if (XWINT (x33, 0) != 57L)
   16880              :             return -1;
   16881              :           x34 = XVECEXP (x3, 0, 28);
   16882              :           if (XWINT (x34, 0) != 26L)
   16883              :             return -1;
   16884              :           x35 = XVECEXP (x3, 0, 29);
   16885              :           if (XWINT (x35, 0) != 58L)
   16886              :             return -1;
   16887              :           x36 = XVECEXP (x3, 0, 30);
   16888              :           if (XWINT (x36, 0) != 27L)
   16889              :             return -1;
   16890              :           x37 = XVECEXP (x3, 0, 31);
   16891              :           if (XWINT (x37, 0) != 59L)
   16892              :             return -1;
   16893              :           switch (GET_MODE (operands[0]))
   16894              :             {
   16895              :             case E_V32HImode:
   16896              :               if (pattern1425 (x2, 
   16897              : E_V32HImode, 
   16898              : E_V64HImode) != 0
   16899              :                   || !
   16900              : #line 20006 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16901              : (TARGET_AVX512BW))
   16902              :                 return -1;
   16903              :               return 8393; /* *avx512bw_interleave_lowv32hi */
   16904              : 
   16905              :             case E_V32HFmode:
   16906              :               if (pattern1425 (x2, 
   16907              : E_V32HFmode, 
   16908              : E_V64HFmode) != 0
   16909              :                   || !
   16910              : #line 20006 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16911              : (TARGET_AVX512BW))
   16912              :                 return -1;
   16913              :               return 8395; /* *avx512bw_interleave_lowv32hf */
   16914              : 
   16915              :             case E_V32BFmode:
   16916              :               if (pattern1425 (x2, 
   16917              : E_V32BFmode, 
   16918              : E_V64BFmode) != 0
   16919              :                   || !
   16920              : #line 20006 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16921              : (TARGET_AVX512BW))
   16922              :                 return -1;
   16923              :               return 8397; /* *avx512bw_interleave_lowv32bf */
   16924              : 
   16925              :             default:
   16926              :               return -1;
   16927              :             }
   16928              : 
   16929              :         default:
   16930              :           return -1;
   16931              :         }
   16932              : 
   16933              :     case 4L:
   16934              :       x7 = XVECEXP (x3, 0, 1);
   16935              :       if (XWINT (x7, 0) != 36L)
   16936              :         return -1;
   16937              :       x8 = XVECEXP (x3, 0, 2);
   16938              :       if (XWINT (x8, 0) != 5L)
   16939              :         return -1;
   16940              :       x9 = XVECEXP (x3, 0, 3);
   16941              :       if (XWINT (x9, 0) != 37L)
   16942              :         return -1;
   16943              :       x10 = XVECEXP (x3, 0, 4);
   16944              :       if (XWINT (x10, 0) != 6L)
   16945              :         return -1;
   16946              :       x11 = XVECEXP (x3, 0, 5);
   16947              :       if (XWINT (x11, 0) != 38L)
   16948              :         return -1;
   16949              :       x12 = XVECEXP (x3, 0, 6);
   16950              :       if (XWINT (x12, 0) != 7L)
   16951              :         return -1;
   16952              :       x13 = XVECEXP (x3, 0, 7);
   16953              :       if (XWINT (x13, 0) != 39L
   16954              :           || pattern1913 (x3) != 0)
   16955              :         return -1;
   16956              :       x14 = XVECEXP (x3, 0, 16);
   16957              :       if (XWINT (x14, 0) != 20L)
   16958              :         return -1;
   16959              :       x15 = XVECEXP (x3, 0, 17);
   16960              :       if (XWINT (x15, 0) != 52L)
   16961              :         return -1;
   16962              :       x16 = XVECEXP (x3, 0, 18);
   16963              :       if (XWINT (x16, 0) != 21L)
   16964              :         return -1;
   16965              :       x17 = XVECEXP (x3, 0, 19);
   16966              :       if (XWINT (x17, 0) != 53L)
   16967              :         return -1;
   16968              :       x18 = XVECEXP (x3, 0, 20);
   16969              :       if (XWINT (x18, 0) != 22L)
   16970              :         return -1;
   16971              :       x19 = XVECEXP (x3, 0, 21);
   16972              :       if (XWINT (x19, 0) != 54L)
   16973              :         return -1;
   16974              :       x20 = XVECEXP (x3, 0, 22);
   16975              :       if (XWINT (x20, 0) != 23L)
   16976              :         return -1;
   16977              :       x21 = XVECEXP (x3, 0, 23);
   16978              :       if (XWINT (x21, 0) != 55L
   16979              :           || pattern1919 (x3) != 0)
   16980              :         return -1;
   16981              :       switch (GET_MODE (operands[0]))
   16982              :         {
   16983              :         case E_V32HImode:
   16984              :           if (pattern1425 (x2, 
   16985              : E_V32HImode, 
   16986              : E_V64HImode) != 0
   16987              :               || !
   16988              : #line 19938 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16989              : (TARGET_AVX512BW))
   16990              :             return -1;
   16991              :           return 8375; /* avx512bw_interleave_highv32hi */
   16992              : 
   16993              :         case E_V32HFmode:
   16994              :           if (pattern1425 (x2, 
   16995              : E_V32HFmode, 
   16996              : E_V64HFmode) != 0
   16997              :               || !
   16998              : #line 19938 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16999              : (TARGET_AVX512BW))
   17000              :             return -1;
   17001              :           return 8377; /* avx512bw_interleave_highv32hf */
   17002              : 
   17003              :         case E_V32BFmode:
   17004              :           if (pattern1425 (x2, 
   17005              : E_V32BFmode, 
   17006              : E_V64BFmode) != 0
   17007              :               || !
   17008              : #line 19938 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17009              : (TARGET_AVX512BW))
   17010              :             return -1;
   17011              :           return 8379; /* avx512bw_interleave_highv32bf */
   17012              : 
   17013              :         default:
   17014              :           return -1;
   17015              :         }
   17016              : 
   17017              :     default:
   17018              :       return -1;
   17019              :     }
   17020              : }
   17021              : 
   17022              :  int
   17023              : recog_298 (rtx x1 ATTRIBUTE_UNUSED,
   17024              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   17025              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   17026              : {
   17027              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   17028              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   17029              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   17030              :   int res ATTRIBUTE_UNUSED;
   17031              :   x2 = XEXP (x1, 1);
   17032              :   x3 = XEXP (x2, 1);
   17033              :   x4 = XVECEXP (x3, 0, 1);
   17034              :   operands[3] = x4;
   17035              :   x5 = XVECEXP (x3, 0, 2);
   17036              :   operands[4] = x5;
   17037              :   x6 = XVECEXP (x3, 0, 3);
   17038              :   operands[5] = x6;
   17039              :   x7 = XVECEXP (x3, 0, 5);
   17040              :   operands[7] = x7;
   17041              :   x8 = XVECEXP (x3, 0, 6);
   17042              :   operands[8] = x8;
   17043              :   x9 = XVECEXP (x3, 0, 7);
   17044              :   operands[9] = x9;
   17045              :   x10 = XVECEXP (x3, 0, 8);
   17046              :   operands[10] = x10;
   17047              :   x11 = XVECEXP (x3, 0, 9);
   17048              :   operands[11] = x11;
   17049              :   x12 = XVECEXP (x3, 0, 10);
   17050              :   operands[12] = x12;
   17051              :   x13 = XVECEXP (x3, 0, 11);
   17052              :   operands[13] = x13;
   17053              :   x14 = XVECEXP (x3, 0, 12);
   17054              :   operands[14] = x14;
   17055              :   x15 = XVECEXP (x3, 0, 13);
   17056              :   operands[15] = x15;
   17057              :   x16 = XVECEXP (x3, 0, 14);
   17058              :   operands[16] = x16;
   17059              :   x17 = XVECEXP (x3, 0, 15);
   17060              :   operands[17] = x17;
   17061              :   switch (GET_MODE (operands[0]))
   17062              :     {
   17063              :     case E_V16SFmode:
   17064              :       if (!register_operand (operands[0], E_V16SFmode)
   17065              :           || GET_MODE (x2) != E_V16SFmode
   17066              :           || !register_operand (operands[1], E_V16SFmode)
   17067              :           || pattern1861 () != 0
   17068              :           || !
   17069              : #line 20805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17070              : (TARGET_AVX512F
   17071              :    && (INTVAL (operands[2]) & 3) == 0
   17072              :    && INTVAL (operands[2]) == INTVAL (operands[3]) - 1
   17073              :    && INTVAL (operands[2]) == INTVAL (operands[4]) - 2
   17074              :    && INTVAL (operands[2]) == INTVAL (operands[5]) - 3
   17075              :    && (INTVAL (operands[6]) & 3) == 0
   17076              :    && INTVAL (operands[6]) == INTVAL (operands[7]) - 1
   17077              :    && INTVAL (operands[6]) == INTVAL (operands[8]) - 2
   17078              :    && INTVAL (operands[6]) == INTVAL (operands[9]) - 3
   17079              :    && (INTVAL (operands[10]) & 3) == 0
   17080              :    && INTVAL (operands[10]) == INTVAL (operands[11]) - 1
   17081              :    && INTVAL (operands[10]) == INTVAL (operands[12]) - 2
   17082              :    && INTVAL (operands[10]) == INTVAL (operands[13]) - 3
   17083              :    && (INTVAL (operands[14]) & 3) == 0
   17084              :    && INTVAL (operands[14]) == INTVAL (operands[15]) - 1
   17085              :    && INTVAL (operands[14]) == INTVAL (operands[16]) - 2
   17086              :    && INTVAL (operands[14]) == INTVAL (operands[17]) - 3))
   17087              :         return -1;
   17088              :       return 8477; /* *avx512f_shuf_f32x4_1_1 */
   17089              : 
   17090              :     case E_V16SImode:
   17091              :       if (!register_operand (operands[0], E_V16SImode)
   17092              :           || GET_MODE (x2) != E_V16SImode)
   17093              :         return -1;
   17094              :       if (register_operand (operands[1], E_V16SImode)
   17095              :           && pattern1861 () == 0
   17096              :           && 
   17097              : #line 20805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17098              : (TARGET_AVX512F
   17099              :    && (INTVAL (operands[2]) & 3) == 0
   17100              :    && INTVAL (operands[2]) == INTVAL (operands[3]) - 1
   17101              :    && INTVAL (operands[2]) == INTVAL (operands[4]) - 2
   17102              :    && INTVAL (operands[2]) == INTVAL (operands[5]) - 3
   17103              :    && (INTVAL (operands[6]) & 3) == 0
   17104              :    && INTVAL (operands[6]) == INTVAL (operands[7]) - 1
   17105              :    && INTVAL (operands[6]) == INTVAL (operands[8]) - 2
   17106              :    && INTVAL (operands[6]) == INTVAL (operands[9]) - 3
   17107              :    && (INTVAL (operands[10]) & 3) == 0
   17108              :    && INTVAL (operands[10]) == INTVAL (operands[11]) - 1
   17109              :    && INTVAL (operands[10]) == INTVAL (operands[12]) - 2
   17110              :    && INTVAL (operands[10]) == INTVAL (operands[13]) - 3
   17111              :    && (INTVAL (operands[14]) & 3) == 0
   17112              :    && INTVAL (operands[14]) == INTVAL (operands[15]) - 1
   17113              :    && INTVAL (operands[14]) == INTVAL (operands[16]) - 2
   17114              :    && INTVAL (operands[14]) == INTVAL (operands[17]) - 3))
   17115              :         return 8479; /* *avx512f_shuf_i32x4_1_1 */
   17116              :       if (!nonimmediate_operand (operands[1], E_V16SImode)
   17117              :           || pattern1728 () != 0
   17118              :           || !const_8_to_11_operand (operands[10], E_VOIDmode)
   17119              :           || !const_8_to_11_operand (operands[11], E_VOIDmode)
   17120              :           || !const_8_to_11_operand (operands[12], E_VOIDmode)
   17121              :           || !const_8_to_11_operand (operands[13], E_VOIDmode)
   17122              :           || !const_12_to_15_operand (operands[14], E_VOIDmode)
   17123              :           || !const_12_to_15_operand (operands[15], E_VOIDmode)
   17124              :           || !const_12_to_15_operand (operands[16], E_VOIDmode)
   17125              :           || !const_12_to_15_operand (operands[17], E_VOIDmode)
   17126              :           || !
   17127              : #line 20887 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17128              : (TARGET_AVX512F
   17129              :    && INTVAL (operands[2]) + 4 == INTVAL (operands[6])
   17130              :    && INTVAL (operands[3]) + 4 == INTVAL (operands[7])
   17131              :    && INTVAL (operands[4]) + 4 == INTVAL (operands[8])
   17132              :    && INTVAL (operands[5]) + 4 == INTVAL (operands[9])
   17133              :    && INTVAL (operands[2]) + 8 == INTVAL (operands[10])
   17134              :    && INTVAL (operands[3]) + 8 == INTVAL (operands[11])
   17135              :    && INTVAL (operands[4]) + 8 == INTVAL (operands[12])
   17136              :    && INTVAL (operands[5]) + 8 == INTVAL (operands[13])
   17137              :    && INTVAL (operands[2]) + 12 == INTVAL (operands[14])
   17138              :    && INTVAL (operands[3]) + 12 == INTVAL (operands[15])
   17139              :    && INTVAL (operands[4]) + 12 == INTVAL (operands[16])
   17140              :    && INTVAL (operands[5]) + 12 == INTVAL (operands[17])))
   17141              :         return -1;
   17142              :       return 8481; /* avx512f_pshufd_1 */
   17143              : 
   17144              :     default:
   17145              :       return -1;
   17146              :     }
   17147              : }
   17148              : 
   17149              :  int
   17150              : recog_309 (rtx x1 ATTRIBUTE_UNUSED,
   17151              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   17152              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   17153              : {
   17154              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   17155              :   rtx x2, x3, x4;
   17156              :   int res ATTRIBUTE_UNUSED;
   17157              :   x2 = XEXP (x1, 1);
   17158              :   x3 = XEXP (x2, 0);
   17159              :   x4 = XEXP (x3, 0);
   17160              :   switch (GET_CODE (x4))
   17161              :     {
   17162              :     case REG:
   17163              :     case SUBREG:
   17164              :     case MEM:
   17165              :     case NOT:
   17166              :       switch (pattern535 (x2))
   17167              :         {
   17168              :         case 0:
   17169              :           if (!(
   17170              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17171              : ((64 == 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              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17183              : (TARGET_AVX512F)))
   17184              :             return -1;
   17185              :           return 5556; /* *avx512bw_vpternlogv64qi_1 */
   17186              : 
   17187              :         case 1:
   17188              :           if (!(
   17189              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17190              : ((32 == 64 || TARGET_AVX512VL
   17191              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17192              :    && ix86_pre_reload_split ()
   17193              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17194              :                     STRIP_UNARY (operands[4]))
   17195              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17196              :                        STRIP_UNARY (operands[4]))
   17197              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17198              :                        STRIP_UNARY (operands[3]))
   17199              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17200              :                        STRIP_UNARY (operands[3])))) && 
   17201              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17202              : (TARGET_AVX)))
   17203              :             return -1;
   17204              :           return 5583; /* *avx512vl_vpternlogv32qi_1 */
   17205              : 
   17206              :         case 2:
   17207              :           if (!
   17208              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17209              : ((16 == 64 || TARGET_AVX512VL
   17210              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17211              :    && ix86_pre_reload_split ()
   17212              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17213              :                     STRIP_UNARY (operands[4]))
   17214              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17215              :                        STRIP_UNARY (operands[4]))
   17216              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17217              :                        STRIP_UNARY (operands[3]))
   17218              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17219              :                        STRIP_UNARY (operands[3])))))
   17220              :             return -1;
   17221              :           return 5610; /* *avx512vl_vpternlogv16qi_1 */
   17222              : 
   17223              :         case 3:
   17224              :           if (!(
   17225              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17226              : ((64 == 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              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17238              : (TARGET_AVX512F)))
   17239              :             return -1;
   17240              :           return 5637; /* *avx512bw_vpternlogv32hi_1 */
   17241              : 
   17242              :         case 4:
   17243              :           if (!(
   17244              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17245              : ((32 == 64 || TARGET_AVX512VL
   17246              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17247              :    && ix86_pre_reload_split ()
   17248              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17249              :                     STRIP_UNARY (operands[4]))
   17250              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17251              :                        STRIP_UNARY (operands[4]))
   17252              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17253              :                        STRIP_UNARY (operands[3]))
   17254              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17255              :                        STRIP_UNARY (operands[3])))) && 
   17256              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17257              : (TARGET_AVX)))
   17258              :             return -1;
   17259              :           return 5664; /* *avx512vl_vpternlogv16hi_1 */
   17260              : 
   17261              :         case 5:
   17262              :           if (!
   17263              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17264              : ((16 == 64 || TARGET_AVX512VL
   17265              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17266              :    && ix86_pre_reload_split ()
   17267              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17268              :                     STRIP_UNARY (operands[4]))
   17269              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17270              :                        STRIP_UNARY (operands[4]))
   17271              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17272              :                        STRIP_UNARY (operands[3]))
   17273              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17274              :                        STRIP_UNARY (operands[3])))))
   17275              :             return -1;
   17276              :           return 5691; /* *avx512vl_vpternlogv8hi_1 */
   17277              : 
   17278              :         case 6:
   17279              :           if (!(
   17280              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17281              : ((64 == 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              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17293              : (TARGET_AVX512F)))
   17294              :             return -1;
   17295              :           return 5718; /* *avx512f_vpternlogv16si_1 */
   17296              : 
   17297              :         case 7:
   17298              :           if (!(
   17299              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17300              : ((32 == 64 || TARGET_AVX512VL
   17301              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17302              :    && ix86_pre_reload_split ()
   17303              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17304              :                     STRIP_UNARY (operands[4]))
   17305              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17306              :                        STRIP_UNARY (operands[4]))
   17307              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17308              :                        STRIP_UNARY (operands[3]))
   17309              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17310              :                        STRIP_UNARY (operands[3])))) && 
   17311              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17312              : (TARGET_AVX)))
   17313              :             return -1;
   17314              :           return 5745; /* *avx512vl_vpternlogv8si_1 */
   17315              : 
   17316              :         case 8:
   17317              :           if (!
   17318              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17319              : ((16 == 64 || TARGET_AVX512VL
   17320              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17321              :    && ix86_pre_reload_split ()
   17322              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17323              :                     STRIP_UNARY (operands[4]))
   17324              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17325              :                        STRIP_UNARY (operands[4]))
   17326              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17327              :                        STRIP_UNARY (operands[3]))
   17328              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17329              :                        STRIP_UNARY (operands[3])))))
   17330              :             return -1;
   17331              :           return 5772; /* *avx512vl_vpternlogv4si_1 */
   17332              : 
   17333              :         case 9:
   17334              :           if (!(
   17335              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17336              : ((64 == 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              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17348              : (TARGET_AVX512F)))
   17349              :             return -1;
   17350              :           return 5799; /* *avx512f_vpternlogv8di_1 */
   17351              : 
   17352              :         case 10:
   17353              :           if (!(
   17354              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17355              : ((32 == 64 || TARGET_AVX512VL
   17356              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17357              :    && ix86_pre_reload_split ()
   17358              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17359              :                     STRIP_UNARY (operands[4]))
   17360              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17361              :                        STRIP_UNARY (operands[4]))
   17362              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17363              :                        STRIP_UNARY (operands[3]))
   17364              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17365              :                        STRIP_UNARY (operands[3])))) && 
   17366              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17367              : (TARGET_AVX)))
   17368              :             return -1;
   17369              :           return 5826; /* *avx512vl_vpternlogv4di_1 */
   17370              : 
   17371              :         case 11:
   17372              :           if (!
   17373              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17374              : ((16 == 64 || TARGET_AVX512VL
   17375              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17376              :    && ix86_pre_reload_split ()
   17377              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17378              :                     STRIP_UNARY (operands[4]))
   17379              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17380              :                        STRIP_UNARY (operands[4]))
   17381              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17382              :                        STRIP_UNARY (operands[3]))
   17383              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17384              :                        STRIP_UNARY (operands[3])))))
   17385              :             return -1;
   17386              :           return 5853; /* *avx512vl_vpternlogv2di_1 */
   17387              : 
   17388              :         case 12:
   17389              :           if (!(
   17390              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17391              : ((64 == 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              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17403              : (TARGET_AVX512F)))
   17404              :             return -1;
   17405              :           return 5559; /* *avx512bw_vpternlogv64qi_1 */
   17406              : 
   17407              :         case 13:
   17408              :           if (!(
   17409              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17410              : ((32 == 64 || TARGET_AVX512VL
   17411              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17412              :    && ix86_pre_reload_split ()
   17413              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17414              :                     STRIP_UNARY (operands[4]))
   17415              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17416              :                        STRIP_UNARY (operands[4]))
   17417              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17418              :                        STRIP_UNARY (operands[3]))
   17419              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17420              :                        STRIP_UNARY (operands[3])))) && 
   17421              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17422              : (TARGET_AVX)))
   17423              :             return -1;
   17424              :           return 5586; /* *avx512vl_vpternlogv32qi_1 */
   17425              : 
   17426              :         case 14:
   17427              :           if (!
   17428              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17429              : ((16 == 64 || TARGET_AVX512VL
   17430              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17431              :    && ix86_pre_reload_split ()
   17432              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17433              :                     STRIP_UNARY (operands[4]))
   17434              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17435              :                        STRIP_UNARY (operands[4]))
   17436              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17437              :                        STRIP_UNARY (operands[3]))
   17438              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17439              :                        STRIP_UNARY (operands[3])))))
   17440              :             return -1;
   17441              :           return 5613; /* *avx512vl_vpternlogv16qi_1 */
   17442              : 
   17443              :         case 15:
   17444              :           if (!(
   17445              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17446              : ((64 == 64 || TARGET_AVX512VL
   17447              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17448              :    && ix86_pre_reload_split ()
   17449              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17450              :                     STRIP_UNARY (operands[4]))
   17451              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17452              :                        STRIP_UNARY (operands[4]))
   17453              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17454              :                        STRIP_UNARY (operands[3]))
   17455              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17456              :                        STRIP_UNARY (operands[3])))) && 
   17457              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17458              : (TARGET_AVX512F)))
   17459              :             return -1;
   17460              :           return 5640; /* *avx512bw_vpternlogv32hi_1 */
   17461              : 
   17462              :         case 16:
   17463              :           if (!(
   17464              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17465              : ((32 == 64 || TARGET_AVX512VL
   17466              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17467              :    && ix86_pre_reload_split ()
   17468              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17469              :                     STRIP_UNARY (operands[4]))
   17470              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17471              :                        STRIP_UNARY (operands[4]))
   17472              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17473              :                        STRIP_UNARY (operands[3]))
   17474              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17475              :                        STRIP_UNARY (operands[3])))) && 
   17476              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17477              : (TARGET_AVX)))
   17478              :             return -1;
   17479              :           return 5667; /* *avx512vl_vpternlogv16hi_1 */
   17480              : 
   17481              :         case 17:
   17482              :           if (!
   17483              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17484              : ((16 == 64 || TARGET_AVX512VL
   17485              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17486              :    && ix86_pre_reload_split ()
   17487              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17488              :                     STRIP_UNARY (operands[4]))
   17489              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17490              :                        STRIP_UNARY (operands[4]))
   17491              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17492              :                        STRIP_UNARY (operands[3]))
   17493              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17494              :                        STRIP_UNARY (operands[3])))))
   17495              :             return -1;
   17496              :           return 5694; /* *avx512vl_vpternlogv8hi_1 */
   17497              : 
   17498              :         case 18:
   17499              :           if (!(
   17500              : #line 14102 "/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              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17505              :                     STRIP_UNARY (operands[4]))
   17506              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17507              :                        STRIP_UNARY (operands[4]))
   17508              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17509              :                        STRIP_UNARY (operands[3]))
   17510              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17511              :                        STRIP_UNARY (operands[3])))) && 
   17512              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17513              : (TARGET_AVX512F)))
   17514              :             return -1;
   17515              :           return 5721; /* *avx512f_vpternlogv16si_1 */
   17516              : 
   17517              :         case 19:
   17518              :           if (!(
   17519              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17520              : ((32 == 64 || TARGET_AVX512VL
   17521              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17522              :    && ix86_pre_reload_split ()
   17523              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17524              :                     STRIP_UNARY (operands[4]))
   17525              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17526              :                        STRIP_UNARY (operands[4]))
   17527              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17528              :                        STRIP_UNARY (operands[3]))
   17529              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17530              :                        STRIP_UNARY (operands[3])))) && 
   17531              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17532              : (TARGET_AVX)))
   17533              :             return -1;
   17534              :           return 5748; /* *avx512vl_vpternlogv8si_1 */
   17535              : 
   17536              :         case 20:
   17537              :           if (!
   17538              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17539              : ((16 == 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              :             return -1;
   17551              :           return 5775; /* *avx512vl_vpternlogv4si_1 */
   17552              : 
   17553              :         case 21:
   17554              :           if (!(
   17555              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17556              : ((64 == 64 || TARGET_AVX512VL
   17557              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17558              :    && ix86_pre_reload_split ()
   17559              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17560              :                     STRIP_UNARY (operands[4]))
   17561              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17562              :                        STRIP_UNARY (operands[4]))
   17563              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17564              :                        STRIP_UNARY (operands[3]))
   17565              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17566              :                        STRIP_UNARY (operands[3])))) && 
   17567              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17568              : (TARGET_AVX512F)))
   17569              :             return -1;
   17570              :           return 5802; /* *avx512f_vpternlogv8di_1 */
   17571              : 
   17572              :         case 22:
   17573              :           if (!(
   17574              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17575              : ((32 == 64 || TARGET_AVX512VL
   17576              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17577              :    && ix86_pre_reload_split ()
   17578              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17579              :                     STRIP_UNARY (operands[4]))
   17580              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17581              :                        STRIP_UNARY (operands[4]))
   17582              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17583              :                        STRIP_UNARY (operands[3]))
   17584              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17585              :                        STRIP_UNARY (operands[3])))) && 
   17586              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17587              : (TARGET_AVX)))
   17588              :             return -1;
   17589              :           return 5829; /* *avx512vl_vpternlogv4di_1 */
   17590              : 
   17591              :         case 23:
   17592              :           if (!
   17593              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17594              : ((16 == 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              :             return -1;
   17606              :           return 5856; /* *avx512vl_vpternlogv2di_1 */
   17607              : 
   17608              :         case 24:
   17609              :           if (!(
   17610              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17611              : ((64 == 64 || TARGET_AVX512VL
   17612              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17613              :    && ix86_pre_reload_split ()
   17614              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17615              :                     STRIP_UNARY (operands[4]))
   17616              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17617              :                        STRIP_UNARY (operands[4]))
   17618              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17619              :                        STRIP_UNARY (operands[3]))
   17620              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17621              :                        STRIP_UNARY (operands[3])))) && 
   17622              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17623              : (TARGET_AVX512F)))
   17624              :             return -1;
   17625              :           return 5562; /* *avx512bw_vpternlogv64qi_1 */
   17626              : 
   17627              :         case 25:
   17628              :           if (!(
   17629              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17630              : ((32 == 64 || TARGET_AVX512VL
   17631              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17632              :    && ix86_pre_reload_split ()
   17633              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17634              :                     STRIP_UNARY (operands[4]))
   17635              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17636              :                        STRIP_UNARY (operands[4]))
   17637              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17638              :                        STRIP_UNARY (operands[3]))
   17639              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17640              :                        STRIP_UNARY (operands[3])))) && 
   17641              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17642              : (TARGET_AVX)))
   17643              :             return -1;
   17644              :           return 5589; /* *avx512vl_vpternlogv32qi_1 */
   17645              : 
   17646              :         case 26:
   17647              :           if (!
   17648              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17649              : ((16 == 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              :             return -1;
   17661              :           return 5616; /* *avx512vl_vpternlogv16qi_1 */
   17662              : 
   17663              :         case 27:
   17664              :           if (!(
   17665              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17666              : ((64 == 64 || TARGET_AVX512VL
   17667              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17668              :    && ix86_pre_reload_split ()
   17669              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17670              :                     STRIP_UNARY (operands[4]))
   17671              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17672              :                        STRIP_UNARY (operands[4]))
   17673              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17674              :                        STRIP_UNARY (operands[3]))
   17675              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17676              :                        STRIP_UNARY (operands[3])))) && 
   17677              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17678              : (TARGET_AVX512F)))
   17679              :             return -1;
   17680              :           return 5643; /* *avx512bw_vpternlogv32hi_1 */
   17681              : 
   17682              :         case 28:
   17683              :           if (!(
   17684              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17685              : ((32 == 64 || TARGET_AVX512VL
   17686              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17687              :    && ix86_pre_reload_split ()
   17688              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17689              :                     STRIP_UNARY (operands[4]))
   17690              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17691              :                        STRIP_UNARY (operands[4]))
   17692              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17693              :                        STRIP_UNARY (operands[3]))
   17694              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17695              :                        STRIP_UNARY (operands[3])))) && 
   17696              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17697              : (TARGET_AVX)))
   17698              :             return -1;
   17699              :           return 5670; /* *avx512vl_vpternlogv16hi_1 */
   17700              : 
   17701              :         case 29:
   17702              :           if (!
   17703              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17704              : ((16 == 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              :             return -1;
   17716              :           return 5697; /* *avx512vl_vpternlogv8hi_1 */
   17717              : 
   17718              :         case 30:
   17719              :           if (!(
   17720              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17721              : ((64 == 64 || TARGET_AVX512VL
   17722              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17723              :    && ix86_pre_reload_split ()
   17724              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17725              :                     STRIP_UNARY (operands[4]))
   17726              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17727              :                        STRIP_UNARY (operands[4]))
   17728              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17729              :                        STRIP_UNARY (operands[3]))
   17730              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17731              :                        STRIP_UNARY (operands[3])))) && 
   17732              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17733              : (TARGET_AVX512F)))
   17734              :             return -1;
   17735              :           return 5724; /* *avx512f_vpternlogv16si_1 */
   17736              : 
   17737              :         case 31:
   17738              :           if (!(
   17739              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17740              : ((32 == 64 || TARGET_AVX512VL
   17741              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17742              :    && ix86_pre_reload_split ()
   17743              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17744              :                     STRIP_UNARY (operands[4]))
   17745              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17746              :                        STRIP_UNARY (operands[4]))
   17747              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17748              :                        STRIP_UNARY (operands[3]))
   17749              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17750              :                        STRIP_UNARY (operands[3])))) && 
   17751              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17752              : (TARGET_AVX)))
   17753              :             return -1;
   17754              :           return 5751; /* *avx512vl_vpternlogv8si_1 */
   17755              : 
   17756              :         case 32:
   17757              :           if (!
   17758              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17759              : ((16 == 64 || TARGET_AVX512VL
   17760              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17761              :    && ix86_pre_reload_split ()
   17762              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17763              :                     STRIP_UNARY (operands[4]))
   17764              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17765              :                        STRIP_UNARY (operands[4]))
   17766              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17767              :                        STRIP_UNARY (operands[3]))
   17768              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17769              :                        STRIP_UNARY (operands[3])))))
   17770              :             return -1;
   17771              :           return 5778; /* *avx512vl_vpternlogv4si_1 */
   17772              : 
   17773              :         case 33:
   17774              :           if (!(
   17775              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17776              : ((64 == 64 || TARGET_AVX512VL
   17777              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17778              :    && ix86_pre_reload_split ()
   17779              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17780              :                     STRIP_UNARY (operands[4]))
   17781              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17782              :                        STRIP_UNARY (operands[4]))
   17783              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17784              :                        STRIP_UNARY (operands[3]))
   17785              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17786              :                        STRIP_UNARY (operands[3])))) && 
   17787              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17788              : (TARGET_AVX512F)))
   17789              :             return -1;
   17790              :           return 5805; /* *avx512f_vpternlogv8di_1 */
   17791              : 
   17792              :         case 34:
   17793              :           if (!(
   17794              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17795              : ((32 == 64 || TARGET_AVX512VL
   17796              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17797              :    && ix86_pre_reload_split ()
   17798              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17799              :                     STRIP_UNARY (operands[4]))
   17800              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17801              :                        STRIP_UNARY (operands[4]))
   17802              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17803              :                        STRIP_UNARY (operands[3]))
   17804              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17805              :                        STRIP_UNARY (operands[3])))) && 
   17806              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17807              : (TARGET_AVX)))
   17808              :             return -1;
   17809              :           return 5832; /* *avx512vl_vpternlogv4di_1 */
   17810              : 
   17811              :         case 35:
   17812              :           if (!
   17813              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17814              : ((16 == 64 || TARGET_AVX512VL
   17815              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17816              :    && ix86_pre_reload_split ()
   17817              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17818              :                     STRIP_UNARY (operands[4]))
   17819              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17820              :                        STRIP_UNARY (operands[4]))
   17821              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17822              :                        STRIP_UNARY (operands[3]))
   17823              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17824              :                        STRIP_UNARY (operands[3])))))
   17825              :             return -1;
   17826              :           return 5859; /* *avx512vl_vpternlogv2di_1 */
   17827              : 
   17828              :         case 36:
   17829              :           if (!(
   17830              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17831              : ((64 == 64 || TARGET_AVX512VL
   17832              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17833              :    && ix86_pre_reload_split ()) && 
   17834              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17835              : (TARGET_AVX512F)))
   17836              :             return -1;
   17837              :           return 6840; /* *avx512bw_vpternlogv64qi_3 */
   17838              : 
   17839              :         case 37:
   17840              :           if (!(
   17841              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17842              : ((32 == 64 || TARGET_AVX512VL
   17843              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17844              :    && ix86_pre_reload_split ()) && 
   17845              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17846              : (TARGET_AVX)))
   17847              :             return -1;
   17848              :           return 6849; /* *avx512vl_vpternlogv32qi_3 */
   17849              : 
   17850              :         case 38:
   17851              :           if (!
   17852              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17853              : ((16 == 64 || TARGET_AVX512VL
   17854              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17855              :    && ix86_pre_reload_split ()))
   17856              :             return -1;
   17857              :           return 6858; /* *avx512vl_vpternlogv16qi_3 */
   17858              : 
   17859              :         case 39:
   17860              :           if (!(
   17861              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17862              : ((64 == 64 || TARGET_AVX512VL
   17863              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17864              :    && ix86_pre_reload_split ()) && 
   17865              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17866              : (TARGET_AVX512F)))
   17867              :             return -1;
   17868              :           return 6867; /* *avx512bw_vpternlogv32hi_3 */
   17869              : 
   17870              :         case 40:
   17871              :           if (!(
   17872              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17873              : ((32 == 64 || TARGET_AVX512VL
   17874              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17875              :    && ix86_pre_reload_split ()) && 
   17876              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17877              : (TARGET_AVX)))
   17878              :             return -1;
   17879              :           return 6876; /* *avx512vl_vpternlogv16hi_3 */
   17880              : 
   17881              :         case 41:
   17882              :           if (!
   17883              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17884              : ((16 == 64 || TARGET_AVX512VL
   17885              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17886              :    && ix86_pre_reload_split ()))
   17887              :             return -1;
   17888              :           return 6885; /* *avx512vl_vpternlogv8hi_3 */
   17889              : 
   17890              :         case 42:
   17891              :           if (!(
   17892              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17893              : ((64 == 64 || TARGET_AVX512VL
   17894              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17895              :    && ix86_pre_reload_split ()) && 
   17896              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17897              : (TARGET_AVX512F)))
   17898              :             return -1;
   17899              :           return 6894; /* *avx512f_vpternlogv16si_3 */
   17900              : 
   17901              :         case 43:
   17902              :           if (!(
   17903              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17904              : ((32 == 64 || TARGET_AVX512VL
   17905              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17906              :    && ix86_pre_reload_split ()) && 
   17907              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17908              : (TARGET_AVX)))
   17909              :             return -1;
   17910              :           return 6903; /* *avx512vl_vpternlogv8si_3 */
   17911              : 
   17912              :         case 44:
   17913              :           if (!
   17914              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17915              : ((16 == 64 || TARGET_AVX512VL
   17916              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17917              :    && ix86_pre_reload_split ()))
   17918              :             return -1;
   17919              :           return 6912; /* *avx512vl_vpternlogv4si_3 */
   17920              : 
   17921              :         case 45:
   17922              :           if (!(
   17923              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17924              : ((64 == 64 || TARGET_AVX512VL
   17925              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17926              :    && ix86_pre_reload_split ()) && 
   17927              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17928              : (TARGET_AVX512F)))
   17929              :             return -1;
   17930              :           return 6921; /* *avx512f_vpternlogv8di_3 */
   17931              : 
   17932              :         case 46:
   17933              :           if (!(
   17934              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17935              : ((32 == 64 || TARGET_AVX512VL
   17936              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17937              :    && ix86_pre_reload_split ()) && 
   17938              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17939              : (TARGET_AVX)))
   17940              :             return -1;
   17941              :           return 6930; /* *avx512vl_vpternlogv4di_3 */
   17942              : 
   17943              :         case 47:
   17944              :           if (!
   17945              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17946              : ((16 == 64 || TARGET_AVX512VL
   17947              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17948              :    && ix86_pre_reload_split ()))
   17949              :             return -1;
   17950              :           return 6939; /* *avx512vl_vpternlogv2di_3 */
   17951              : 
   17952              :         default:
   17953              :           return -1;
   17954              :         }
   17955              : 
   17956              :     case AND:
   17957              :       switch (pattern537 (x2))
   17958              :         {
   17959              :         case 0:
   17960              :           if (!(
   17961              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17962              : ((64 == 64 || TARGET_AVX512VL
   17963              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17964              :    && ix86_pre_reload_split ()
   17965              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17966              :                     STRIP_UNARY (operands[4]))
   17967              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17968              :                        STRIP_UNARY (operands[4]))
   17969              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17970              :                        STRIP_UNARY (operands[3]))
   17971              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17972              :                        STRIP_UNARY (operands[3])))) && 
   17973              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17974              : (TARGET_AVX512F)))
   17975              :             return -1;
   17976              :           return 6204; /* *avx512bw_vpternlogv64qi_2 */
   17977              : 
   17978              :         case 1:
   17979              :           if (!(
   17980              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17981              : ((32 == 64 || TARGET_AVX512VL
   17982              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17983              :    && ix86_pre_reload_split ()
   17984              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17985              :                     STRIP_UNARY (operands[4]))
   17986              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17987              :                        STRIP_UNARY (operands[4]))
   17988              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17989              :                        STRIP_UNARY (operands[3]))
   17990              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17991              :                        STRIP_UNARY (operands[3])))) && 
   17992              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17993              : (TARGET_AVX)))
   17994              :             return -1;
   17995              :           return 6231; /* *avx512vl_vpternlogv32qi_2 */
   17996              : 
   17997              :         case 2:
   17998              :           if (!
   17999              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18000              : ((16 == 64 || TARGET_AVX512VL
   18001              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18002              :    && ix86_pre_reload_split ()
   18003              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18004              :                     STRIP_UNARY (operands[4]))
   18005              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18006              :                        STRIP_UNARY (operands[4]))
   18007              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18008              :                        STRIP_UNARY (operands[3]))
   18009              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18010              :                        STRIP_UNARY (operands[3])))))
   18011              :             return -1;
   18012              :           return 6258; /* *avx512vl_vpternlogv16qi_2 */
   18013              : 
   18014              :         case 3:
   18015              :           if (!(
   18016              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18017              : ((64 == 64 || TARGET_AVX512VL
   18018              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18019              :    && ix86_pre_reload_split ()
   18020              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18021              :                     STRIP_UNARY (operands[4]))
   18022              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18023              :                        STRIP_UNARY (operands[4]))
   18024              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18025              :                        STRIP_UNARY (operands[3]))
   18026              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18027              :                        STRIP_UNARY (operands[3])))) && 
   18028              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18029              : (TARGET_AVX512F)))
   18030              :             return -1;
   18031              :           return 6285; /* *avx512bw_vpternlogv32hi_2 */
   18032              : 
   18033              :         case 4:
   18034              :           if (!(
   18035              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18036              : ((32 == 64 || TARGET_AVX512VL
   18037              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18038              :    && ix86_pre_reload_split ()
   18039              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18040              :                     STRIP_UNARY (operands[4]))
   18041              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18042              :                        STRIP_UNARY (operands[4]))
   18043              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18044              :                        STRIP_UNARY (operands[3]))
   18045              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18046              :                        STRIP_UNARY (operands[3])))) && 
   18047              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18048              : (TARGET_AVX)))
   18049              :             return -1;
   18050              :           return 6312; /* *avx512vl_vpternlogv16hi_2 */
   18051              : 
   18052              :         case 5:
   18053              :           if (!
   18054              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18055              : ((16 == 64 || TARGET_AVX512VL
   18056              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18057              :    && ix86_pre_reload_split ()
   18058              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18059              :                     STRIP_UNARY (operands[4]))
   18060              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18061              :                        STRIP_UNARY (operands[4]))
   18062              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18063              :                        STRIP_UNARY (operands[3]))
   18064              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18065              :                        STRIP_UNARY (operands[3])))))
   18066              :             return -1;
   18067              :           return 6339; /* *avx512vl_vpternlogv8hi_2 */
   18068              : 
   18069              :         case 6:
   18070              :           if (!(
   18071              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18072              : ((64 == 64 || TARGET_AVX512VL
   18073              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18074              :    && ix86_pre_reload_split ()
   18075              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18076              :                     STRIP_UNARY (operands[4]))
   18077              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18078              :                        STRIP_UNARY (operands[4]))
   18079              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18080              :                        STRIP_UNARY (operands[3]))
   18081              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18082              :                        STRIP_UNARY (operands[3])))) && 
   18083              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18084              : (TARGET_AVX512F)))
   18085              :             return -1;
   18086              :           return 6366; /* *avx512f_vpternlogv16si_2 */
   18087              : 
   18088              :         case 7:
   18089              :           if (!(
   18090              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18091              : ((32 == 64 || TARGET_AVX512VL
   18092              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18093              :    && ix86_pre_reload_split ()
   18094              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18095              :                     STRIP_UNARY (operands[4]))
   18096              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18097              :                        STRIP_UNARY (operands[4]))
   18098              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18099              :                        STRIP_UNARY (operands[3]))
   18100              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18101              :                        STRIP_UNARY (operands[3])))) && 
   18102              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18103              : (TARGET_AVX)))
   18104              :             return -1;
   18105              :           return 6393; /* *avx512vl_vpternlogv8si_2 */
   18106              : 
   18107              :         case 8:
   18108              :           if (!
   18109              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18110              : ((16 == 64 || TARGET_AVX512VL
   18111              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18112              :    && ix86_pre_reload_split ()
   18113              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18114              :                     STRIP_UNARY (operands[4]))
   18115              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18116              :                        STRIP_UNARY (operands[4]))
   18117              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18118              :                        STRIP_UNARY (operands[3]))
   18119              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18120              :                        STRIP_UNARY (operands[3])))))
   18121              :             return -1;
   18122              :           return 6420; /* *avx512vl_vpternlogv4si_2 */
   18123              : 
   18124              :         case 9:
   18125              :           if (!(
   18126              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18127              : ((64 == 64 || TARGET_AVX512VL
   18128              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18129              :    && ix86_pre_reload_split ()
   18130              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18131              :                     STRIP_UNARY (operands[4]))
   18132              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18133              :                        STRIP_UNARY (operands[4]))
   18134              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18135              :                        STRIP_UNARY (operands[3]))
   18136              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18137              :                        STRIP_UNARY (operands[3])))) && 
   18138              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18139              : (TARGET_AVX512F)))
   18140              :             return -1;
   18141              :           return 6447; /* *avx512f_vpternlogv8di_2 */
   18142              : 
   18143              :         case 10:
   18144              :           if (!(
   18145              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18146              : ((32 == 64 || TARGET_AVX512VL
   18147              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18148              :    && ix86_pre_reload_split ()
   18149              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18150              :                     STRIP_UNARY (operands[4]))
   18151              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18152              :                        STRIP_UNARY (operands[4]))
   18153              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18154              :                        STRIP_UNARY (operands[3]))
   18155              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18156              :                        STRIP_UNARY (operands[3])))) && 
   18157              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18158              : (TARGET_AVX)))
   18159              :             return -1;
   18160              :           return 6474; /* *avx512vl_vpternlogv4di_2 */
   18161              : 
   18162              :         case 11:
   18163              :           if (!
   18164              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18165              : ((16 == 64 || TARGET_AVX512VL
   18166              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18167              :    && ix86_pre_reload_split ()
   18168              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18169              :                     STRIP_UNARY (operands[4]))
   18170              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18171              :                        STRIP_UNARY (operands[4]))
   18172              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18173              :                        STRIP_UNARY (operands[3]))
   18174              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18175              :                        STRIP_UNARY (operands[3])))))
   18176              :             return -1;
   18177              :           return 6501; /* *avx512vl_vpternlogv2di_2 */
   18178              : 
   18179              :         default:
   18180              :           return -1;
   18181              :         }
   18182              : 
   18183              :     case IOR:
   18184              :       switch (pattern537 (x2))
   18185              :         {
   18186              :         case 0:
   18187              :           if (!(
   18188              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18189              : ((64 == 64 || TARGET_AVX512VL
   18190              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18191              :    && ix86_pre_reload_split ()
   18192              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18193              :                     STRIP_UNARY (operands[4]))
   18194              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18195              :                        STRIP_UNARY (operands[4]))
   18196              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18197              :                        STRIP_UNARY (operands[3]))
   18198              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18199              :                        STRIP_UNARY (operands[3])))) && 
   18200              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18201              : (TARGET_AVX512F)))
   18202              :             return -1;
   18203              :           return 6207; /* *avx512bw_vpternlogv64qi_2 */
   18204              : 
   18205              :         case 1:
   18206              :           if (!(
   18207              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18208              : ((32 == 64 || TARGET_AVX512VL
   18209              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18210              :    && ix86_pre_reload_split ()
   18211              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18212              :                     STRIP_UNARY (operands[4]))
   18213              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18214              :                        STRIP_UNARY (operands[4]))
   18215              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18216              :                        STRIP_UNARY (operands[3]))
   18217              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18218              :                        STRIP_UNARY (operands[3])))) && 
   18219              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18220              : (TARGET_AVX)))
   18221              :             return -1;
   18222              :           return 6234; /* *avx512vl_vpternlogv32qi_2 */
   18223              : 
   18224              :         case 2:
   18225              :           if (!
   18226              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18227              : ((16 == 64 || TARGET_AVX512VL
   18228              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18229              :    && ix86_pre_reload_split ()
   18230              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18231              :                     STRIP_UNARY (operands[4]))
   18232              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18233              :                        STRIP_UNARY (operands[4]))
   18234              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18235              :                        STRIP_UNARY (operands[3]))
   18236              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18237              :                        STRIP_UNARY (operands[3])))))
   18238              :             return -1;
   18239              :           return 6261; /* *avx512vl_vpternlogv16qi_2 */
   18240              : 
   18241              :         case 3:
   18242              :           if (!(
   18243              : #line 14187 "/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 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18256              : (TARGET_AVX512F)))
   18257              :             return -1;
   18258              :           return 6288; /* *avx512bw_vpternlogv32hi_2 */
   18259              : 
   18260              :         case 4:
   18261              :           if (!(
   18262              : #line 14187 "/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 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18275              : (TARGET_AVX)))
   18276              :             return -1;
   18277              :           return 6315; /* *avx512vl_vpternlogv16hi_2 */
   18278              : 
   18279              :         case 5:
   18280              :           if (!
   18281              : #line 14187 "/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 6342; /* *avx512vl_vpternlogv8hi_2 */
   18295              : 
   18296              :         case 6:
   18297              :           if (!(
   18298              : #line 14187 "/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 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18311              : (TARGET_AVX512F)))
   18312              :             return -1;
   18313              :           return 6369; /* *avx512f_vpternlogv16si_2 */
   18314              : 
   18315              :         case 7:
   18316              :           if (!(
   18317              : #line 14187 "/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 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18330              : (TARGET_AVX)))
   18331              :             return -1;
   18332              :           return 6396; /* *avx512vl_vpternlogv8si_2 */
   18333              : 
   18334              :         case 8:
   18335              :           if (!
   18336              : #line 14187 "/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 6423; /* *avx512vl_vpternlogv4si_2 */
   18350              : 
   18351              :         case 9:
   18352              :           if (!(
   18353              : #line 14187 "/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 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18366              : (TARGET_AVX512F)))
   18367              :             return -1;
   18368              :           return 6450; /* *avx512f_vpternlogv8di_2 */
   18369              : 
   18370              :         case 10:
   18371              :           if (!(
   18372              : #line 14187 "/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 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18385              : (TARGET_AVX)))
   18386              :             return -1;
   18387              :           return 6477; /* *avx512vl_vpternlogv4di_2 */
   18388              : 
   18389              :         case 11:
   18390              :           if (!
   18391              : #line 14187 "/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 6504; /* *avx512vl_vpternlogv2di_2 */
   18405              : 
   18406              :         default:
   18407              :           return -1;
   18408              :         }
   18409              : 
   18410              :     case XOR:
   18411              :       switch (pattern537 (x2))
   18412              :         {
   18413              :         case 0:
   18414              :           if (!(
   18415              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18416              : ((64 == 64 || TARGET_AVX512VL
   18417              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18418              :    && ix86_pre_reload_split ()
   18419              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18420              :                     STRIP_UNARY (operands[4]))
   18421              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18422              :                        STRIP_UNARY (operands[4]))
   18423              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18424              :                        STRIP_UNARY (operands[3]))
   18425              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18426              :                        STRIP_UNARY (operands[3])))) && 
   18427              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18428              : (TARGET_AVX512F)))
   18429              :             return -1;
   18430              :           return 6210; /* *avx512bw_vpternlogv64qi_2 */
   18431              : 
   18432              :         case 1:
   18433              :           if (!(
   18434              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18435              : ((32 == 64 || TARGET_AVX512VL
   18436              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18437              :    && ix86_pre_reload_split ()
   18438              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18439              :                     STRIP_UNARY (operands[4]))
   18440              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18441              :                        STRIP_UNARY (operands[4]))
   18442              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18443              :                        STRIP_UNARY (operands[3]))
   18444              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18445              :                        STRIP_UNARY (operands[3])))) && 
   18446              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18447              : (TARGET_AVX)))
   18448              :             return -1;
   18449              :           return 6237; /* *avx512vl_vpternlogv32qi_2 */
   18450              : 
   18451              :         case 2:
   18452              :           if (!
   18453              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18454              : ((16 == 64 || TARGET_AVX512VL
   18455              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18456              :    && ix86_pre_reload_split ()
   18457              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18458              :                     STRIP_UNARY (operands[4]))
   18459              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18460              :                        STRIP_UNARY (operands[4]))
   18461              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18462              :                        STRIP_UNARY (operands[3]))
   18463              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18464              :                        STRIP_UNARY (operands[3])))))
   18465              :             return -1;
   18466              :           return 6264; /* *avx512vl_vpternlogv16qi_2 */
   18467              : 
   18468              :         case 3:
   18469              :           if (!(
   18470              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18471              : ((64 == 64 || TARGET_AVX512VL
   18472              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18473              :    && ix86_pre_reload_split ()
   18474              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18475              :                     STRIP_UNARY (operands[4]))
   18476              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18477              :                        STRIP_UNARY (operands[4]))
   18478              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18479              :                        STRIP_UNARY (operands[3]))
   18480              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18481              :                        STRIP_UNARY (operands[3])))) && 
   18482              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18483              : (TARGET_AVX512F)))
   18484              :             return -1;
   18485              :           return 6291; /* *avx512bw_vpternlogv32hi_2 */
   18486              : 
   18487              :         case 4:
   18488              :           if (!(
   18489              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18490              : ((32 == 64 || TARGET_AVX512VL
   18491              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18492              :    && ix86_pre_reload_split ()
   18493              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18494              :                     STRIP_UNARY (operands[4]))
   18495              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18496              :                        STRIP_UNARY (operands[4]))
   18497              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18498              :                        STRIP_UNARY (operands[3]))
   18499              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18500              :                        STRIP_UNARY (operands[3])))) && 
   18501              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18502              : (TARGET_AVX)))
   18503              :             return -1;
   18504              :           return 6318; /* *avx512vl_vpternlogv16hi_2 */
   18505              : 
   18506              :         case 5:
   18507              :           if (!
   18508              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18509              : ((16 == 64 || TARGET_AVX512VL
   18510              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18511              :    && ix86_pre_reload_split ()
   18512              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18513              :                     STRIP_UNARY (operands[4]))
   18514              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18515              :                        STRIP_UNARY (operands[4]))
   18516              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18517              :                        STRIP_UNARY (operands[3]))
   18518              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18519              :                        STRIP_UNARY (operands[3])))))
   18520              :             return -1;
   18521              :           return 6345; /* *avx512vl_vpternlogv8hi_2 */
   18522              : 
   18523              :         case 6:
   18524              :           if (!(
   18525              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18526              : ((64 == 64 || TARGET_AVX512VL
   18527              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18528              :    && ix86_pre_reload_split ()
   18529              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18530              :                     STRIP_UNARY (operands[4]))
   18531              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18532              :                        STRIP_UNARY (operands[4]))
   18533              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18534              :                        STRIP_UNARY (operands[3]))
   18535              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18536              :                        STRIP_UNARY (operands[3])))) && 
   18537              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18538              : (TARGET_AVX512F)))
   18539              :             return -1;
   18540              :           return 6372; /* *avx512f_vpternlogv16si_2 */
   18541              : 
   18542              :         case 7:
   18543              :           if (!(
   18544              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18545              : ((32 == 64 || TARGET_AVX512VL
   18546              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18547              :    && ix86_pre_reload_split ()
   18548              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18549              :                     STRIP_UNARY (operands[4]))
   18550              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18551              :                        STRIP_UNARY (operands[4]))
   18552              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18553              :                        STRIP_UNARY (operands[3]))
   18554              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18555              :                        STRIP_UNARY (operands[3])))) && 
   18556              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18557              : (TARGET_AVX)))
   18558              :             return -1;
   18559              :           return 6399; /* *avx512vl_vpternlogv8si_2 */
   18560              : 
   18561              :         case 8:
   18562              :           if (!
   18563              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18564              : ((16 == 64 || TARGET_AVX512VL
   18565              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18566              :    && ix86_pre_reload_split ()
   18567              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18568              :                     STRIP_UNARY (operands[4]))
   18569              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18570              :                        STRIP_UNARY (operands[4]))
   18571              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18572              :                        STRIP_UNARY (operands[3]))
   18573              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18574              :                        STRIP_UNARY (operands[3])))))
   18575              :             return -1;
   18576              :           return 6426; /* *avx512vl_vpternlogv4si_2 */
   18577              : 
   18578              :         case 9:
   18579              :           if (!(
   18580              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18581              : ((64 == 64 || TARGET_AVX512VL
   18582              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18583              :    && ix86_pre_reload_split ()
   18584              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18585              :                     STRIP_UNARY (operands[4]))
   18586              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18587              :                        STRIP_UNARY (operands[4]))
   18588              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18589              :                        STRIP_UNARY (operands[3]))
   18590              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18591              :                        STRIP_UNARY (operands[3])))) && 
   18592              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18593              : (TARGET_AVX512F)))
   18594              :             return -1;
   18595              :           return 6453; /* *avx512f_vpternlogv8di_2 */
   18596              : 
   18597              :         case 10:
   18598              :           if (!(
   18599              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18600              : ((32 == 64 || TARGET_AVX512VL
   18601              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18602              :    && ix86_pre_reload_split ()
   18603              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18604              :                     STRIP_UNARY (operands[4]))
   18605              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18606              :                        STRIP_UNARY (operands[4]))
   18607              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18608              :                        STRIP_UNARY (operands[3]))
   18609              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18610              :                        STRIP_UNARY (operands[3])))) && 
   18611              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18612              : (TARGET_AVX)))
   18613              :             return -1;
   18614              :           return 6480; /* *avx512vl_vpternlogv4di_2 */
   18615              : 
   18616              :         case 11:
   18617              :           if (!
   18618              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18619              : ((16 == 64 || TARGET_AVX512VL
   18620              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18621              :    && ix86_pre_reload_split ()
   18622              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18623              :                     STRIP_UNARY (operands[4]))
   18624              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18625              :                        STRIP_UNARY (operands[4]))
   18626              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18627              :                        STRIP_UNARY (operands[3]))
   18628              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18629              :                        STRIP_UNARY (operands[3])))))
   18630              :             return -1;
   18631              :           return 6507; /* *avx512vl_vpternlogv2di_2 */
   18632              : 
   18633              :         default:
   18634              :           return -1;
   18635              :         }
   18636              : 
   18637              :     default:
   18638              :       return -1;
   18639              :     }
   18640              : }
   18641              : 
   18642              :  int
   18643              : recog_318 (rtx x1 ATTRIBUTE_UNUSED,
   18644              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   18645              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   18646              : {
   18647              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   18648              :   rtx x2, x3, x4;
   18649              :   int res ATTRIBUTE_UNUSED;
   18650              :   x2 = XEXP (x1, 1);
   18651              :   x3 = XEXP (x2, 0);
   18652              :   switch (GET_CODE (x3))
   18653              :     {
   18654              :     case AND:
   18655              :       x4 = XEXP (x3, 0);
   18656              :       switch (GET_CODE (x4))
   18657              :         {
   18658              :         case REG:
   18659              :         case SUBREG:
   18660              :         case MEM:
   18661              :         case NOT:
   18662              :           switch (pattern541 (x2))
   18663              :             {
   18664              :             case 0:
   18665              :               if (!(
   18666              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18667              : ((64 == 64 || TARGET_AVX512VL
   18668              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18669              :    && ix86_pre_reload_split ()
   18670              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18671              :                     STRIP_UNARY (operands[4]))
   18672              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18673              :                        STRIP_UNARY (operands[4]))
   18674              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18675              :                        STRIP_UNARY (operands[3]))
   18676              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18677              :                        STRIP_UNARY (operands[3])))) && 
   18678              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18679              : (TARGET_AVX512F)))
   18680              :                 return -1;
   18681              :               return 5862; /* *avx512bw_vpternlogv32hf_1 */
   18682              : 
   18683              :             case 1:
   18684              :               if (!(
   18685              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18686              : ((32 == 64 || TARGET_AVX512VL
   18687              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18688              :    && ix86_pre_reload_split ()
   18689              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18690              :                     STRIP_UNARY (operands[4]))
   18691              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18692              :                        STRIP_UNARY (operands[4]))
   18693              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18694              :                        STRIP_UNARY (operands[3]))
   18695              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18696              :                        STRIP_UNARY (operands[3])))) && 
   18697              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18698              : (TARGET_AVX)))
   18699              :                 return -1;
   18700              :               return 5889; /* *avx512vl_vpternlogv16hf_1 */
   18701              : 
   18702              :             case 2:
   18703              :               if (!
   18704              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18705              : ((16 == 64 || TARGET_AVX512VL
   18706              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18707              :    && ix86_pre_reload_split ()
   18708              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18709              :                     STRIP_UNARY (operands[4]))
   18710              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18711              :                        STRIP_UNARY (operands[4]))
   18712              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18713              :                        STRIP_UNARY (operands[3]))
   18714              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18715              :                        STRIP_UNARY (operands[3])))))
   18716              :                 return -1;
   18717              :               return 5916; /* *avx512fp16_vpternlogv8hf_1 */
   18718              : 
   18719              :             case 3:
   18720              :               if (!(
   18721              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18722              : ((64 == 64 || TARGET_AVX512VL
   18723              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18724              :    && ix86_pre_reload_split ()
   18725              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18726              :                     STRIP_UNARY (operands[4]))
   18727              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18728              :                        STRIP_UNARY (operands[4]))
   18729              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18730              :                        STRIP_UNARY (operands[3]))
   18731              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18732              :                        STRIP_UNARY (operands[3])))) && 
   18733              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18734              : (TARGET_AVX512F)))
   18735              :                 return -1;
   18736              :               return 5943; /* *avx512bw_vpternlogv32bf_1 */
   18737              : 
   18738              :             case 4:
   18739              :               if (!(
   18740              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18741              : ((32 == 64 || TARGET_AVX512VL
   18742              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18743              :    && ix86_pre_reload_split ()
   18744              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18745              :                     STRIP_UNARY (operands[4]))
   18746              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18747              :                        STRIP_UNARY (operands[4]))
   18748              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18749              :                        STRIP_UNARY (operands[3]))
   18750              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18751              :                        STRIP_UNARY (operands[3])))) && 
   18752              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18753              : (TARGET_AVX)))
   18754              :                 return -1;
   18755              :               return 5970; /* *avx512vl_vpternlogv16bf_1 */
   18756              : 
   18757              :             case 5:
   18758              :               if (!
   18759              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18760              : ((16 == 64 || TARGET_AVX512VL
   18761              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18762              :    && ix86_pre_reload_split ()
   18763              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18764              :                     STRIP_UNARY (operands[4]))
   18765              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18766              :                        STRIP_UNARY (operands[4]))
   18767              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18768              :                        STRIP_UNARY (operands[3]))
   18769              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18770              :                        STRIP_UNARY (operands[3])))))
   18771              :                 return -1;
   18772              :               return 5997; /* *avx512vl_vpternlogv8bf_1 */
   18773              : 
   18774              :             case 6:
   18775              :               if (!(
   18776              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18777              : ((64 == 64 || TARGET_AVX512VL
   18778              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18779              :    && ix86_pre_reload_split ()
   18780              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18781              :                     STRIP_UNARY (operands[4]))
   18782              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18783              :                        STRIP_UNARY (operands[4]))
   18784              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18785              :                        STRIP_UNARY (operands[3]))
   18786              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18787              :                        STRIP_UNARY (operands[3])))) && 
   18788              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18789              : (TARGET_AVX512F)))
   18790              :                 return -1;
   18791              :               return 6024; /* *avx512f_vpternlogv16sf_1 */
   18792              : 
   18793              :             case 7:
   18794              :               if (!(
   18795              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18796              : ((32 == 64 || TARGET_AVX512VL
   18797              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18798              :    && ix86_pre_reload_split ()
   18799              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18800              :                     STRIP_UNARY (operands[4]))
   18801              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18802              :                        STRIP_UNARY (operands[4]))
   18803              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18804              :                        STRIP_UNARY (operands[3]))
   18805              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18806              :                        STRIP_UNARY (operands[3])))) && 
   18807              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18808              : (TARGET_AVX)))
   18809              :                 return -1;
   18810              :               return 6051; /* *avx512vl_vpternlogv8sf_1 */
   18811              : 
   18812              :             case 8:
   18813              :               if (!
   18814              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18815              : ((16 == 64 || TARGET_AVX512VL
   18816              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18817              :    && ix86_pre_reload_split ()
   18818              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18819              :                     STRIP_UNARY (operands[4]))
   18820              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18821              :                        STRIP_UNARY (operands[4]))
   18822              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18823              :                        STRIP_UNARY (operands[3]))
   18824              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18825              :                        STRIP_UNARY (operands[3])))))
   18826              :                 return -1;
   18827              :               return 6078; /* *avx512vl_vpternlogv4sf_1 */
   18828              : 
   18829              :             case 9:
   18830              :               if (!(
   18831              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18832              : ((64 == 64 || TARGET_AVX512VL
   18833              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18834              :    && ix86_pre_reload_split ()
   18835              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18836              :                     STRIP_UNARY (operands[4]))
   18837              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18838              :                        STRIP_UNARY (operands[4]))
   18839              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18840              :                        STRIP_UNARY (operands[3]))
   18841              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18842              :                        STRIP_UNARY (operands[3])))) && 
   18843              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18844              : (TARGET_AVX512F)))
   18845              :                 return -1;
   18846              :               return 6105; /* *avx512f_vpternlogv8df_1 */
   18847              : 
   18848              :             case 10:
   18849              :               if (!(
   18850              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18851              : ((32 == 64 || TARGET_AVX512VL
   18852              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18853              :    && ix86_pre_reload_split ()
   18854              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18855              :                     STRIP_UNARY (operands[4]))
   18856              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18857              :                        STRIP_UNARY (operands[4]))
   18858              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18859              :                        STRIP_UNARY (operands[3]))
   18860              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18861              :                        STRIP_UNARY (operands[3])))) && 
   18862              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18863              : (TARGET_AVX)))
   18864              :                 return -1;
   18865              :               return 6132; /* *avx512vl_vpternlogv4df_1 */
   18866              : 
   18867              :             case 11:
   18868              :               if (!(
   18869              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18870              : ((16 == 64 || TARGET_AVX512VL
   18871              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18872              :    && ix86_pre_reload_split ()
   18873              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18874              :                     STRIP_UNARY (operands[4]))
   18875              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18876              :                        STRIP_UNARY (operands[4]))
   18877              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18878              :                        STRIP_UNARY (operands[3]))
   18879              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18880              :                        STRIP_UNARY (operands[3])))) && 
   18881              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18882              : (TARGET_SSE2)))
   18883              :                 return -1;
   18884              :               return 6159; /* *avx512vl_vpternlogv2df_1 */
   18885              : 
   18886              :             case 12:
   18887              :               if (!(
   18888              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18889              : ((64 == 64 || TARGET_AVX512VL
   18890              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18891              :    && ix86_pre_reload_split ()
   18892              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18893              :                     STRIP_UNARY (operands[4]))
   18894              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18895              :                        STRIP_UNARY (operands[4]))
   18896              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18897              :                        STRIP_UNARY (operands[3]))
   18898              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18899              :                        STRIP_UNARY (operands[3])))) && 
   18900              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18901              : (TARGET_AVX512F)))
   18902              :                 return -1;
   18903              :               return 5865; /* *avx512bw_vpternlogv32hf_1 */
   18904              : 
   18905              :             case 13:
   18906              :               if (!(
   18907              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18908              : ((32 == 64 || TARGET_AVX512VL
   18909              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18910              :    && ix86_pre_reload_split ()
   18911              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18912              :                     STRIP_UNARY (operands[4]))
   18913              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18914              :                        STRIP_UNARY (operands[4]))
   18915              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18916              :                        STRIP_UNARY (operands[3]))
   18917              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18918              :                        STRIP_UNARY (operands[3])))) && 
   18919              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18920              : (TARGET_AVX)))
   18921              :                 return -1;
   18922              :               return 5892; /* *avx512vl_vpternlogv16hf_1 */
   18923              : 
   18924              :             case 14:
   18925              :               if (!
   18926              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18927              : ((16 == 64 || TARGET_AVX512VL
   18928              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18929              :    && ix86_pre_reload_split ()
   18930              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18931              :                     STRIP_UNARY (operands[4]))
   18932              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18933              :                        STRIP_UNARY (operands[4]))
   18934              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18935              :                        STRIP_UNARY (operands[3]))
   18936              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18937              :                        STRIP_UNARY (operands[3])))))
   18938              :                 return -1;
   18939              :               return 5919; /* *avx512fp16_vpternlogv8hf_1 */
   18940              : 
   18941              :             case 15:
   18942              :               if (!(
   18943              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18944              : ((64 == 64 || TARGET_AVX512VL
   18945              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18946              :    && ix86_pre_reload_split ()
   18947              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18948              :                     STRIP_UNARY (operands[4]))
   18949              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18950              :                        STRIP_UNARY (operands[4]))
   18951              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18952              :                        STRIP_UNARY (operands[3]))
   18953              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18954              :                        STRIP_UNARY (operands[3])))) && 
   18955              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18956              : (TARGET_AVX512F)))
   18957              :                 return -1;
   18958              :               return 5946; /* *avx512bw_vpternlogv32bf_1 */
   18959              : 
   18960              :             case 16:
   18961              :               if (!(
   18962              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18963              : ((32 == 64 || TARGET_AVX512VL
   18964              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18965              :    && ix86_pre_reload_split ()
   18966              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18967              :                     STRIP_UNARY (operands[4]))
   18968              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18969              :                        STRIP_UNARY (operands[4]))
   18970              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18971              :                        STRIP_UNARY (operands[3]))
   18972              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18973              :                        STRIP_UNARY (operands[3])))) && 
   18974              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18975              : (TARGET_AVX)))
   18976              :                 return -1;
   18977              :               return 5973; /* *avx512vl_vpternlogv16bf_1 */
   18978              : 
   18979              :             case 17:
   18980              :               if (!
   18981              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18982              : ((16 == 64 || TARGET_AVX512VL
   18983              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18984              :    && ix86_pre_reload_split ()
   18985              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18986              :                     STRIP_UNARY (operands[4]))
   18987              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18988              :                        STRIP_UNARY (operands[4]))
   18989              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18990              :                        STRIP_UNARY (operands[3]))
   18991              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18992              :                        STRIP_UNARY (operands[3])))))
   18993              :                 return -1;
   18994              :               return 6000; /* *avx512vl_vpternlogv8bf_1 */
   18995              : 
   18996              :             case 18:
   18997              :               if (!(
   18998              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18999              : ((64 == 64 || TARGET_AVX512VL
   19000              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19001              :    && ix86_pre_reload_split ()
   19002              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19003              :                     STRIP_UNARY (operands[4]))
   19004              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19005              :                        STRIP_UNARY (operands[4]))
   19006              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19007              :                        STRIP_UNARY (operands[3]))
   19008              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19009              :                        STRIP_UNARY (operands[3])))) && 
   19010              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19011              : (TARGET_AVX512F)))
   19012              :                 return -1;
   19013              :               return 6027; /* *avx512f_vpternlogv16sf_1 */
   19014              : 
   19015              :             case 19:
   19016              :               if (!(
   19017              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19018              : ((32 == 64 || TARGET_AVX512VL
   19019              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19020              :    && ix86_pre_reload_split ()
   19021              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19022              :                     STRIP_UNARY (operands[4]))
   19023              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19024              :                        STRIP_UNARY (operands[4]))
   19025              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19026              :                        STRIP_UNARY (operands[3]))
   19027              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19028              :                        STRIP_UNARY (operands[3])))) && 
   19029              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19030              : (TARGET_AVX)))
   19031              :                 return -1;
   19032              :               return 6054; /* *avx512vl_vpternlogv8sf_1 */
   19033              : 
   19034              :             case 20:
   19035              :               if (!
   19036              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19037              : ((16 == 64 || TARGET_AVX512VL
   19038              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19039              :    && ix86_pre_reload_split ()
   19040              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19041              :                     STRIP_UNARY (operands[4]))
   19042              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19043              :                        STRIP_UNARY (operands[4]))
   19044              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19045              :                        STRIP_UNARY (operands[3]))
   19046              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19047              :                        STRIP_UNARY (operands[3])))))
   19048              :                 return -1;
   19049              :               return 6081; /* *avx512vl_vpternlogv4sf_1 */
   19050              : 
   19051              :             case 21:
   19052              :               if (!(
   19053              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19054              : ((64 == 64 || TARGET_AVX512VL
   19055              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19056              :    && ix86_pre_reload_split ()
   19057              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19058              :                     STRIP_UNARY (operands[4]))
   19059              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19060              :                        STRIP_UNARY (operands[4]))
   19061              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19062              :                        STRIP_UNARY (operands[3]))
   19063              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19064              :                        STRIP_UNARY (operands[3])))) && 
   19065              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19066              : (TARGET_AVX512F)))
   19067              :                 return -1;
   19068              :               return 6108; /* *avx512f_vpternlogv8df_1 */
   19069              : 
   19070              :             case 22:
   19071              :               if (!(
   19072              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19073              : ((32 == 64 || TARGET_AVX512VL
   19074              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19075              :    && ix86_pre_reload_split ()
   19076              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19077              :                     STRIP_UNARY (operands[4]))
   19078              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19079              :                        STRIP_UNARY (operands[4]))
   19080              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19081              :                        STRIP_UNARY (operands[3]))
   19082              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19083              :                        STRIP_UNARY (operands[3])))) && 
   19084              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19085              : (TARGET_AVX)))
   19086              :                 return -1;
   19087              :               return 6135; /* *avx512vl_vpternlogv4df_1 */
   19088              : 
   19089              :             case 23:
   19090              :               if (!(
   19091              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19092              : ((16 == 64 || TARGET_AVX512VL
   19093              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19094              :    && ix86_pre_reload_split ()
   19095              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19096              :                     STRIP_UNARY (operands[4]))
   19097              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19098              :                        STRIP_UNARY (operands[4]))
   19099              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19100              :                        STRIP_UNARY (operands[3]))
   19101              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19102              :                        STRIP_UNARY (operands[3])))) && 
   19103              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19104              : (TARGET_SSE2)))
   19105              :                 return -1;
   19106              :               return 6162; /* *avx512vl_vpternlogv2df_1 */
   19107              : 
   19108              :             case 24:
   19109              :               if (!(
   19110              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19111              : ((64 == 64 || TARGET_AVX512VL
   19112              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19113              :    && ix86_pre_reload_split ()
   19114              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19115              :                     STRIP_UNARY (operands[4]))
   19116              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19117              :                        STRIP_UNARY (operands[4]))
   19118              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19119              :                        STRIP_UNARY (operands[3]))
   19120              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19121              :                        STRIP_UNARY (operands[3])))) && 
   19122              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19123              : (TARGET_AVX512F)))
   19124              :                 return -1;
   19125              :               return 5868; /* *avx512bw_vpternlogv32hf_1 */
   19126              : 
   19127              :             case 25:
   19128              :               if (!(
   19129              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19130              : ((32 == 64 || TARGET_AVX512VL
   19131              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19132              :    && ix86_pre_reload_split ()
   19133              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19134              :                     STRIP_UNARY (operands[4]))
   19135              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19136              :                        STRIP_UNARY (operands[4]))
   19137              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19138              :                        STRIP_UNARY (operands[3]))
   19139              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19140              :                        STRIP_UNARY (operands[3])))) && 
   19141              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19142              : (TARGET_AVX)))
   19143              :                 return -1;
   19144              :               return 5895; /* *avx512vl_vpternlogv16hf_1 */
   19145              : 
   19146              :             case 26:
   19147              :               if (!
   19148              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19149              : ((16 == 64 || TARGET_AVX512VL
   19150              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19151              :    && ix86_pre_reload_split ()
   19152              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19153              :                     STRIP_UNARY (operands[4]))
   19154              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19155              :                        STRIP_UNARY (operands[4]))
   19156              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19157              :                        STRIP_UNARY (operands[3]))
   19158              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19159              :                        STRIP_UNARY (operands[3])))))
   19160              :                 return -1;
   19161              :               return 5922; /* *avx512fp16_vpternlogv8hf_1 */
   19162              : 
   19163              :             case 27:
   19164              :               if (!(
   19165              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19166              : ((64 == 64 || TARGET_AVX512VL
   19167              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19168              :    && ix86_pre_reload_split ()
   19169              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19170              :                     STRIP_UNARY (operands[4]))
   19171              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19172              :                        STRIP_UNARY (operands[4]))
   19173              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19174              :                        STRIP_UNARY (operands[3]))
   19175              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19176              :                        STRIP_UNARY (operands[3])))) && 
   19177              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19178              : (TARGET_AVX512F)))
   19179              :                 return -1;
   19180              :               return 5949; /* *avx512bw_vpternlogv32bf_1 */
   19181              : 
   19182              :             case 28:
   19183              :               if (!(
   19184              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19185              : ((32 == 64 || TARGET_AVX512VL
   19186              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19187              :    && ix86_pre_reload_split ()
   19188              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19189              :                     STRIP_UNARY (operands[4]))
   19190              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19191              :                        STRIP_UNARY (operands[4]))
   19192              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19193              :                        STRIP_UNARY (operands[3]))
   19194              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19195              :                        STRIP_UNARY (operands[3])))) && 
   19196              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19197              : (TARGET_AVX)))
   19198              :                 return -1;
   19199              :               return 5976; /* *avx512vl_vpternlogv16bf_1 */
   19200              : 
   19201              :             case 29:
   19202              :               if (!
   19203              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19204              : ((16 == 64 || TARGET_AVX512VL
   19205              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19206              :    && ix86_pre_reload_split ()
   19207              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19208              :                     STRIP_UNARY (operands[4]))
   19209              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19210              :                        STRIP_UNARY (operands[4]))
   19211              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19212              :                        STRIP_UNARY (operands[3]))
   19213              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19214              :                        STRIP_UNARY (operands[3])))))
   19215              :                 return -1;
   19216              :               return 6003; /* *avx512vl_vpternlogv8bf_1 */
   19217              : 
   19218              :             case 30:
   19219              :               if (!(
   19220              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19221              : ((64 == 64 || TARGET_AVX512VL
   19222              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19223              :    && ix86_pre_reload_split ()
   19224              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19225              :                     STRIP_UNARY (operands[4]))
   19226              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19227              :                        STRIP_UNARY (operands[4]))
   19228              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19229              :                        STRIP_UNARY (operands[3]))
   19230              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19231              :                        STRIP_UNARY (operands[3])))) && 
   19232              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19233              : (TARGET_AVX512F)))
   19234              :                 return -1;
   19235              :               return 6030; /* *avx512f_vpternlogv16sf_1 */
   19236              : 
   19237              :             case 31:
   19238              :               if (!(
   19239              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19240              : ((32 == 64 || TARGET_AVX512VL
   19241              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19242              :    && ix86_pre_reload_split ()
   19243              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19244              :                     STRIP_UNARY (operands[4]))
   19245              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19246              :                        STRIP_UNARY (operands[4]))
   19247              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19248              :                        STRIP_UNARY (operands[3]))
   19249              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19250              :                        STRIP_UNARY (operands[3])))) && 
   19251              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19252              : (TARGET_AVX)))
   19253              :                 return -1;
   19254              :               return 6057; /* *avx512vl_vpternlogv8sf_1 */
   19255              : 
   19256              :             case 32:
   19257              :               if (!
   19258              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19259              : ((16 == 64 || TARGET_AVX512VL
   19260              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19261              :    && ix86_pre_reload_split ()
   19262              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19263              :                     STRIP_UNARY (operands[4]))
   19264              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19265              :                        STRIP_UNARY (operands[4]))
   19266              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19267              :                        STRIP_UNARY (operands[3]))
   19268              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19269              :                        STRIP_UNARY (operands[3])))))
   19270              :                 return -1;
   19271              :               return 6084; /* *avx512vl_vpternlogv4sf_1 */
   19272              : 
   19273              :             case 33:
   19274              :               if (!(
   19275              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19276              : ((64 == 64 || TARGET_AVX512VL
   19277              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19278              :    && ix86_pre_reload_split ()
   19279              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19280              :                     STRIP_UNARY (operands[4]))
   19281              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19282              :                        STRIP_UNARY (operands[4]))
   19283              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19284              :                        STRIP_UNARY (operands[3]))
   19285              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19286              :                        STRIP_UNARY (operands[3])))) && 
   19287              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19288              : (TARGET_AVX512F)))
   19289              :                 return -1;
   19290              :               return 6111; /* *avx512f_vpternlogv8df_1 */
   19291              : 
   19292              :             case 34:
   19293              :               if (!(
   19294              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19295              : ((32 == 64 || TARGET_AVX512VL
   19296              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19297              :    && ix86_pre_reload_split ()
   19298              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19299              :                     STRIP_UNARY (operands[4]))
   19300              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19301              :                        STRIP_UNARY (operands[4]))
   19302              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19303              :                        STRIP_UNARY (operands[3]))
   19304              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19305              :                        STRIP_UNARY (operands[3])))) && 
   19306              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19307              : (TARGET_AVX)))
   19308              :                 return -1;
   19309              :               return 6138; /* *avx512vl_vpternlogv4df_1 */
   19310              : 
   19311              :             case 35:
   19312              :               if (!(
   19313              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19314              : ((16 == 64 || TARGET_AVX512VL
   19315              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19316              :    && ix86_pre_reload_split ()
   19317              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19318              :                     STRIP_UNARY (operands[4]))
   19319              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19320              :                        STRIP_UNARY (operands[4]))
   19321              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19322              :                        STRIP_UNARY (operands[3]))
   19323              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19324              :                        STRIP_UNARY (operands[3])))) && 
   19325              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19326              : (TARGET_SSE2)))
   19327              :                 return -1;
   19328              :               return 6165; /* *avx512vl_vpternlogv2df_1 */
   19329              : 
   19330              :             case 36:
   19331              :               if (!(
   19332              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19333              : ((64 == 64 || TARGET_AVX512VL
   19334              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19335              :    && ix86_pre_reload_split ()) && 
   19336              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19337              : (TARGET_AVX512F)))
   19338              :                 return -1;
   19339              :               return 6942; /* *avx512bw_vpternlogv32hf_3 */
   19340              : 
   19341              :             case 37:
   19342              :               if (!(
   19343              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19344              : ((32 == 64 || TARGET_AVX512VL
   19345              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19346              :    && ix86_pre_reload_split ()) && 
   19347              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19348              : (TARGET_AVX)))
   19349              :                 return -1;
   19350              :               return 6951; /* *avx512vl_vpternlogv16hf_3 */
   19351              : 
   19352              :             case 38:
   19353              :               if (!
   19354              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19355              : ((16 == 64 || TARGET_AVX512VL
   19356              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19357              :    && ix86_pre_reload_split ()))
   19358              :                 return -1;
   19359              :               return 6960; /* *avx512fp16_vpternlogv8hf_3 */
   19360              : 
   19361              :             case 39:
   19362              :               if (!(
   19363              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19364              : ((64 == 64 || TARGET_AVX512VL
   19365              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19366              :    && ix86_pre_reload_split ()) && 
   19367              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19368              : (TARGET_AVX512F)))
   19369              :                 return -1;
   19370              :               return 6969; /* *avx512bw_vpternlogv32bf_3 */
   19371              : 
   19372              :             case 40:
   19373              :               if (!(
   19374              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19375              : ((32 == 64 || TARGET_AVX512VL
   19376              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19377              :    && ix86_pre_reload_split ()) && 
   19378              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19379              : (TARGET_AVX)))
   19380              :                 return -1;
   19381              :               return 6978; /* *avx512vl_vpternlogv16bf_3 */
   19382              : 
   19383              :             case 41:
   19384              :               if (!
   19385              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19386              : ((16 == 64 || TARGET_AVX512VL
   19387              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19388              :    && ix86_pre_reload_split ()))
   19389              :                 return -1;
   19390              :               return 6987; /* *avx512vl_vpternlogv8bf_3 */
   19391              : 
   19392              :             case 42:
   19393              :               if (!(
   19394              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19395              : ((64 == 64 || TARGET_AVX512VL
   19396              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19397              :    && ix86_pre_reload_split ()) && 
   19398              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19399              : (TARGET_AVX512F)))
   19400              :                 return -1;
   19401              :               return 6996; /* *avx512f_vpternlogv16sf_3 */
   19402              : 
   19403              :             case 43:
   19404              :               if (!(
   19405              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19406              : ((32 == 64 || TARGET_AVX512VL
   19407              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19408              :    && ix86_pre_reload_split ()) && 
   19409              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19410              : (TARGET_AVX)))
   19411              :                 return -1;
   19412              :               return 7005; /* *avx512vl_vpternlogv8sf_3 */
   19413              : 
   19414              :             case 44:
   19415              :               if (!
   19416              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19417              : ((16 == 64 || TARGET_AVX512VL
   19418              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19419              :    && ix86_pre_reload_split ()))
   19420              :                 return -1;
   19421              :               return 7014; /* *avx512vl_vpternlogv4sf_3 */
   19422              : 
   19423              :             case 45:
   19424              :               if (!(
   19425              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19426              : ((64 == 64 || TARGET_AVX512VL
   19427              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19428              :    && ix86_pre_reload_split ()) && 
   19429              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19430              : (TARGET_AVX512F)))
   19431              :                 return -1;
   19432              :               return 7023; /* *avx512f_vpternlogv8df_3 */
   19433              : 
   19434              :             case 46:
   19435              :               if (!(
   19436              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19437              : ((32 == 64 || TARGET_AVX512VL
   19438              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19439              :    && ix86_pre_reload_split ()) && 
   19440              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19441              : (TARGET_AVX)))
   19442              :                 return -1;
   19443              :               return 7032; /* *avx512vl_vpternlogv4df_3 */
   19444              : 
   19445              :             case 47:
   19446              :               if (!(
   19447              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19448              : ((16 == 64 || TARGET_AVX512VL
   19449              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19450              :    && ix86_pre_reload_split ()) && 
   19451              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19452              : (TARGET_SSE2)))
   19453              :                 return -1;
   19454              :               return 7041; /* *avx512vl_vpternlogv2df_3 */
   19455              : 
   19456              :             default:
   19457              :               return -1;
   19458              :             }
   19459              : 
   19460              :         case AND:
   19461              :           switch (pattern542 (x2))
   19462              :             {
   19463              :             case 0:
   19464              :               if (!(
   19465              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19466              : ((64 == 64 || TARGET_AVX512VL
   19467              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19468              :    && ix86_pre_reload_split ()
   19469              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19470              :                     STRIP_UNARY (operands[4]))
   19471              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19472              :                        STRIP_UNARY (operands[4]))
   19473              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19474              :                        STRIP_UNARY (operands[3]))
   19475              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19476              :                        STRIP_UNARY (operands[3])))) && 
   19477              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19478              : (TARGET_AVX512F)))
   19479              :                 return -1;
   19480              :               return 6510; /* *avx512bw_vpternlogv32hf_2 */
   19481              : 
   19482              :             case 1:
   19483              :               if (!(
   19484              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19485              : ((32 == 64 || TARGET_AVX512VL
   19486              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19487              :    && ix86_pre_reload_split ()
   19488              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19489              :                     STRIP_UNARY (operands[4]))
   19490              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19491              :                        STRIP_UNARY (operands[4]))
   19492              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19493              :                        STRIP_UNARY (operands[3]))
   19494              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19495              :                        STRIP_UNARY (operands[3])))) && 
   19496              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19497              : (TARGET_AVX)))
   19498              :                 return -1;
   19499              :               return 6537; /* *avx512vl_vpternlogv16hf_2 */
   19500              : 
   19501              :             case 2:
   19502              :               if (!
   19503              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19504              : ((16 == 64 || TARGET_AVX512VL
   19505              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19506              :    && ix86_pre_reload_split ()
   19507              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19508              :                     STRIP_UNARY (operands[4]))
   19509              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19510              :                        STRIP_UNARY (operands[4]))
   19511              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19512              :                        STRIP_UNARY (operands[3]))
   19513              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19514              :                        STRIP_UNARY (operands[3])))))
   19515              :                 return -1;
   19516              :               return 6564; /* *avx512fp16_vpternlogv8hf_2 */
   19517              : 
   19518              :             case 3:
   19519              :               if (!(
   19520              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19521              : ((64 == 64 || TARGET_AVX512VL
   19522              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19523              :    && ix86_pre_reload_split ()
   19524              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19525              :                     STRIP_UNARY (operands[4]))
   19526              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19527              :                        STRIP_UNARY (operands[4]))
   19528              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19529              :                        STRIP_UNARY (operands[3]))
   19530              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19531              :                        STRIP_UNARY (operands[3])))) && 
   19532              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19533              : (TARGET_AVX512F)))
   19534              :                 return -1;
   19535              :               return 6591; /* *avx512bw_vpternlogv32bf_2 */
   19536              : 
   19537              :             case 4:
   19538              :               if (!(
   19539              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19540              : ((32 == 64 || TARGET_AVX512VL
   19541              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19542              :    && ix86_pre_reload_split ()
   19543              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19544              :                     STRIP_UNARY (operands[4]))
   19545              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19546              :                        STRIP_UNARY (operands[4]))
   19547              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19548              :                        STRIP_UNARY (operands[3]))
   19549              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19550              :                        STRIP_UNARY (operands[3])))) && 
   19551              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19552              : (TARGET_AVX)))
   19553              :                 return -1;
   19554              :               return 6618; /* *avx512vl_vpternlogv16bf_2 */
   19555              : 
   19556              :             case 5:
   19557              :               if (!
   19558              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19559              : ((16 == 64 || TARGET_AVX512VL
   19560              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19561              :    && ix86_pre_reload_split ()
   19562              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19563              :                     STRIP_UNARY (operands[4]))
   19564              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19565              :                        STRIP_UNARY (operands[4]))
   19566              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19567              :                        STRIP_UNARY (operands[3]))
   19568              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19569              :                        STRIP_UNARY (operands[3])))))
   19570              :                 return -1;
   19571              :               return 6645; /* *avx512vl_vpternlogv8bf_2 */
   19572              : 
   19573              :             case 6:
   19574              :               if (!(
   19575              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19576              : ((64 == 64 || TARGET_AVX512VL
   19577              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19578              :    && ix86_pre_reload_split ()
   19579              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19580              :                     STRIP_UNARY (operands[4]))
   19581              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19582              :                        STRIP_UNARY (operands[4]))
   19583              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19584              :                        STRIP_UNARY (operands[3]))
   19585              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19586              :                        STRIP_UNARY (operands[3])))) && 
   19587              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19588              : (TARGET_AVX512F)))
   19589              :                 return -1;
   19590              :               return 6672; /* *avx512f_vpternlogv16sf_2 */
   19591              : 
   19592              :             case 7:
   19593              :               if (!(
   19594              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19595              : ((32 == 64 || TARGET_AVX512VL
   19596              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19597              :    && ix86_pre_reload_split ()
   19598              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19599              :                     STRIP_UNARY (operands[4]))
   19600              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19601              :                        STRIP_UNARY (operands[4]))
   19602              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19603              :                        STRIP_UNARY (operands[3]))
   19604              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19605              :                        STRIP_UNARY (operands[3])))) && 
   19606              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19607              : (TARGET_AVX)))
   19608              :                 return -1;
   19609              :               return 6699; /* *avx512vl_vpternlogv8sf_2 */
   19610              : 
   19611              :             case 8:
   19612              :               if (!
   19613              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19614              : ((16 == 64 || TARGET_AVX512VL
   19615              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19616              :    && ix86_pre_reload_split ()
   19617              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19618              :                     STRIP_UNARY (operands[4]))
   19619              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19620              :                        STRIP_UNARY (operands[4]))
   19621              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19622              :                        STRIP_UNARY (operands[3]))
   19623              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19624              :                        STRIP_UNARY (operands[3])))))
   19625              :                 return -1;
   19626              :               return 6726; /* *avx512vl_vpternlogv4sf_2 */
   19627              : 
   19628              :             case 9:
   19629              :               if (!(
   19630              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19631              : ((64 == 64 || TARGET_AVX512VL
   19632              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19633              :    && ix86_pre_reload_split ()
   19634              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19635              :                     STRIP_UNARY (operands[4]))
   19636              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19637              :                        STRIP_UNARY (operands[4]))
   19638              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19639              :                        STRIP_UNARY (operands[3]))
   19640              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19641              :                        STRIP_UNARY (operands[3])))) && 
   19642              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19643              : (TARGET_AVX512F)))
   19644              :                 return -1;
   19645              :               return 6753; /* *avx512f_vpternlogv8df_2 */
   19646              : 
   19647              :             case 10:
   19648              :               if (!(
   19649              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19650              : ((32 == 64 || TARGET_AVX512VL
   19651              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19652              :    && ix86_pre_reload_split ()
   19653              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19654              :                     STRIP_UNARY (operands[4]))
   19655              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19656              :                        STRIP_UNARY (operands[4]))
   19657              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19658              :                        STRIP_UNARY (operands[3]))
   19659              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19660              :                        STRIP_UNARY (operands[3])))) && 
   19661              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19662              : (TARGET_AVX)))
   19663              :                 return -1;
   19664              :               return 6780; /* *avx512vl_vpternlogv4df_2 */
   19665              : 
   19666              :             case 11:
   19667              :               if (!(
   19668              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19669              : ((16 == 64 || TARGET_AVX512VL
   19670              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19671              :    && ix86_pre_reload_split ()
   19672              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19673              :                     STRIP_UNARY (operands[4]))
   19674              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19675              :                        STRIP_UNARY (operands[4]))
   19676              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19677              :                        STRIP_UNARY (operands[3]))
   19678              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19679              :                        STRIP_UNARY (operands[3])))) && 
   19680              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19681              : (TARGET_SSE2)))
   19682              :                 return -1;
   19683              :               return 6807; /* *avx512vl_vpternlogv2df_2 */
   19684              : 
   19685              :             default:
   19686              :               return -1;
   19687              :             }
   19688              : 
   19689              :         case IOR:
   19690              :           switch (pattern542 (x2))
   19691              :             {
   19692              :             case 0:
   19693              :               if (!(
   19694              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19695              : ((64 == 64 || TARGET_AVX512VL
   19696              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19697              :    && ix86_pre_reload_split ()
   19698              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19699              :                     STRIP_UNARY (operands[4]))
   19700              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19701              :                        STRIP_UNARY (operands[4]))
   19702              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19703              :                        STRIP_UNARY (operands[3]))
   19704              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19705              :                        STRIP_UNARY (operands[3])))) && 
   19706              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19707              : (TARGET_AVX512F)))
   19708              :                 return -1;
   19709              :               return 6513; /* *avx512bw_vpternlogv32hf_2 */
   19710              : 
   19711              :             case 1:
   19712              :               if (!(
   19713              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19714              : ((32 == 64 || TARGET_AVX512VL
   19715              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19716              :    && ix86_pre_reload_split ()
   19717              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19718              :                     STRIP_UNARY (operands[4]))
   19719              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19720              :                        STRIP_UNARY (operands[4]))
   19721              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19722              :                        STRIP_UNARY (operands[3]))
   19723              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19724              :                        STRIP_UNARY (operands[3])))) && 
   19725              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19726              : (TARGET_AVX)))
   19727              :                 return -1;
   19728              :               return 6540; /* *avx512vl_vpternlogv16hf_2 */
   19729              : 
   19730              :             case 2:
   19731              :               if (!
   19732              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19733              : ((16 == 64 || TARGET_AVX512VL
   19734              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19735              :    && ix86_pre_reload_split ()
   19736              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19737              :                     STRIP_UNARY (operands[4]))
   19738              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19739              :                        STRIP_UNARY (operands[4]))
   19740              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19741              :                        STRIP_UNARY (operands[3]))
   19742              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19743              :                        STRIP_UNARY (operands[3])))))
   19744              :                 return -1;
   19745              :               return 6567; /* *avx512fp16_vpternlogv8hf_2 */
   19746              : 
   19747              :             case 3:
   19748              :               if (!(
   19749              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19750              : ((64 == 64 || TARGET_AVX512VL
   19751              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19752              :    && ix86_pre_reload_split ()
   19753              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19754              :                     STRIP_UNARY (operands[4]))
   19755              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19756              :                        STRIP_UNARY (operands[4]))
   19757              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19758              :                        STRIP_UNARY (operands[3]))
   19759              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19760              :                        STRIP_UNARY (operands[3])))) && 
   19761              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19762              : (TARGET_AVX512F)))
   19763              :                 return -1;
   19764              :               return 6594; /* *avx512bw_vpternlogv32bf_2 */
   19765              : 
   19766              :             case 4:
   19767              :               if (!(
   19768              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19769              : ((32 == 64 || TARGET_AVX512VL
   19770              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19771              :    && ix86_pre_reload_split ()
   19772              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19773              :                     STRIP_UNARY (operands[4]))
   19774              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19775              :                        STRIP_UNARY (operands[4]))
   19776              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19777              :                        STRIP_UNARY (operands[3]))
   19778              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19779              :                        STRIP_UNARY (operands[3])))) && 
   19780              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19781              : (TARGET_AVX)))
   19782              :                 return -1;
   19783              :               return 6621; /* *avx512vl_vpternlogv16bf_2 */
   19784              : 
   19785              :             case 5:
   19786              :               if (!
   19787              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19788              : ((16 == 64 || TARGET_AVX512VL
   19789              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19790              :    && ix86_pre_reload_split ()
   19791              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19792              :                     STRIP_UNARY (operands[4]))
   19793              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19794              :                        STRIP_UNARY (operands[4]))
   19795              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19796              :                        STRIP_UNARY (operands[3]))
   19797              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19798              :                        STRIP_UNARY (operands[3])))))
   19799              :                 return -1;
   19800              :               return 6648; /* *avx512vl_vpternlogv8bf_2 */
   19801              : 
   19802              :             case 6:
   19803              :               if (!(
   19804              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19805              : ((64 == 64 || TARGET_AVX512VL
   19806              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19807              :    && ix86_pre_reload_split ()
   19808              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19809              :                     STRIP_UNARY (operands[4]))
   19810              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19811              :                        STRIP_UNARY (operands[4]))
   19812              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19813              :                        STRIP_UNARY (operands[3]))
   19814              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19815              :                        STRIP_UNARY (operands[3])))) && 
   19816              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19817              : (TARGET_AVX512F)))
   19818              :                 return -1;
   19819              :               return 6675; /* *avx512f_vpternlogv16sf_2 */
   19820              : 
   19821              :             case 7:
   19822              :               if (!(
   19823              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19824              : ((32 == 64 || TARGET_AVX512VL
   19825              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19826              :    && ix86_pre_reload_split ()
   19827              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19828              :                     STRIP_UNARY (operands[4]))
   19829              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19830              :                        STRIP_UNARY (operands[4]))
   19831              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19832              :                        STRIP_UNARY (operands[3]))
   19833              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19834              :                        STRIP_UNARY (operands[3])))) && 
   19835              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19836              : (TARGET_AVX)))
   19837              :                 return -1;
   19838              :               return 6702; /* *avx512vl_vpternlogv8sf_2 */
   19839              : 
   19840              :             case 8:
   19841              :               if (!
   19842              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19843              : ((16 == 64 || TARGET_AVX512VL
   19844              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19845              :    && ix86_pre_reload_split ()
   19846              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19847              :                     STRIP_UNARY (operands[4]))
   19848              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19849              :                        STRIP_UNARY (operands[4]))
   19850              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19851              :                        STRIP_UNARY (operands[3]))
   19852              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19853              :                        STRIP_UNARY (operands[3])))))
   19854              :                 return -1;
   19855              :               return 6729; /* *avx512vl_vpternlogv4sf_2 */
   19856              : 
   19857              :             case 9:
   19858              :               if (!(
   19859              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19860              : ((64 == 64 || TARGET_AVX512VL
   19861              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19862              :    && ix86_pre_reload_split ()
   19863              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19864              :                     STRIP_UNARY (operands[4]))
   19865              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19866              :                        STRIP_UNARY (operands[4]))
   19867              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19868              :                        STRIP_UNARY (operands[3]))
   19869              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19870              :                        STRIP_UNARY (operands[3])))) && 
   19871              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19872              : (TARGET_AVX512F)))
   19873              :                 return -1;
   19874              :               return 6756; /* *avx512f_vpternlogv8df_2 */
   19875              : 
   19876              :             case 10:
   19877              :               if (!(
   19878              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19879              : ((32 == 64 || TARGET_AVX512VL
   19880              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19881              :    && ix86_pre_reload_split ()
   19882              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19883              :                     STRIP_UNARY (operands[4]))
   19884              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19885              :                        STRIP_UNARY (operands[4]))
   19886              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19887              :                        STRIP_UNARY (operands[3]))
   19888              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19889              :                        STRIP_UNARY (operands[3])))) && 
   19890              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19891              : (TARGET_AVX)))
   19892              :                 return -1;
   19893              :               return 6783; /* *avx512vl_vpternlogv4df_2 */
   19894              : 
   19895              :             case 11:
   19896              :               if (!(
   19897              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19898              : ((16 == 64 || TARGET_AVX512VL
   19899              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19900              :    && ix86_pre_reload_split ()
   19901              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19902              :                     STRIP_UNARY (operands[4]))
   19903              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19904              :                        STRIP_UNARY (operands[4]))
   19905              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19906              :                        STRIP_UNARY (operands[3]))
   19907              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19908              :                        STRIP_UNARY (operands[3])))) && 
   19909              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19910              : (TARGET_SSE2)))
   19911              :                 return -1;
   19912              :               return 6810; /* *avx512vl_vpternlogv2df_2 */
   19913              : 
   19914              :             default:
   19915              :               return -1;
   19916              :             }
   19917              : 
   19918              :         case XOR:
   19919              :           switch (pattern542 (x2))
   19920              :             {
   19921              :             case 0:
   19922              :               if (!(
   19923              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19924              : ((64 == 64 || TARGET_AVX512VL
   19925              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19926              :    && ix86_pre_reload_split ()
   19927              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19928              :                     STRIP_UNARY (operands[4]))
   19929              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19930              :                        STRIP_UNARY (operands[4]))
   19931              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19932              :                        STRIP_UNARY (operands[3]))
   19933              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19934              :                        STRIP_UNARY (operands[3])))) && 
   19935              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19936              : (TARGET_AVX512F)))
   19937              :                 return -1;
   19938              :               return 6516; /* *avx512bw_vpternlogv32hf_2 */
   19939              : 
   19940              :             case 1:
   19941              :               if (!(
   19942              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19943              : ((32 == 64 || TARGET_AVX512VL
   19944              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19945              :    && ix86_pre_reload_split ()
   19946              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19947              :                     STRIP_UNARY (operands[4]))
   19948              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19949              :                        STRIP_UNARY (operands[4]))
   19950              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19951              :                        STRIP_UNARY (operands[3]))
   19952              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19953              :                        STRIP_UNARY (operands[3])))) && 
   19954              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19955              : (TARGET_AVX)))
   19956              :                 return -1;
   19957              :               return 6543; /* *avx512vl_vpternlogv16hf_2 */
   19958              : 
   19959              :             case 2:
   19960              :               if (!
   19961              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19962              : ((16 == 64 || TARGET_AVX512VL
   19963              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19964              :    && ix86_pre_reload_split ()
   19965              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19966              :                     STRIP_UNARY (operands[4]))
   19967              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19968              :                        STRIP_UNARY (operands[4]))
   19969              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19970              :                        STRIP_UNARY (operands[3]))
   19971              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19972              :                        STRIP_UNARY (operands[3])))))
   19973              :                 return -1;
   19974              :               return 6570; /* *avx512fp16_vpternlogv8hf_2 */
   19975              : 
   19976              :             case 3:
   19977              :               if (!(
   19978              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19979              : ((64 == 64 || TARGET_AVX512VL
   19980              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19981              :    && ix86_pre_reload_split ()
   19982              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19983              :                     STRIP_UNARY (operands[4]))
   19984              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19985              :                        STRIP_UNARY (operands[4]))
   19986              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19987              :                        STRIP_UNARY (operands[3]))
   19988              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19989              :                        STRIP_UNARY (operands[3])))) && 
   19990              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19991              : (TARGET_AVX512F)))
   19992              :                 return -1;
   19993              :               return 6597; /* *avx512bw_vpternlogv32bf_2 */
   19994              : 
   19995              :             case 4:
   19996              :               if (!(
   19997              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19998              : ((32 == 64 || TARGET_AVX512VL
   19999              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20000              :    && ix86_pre_reload_split ()
   20001              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20002              :                     STRIP_UNARY (operands[4]))
   20003              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20004              :                        STRIP_UNARY (operands[4]))
   20005              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20006              :                        STRIP_UNARY (operands[3]))
   20007              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20008              :                        STRIP_UNARY (operands[3])))) && 
   20009              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20010              : (TARGET_AVX)))
   20011              :                 return -1;
   20012              :               return 6624; /* *avx512vl_vpternlogv16bf_2 */
   20013              : 
   20014              :             case 5:
   20015              :               if (!
   20016              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20017              : ((16 == 64 || TARGET_AVX512VL
   20018              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20019              :    && ix86_pre_reload_split ()
   20020              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20021              :                     STRIP_UNARY (operands[4]))
   20022              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20023              :                        STRIP_UNARY (operands[4]))
   20024              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20025              :                        STRIP_UNARY (operands[3]))
   20026              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20027              :                        STRIP_UNARY (operands[3])))))
   20028              :                 return -1;
   20029              :               return 6651; /* *avx512vl_vpternlogv8bf_2 */
   20030              : 
   20031              :             case 6:
   20032              :               if (!(
   20033              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20034              : ((64 == 64 || TARGET_AVX512VL
   20035              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20036              :    && ix86_pre_reload_split ()
   20037              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20038              :                     STRIP_UNARY (operands[4]))
   20039              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20040              :                        STRIP_UNARY (operands[4]))
   20041              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20042              :                        STRIP_UNARY (operands[3]))
   20043              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20044              :                        STRIP_UNARY (operands[3])))) && 
   20045              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20046              : (TARGET_AVX512F)))
   20047              :                 return -1;
   20048              :               return 6678; /* *avx512f_vpternlogv16sf_2 */
   20049              : 
   20050              :             case 7:
   20051              :               if (!(
   20052              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20053              : ((32 == 64 || TARGET_AVX512VL
   20054              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20055              :    && ix86_pre_reload_split ()
   20056              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20057              :                     STRIP_UNARY (operands[4]))
   20058              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20059              :                        STRIP_UNARY (operands[4]))
   20060              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20061              :                        STRIP_UNARY (operands[3]))
   20062              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20063              :                        STRIP_UNARY (operands[3])))) && 
   20064              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20065              : (TARGET_AVX)))
   20066              :                 return -1;
   20067              :               return 6705; /* *avx512vl_vpternlogv8sf_2 */
   20068              : 
   20069              :             case 8:
   20070              :               if (!
   20071              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20072              : ((16 == 64 || TARGET_AVX512VL
   20073              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20074              :    && ix86_pre_reload_split ()
   20075              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20076              :                     STRIP_UNARY (operands[4]))
   20077              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20078              :                        STRIP_UNARY (operands[4]))
   20079              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20080              :                        STRIP_UNARY (operands[3]))
   20081              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20082              :                        STRIP_UNARY (operands[3])))))
   20083              :                 return -1;
   20084              :               return 6732; /* *avx512vl_vpternlogv4sf_2 */
   20085              : 
   20086              :             case 9:
   20087              :               if (!(
   20088              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20089              : ((64 == 64 || TARGET_AVX512VL
   20090              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20091              :    && ix86_pre_reload_split ()
   20092              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20093              :                     STRIP_UNARY (operands[4]))
   20094              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20095              :                        STRIP_UNARY (operands[4]))
   20096              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20097              :                        STRIP_UNARY (operands[3]))
   20098              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20099              :                        STRIP_UNARY (operands[3])))) && 
   20100              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20101              : (TARGET_AVX512F)))
   20102              :                 return -1;
   20103              :               return 6759; /* *avx512f_vpternlogv8df_2 */
   20104              : 
   20105              :             case 10:
   20106              :               if (!(
   20107              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20108              : ((32 == 64 || TARGET_AVX512VL
   20109              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20110              :    && ix86_pre_reload_split ()
   20111              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20112              :                     STRIP_UNARY (operands[4]))
   20113              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20114              :                        STRIP_UNARY (operands[4]))
   20115              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20116              :                        STRIP_UNARY (operands[3]))
   20117              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20118              :                        STRIP_UNARY (operands[3])))) && 
   20119              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20120              : (TARGET_AVX)))
   20121              :                 return -1;
   20122              :               return 6786; /* *avx512vl_vpternlogv4df_2 */
   20123              : 
   20124              :             case 11:
   20125              :               if (!(
   20126              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20127              : ((16 == 64 || TARGET_AVX512VL
   20128              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20129              :    && ix86_pre_reload_split ()
   20130              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20131              :                     STRIP_UNARY (operands[4]))
   20132              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20133              :                        STRIP_UNARY (operands[4]))
   20134              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20135              :                        STRIP_UNARY (operands[3]))
   20136              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20137              :                        STRIP_UNARY (operands[3])))) && 
   20138              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20139              : (TARGET_SSE2)))
   20140              :                 return -1;
   20141              :               return 6813; /* *avx512vl_vpternlogv2df_2 */
   20142              : 
   20143              :             default:
   20144              :               return -1;
   20145              :             }
   20146              : 
   20147              :         default:
   20148              :           return -1;
   20149              :         }
   20150              : 
   20151              :     case IOR:
   20152              :       x4 = XEXP (x3, 0);
   20153              :       switch (GET_CODE (x4))
   20154              :         {
   20155              :         case REG:
   20156              :         case SUBREG:
   20157              :         case MEM:
   20158              :         case NOT:
   20159              :           switch (pattern541 (x2))
   20160              :             {
   20161              :             case 0:
   20162              :               if (!(
   20163              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20164              : ((64 == 64 || TARGET_AVX512VL
   20165              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20166              :    && ix86_pre_reload_split ()
   20167              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20168              :                     STRIP_UNARY (operands[4]))
   20169              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20170              :                        STRIP_UNARY (operands[4]))
   20171              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20172              :                        STRIP_UNARY (operands[3]))
   20173              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20174              :                        STRIP_UNARY (operands[3])))) && 
   20175              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20176              : (TARGET_AVX512F)))
   20177              :                 return -1;
   20178              :               return 5871; /* *avx512bw_vpternlogv32hf_1 */
   20179              : 
   20180              :             case 1:
   20181              :               if (!(
   20182              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20183              : ((32 == 64 || TARGET_AVX512VL
   20184              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20185              :    && ix86_pre_reload_split ()
   20186              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20187              :                     STRIP_UNARY (operands[4]))
   20188              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20189              :                        STRIP_UNARY (operands[4]))
   20190              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20191              :                        STRIP_UNARY (operands[3]))
   20192              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20193              :                        STRIP_UNARY (operands[3])))) && 
   20194              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20195              : (TARGET_AVX)))
   20196              :                 return -1;
   20197              :               return 5898; /* *avx512vl_vpternlogv16hf_1 */
   20198              : 
   20199              :             case 2:
   20200              :               if (!
   20201              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20202              : ((16 == 64 || TARGET_AVX512VL
   20203              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20204              :    && ix86_pre_reload_split ()
   20205              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20206              :                     STRIP_UNARY (operands[4]))
   20207              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20208              :                        STRIP_UNARY (operands[4]))
   20209              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20210              :                        STRIP_UNARY (operands[3]))
   20211              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20212              :                        STRIP_UNARY (operands[3])))))
   20213              :                 return -1;
   20214              :               return 5925; /* *avx512fp16_vpternlogv8hf_1 */
   20215              : 
   20216              :             case 3:
   20217              :               if (!(
   20218              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20219              : ((64 == 64 || TARGET_AVX512VL
   20220              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20221              :    && ix86_pre_reload_split ()
   20222              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20223              :                     STRIP_UNARY (operands[4]))
   20224              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20225              :                        STRIP_UNARY (operands[4]))
   20226              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20227              :                        STRIP_UNARY (operands[3]))
   20228              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20229              :                        STRIP_UNARY (operands[3])))) && 
   20230              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20231              : (TARGET_AVX512F)))
   20232              :                 return -1;
   20233              :               return 5952; /* *avx512bw_vpternlogv32bf_1 */
   20234              : 
   20235              :             case 4:
   20236              :               if (!(
   20237              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20238              : ((32 == 64 || TARGET_AVX512VL
   20239              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20240              :    && ix86_pre_reload_split ()
   20241              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20242              :                     STRIP_UNARY (operands[4]))
   20243              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20244              :                        STRIP_UNARY (operands[4]))
   20245              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20246              :                        STRIP_UNARY (operands[3]))
   20247              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20248              :                        STRIP_UNARY (operands[3])))) && 
   20249              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20250              : (TARGET_AVX)))
   20251              :                 return -1;
   20252              :               return 5979; /* *avx512vl_vpternlogv16bf_1 */
   20253              : 
   20254              :             case 5:
   20255              :               if (!
   20256              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20257              : ((16 == 64 || TARGET_AVX512VL
   20258              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20259              :    && ix86_pre_reload_split ()
   20260              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20261              :                     STRIP_UNARY (operands[4]))
   20262              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20263              :                        STRIP_UNARY (operands[4]))
   20264              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20265              :                        STRIP_UNARY (operands[3]))
   20266              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20267              :                        STRIP_UNARY (operands[3])))))
   20268              :                 return -1;
   20269              :               return 6006; /* *avx512vl_vpternlogv8bf_1 */
   20270              : 
   20271              :             case 6:
   20272              :               if (!(
   20273              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20274              : ((64 == 64 || TARGET_AVX512VL
   20275              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20276              :    && ix86_pre_reload_split ()
   20277              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20278              :                     STRIP_UNARY (operands[4]))
   20279              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20280              :                        STRIP_UNARY (operands[4]))
   20281              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20282              :                        STRIP_UNARY (operands[3]))
   20283              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20284              :                        STRIP_UNARY (operands[3])))) && 
   20285              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20286              : (TARGET_AVX512F)))
   20287              :                 return -1;
   20288              :               return 6033; /* *avx512f_vpternlogv16sf_1 */
   20289              : 
   20290              :             case 7:
   20291              :               if (!(
   20292              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20293              : ((32 == 64 || TARGET_AVX512VL
   20294              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20295              :    && ix86_pre_reload_split ()
   20296              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20297              :                     STRIP_UNARY (operands[4]))
   20298              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20299              :                        STRIP_UNARY (operands[4]))
   20300              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20301              :                        STRIP_UNARY (operands[3]))
   20302              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20303              :                        STRIP_UNARY (operands[3])))) && 
   20304              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20305              : (TARGET_AVX)))
   20306              :                 return -1;
   20307              :               return 6060; /* *avx512vl_vpternlogv8sf_1 */
   20308              : 
   20309              :             case 8:
   20310              :               if (!
   20311              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20312              : ((16 == 64 || TARGET_AVX512VL
   20313              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20314              :    && ix86_pre_reload_split ()
   20315              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20316              :                     STRIP_UNARY (operands[4]))
   20317              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20318              :                        STRIP_UNARY (operands[4]))
   20319              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20320              :                        STRIP_UNARY (operands[3]))
   20321              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20322              :                        STRIP_UNARY (operands[3])))))
   20323              :                 return -1;
   20324              :               return 6087; /* *avx512vl_vpternlogv4sf_1 */
   20325              : 
   20326              :             case 9:
   20327              :               if (!(
   20328              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20329              : ((64 == 64 || TARGET_AVX512VL
   20330              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20331              :    && ix86_pre_reload_split ()
   20332              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20333              :                     STRIP_UNARY (operands[4]))
   20334              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20335              :                        STRIP_UNARY (operands[4]))
   20336              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20337              :                        STRIP_UNARY (operands[3]))
   20338              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20339              :                        STRIP_UNARY (operands[3])))) && 
   20340              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20341              : (TARGET_AVX512F)))
   20342              :                 return -1;
   20343              :               return 6114; /* *avx512f_vpternlogv8df_1 */
   20344              : 
   20345              :             case 10:
   20346              :               if (!(
   20347              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20348              : ((32 == 64 || TARGET_AVX512VL
   20349              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20350              :    && ix86_pre_reload_split ()
   20351              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20352              :                     STRIP_UNARY (operands[4]))
   20353              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20354              :                        STRIP_UNARY (operands[4]))
   20355              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20356              :                        STRIP_UNARY (operands[3]))
   20357              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20358              :                        STRIP_UNARY (operands[3])))) && 
   20359              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20360              : (TARGET_AVX)))
   20361              :                 return -1;
   20362              :               return 6141; /* *avx512vl_vpternlogv4df_1 */
   20363              : 
   20364              :             case 11:
   20365              :               if (!(
   20366              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20367              : ((16 == 64 || TARGET_AVX512VL
   20368              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20369              :    && ix86_pre_reload_split ()
   20370              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20371              :                     STRIP_UNARY (operands[4]))
   20372              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20373              :                        STRIP_UNARY (operands[4]))
   20374              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20375              :                        STRIP_UNARY (operands[3]))
   20376              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20377              :                        STRIP_UNARY (operands[3])))) && 
   20378              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20379              : (TARGET_SSE2)))
   20380              :                 return -1;
   20381              :               return 6168; /* *avx512vl_vpternlogv2df_1 */
   20382              : 
   20383              :             case 12:
   20384              :               if (!(
   20385              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20386              : ((64 == 64 || TARGET_AVX512VL
   20387              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20388              :    && ix86_pre_reload_split ()
   20389              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20390              :                     STRIP_UNARY (operands[4]))
   20391              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20392              :                        STRIP_UNARY (operands[4]))
   20393              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20394              :                        STRIP_UNARY (operands[3]))
   20395              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20396              :                        STRIP_UNARY (operands[3])))) && 
   20397              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20398              : (TARGET_AVX512F)))
   20399              :                 return -1;
   20400              :               return 5874; /* *avx512bw_vpternlogv32hf_1 */
   20401              : 
   20402              :             case 13:
   20403              :               if (!(
   20404              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20405              : ((32 == 64 || TARGET_AVX512VL
   20406              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20407              :    && ix86_pre_reload_split ()
   20408              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20409              :                     STRIP_UNARY (operands[4]))
   20410              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20411              :                        STRIP_UNARY (operands[4]))
   20412              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20413              :                        STRIP_UNARY (operands[3]))
   20414              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20415              :                        STRIP_UNARY (operands[3])))) && 
   20416              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20417              : (TARGET_AVX)))
   20418              :                 return -1;
   20419              :               return 5901; /* *avx512vl_vpternlogv16hf_1 */
   20420              : 
   20421              :             case 14:
   20422              :               if (!
   20423              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20424              : ((16 == 64 || TARGET_AVX512VL
   20425              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20426              :    && ix86_pre_reload_split ()
   20427              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20428              :                     STRIP_UNARY (operands[4]))
   20429              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20430              :                        STRIP_UNARY (operands[4]))
   20431              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20432              :                        STRIP_UNARY (operands[3]))
   20433              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20434              :                        STRIP_UNARY (operands[3])))))
   20435              :                 return -1;
   20436              :               return 5928; /* *avx512fp16_vpternlogv8hf_1 */
   20437              : 
   20438              :             case 15:
   20439              :               if (!(
   20440              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20441              : ((64 == 64 || TARGET_AVX512VL
   20442              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20443              :    && ix86_pre_reload_split ()
   20444              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20445              :                     STRIP_UNARY (operands[4]))
   20446              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20447              :                        STRIP_UNARY (operands[4]))
   20448              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20449              :                        STRIP_UNARY (operands[3]))
   20450              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20451              :                        STRIP_UNARY (operands[3])))) && 
   20452              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20453              : (TARGET_AVX512F)))
   20454              :                 return -1;
   20455              :               return 5955; /* *avx512bw_vpternlogv32bf_1 */
   20456              : 
   20457              :             case 16:
   20458              :               if (!(
   20459              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20460              : ((32 == 64 || TARGET_AVX512VL
   20461              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20462              :    && ix86_pre_reload_split ()
   20463              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20464              :                     STRIP_UNARY (operands[4]))
   20465              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20466              :                        STRIP_UNARY (operands[4]))
   20467              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20468              :                        STRIP_UNARY (operands[3]))
   20469              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20470              :                        STRIP_UNARY (operands[3])))) && 
   20471              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20472              : (TARGET_AVX)))
   20473              :                 return -1;
   20474              :               return 5982; /* *avx512vl_vpternlogv16bf_1 */
   20475              : 
   20476              :             case 17:
   20477              :               if (!
   20478              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20479              : ((16 == 64 || TARGET_AVX512VL
   20480              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20481              :    && ix86_pre_reload_split ()
   20482              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20483              :                     STRIP_UNARY (operands[4]))
   20484              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20485              :                        STRIP_UNARY (operands[4]))
   20486              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20487              :                        STRIP_UNARY (operands[3]))
   20488              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20489              :                        STRIP_UNARY (operands[3])))))
   20490              :                 return -1;
   20491              :               return 6009; /* *avx512vl_vpternlogv8bf_1 */
   20492              : 
   20493              :             case 18:
   20494              :               if (!(
   20495              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20496              : ((64 == 64 || TARGET_AVX512VL
   20497              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20498              :    && ix86_pre_reload_split ()
   20499              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20500              :                     STRIP_UNARY (operands[4]))
   20501              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20502              :                        STRIP_UNARY (operands[4]))
   20503              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20504              :                        STRIP_UNARY (operands[3]))
   20505              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20506              :                        STRIP_UNARY (operands[3])))) && 
   20507              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20508              : (TARGET_AVX512F)))
   20509              :                 return -1;
   20510              :               return 6036; /* *avx512f_vpternlogv16sf_1 */
   20511              : 
   20512              :             case 19:
   20513              :               if (!(
   20514              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20515              : ((32 == 64 || TARGET_AVX512VL
   20516              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20517              :    && ix86_pre_reload_split ()
   20518              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20519              :                     STRIP_UNARY (operands[4]))
   20520              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20521              :                        STRIP_UNARY (operands[4]))
   20522              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20523              :                        STRIP_UNARY (operands[3]))
   20524              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20525              :                        STRIP_UNARY (operands[3])))) && 
   20526              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20527              : (TARGET_AVX)))
   20528              :                 return -1;
   20529              :               return 6063; /* *avx512vl_vpternlogv8sf_1 */
   20530              : 
   20531              :             case 20:
   20532              :               if (!
   20533              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20534              : ((16 == 64 || TARGET_AVX512VL
   20535              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20536              :    && ix86_pre_reload_split ()
   20537              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20538              :                     STRIP_UNARY (operands[4]))
   20539              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20540              :                        STRIP_UNARY (operands[4]))
   20541              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20542              :                        STRIP_UNARY (operands[3]))
   20543              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20544              :                        STRIP_UNARY (operands[3])))))
   20545              :                 return -1;
   20546              :               return 6090; /* *avx512vl_vpternlogv4sf_1 */
   20547              : 
   20548              :             case 21:
   20549              :               if (!(
   20550              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20551              : ((64 == 64 || TARGET_AVX512VL
   20552              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20553              :    && ix86_pre_reload_split ()
   20554              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20555              :                     STRIP_UNARY (operands[4]))
   20556              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20557              :                        STRIP_UNARY (operands[4]))
   20558              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20559              :                        STRIP_UNARY (operands[3]))
   20560              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20561              :                        STRIP_UNARY (operands[3])))) && 
   20562              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20563              : (TARGET_AVX512F)))
   20564              :                 return -1;
   20565              :               return 6117; /* *avx512f_vpternlogv8df_1 */
   20566              : 
   20567              :             case 22:
   20568              :               if (!(
   20569              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20570              : ((32 == 64 || TARGET_AVX512VL
   20571              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20572              :    && ix86_pre_reload_split ()
   20573              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20574              :                     STRIP_UNARY (operands[4]))
   20575              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20576              :                        STRIP_UNARY (operands[4]))
   20577              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20578              :                        STRIP_UNARY (operands[3]))
   20579              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20580              :                        STRIP_UNARY (operands[3])))) && 
   20581              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20582              : (TARGET_AVX)))
   20583              :                 return -1;
   20584              :               return 6144; /* *avx512vl_vpternlogv4df_1 */
   20585              : 
   20586              :             case 23:
   20587              :               if (!(
   20588              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20589              : ((16 == 64 || TARGET_AVX512VL
   20590              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20591              :    && ix86_pre_reload_split ()
   20592              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20593              :                     STRIP_UNARY (operands[4]))
   20594              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20595              :                        STRIP_UNARY (operands[4]))
   20596              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20597              :                        STRIP_UNARY (operands[3]))
   20598              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20599              :                        STRIP_UNARY (operands[3])))) && 
   20600              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20601              : (TARGET_SSE2)))
   20602              :                 return -1;
   20603              :               return 6171; /* *avx512vl_vpternlogv2df_1 */
   20604              : 
   20605              :             case 24:
   20606              :               if (!(
   20607              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20608              : ((64 == 64 || TARGET_AVX512VL
   20609              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20610              :    && ix86_pre_reload_split ()
   20611              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20612              :                     STRIP_UNARY (operands[4]))
   20613              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20614              :                        STRIP_UNARY (operands[4]))
   20615              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20616              :                        STRIP_UNARY (operands[3]))
   20617              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20618              :                        STRIP_UNARY (operands[3])))) && 
   20619              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20620              : (TARGET_AVX512F)))
   20621              :                 return -1;
   20622              :               return 5877; /* *avx512bw_vpternlogv32hf_1 */
   20623              : 
   20624              :             case 25:
   20625              :               if (!(
   20626              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20627              : ((32 == 64 || TARGET_AVX512VL
   20628              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20629              :    && ix86_pre_reload_split ()
   20630              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20631              :                     STRIP_UNARY (operands[4]))
   20632              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20633              :                        STRIP_UNARY (operands[4]))
   20634              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20635              :                        STRIP_UNARY (operands[3]))
   20636              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20637              :                        STRIP_UNARY (operands[3])))) && 
   20638              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20639              : (TARGET_AVX)))
   20640              :                 return -1;
   20641              :               return 5904; /* *avx512vl_vpternlogv16hf_1 */
   20642              : 
   20643              :             case 26:
   20644              :               if (!
   20645              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20646              : ((16 == 64 || TARGET_AVX512VL
   20647              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20648              :    && ix86_pre_reload_split ()
   20649              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20650              :                     STRIP_UNARY (operands[4]))
   20651              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20652              :                        STRIP_UNARY (operands[4]))
   20653              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20654              :                        STRIP_UNARY (operands[3]))
   20655              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20656              :                        STRIP_UNARY (operands[3])))))
   20657              :                 return -1;
   20658              :               return 5931; /* *avx512fp16_vpternlogv8hf_1 */
   20659              : 
   20660              :             case 27:
   20661              :               if (!(
   20662              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20663              : ((64 == 64 || TARGET_AVX512VL
   20664              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20665              :    && ix86_pre_reload_split ()
   20666              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20667              :                     STRIP_UNARY (operands[4]))
   20668              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20669              :                        STRIP_UNARY (operands[4]))
   20670              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20671              :                        STRIP_UNARY (operands[3]))
   20672              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20673              :                        STRIP_UNARY (operands[3])))) && 
   20674              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20675              : (TARGET_AVX512F)))
   20676              :                 return -1;
   20677              :               return 5958; /* *avx512bw_vpternlogv32bf_1 */
   20678              : 
   20679              :             case 28:
   20680              :               if (!(
   20681              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20682              : ((32 == 64 || TARGET_AVX512VL
   20683              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20684              :    && ix86_pre_reload_split ()
   20685              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20686              :                     STRIP_UNARY (operands[4]))
   20687              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20688              :                        STRIP_UNARY (operands[4]))
   20689              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20690              :                        STRIP_UNARY (operands[3]))
   20691              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20692              :                        STRIP_UNARY (operands[3])))) && 
   20693              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20694              : (TARGET_AVX)))
   20695              :                 return -1;
   20696              :               return 5985; /* *avx512vl_vpternlogv16bf_1 */
   20697              : 
   20698              :             case 29:
   20699              :               if (!
   20700              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20701              : ((16 == 64 || TARGET_AVX512VL
   20702              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20703              :    && ix86_pre_reload_split ()
   20704              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20705              :                     STRIP_UNARY (operands[4]))
   20706              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20707              :                        STRIP_UNARY (operands[4]))
   20708              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20709              :                        STRIP_UNARY (operands[3]))
   20710              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20711              :                        STRIP_UNARY (operands[3])))))
   20712              :                 return -1;
   20713              :               return 6012; /* *avx512vl_vpternlogv8bf_1 */
   20714              : 
   20715              :             case 30:
   20716              :               if (!(
   20717              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20718              : ((64 == 64 || TARGET_AVX512VL
   20719              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20720              :    && ix86_pre_reload_split ()
   20721              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20722              :                     STRIP_UNARY (operands[4]))
   20723              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20724              :                        STRIP_UNARY (operands[4]))
   20725              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20726              :                        STRIP_UNARY (operands[3]))
   20727              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20728              :                        STRIP_UNARY (operands[3])))) && 
   20729              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20730              : (TARGET_AVX512F)))
   20731              :                 return -1;
   20732              :               return 6039; /* *avx512f_vpternlogv16sf_1 */
   20733              : 
   20734              :             case 31:
   20735              :               if (!(
   20736              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20737              : ((32 == 64 || TARGET_AVX512VL
   20738              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20739              :    && ix86_pre_reload_split ()
   20740              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20741              :                     STRIP_UNARY (operands[4]))
   20742              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20743              :                        STRIP_UNARY (operands[4]))
   20744              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20745              :                        STRIP_UNARY (operands[3]))
   20746              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20747              :                        STRIP_UNARY (operands[3])))) && 
   20748              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20749              : (TARGET_AVX)))
   20750              :                 return -1;
   20751              :               return 6066; /* *avx512vl_vpternlogv8sf_1 */
   20752              : 
   20753              :             case 32:
   20754              :               if (!
   20755              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20756              : ((16 == 64 || TARGET_AVX512VL
   20757              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20758              :    && ix86_pre_reload_split ()
   20759              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20760              :                     STRIP_UNARY (operands[4]))
   20761              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20762              :                        STRIP_UNARY (operands[4]))
   20763              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20764              :                        STRIP_UNARY (operands[3]))
   20765              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20766              :                        STRIP_UNARY (operands[3])))))
   20767              :                 return -1;
   20768              :               return 6093; /* *avx512vl_vpternlogv4sf_1 */
   20769              : 
   20770              :             case 33:
   20771              :               if (!(
   20772              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20773              : ((64 == 64 || TARGET_AVX512VL
   20774              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20775              :    && ix86_pre_reload_split ()
   20776              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20777              :                     STRIP_UNARY (operands[4]))
   20778              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20779              :                        STRIP_UNARY (operands[4]))
   20780              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20781              :                        STRIP_UNARY (operands[3]))
   20782              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20783              :                        STRIP_UNARY (operands[3])))) && 
   20784              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20785              : (TARGET_AVX512F)))
   20786              :                 return -1;
   20787              :               return 6120; /* *avx512f_vpternlogv8df_1 */
   20788              : 
   20789              :             case 34:
   20790              :               if (!(
   20791              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20792              : ((32 == 64 || TARGET_AVX512VL
   20793              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20794              :    && ix86_pre_reload_split ()
   20795              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20796              :                     STRIP_UNARY (operands[4]))
   20797              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20798              :                        STRIP_UNARY (operands[4]))
   20799              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20800              :                        STRIP_UNARY (operands[3]))
   20801              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20802              :                        STRIP_UNARY (operands[3])))) && 
   20803              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20804              : (TARGET_AVX)))
   20805              :                 return -1;
   20806              :               return 6147; /* *avx512vl_vpternlogv4df_1 */
   20807              : 
   20808              :             case 35:
   20809              :               if (!(
   20810              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20811              : ((16 == 64 || TARGET_AVX512VL
   20812              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20813              :    && ix86_pre_reload_split ()
   20814              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20815              :                     STRIP_UNARY (operands[4]))
   20816              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20817              :                        STRIP_UNARY (operands[4]))
   20818              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20819              :                        STRIP_UNARY (operands[3]))
   20820              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20821              :                        STRIP_UNARY (operands[3])))) && 
   20822              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20823              : (TARGET_SSE2)))
   20824              :                 return -1;
   20825              :               return 6174; /* *avx512vl_vpternlogv2df_1 */
   20826              : 
   20827              :             case 36:
   20828              :               if (!(
   20829              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20830              : ((64 == 64 || TARGET_AVX512VL
   20831              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20832              :    && ix86_pre_reload_split ()) && 
   20833              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20834              : (TARGET_AVX512F)))
   20835              :                 return -1;
   20836              :               return 6945; /* *avx512bw_vpternlogv32hf_3 */
   20837              : 
   20838              :             case 37:
   20839              :               if (!(
   20840              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20841              : ((32 == 64 || TARGET_AVX512VL
   20842              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20843              :    && ix86_pre_reload_split ()) && 
   20844              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20845              : (TARGET_AVX)))
   20846              :                 return -1;
   20847              :               return 6954; /* *avx512vl_vpternlogv16hf_3 */
   20848              : 
   20849              :             case 38:
   20850              :               if (!
   20851              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20852              : ((16 == 64 || TARGET_AVX512VL
   20853              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20854              :    && ix86_pre_reload_split ()))
   20855              :                 return -1;
   20856              :               return 6963; /* *avx512fp16_vpternlogv8hf_3 */
   20857              : 
   20858              :             case 39:
   20859              :               if (!(
   20860              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20861              : ((64 == 64 || TARGET_AVX512VL
   20862              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20863              :    && ix86_pre_reload_split ()) && 
   20864              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20865              : (TARGET_AVX512F)))
   20866              :                 return -1;
   20867              :               return 6972; /* *avx512bw_vpternlogv32bf_3 */
   20868              : 
   20869              :             case 40:
   20870              :               if (!(
   20871              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20872              : ((32 == 64 || TARGET_AVX512VL
   20873              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20874              :    && ix86_pre_reload_split ()) && 
   20875              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20876              : (TARGET_AVX)))
   20877              :                 return -1;
   20878              :               return 6981; /* *avx512vl_vpternlogv16bf_3 */
   20879              : 
   20880              :             case 41:
   20881              :               if (!
   20882              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20883              : ((16 == 64 || TARGET_AVX512VL
   20884              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20885              :    && ix86_pre_reload_split ()))
   20886              :                 return -1;
   20887              :               return 6990; /* *avx512vl_vpternlogv8bf_3 */
   20888              : 
   20889              :             case 42:
   20890              :               if (!(
   20891              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20892              : ((64 == 64 || TARGET_AVX512VL
   20893              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20894              :    && ix86_pre_reload_split ()) && 
   20895              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20896              : (TARGET_AVX512F)))
   20897              :                 return -1;
   20898              :               return 6999; /* *avx512f_vpternlogv16sf_3 */
   20899              : 
   20900              :             case 43:
   20901              :               if (!(
   20902              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20903              : ((32 == 64 || TARGET_AVX512VL
   20904              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20905              :    && ix86_pre_reload_split ()) && 
   20906              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20907              : (TARGET_AVX)))
   20908              :                 return -1;
   20909              :               return 7008; /* *avx512vl_vpternlogv8sf_3 */
   20910              : 
   20911              :             case 44:
   20912              :               if (!
   20913              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20914              : ((16 == 64 || TARGET_AVX512VL
   20915              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20916              :    && ix86_pre_reload_split ()))
   20917              :                 return -1;
   20918              :               return 7017; /* *avx512vl_vpternlogv4sf_3 */
   20919              : 
   20920              :             case 45:
   20921              :               if (!(
   20922              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20923              : ((64 == 64 || TARGET_AVX512VL
   20924              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20925              :    && ix86_pre_reload_split ()) && 
   20926              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20927              : (TARGET_AVX512F)))
   20928              :                 return -1;
   20929              :               return 7026; /* *avx512f_vpternlogv8df_3 */
   20930              : 
   20931              :             case 46:
   20932              :               if (!(
   20933              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20934              : ((32 == 64 || TARGET_AVX512VL
   20935              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20936              :    && ix86_pre_reload_split ()) && 
   20937              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20938              : (TARGET_AVX)))
   20939              :                 return -1;
   20940              :               return 7035; /* *avx512vl_vpternlogv4df_3 */
   20941              : 
   20942              :             case 47:
   20943              :               if (!(
   20944              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20945              : ((16 == 64 || TARGET_AVX512VL
   20946              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20947              :    && ix86_pre_reload_split ()) && 
   20948              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20949              : (TARGET_SSE2)))
   20950              :                 return -1;
   20951              :               return 7044; /* *avx512vl_vpternlogv2df_3 */
   20952              : 
   20953              :             default:
   20954              :               return -1;
   20955              :             }
   20956              : 
   20957              :         case AND:
   20958              :           switch (pattern542 (x2))
   20959              :             {
   20960              :             case 0:
   20961              :               if (!(
   20962              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20963              : ((64 == 64 || TARGET_AVX512VL
   20964              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20965              :    && ix86_pre_reload_split ()
   20966              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20967              :                     STRIP_UNARY (operands[4]))
   20968              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20969              :                        STRIP_UNARY (operands[4]))
   20970              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20971              :                        STRIP_UNARY (operands[3]))
   20972              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20973              :                        STRIP_UNARY (operands[3])))) && 
   20974              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20975              : (TARGET_AVX512F)))
   20976              :                 return -1;
   20977              :               return 6519; /* *avx512bw_vpternlogv32hf_2 */
   20978              : 
   20979              :             case 1:
   20980              :               if (!(
   20981              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20982              : ((32 == 64 || TARGET_AVX512VL
   20983              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20984              :    && ix86_pre_reload_split ()
   20985              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20986              :                     STRIP_UNARY (operands[4]))
   20987              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20988              :                        STRIP_UNARY (operands[4]))
   20989              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20990              :                        STRIP_UNARY (operands[3]))
   20991              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20992              :                        STRIP_UNARY (operands[3])))) && 
   20993              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20994              : (TARGET_AVX)))
   20995              :                 return -1;
   20996              :               return 6546; /* *avx512vl_vpternlogv16hf_2 */
   20997              : 
   20998              :             case 2:
   20999              :               if (!
   21000              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21001              : ((16 == 64 || TARGET_AVX512VL
   21002              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21003              :    && ix86_pre_reload_split ()
   21004              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21005              :                     STRIP_UNARY (operands[4]))
   21006              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21007              :                        STRIP_UNARY (operands[4]))
   21008              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21009              :                        STRIP_UNARY (operands[3]))
   21010              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21011              :                        STRIP_UNARY (operands[3])))))
   21012              :                 return -1;
   21013              :               return 6573; /* *avx512fp16_vpternlogv8hf_2 */
   21014              : 
   21015              :             case 3:
   21016              :               if (!(
   21017              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21018              : ((64 == 64 || TARGET_AVX512VL
   21019              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21020              :    && ix86_pre_reload_split ()
   21021              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21022              :                     STRIP_UNARY (operands[4]))
   21023              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21024              :                        STRIP_UNARY (operands[4]))
   21025              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21026              :                        STRIP_UNARY (operands[3]))
   21027              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21028              :                        STRIP_UNARY (operands[3])))) && 
   21029              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21030              : (TARGET_AVX512F)))
   21031              :                 return -1;
   21032              :               return 6600; /* *avx512bw_vpternlogv32bf_2 */
   21033              : 
   21034              :             case 4:
   21035              :               if (!(
   21036              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21037              : ((32 == 64 || TARGET_AVX512VL
   21038              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21039              :    && ix86_pre_reload_split ()
   21040              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21041              :                     STRIP_UNARY (operands[4]))
   21042              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21043              :                        STRIP_UNARY (operands[4]))
   21044              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21045              :                        STRIP_UNARY (operands[3]))
   21046              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21047              :                        STRIP_UNARY (operands[3])))) && 
   21048              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21049              : (TARGET_AVX)))
   21050              :                 return -1;
   21051              :               return 6627; /* *avx512vl_vpternlogv16bf_2 */
   21052              : 
   21053              :             case 5:
   21054              :               if (!
   21055              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21056              : ((16 == 64 || TARGET_AVX512VL
   21057              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21058              :    && ix86_pre_reload_split ()
   21059              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21060              :                     STRIP_UNARY (operands[4]))
   21061              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21062              :                        STRIP_UNARY (operands[4]))
   21063              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21064              :                        STRIP_UNARY (operands[3]))
   21065              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21066              :                        STRIP_UNARY (operands[3])))))
   21067              :                 return -1;
   21068              :               return 6654; /* *avx512vl_vpternlogv8bf_2 */
   21069              : 
   21070              :             case 6:
   21071              :               if (!(
   21072              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21073              : ((64 == 64 || TARGET_AVX512VL
   21074              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21075              :    && ix86_pre_reload_split ()
   21076              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21077              :                     STRIP_UNARY (operands[4]))
   21078              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21079              :                        STRIP_UNARY (operands[4]))
   21080              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21081              :                        STRIP_UNARY (operands[3]))
   21082              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21083              :                        STRIP_UNARY (operands[3])))) && 
   21084              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21085              : (TARGET_AVX512F)))
   21086              :                 return -1;
   21087              :               return 6681; /* *avx512f_vpternlogv16sf_2 */
   21088              : 
   21089              :             case 7:
   21090              :               if (!(
   21091              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21092              : ((32 == 64 || TARGET_AVX512VL
   21093              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21094              :    && ix86_pre_reload_split ()
   21095              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21096              :                     STRIP_UNARY (operands[4]))
   21097              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21098              :                        STRIP_UNARY (operands[4]))
   21099              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21100              :                        STRIP_UNARY (operands[3]))
   21101              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21102              :                        STRIP_UNARY (operands[3])))) && 
   21103              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21104              : (TARGET_AVX)))
   21105              :                 return -1;
   21106              :               return 6708; /* *avx512vl_vpternlogv8sf_2 */
   21107              : 
   21108              :             case 8:
   21109              :               if (!
   21110              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21111              : ((16 == 64 || TARGET_AVX512VL
   21112              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21113              :    && ix86_pre_reload_split ()
   21114              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21115              :                     STRIP_UNARY (operands[4]))
   21116              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21117              :                        STRIP_UNARY (operands[4]))
   21118              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21119              :                        STRIP_UNARY (operands[3]))
   21120              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21121              :                        STRIP_UNARY (operands[3])))))
   21122              :                 return -1;
   21123              :               return 6735; /* *avx512vl_vpternlogv4sf_2 */
   21124              : 
   21125              :             case 9:
   21126              :               if (!(
   21127              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21128              : ((64 == 64 || TARGET_AVX512VL
   21129              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21130              :    && ix86_pre_reload_split ()
   21131              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21132              :                     STRIP_UNARY (operands[4]))
   21133              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21134              :                        STRIP_UNARY (operands[4]))
   21135              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21136              :                        STRIP_UNARY (operands[3]))
   21137              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21138              :                        STRIP_UNARY (operands[3])))) && 
   21139              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21140              : (TARGET_AVX512F)))
   21141              :                 return -1;
   21142              :               return 6762; /* *avx512f_vpternlogv8df_2 */
   21143              : 
   21144              :             case 10:
   21145              :               if (!(
   21146              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21147              : ((32 == 64 || TARGET_AVX512VL
   21148              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21149              :    && ix86_pre_reload_split ()
   21150              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21151              :                     STRIP_UNARY (operands[4]))
   21152              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21153              :                        STRIP_UNARY (operands[4]))
   21154              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21155              :                        STRIP_UNARY (operands[3]))
   21156              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21157              :                        STRIP_UNARY (operands[3])))) && 
   21158              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21159              : (TARGET_AVX)))
   21160              :                 return -1;
   21161              :               return 6789; /* *avx512vl_vpternlogv4df_2 */
   21162              : 
   21163              :             case 11:
   21164              :               if (!(
   21165              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21166              : ((16 == 64 || TARGET_AVX512VL
   21167              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21168              :    && ix86_pre_reload_split ()
   21169              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21170              :                     STRIP_UNARY (operands[4]))
   21171              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21172              :                        STRIP_UNARY (operands[4]))
   21173              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21174              :                        STRIP_UNARY (operands[3]))
   21175              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21176              :                        STRIP_UNARY (operands[3])))) && 
   21177              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21178              : (TARGET_SSE2)))
   21179              :                 return -1;
   21180              :               return 6816; /* *avx512vl_vpternlogv2df_2 */
   21181              : 
   21182              :             default:
   21183              :               return -1;
   21184              :             }
   21185              : 
   21186              :         case IOR:
   21187              :           switch (pattern542 (x2))
   21188              :             {
   21189              :             case 0:
   21190              :               if (!(
   21191              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21192              : ((64 == 64 || TARGET_AVX512VL
   21193              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21194              :    && ix86_pre_reload_split ()
   21195              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21196              :                     STRIP_UNARY (operands[4]))
   21197              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21198              :                        STRIP_UNARY (operands[4]))
   21199              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21200              :                        STRIP_UNARY (operands[3]))
   21201              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21202              :                        STRIP_UNARY (operands[3])))) && 
   21203              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21204              : (TARGET_AVX512F)))
   21205              :                 return -1;
   21206              :               return 6522; /* *avx512bw_vpternlogv32hf_2 */
   21207              : 
   21208              :             case 1:
   21209              :               if (!(
   21210              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21211              : ((32 == 64 || TARGET_AVX512VL
   21212              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21213              :    && ix86_pre_reload_split ()
   21214              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21215              :                     STRIP_UNARY (operands[4]))
   21216              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21217              :                        STRIP_UNARY (operands[4]))
   21218              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21219              :                        STRIP_UNARY (operands[3]))
   21220              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21221              :                        STRIP_UNARY (operands[3])))) && 
   21222              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21223              : (TARGET_AVX)))
   21224              :                 return -1;
   21225              :               return 6549; /* *avx512vl_vpternlogv16hf_2 */
   21226              : 
   21227              :             case 2:
   21228              :               if (!
   21229              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21230              : ((16 == 64 || TARGET_AVX512VL
   21231              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21232              :    && ix86_pre_reload_split ()
   21233              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21234              :                     STRIP_UNARY (operands[4]))
   21235              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21236              :                        STRIP_UNARY (operands[4]))
   21237              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21238              :                        STRIP_UNARY (operands[3]))
   21239              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21240              :                        STRIP_UNARY (operands[3])))))
   21241              :                 return -1;
   21242              :               return 6576; /* *avx512fp16_vpternlogv8hf_2 */
   21243              : 
   21244              :             case 3:
   21245              :               if (!(
   21246              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21247              : ((64 == 64 || TARGET_AVX512VL
   21248              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21249              :    && ix86_pre_reload_split ()
   21250              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21251              :                     STRIP_UNARY (operands[4]))
   21252              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21253              :                        STRIP_UNARY (operands[4]))
   21254              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21255              :                        STRIP_UNARY (operands[3]))
   21256              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21257              :                        STRIP_UNARY (operands[3])))) && 
   21258              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21259              : (TARGET_AVX512F)))
   21260              :                 return -1;
   21261              :               return 6603; /* *avx512bw_vpternlogv32bf_2 */
   21262              : 
   21263              :             case 4:
   21264              :               if (!(
   21265              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21266              : ((32 == 64 || TARGET_AVX512VL
   21267              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21268              :    && ix86_pre_reload_split ()
   21269              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21270              :                     STRIP_UNARY (operands[4]))
   21271              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21272              :                        STRIP_UNARY (operands[4]))
   21273              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21274              :                        STRIP_UNARY (operands[3]))
   21275              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21276              :                        STRIP_UNARY (operands[3])))) && 
   21277              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21278              : (TARGET_AVX)))
   21279              :                 return -1;
   21280              :               return 6630; /* *avx512vl_vpternlogv16bf_2 */
   21281              : 
   21282              :             case 5:
   21283              :               if (!
   21284              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21285              : ((16 == 64 || TARGET_AVX512VL
   21286              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21287              :    && ix86_pre_reload_split ()
   21288              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21289              :                     STRIP_UNARY (operands[4]))
   21290              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21291              :                        STRIP_UNARY (operands[4]))
   21292              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21293              :                        STRIP_UNARY (operands[3]))
   21294              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21295              :                        STRIP_UNARY (operands[3])))))
   21296              :                 return -1;
   21297              :               return 6657; /* *avx512vl_vpternlogv8bf_2 */
   21298              : 
   21299              :             case 6:
   21300              :               if (!(
   21301              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21302              : ((64 == 64 || TARGET_AVX512VL
   21303              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21304              :    && ix86_pre_reload_split ()
   21305              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21306              :                     STRIP_UNARY (operands[4]))
   21307              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21308              :                        STRIP_UNARY (operands[4]))
   21309              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21310              :                        STRIP_UNARY (operands[3]))
   21311              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21312              :                        STRIP_UNARY (operands[3])))) && 
   21313              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21314              : (TARGET_AVX512F)))
   21315              :                 return -1;
   21316              :               return 6684; /* *avx512f_vpternlogv16sf_2 */
   21317              : 
   21318              :             case 7:
   21319              :               if (!(
   21320              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21321              : ((32 == 64 || TARGET_AVX512VL
   21322              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21323              :    && ix86_pre_reload_split ()
   21324              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21325              :                     STRIP_UNARY (operands[4]))
   21326              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21327              :                        STRIP_UNARY (operands[4]))
   21328              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21329              :                        STRIP_UNARY (operands[3]))
   21330              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21331              :                        STRIP_UNARY (operands[3])))) && 
   21332              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21333              : (TARGET_AVX)))
   21334              :                 return -1;
   21335              :               return 6711; /* *avx512vl_vpternlogv8sf_2 */
   21336              : 
   21337              :             case 8:
   21338              :               if (!
   21339              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21340              : ((16 == 64 || TARGET_AVX512VL
   21341              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21342              :    && ix86_pre_reload_split ()
   21343              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21344              :                     STRIP_UNARY (operands[4]))
   21345              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21346              :                        STRIP_UNARY (operands[4]))
   21347              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21348              :                        STRIP_UNARY (operands[3]))
   21349              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21350              :                        STRIP_UNARY (operands[3])))))
   21351              :                 return -1;
   21352              :               return 6738; /* *avx512vl_vpternlogv4sf_2 */
   21353              : 
   21354              :             case 9:
   21355              :               if (!(
   21356              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21357              : ((64 == 64 || TARGET_AVX512VL
   21358              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21359              :    && ix86_pre_reload_split ()
   21360              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21361              :                     STRIP_UNARY (operands[4]))
   21362              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21363              :                        STRIP_UNARY (operands[4]))
   21364              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21365              :                        STRIP_UNARY (operands[3]))
   21366              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21367              :                        STRIP_UNARY (operands[3])))) && 
   21368              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21369              : (TARGET_AVX512F)))
   21370              :                 return -1;
   21371              :               return 6765; /* *avx512f_vpternlogv8df_2 */
   21372              : 
   21373              :             case 10:
   21374              :               if (!(
   21375              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21376              : ((32 == 64 || TARGET_AVX512VL
   21377              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21378              :    && ix86_pre_reload_split ()
   21379              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21380              :                     STRIP_UNARY (operands[4]))
   21381              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21382              :                        STRIP_UNARY (operands[4]))
   21383              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21384              :                        STRIP_UNARY (operands[3]))
   21385              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21386              :                        STRIP_UNARY (operands[3])))) && 
   21387              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21388              : (TARGET_AVX)))
   21389              :                 return -1;
   21390              :               return 6792; /* *avx512vl_vpternlogv4df_2 */
   21391              : 
   21392              :             case 11:
   21393              :               if (!(
   21394              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21395              : ((16 == 64 || TARGET_AVX512VL
   21396              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21397              :    && ix86_pre_reload_split ()
   21398              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21399              :                     STRIP_UNARY (operands[4]))
   21400              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21401              :                        STRIP_UNARY (operands[4]))
   21402              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21403              :                        STRIP_UNARY (operands[3]))
   21404              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21405              :                        STRIP_UNARY (operands[3])))) && 
   21406              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21407              : (TARGET_SSE2)))
   21408              :                 return -1;
   21409              :               return 6819; /* *avx512vl_vpternlogv2df_2 */
   21410              : 
   21411              :             default:
   21412              :               return -1;
   21413              :             }
   21414              : 
   21415              :         case XOR:
   21416              :           switch (pattern542 (x2))
   21417              :             {
   21418              :             case 0:
   21419              :               if (!(
   21420              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21421              : ((64 == 64 || TARGET_AVX512VL
   21422              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21423              :    && ix86_pre_reload_split ()
   21424              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21425              :                     STRIP_UNARY (operands[4]))
   21426              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21427              :                        STRIP_UNARY (operands[4]))
   21428              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21429              :                        STRIP_UNARY (operands[3]))
   21430              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21431              :                        STRIP_UNARY (operands[3])))) && 
   21432              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21433              : (TARGET_AVX512F)))
   21434              :                 return -1;
   21435              :               return 6525; /* *avx512bw_vpternlogv32hf_2 */
   21436              : 
   21437              :             case 1:
   21438              :               if (!(
   21439              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21440              : ((32 == 64 || TARGET_AVX512VL
   21441              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21442              :    && ix86_pre_reload_split ()
   21443              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21444              :                     STRIP_UNARY (operands[4]))
   21445              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21446              :                        STRIP_UNARY (operands[4]))
   21447              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21448              :                        STRIP_UNARY (operands[3]))
   21449              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21450              :                        STRIP_UNARY (operands[3])))) && 
   21451              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21452              : (TARGET_AVX)))
   21453              :                 return -1;
   21454              :               return 6552; /* *avx512vl_vpternlogv16hf_2 */
   21455              : 
   21456              :             case 2:
   21457              :               if (!
   21458              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21459              : ((16 == 64 || TARGET_AVX512VL
   21460              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21461              :    && ix86_pre_reload_split ()
   21462              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21463              :                     STRIP_UNARY (operands[4]))
   21464              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21465              :                        STRIP_UNARY (operands[4]))
   21466              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21467              :                        STRIP_UNARY (operands[3]))
   21468              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21469              :                        STRIP_UNARY (operands[3])))))
   21470              :                 return -1;
   21471              :               return 6579; /* *avx512fp16_vpternlogv8hf_2 */
   21472              : 
   21473              :             case 3:
   21474              :               if (!(
   21475              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21476              : ((64 == 64 || TARGET_AVX512VL
   21477              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21478              :    && ix86_pre_reload_split ()
   21479              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21480              :                     STRIP_UNARY (operands[4]))
   21481              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21482              :                        STRIP_UNARY (operands[4]))
   21483              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21484              :                        STRIP_UNARY (operands[3]))
   21485              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21486              :                        STRIP_UNARY (operands[3])))) && 
   21487              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21488              : (TARGET_AVX512F)))
   21489              :                 return -1;
   21490              :               return 6606; /* *avx512bw_vpternlogv32bf_2 */
   21491              : 
   21492              :             case 4:
   21493              :               if (!(
   21494              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21495              : ((32 == 64 || TARGET_AVX512VL
   21496              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21497              :    && ix86_pre_reload_split ()
   21498              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21499              :                     STRIP_UNARY (operands[4]))
   21500              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21501              :                        STRIP_UNARY (operands[4]))
   21502              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21503              :                        STRIP_UNARY (operands[3]))
   21504              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21505              :                        STRIP_UNARY (operands[3])))) && 
   21506              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21507              : (TARGET_AVX)))
   21508              :                 return -1;
   21509              :               return 6633; /* *avx512vl_vpternlogv16bf_2 */
   21510              : 
   21511              :             case 5:
   21512              :               if (!
   21513              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21514              : ((16 == 64 || TARGET_AVX512VL
   21515              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21516              :    && ix86_pre_reload_split ()
   21517              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21518              :                     STRIP_UNARY (operands[4]))
   21519              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21520              :                        STRIP_UNARY (operands[4]))
   21521              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21522              :                        STRIP_UNARY (operands[3]))
   21523              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21524              :                        STRIP_UNARY (operands[3])))))
   21525              :                 return -1;
   21526              :               return 6660; /* *avx512vl_vpternlogv8bf_2 */
   21527              : 
   21528              :             case 6:
   21529              :               if (!(
   21530              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21531              : ((64 == 64 || TARGET_AVX512VL
   21532              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21533              :    && ix86_pre_reload_split ()
   21534              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21535              :                     STRIP_UNARY (operands[4]))
   21536              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21537              :                        STRIP_UNARY (operands[4]))
   21538              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21539              :                        STRIP_UNARY (operands[3]))
   21540              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21541              :                        STRIP_UNARY (operands[3])))) && 
   21542              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21543              : (TARGET_AVX512F)))
   21544              :                 return -1;
   21545              :               return 6687; /* *avx512f_vpternlogv16sf_2 */
   21546              : 
   21547              :             case 7:
   21548              :               if (!(
   21549              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21550              : ((32 == 64 || TARGET_AVX512VL
   21551              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21552              :    && ix86_pre_reload_split ()
   21553              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21554              :                     STRIP_UNARY (operands[4]))
   21555              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21556              :                        STRIP_UNARY (operands[4]))
   21557              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21558              :                        STRIP_UNARY (operands[3]))
   21559              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21560              :                        STRIP_UNARY (operands[3])))) && 
   21561              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21562              : (TARGET_AVX)))
   21563              :                 return -1;
   21564              :               return 6714; /* *avx512vl_vpternlogv8sf_2 */
   21565              : 
   21566              :             case 8:
   21567              :               if (!
   21568              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21569              : ((16 == 64 || TARGET_AVX512VL
   21570              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21571              :    && ix86_pre_reload_split ()
   21572              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21573              :                     STRIP_UNARY (operands[4]))
   21574              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21575              :                        STRIP_UNARY (operands[4]))
   21576              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21577              :                        STRIP_UNARY (operands[3]))
   21578              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21579              :                        STRIP_UNARY (operands[3])))))
   21580              :                 return -1;
   21581              :               return 6741; /* *avx512vl_vpternlogv4sf_2 */
   21582              : 
   21583              :             case 9:
   21584              :               if (!(
   21585              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21586              : ((64 == 64 || TARGET_AVX512VL
   21587              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21588              :    && ix86_pre_reload_split ()
   21589              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21590              :                     STRIP_UNARY (operands[4]))
   21591              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21592              :                        STRIP_UNARY (operands[4]))
   21593              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21594              :                        STRIP_UNARY (operands[3]))
   21595              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21596              :                        STRIP_UNARY (operands[3])))) && 
   21597              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21598              : (TARGET_AVX512F)))
   21599              :                 return -1;
   21600              :               return 6768; /* *avx512f_vpternlogv8df_2 */
   21601              : 
   21602              :             case 10:
   21603              :               if (!(
   21604              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21605              : ((32 == 64 || TARGET_AVX512VL
   21606              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21607              :    && ix86_pre_reload_split ()
   21608              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21609              :                     STRIP_UNARY (operands[4]))
   21610              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21611              :                        STRIP_UNARY (operands[4]))
   21612              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21613              :                        STRIP_UNARY (operands[3]))
   21614              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21615              :                        STRIP_UNARY (operands[3])))) && 
   21616              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21617              : (TARGET_AVX)))
   21618              :                 return -1;
   21619              :               return 6795; /* *avx512vl_vpternlogv4df_2 */
   21620              : 
   21621              :             case 11:
   21622              :               if (!(
   21623              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21624              : ((16 == 64 || TARGET_AVX512VL
   21625              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   21626              :    && ix86_pre_reload_split ()
   21627              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   21628              :                     STRIP_UNARY (operands[4]))
   21629              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21630              :                        STRIP_UNARY (operands[4]))
   21631              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   21632              :                        STRIP_UNARY (operands[3]))
   21633              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   21634              :                        STRIP_UNARY (operands[3])))) && 
   21635              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21636              : (TARGET_SSE2)))
   21637              :                 return -1;
   21638              :               return 6822; /* *avx512vl_vpternlogv2df_2 */
   21639              : 
   21640              :             default:
   21641              :               return -1;
   21642              :             }
   21643              : 
   21644              :         default:
   21645              :           return -1;
   21646              :         }
   21647              : 
   21648              :     case XOR:
   21649              :       return recog_315 (x1, insn, pnum_clobbers);
   21650              : 
   21651              :     default:
   21652              :       return -1;
   21653              :     }
   21654              : }
   21655              : 
   21656              :  int
   21657              : recog_382 (rtx x1 ATTRIBUTE_UNUSED,
   21658              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21659              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21660              : {
   21661              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21662              :   rtx x2, x3, x4, x5, x6, x7;
   21663              :   int res ATTRIBUTE_UNUSED;
   21664              :   if (pnum_clobbers == NULL)
   21665              :     return -1;
   21666              :   x2 = XVECEXP (x1, 0, 0);
   21667              :   x3 = XEXP (x2, 1);
   21668              :   if (GET_MODE (x3) != E_SImode)
   21669              :     return -1;
   21670              :   x4 = XVECEXP (x1, 0, 1);
   21671              :   if (GET_CODE (x4) != USE)
   21672              :     return -1;
   21673              :   x5 = XEXP (x2, 0);
   21674              :   operands[0] = x5;
   21675              :   if (!register_operand (operands[0], E_SImode))
   21676              :     return -1;
   21677              :   x6 = XEXP (x3, 0);
   21678              :   operands[3] = x6;
   21679              :   x7 = XEXP (x4, 0);
   21680              :   operands[4] = x7;
   21681              :   switch (GET_MODE (operands[3]))
   21682              :     {
   21683              :     case E_SFmode:
   21684              :       if (!nonimmediate_operand (operands[3], E_SFmode)
   21685              :           || !nonimmediate_operand (operands[4], E_V4SFmode)
   21686              :           || !
   21687              : #line 5920 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21688              : (!TARGET_64BIT && TARGET_SSE2 && TARGET_SSE_MATH
   21689              :    && optimize_function_for_speed_p (cfun)))
   21690              :         return -1;
   21691              :       *pnum_clobbers = 2;
   21692              :       return 227; /* *fixuns_truncsf_1 */
   21693              : 
   21694              :     case E_DFmode:
   21695              :       if (!nonimmediate_operand (operands[3], E_DFmode)
   21696              :           || !nonimmediate_operand (operands[4], E_V2DFmode)
   21697              :           || !
   21698              : #line 5920 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21699              : (!TARGET_64BIT && TARGET_SSE2 && TARGET_SSE_MATH
   21700              :    && optimize_function_for_speed_p (cfun)))
   21701              :         return -1;
   21702              :       *pnum_clobbers = 2;
   21703              :       return 228; /* *fixuns_truncdf_1 */
   21704              : 
   21705              :     default:
   21706              :       return -1;
   21707              :     }
   21708              : }
   21709              : 
   21710              :  int
   21711              : recog_384 (rtx x1 ATTRIBUTE_UNUSED,
   21712              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21713              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21714              : {
   21715              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21716              :   rtx x2, x3, x4, x5, x6;
   21717              :   int res ATTRIBUTE_UNUSED;
   21718              :   x2 = XVECEXP (x1, 0, 0);
   21719              :   x3 = XEXP (x2, 0);
   21720              :   operands[0] = x3;
   21721              :   x4 = XEXP (x2, 1);
   21722              :   x5 = XEXP (x4, 0);
   21723              :   operands[1] = x5;
   21724              :   x6 = XVECEXP (x1, 0, 1);
   21725              :   switch (GET_CODE (x6))
   21726              :     {
   21727              :     case CLOBBER:
   21728              :       if (pnum_clobbers == NULL
   21729              :           || !register_operand (operands[1], E_DImode))
   21730              :         return -1;
   21731              :       switch (pattern940 (x1))
   21732              :         {
   21733              :         case 0:
   21734              :           if (!
   21735              : #line 6215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21736              : (!TARGET_64BIT && TARGET_INTER_UNIT_MOVES_TO_VEC
   21737              :    && TARGET_80387 && X87_ENABLE_FLOAT (SFmode, DImode)
   21738              :    && TARGET_SSE2 && optimize_function_for_speed_p (cfun)))
   21739              :             return -1;
   21740              :           *pnum_clobbers = 2;
   21741              :           return 258; /* floatdisf2_i387_with_xmm */
   21742              : 
   21743              :         case 1:
   21744              :           if (!
   21745              : #line 6215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21746              : (!TARGET_64BIT && TARGET_INTER_UNIT_MOVES_TO_VEC
   21747              :    && TARGET_80387 && X87_ENABLE_FLOAT (DFmode, DImode)
   21748              :    && TARGET_SSE2 && optimize_function_for_speed_p (cfun)))
   21749              :             return -1;
   21750              :           *pnum_clobbers = 2;
   21751              :           return 259; /* floatdidf2_i387_with_xmm */
   21752              : 
   21753              :         case 2:
   21754              :           if (!
   21755              : #line 6215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21756              : (!TARGET_64BIT && TARGET_INTER_UNIT_MOVES_TO_VEC
   21757              :    && TARGET_80387 && X87_ENABLE_FLOAT (XFmode, DImode)
   21758              :    && TARGET_SSE2 && optimize_function_for_speed_p (cfun)))
   21759              :             return -1;
   21760              :           *pnum_clobbers = 2;
   21761              :           return 260; /* floatdixf2_i387_with_xmm */
   21762              : 
   21763              :         default:
   21764              :           return -1;
   21765              :         }
   21766              : 
   21767              :     case UNSPEC:
   21768              :       if (pattern693 (x1, 
   21769              : E_V2SImode, 
   21770              : E_V2SFmode) != 0
   21771              :           || !
   21772              : #line 1623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   21773              : (TARGET_3DNOW))
   21774              :         return -1;
   21775              :       return 2137; /* mmx_floatv2siv2sf2 */
   21776              : 
   21777              :     default:
   21778              :       return -1;
   21779              :     }
   21780              : }
   21781              : 
   21782              :  int
   21783              : recog_385 (rtx x1 ATTRIBUTE_UNUSED,
   21784              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21785              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21786              : {
   21787              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21788              :   rtx x2, x3, x4, x5, x6;
   21789              :   int res ATTRIBUTE_UNUSED;
   21790              :   if (pnum_clobbers == NULL)
   21791              :     return -1;
   21792              :   x2 = XVECEXP (x1, 0, 1);
   21793              :   if (GET_CODE (x2) != CLOBBER)
   21794              :     return -1;
   21795              :   x3 = XVECEXP (x1, 0, 0);
   21796              :   x4 = XEXP (x3, 0);
   21797              :   operands[0] = x4;
   21798              :   x5 = XEXP (x3, 1);
   21799              :   x6 = XEXP (x5, 0);
   21800              :   operands[1] = x6;
   21801              :   if (!nonimmediate_operand (operands[1], E_SImode))
   21802              :     return -1;
   21803              :   switch (pattern940 (x1))
   21804              :     {
   21805              :     case 0:
   21806              :       if (!
   21807              : #line 6306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21808              : (!TARGET_64BIT
   21809              :    && TARGET_80387 && X87_ENABLE_FLOAT (SFmode, DImode)
   21810              :    && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC))
   21811              :         return -1;
   21812              :       *pnum_clobbers = 1;
   21813              :       return 265; /* floatunssisf2_i387_with_xmm */
   21814              : 
   21815              :     case 1:
   21816              :       if (!
   21817              : #line 6306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21818              : (!TARGET_64BIT
   21819              :    && TARGET_80387 && X87_ENABLE_FLOAT (DFmode, DImode)
   21820              :    && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC))
   21821              :         return -1;
   21822              :       *pnum_clobbers = 1;
   21823              :       return 266; /* floatunssidf2_i387_with_xmm */
   21824              : 
   21825              :     case 2:
   21826              :       if (!
   21827              : #line 6306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21828              : (!TARGET_64BIT
   21829              :    && TARGET_80387 && X87_ENABLE_FLOAT (XFmode, DImode)
   21830              :    && TARGET_SSE2 && TARGET_INTER_UNIT_MOVES_TO_VEC))
   21831              :         return -1;
   21832              :       *pnum_clobbers = 1;
   21833              :       return 267; /* floatunssixf2_i387_with_xmm */
   21834              : 
   21835              :     default:
   21836              :       return -1;
   21837              :     }
   21838              : }
   21839              : 
   21840              :  int
   21841              : recog_387 (rtx x1 ATTRIBUTE_UNUSED,
   21842              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21843              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21844              : {
   21845              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21846              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   21847              :   rtx x10, x11, x12, x13, x14;
   21848              :   int res ATTRIBUTE_UNUSED;
   21849              :   x2 = XVECEXP (x1, 0, 0);
   21850              :   x3 = XEXP (x2, 1);
   21851              :   x4 = XEXP (x3, 0);
   21852              :   switch (GET_CODE (x4))
   21853              :     {
   21854              :     case REG:
   21855              :     case SUBREG:
   21856              :     case MEM:
   21857              :       operands[1] = x4;
   21858              :       res = recog_386 (x1, insn, pnum_clobbers);
   21859              :       if (res >= 0)
   21860              :         return res;
   21861              :       if (GET_CODE (x4) != SUBREG
   21862              :           || maybe_ne (SUBREG_BYTE (x4), 0)
   21863              :           || GET_MODE (x4) != E_QImode)
   21864              :         return -1;
   21865              :       x5 = XEXP (x4, 0);
   21866              :       switch (GET_CODE (x5))
   21867              :         {
   21868              :         case ASHIFTRT:
   21869              :         case LSHIFTRT:
   21870              :         case SIGN_EXTRACT:
   21871              :         case ZERO_EXTRACT:
   21872              :           operands[3] = x5;
   21873              :           x6 = XVECEXP (x1, 0, 1);
   21874              :           if (GET_CODE (x6) != CLOBBER
   21875              :               || pattern573 (x1) != 0)
   21876              :             return -1;
   21877              :           x7 = XEXP (x5, 0);
   21878              :           operands[2] = x7;
   21879              :           switch (pattern1535 (x2))
   21880              :             {
   21881              :             case 0:
   21882              :               if (
   21883              : #line 7044 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21884              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   21885              :                 return 307; /* *addqi_exthi_1_slp */
   21886              :               break;
   21887              : 
   21888              :             case 1:
   21889              :               if (
   21890              : #line 7044 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21891              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   21892              :                 return 308; /* *addqi_extsi_1_slp */
   21893              :               break;
   21894              : 
   21895              :             case 2:
   21896              :               if ((
   21897              : #line 7044 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21898              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   21899              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21900              : (TARGET_64BIT)))
   21901              :                 return 309; /* *addqi_extdi_1_slp */
   21902              :               break;
   21903              : 
   21904              :             case 3:
   21905              :               return 331; /* *addqi_exthi_0 */
   21906              : 
   21907              :             case 4:
   21908              :               return 332; /* *addqi_extsi_0 */
   21909              : 
   21910              :             case 5:
   21911              :               if (
   21912              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21913              : (TARGET_64BIT))
   21914              :                 return 333; /* *addqi_extdi_0 */
   21915              :               break;
   21916              : 
   21917              :             default:
   21918              :               break;
   21919              :             }
   21920              :           x8 = XEXP (x3, 1);
   21921              :           if (GET_CODE (x8) != SUBREG)
   21922              :             return -1;
   21923              :           switch (pattern1536 (x2))
   21924              :             {
   21925              :             case 0:
   21926              :               if (!
   21927              : #line 7073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21928              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   21929              :                 return -1;
   21930              :               return 310; /* *addqi_exthi_2_slp */
   21931              : 
   21932              :             case 1:
   21933              :               if (!
   21934              : #line 7073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21935              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   21936              :                 return -1;
   21937              :               return 311; /* *addqi_extsi_2_slp */
   21938              : 
   21939              :             case 2:
   21940              :               if (!(
   21941              : #line 7073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21942              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   21943              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21944              : (TARGET_64BIT)))
   21945              :                 return -1;
   21946              :               return 312; /* *addqi_extdi_2_slp */
   21947              : 
   21948              :             case 3:
   21949              :               return 334; /* *addqi_ext2hi_0 */
   21950              : 
   21951              :             case 4:
   21952              :               return 335; /* *addqi_ext2si_0 */
   21953              : 
   21954              :             case 5:
   21955              :               if (!
   21956              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21957              : (TARGET_64BIT))
   21958              :                 return -1;
   21959              :               return 336; /* *addqi_ext2di_0 */
   21960              : 
   21961              :             default:
   21962              :               return -1;
   21963              :             }
   21964              : 
   21965              :         default:
   21966              :           return -1;
   21967              :         }
   21968              : 
   21969              :     case ZERO_EXTEND:
   21970              :       x6 = XVECEXP (x1, 0, 1);
   21971              :       if (pattern355 (x6) != 0)
   21972              :         return -1;
   21973              :       switch (pattern942 (x2))
   21974              :         {
   21975              :         case 0:
   21976              :           if (!(
   21977              : #line 6562 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21978              : (ix86_binary_operator_ok (UNKNOWN, DImode, operands, TARGET_APX_NDD)) && 
   21979              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21980              : (!TARGET_64BIT)))
   21981              :             return -1;
   21982              :           return 272; /* *adddi3_doubleword_zext */
   21983              : 
   21984              :         case 1:
   21985              :           if (!(
   21986              : #line 6562 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21987              : (ix86_binary_operator_ok (UNKNOWN, TImode, operands, TARGET_APX_NDD)) && 
   21988              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21989              : (TARGET_64BIT)))
   21990              :             return -1;
   21991              :           return 273; /* *addti3_doubleword_zext */
   21992              : 
   21993              :         default:
   21994              :           return -1;
   21995              :         }
   21996              : 
   21997              :     case PLUS:
   21998              :       if (pattern344 (x1) != 0)
   21999              :         return -1;
   22000              :       x5 = XEXP (x4, 0);
   22001              :       switch (GET_CODE (x5))
   22002              :         {
   22003              :         case ASHIFT:
   22004              :           switch (pattern1167 (x3))
   22005              :             {
   22006              :             case 0:
   22007              :               if (!(
   22008              : #line 6593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22009              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   22010              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22011              : (!TARGET_64BIT)))
   22012              :                 return -1;
   22013              :               return 274; /* *adddi3_doubleword_concat */
   22014              : 
   22015              :             case 1:
   22016              :               if (!(
   22017              : #line 6593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22018              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   22019              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22020              : (TARGET_64BIT)))
   22021              :                 return -1;
   22022              :               return 277; /* *addti3_doubleword_concat */
   22023              : 
   22024              :             case 2:
   22025              :               if (!(
   22026              : #line 6624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22027              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   22028              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22029              : (!TARGET_64BIT)))
   22030              :                 return -1;
   22031              :               return 280; /* *adddi3_doubleword_concat_zext */
   22032              : 
   22033              :             case 3:
   22034              :               if (!(
   22035              : #line 6624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22036              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   22037              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22038              : (TARGET_64BIT)))
   22039              :                 return -1;
   22040              :               return 283; /* *addti3_doubleword_concat_zext */
   22041              : 
   22042              :             default:
   22043              :               return -1;
   22044              :             }
   22045              : 
   22046              :         case LTU:
   22047              :         case UNLT:
   22048              :           operands[4] = x5;
   22049              :           x9 = XEXP (x5, 1);
   22050              :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   22051              :             return -1;
   22052              :           x7 = XEXP (x5, 0);
   22053              :           operands[3] = x7;
   22054              :           if (!flags_reg_operand (operands[3], E_VOIDmode))
   22055              :             return -1;
   22056              :           x10 = XEXP (x4, 1);
   22057              :           operands[1] = x10;
   22058              :           x8 = XEXP (x3, 1);
   22059              :           operands[2] = x8;
   22060              :           switch (GET_MODE (operands[0]))
   22061              :             {
   22062              :             case E_QImode:
   22063              :               if (pattern1636 (x3, 
   22064              : E_QImode) != 0
   22065              :                   || !
   22066              : #line 8840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22067              : (ix86_binary_operator_ok (PLUS, QImode, operands, TARGET_APX_NDD)))
   22068              :                 return -1;
   22069              :               return 457; /* addqi3_carry */
   22070              : 
   22071              :             case E_HImode:
   22072              :               if (pattern1636 (x3, 
   22073              : E_HImode) != 0
   22074              :                   || !
   22075              : #line 8840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22076              : (ix86_binary_operator_ok (PLUS, HImode, operands, TARGET_APX_NDD)))
   22077              :                 return -1;
   22078              :               return 458; /* addhi3_carry */
   22079              : 
   22080              :             case E_SImode:
   22081              :               if (pattern1637 (x3, 
   22082              : E_SImode) != 0
   22083              :                   || !
   22084              : #line 8840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22085              : (ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
   22086              :                 return -1;
   22087              :               return 459; /* addsi3_carry */
   22088              : 
   22089              :             case E_DImode:
   22090              :               if (pattern1637 (x3, 
   22091              : E_DImode) != 0
   22092              :                   || !(
   22093              : #line 8840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22094              : (ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)) && 
   22095              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22096              : (TARGET_64BIT)))
   22097              :                 return -1;
   22098              :               return 460; /* adddi3_carry */
   22099              : 
   22100              :             default:
   22101              :               return -1;
   22102              :             }
   22103              : 
   22104              :         case EQ:
   22105              :           switch (pattern1170 (x3))
   22106              :             {
   22107              :             case 0:
   22108              :               if (!
   22109              : #line 10479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22110              : (ix86_binary_operator_ok (PLUS, QImode, operands, TARGET_APX_NDD)
   22111              :    && ix86_pre_reload_split ()))
   22112              :                 return -1;
   22113              :               return 582; /* *addqi3_eq */
   22114              : 
   22115              :             case 1:
   22116              :               if (!
   22117              : #line 10479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22118              : (ix86_binary_operator_ok (PLUS, HImode, operands, TARGET_APX_NDD)
   22119              :    && ix86_pre_reload_split ()))
   22120              :                 return -1;
   22121              :               return 583; /* *addhi3_eq */
   22122              : 
   22123              :             case 2:
   22124              :               if (!
   22125              : #line 10479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22126              : (ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)
   22127              :    && ix86_pre_reload_split ()))
   22128              :                 return -1;
   22129              :               return 584; /* *addsi3_eq */
   22130              : 
   22131              :             case 3:
   22132              :               if (!(
   22133              : #line 10479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22134              : (ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)
   22135              :    && ix86_pre_reload_split ()) && 
   22136              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22137              : (TARGET_64BIT)))
   22138              :                 return -1;
   22139              :               return 585; /* *adddi3_eq */
   22140              : 
   22141              :             default:
   22142              :               return -1;
   22143              :             }
   22144              : 
   22145              :         case NE:
   22146              :           switch (pattern1173 (x3))
   22147              :             {
   22148              :             case 0:
   22149              :               if (!
   22150              : #line 10500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22151              : (CONST_INT_P (operands[2])
   22152              :    && (QImode != DImode
   22153              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22154              :    && ix86_binary_operator_ok (PLUS, QImode, operands, TARGET_APX_NDD)
   22155              :    && ix86_pre_reload_split ()))
   22156              :                 return -1;
   22157              :               return 586; /* *addqi3_ne */
   22158              : 
   22159              :             case 1:
   22160              :               if (!
   22161              : #line 10500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22162              : (CONST_INT_P (operands[2])
   22163              :    && (HImode != DImode
   22164              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22165              :    && ix86_binary_operator_ok (PLUS, HImode, operands, TARGET_APX_NDD)
   22166              :    && ix86_pre_reload_split ()))
   22167              :                 return -1;
   22168              :               return 587; /* *addhi3_ne */
   22169              : 
   22170              :             case 2:
   22171              :               if (!
   22172              : #line 10500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22173              : (CONST_INT_P (operands[2])
   22174              :    && (SImode != DImode
   22175              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22176              :    && ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)
   22177              :    && ix86_pre_reload_split ()))
   22178              :                 return -1;
   22179              :               return 588; /* *addsi3_ne */
   22180              : 
   22181              :             case 3:
   22182              :               if (!(
   22183              : #line 10500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22184              : (CONST_INT_P (operands[2])
   22185              :    && (DImode != DImode
   22186              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22187              :    && ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)
   22188              :    && ix86_pre_reload_split ()) && 
   22189              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22190              : (TARGET_64BIT)))
   22191              :                 return -1;
   22192              :               return 589; /* *adddi3_ne */
   22193              : 
   22194              :             default:
   22195              :               return -1;
   22196              :             }
   22197              : 
   22198              :         default:
   22199              :           return -1;
   22200              :         }
   22201              : 
   22202              :     case IOR:
   22203              :       switch (pattern359 (x1))
   22204              :         {
   22205              :         case 0:
   22206              :           if (!(
   22207              : #line 6593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22208              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   22209              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22210              : (!TARGET_64BIT)))
   22211              :             return -1;
   22212              :           return 275; /* *adddi3_doubleword_concat */
   22213              : 
   22214              :         case 1:
   22215              :           if (!(
   22216              : #line 6593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22217              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   22218              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22219              : (TARGET_64BIT)))
   22220              :             return -1;
   22221              :           return 278; /* *addti3_doubleword_concat */
   22222              : 
   22223              :         case 2:
   22224              :           if (!(
   22225              : #line 6624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22226              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   22227              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22228              : (!TARGET_64BIT)))
   22229              :             return -1;
   22230              :           return 281; /* *adddi3_doubleword_concat_zext */
   22231              : 
   22232              :         case 3:
   22233              :           if (!(
   22234              : #line 6624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22235              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   22236              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22237              : (TARGET_64BIT)))
   22238              :             return -1;
   22239              :           return 284; /* *addti3_doubleword_concat_zext */
   22240              : 
   22241              :         default:
   22242              :           return -1;
   22243              :         }
   22244              : 
   22245              :     case XOR:
   22246              :       switch (pattern359 (x1))
   22247              :         {
   22248              :         case 0:
   22249              :           if (!(
   22250              : #line 6593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22251              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   22252              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22253              : (!TARGET_64BIT)))
   22254              :             return -1;
   22255              :           return 276; /* *adddi3_doubleword_concat */
   22256              : 
   22257              :         case 1:
   22258              :           if (!(
   22259              : #line 6593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22260              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   22261              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22262              : (TARGET_64BIT)))
   22263              :             return -1;
   22264              :           return 279; /* *addti3_doubleword_concat */
   22265              : 
   22266              :         case 2:
   22267              :           if (!(
   22268              : #line 6624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22269              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   22270              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22271              : (!TARGET_64BIT)))
   22272              :             return -1;
   22273              :           return 282; /* *adddi3_doubleword_concat_zext */
   22274              : 
   22275              :         case 3:
   22276              :           if (!(
   22277              : #line 6624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22278              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   22279              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22280              : (TARGET_64BIT)))
   22281              :             return -1;
   22282              :           return 285; /* *addti3_doubleword_concat_zext */
   22283              : 
   22284              :         default:
   22285              :           return -1;
   22286              :         }
   22287              : 
   22288              :     case LTU:
   22289              :     case UNLT:
   22290              :       switch (pattern360 (x1))
   22291              :         {
   22292              :         case 0:
   22293              :           if (pattern1537 (x3, 
   22294              : E_QImode) != 0
   22295              :               || !
   22296              : #line 8941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22297              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])))
   22298              :             return -1;
   22299              :           return 465; /* *addqi3_carry_0 */
   22300              : 
   22301              :         case 1:
   22302              :           if (pattern1537 (x3, 
   22303              : E_HImode) != 0
   22304              :               || !
   22305              : #line 8941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22306              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])))
   22307              :             return -1;
   22308              :           return 466; /* *addhi3_carry_0 */
   22309              : 
   22310              :         case 2:
   22311              :           if (pattern1537 (x3, 
   22312              : E_SImode) != 0
   22313              :               || !
   22314              : #line 8941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22315              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])))
   22316              :             return -1;
   22317              :           return 467; /* *addsi3_carry_0 */
   22318              : 
   22319              :         case 3:
   22320              :           if (pattern1537 (x3, 
   22321              : E_DImode) != 0
   22322              :               || !(
   22323              : #line 8941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22324              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])) && 
   22325              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22326              : (TARGET_64BIT)))
   22327              :             return -1;
   22328              :           return 468; /* *adddi3_carry_0 */
   22329              : 
   22330              :         default:
   22331              :           return -1;
   22332              :         }
   22333              : 
   22334              :     case GE:
   22335              :     case GEU:
   22336              :       switch (pattern360 (x1))
   22337              :         {
   22338              :         case 0:
   22339              :           if (pattern1538 (x3, 
   22340              : E_QImode) != 0
   22341              :               || !
   22342              : #line 8975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22343              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])))
   22344              :             return -1;
   22345              :           return 473; /* *addqi3_carry_0r */
   22346              : 
   22347              :         case 1:
   22348              :           if (pattern1538 (x3, 
   22349              : E_HImode) != 0
   22350              :               || !
   22351              : #line 8975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22352              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])))
   22353              :             return -1;
   22354              :           return 474; /* *addhi3_carry_0r */
   22355              : 
   22356              :         case 2:
   22357              :           if (pattern1538 (x3, 
   22358              : E_SImode) != 0
   22359              :               || !
   22360              : #line 8975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22361              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])))
   22362              :             return -1;
   22363              :           return 475; /* *addsi3_carry_0r */
   22364              : 
   22365              :         case 3:
   22366              :           if (pattern1538 (x3, 
   22367              : E_DImode) != 0
   22368              :               || !(
   22369              : #line 8975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22370              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])) && 
   22371              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22372              : (TARGET_64BIT)))
   22373              :             return -1;
   22374              :           return 476; /* *adddi3_carry_0r */
   22375              : 
   22376              :         default:
   22377              :           return -1;
   22378              :         }
   22379              : 
   22380              :     case EQ:
   22381              :       switch (pattern364 (x1))
   22382              :         {
   22383              :         case 0:
   22384              :           if (!
   22385              : #line 10526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22386              : (ix86_unary_operator_ok (PLUS, QImode, operands)
   22387              :    && ix86_pre_reload_split ()))
   22388              :             return -1;
   22389              :           return 590; /* *addqi3_eq_0 */
   22390              : 
   22391              :         case 1:
   22392              :           if (!
   22393              : #line 10526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22394              : (ix86_unary_operator_ok (PLUS, HImode, operands)
   22395              :    && ix86_pre_reload_split ()))
   22396              :             return -1;
   22397              :           return 591; /* *addhi3_eq_0 */
   22398              : 
   22399              :         case 2:
   22400              :           if (!
   22401              : #line 10526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22402              : (ix86_unary_operator_ok (PLUS, SImode, operands)
   22403              :    && ix86_pre_reload_split ()))
   22404              :             return -1;
   22405              :           return 592; /* *addsi3_eq_0 */
   22406              : 
   22407              :         case 3:
   22408              :           if (!(
   22409              : #line 10526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22410              : (ix86_unary_operator_ok (PLUS, DImode, operands)
   22411              :    && ix86_pre_reload_split ()) && 
   22412              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22413              : (TARGET_64BIT)))
   22414              :             return -1;
   22415              :           return 593; /* *adddi3_eq_0 */
   22416              : 
   22417              :         default:
   22418              :           return -1;
   22419              :         }
   22420              : 
   22421              :     case NE:
   22422              :       switch (pattern364 (x1))
   22423              :         {
   22424              :         case 0:
   22425              :           if (!
   22426              : #line 10547 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22427              : (ix86_unary_operator_ok (PLUS, QImode, operands)
   22428              :    && ix86_pre_reload_split ()))
   22429              :             return -1;
   22430              :           return 594; /* *addqi3_ne_0 */
   22431              : 
   22432              :         case 1:
   22433              :           if (!
   22434              : #line 10547 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22435              : (ix86_unary_operator_ok (PLUS, HImode, operands)
   22436              :    && ix86_pre_reload_split ()))
   22437              :             return -1;
   22438              :           return 595; /* *addhi3_ne_0 */
   22439              : 
   22440              :         case 2:
   22441              :           if (!
   22442              : #line 10547 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22443              : (ix86_unary_operator_ok (PLUS, SImode, operands)
   22444              :    && ix86_pre_reload_split ()))
   22445              :             return -1;
   22446              :           return 596; /* *addsi3_ne_0 */
   22447              : 
   22448              :         case 3:
   22449              :           if (!(
   22450              : #line 10547 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22451              : (ix86_unary_operator_ok (PLUS, DImode, operands)
   22452              :    && ix86_pre_reload_split ()) && 
   22453              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22454              : (TARGET_64BIT)))
   22455              :             return -1;
   22456              :           return 597; /* *adddi3_ne_0 */
   22457              : 
   22458              :         default:
   22459              :           return -1;
   22460              :         }
   22461              : 
   22462              :     case MINUS:
   22463              :       x6 = XVECEXP (x1, 0, 1);
   22464              :       if (pattern355 (x6) != 0)
   22465              :         return -1;
   22466              :       switch (pattern946 (x2))
   22467              :         {
   22468              :         case 0:
   22469              :           if (!
   22470              : #line 10595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22471              : (CONST_INT_P (operands[2])
   22472              :    && (QImode != DImode
   22473              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22474              :    && ix86_binary_operator_ok (MINUS, QImode, operands, TARGET_APX_NDD)
   22475              :    && ix86_pre_reload_split ()))
   22476              :             return -1;
   22477              :           return 602; /* *subqi3_ne */
   22478              : 
   22479              :         case 1:
   22480              :           if (!
   22481              : #line 10595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22482              : (CONST_INT_P (operands[2])
   22483              :    && (HImode != DImode
   22484              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22485              :    && ix86_binary_operator_ok (MINUS, HImode, operands, TARGET_APX_NDD)
   22486              :    && ix86_pre_reload_split ()))
   22487              :             return -1;
   22488              :           return 603; /* *subhi3_ne */
   22489              : 
   22490              :         case 2:
   22491              :           if (!
   22492              : #line 10595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22493              : (CONST_INT_P (operands[2])
   22494              :    && (SImode != DImode
   22495              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22496              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)
   22497              :    && ix86_pre_reload_split ()))
   22498              :             return -1;
   22499              :           return 604; /* *subsi3_ne */
   22500              : 
   22501              :         case 3:
   22502              :           if (!(
   22503              : #line 10595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22504              : (CONST_INT_P (operands[2])
   22505              :    && (DImode != DImode
   22506              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22507              :    && ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)
   22508              :    && ix86_pre_reload_split ()) && 
   22509              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22510              : (TARGET_64BIT)))
   22511              :             return -1;
   22512              :           return 605; /* *subdi3_ne */
   22513              : 
   22514              :         case 4:
   22515              :           if (!
   22516              : #line 10624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22517              : (CONST_INT_P (operands[2])
   22518              :    && (QImode != DImode
   22519              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22520              :    && ix86_binary_operator_ok (MINUS, QImode, operands, TARGET_APX_NDD)
   22521              :    && ix86_pre_reload_split ()))
   22522              :             return -1;
   22523              :           return 606; /* *subqi3_eq_1 */
   22524              : 
   22525              :         case 5:
   22526              :           if (!
   22527              : #line 10624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22528              : (CONST_INT_P (operands[2])
   22529              :    && (HImode != DImode
   22530              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22531              :    && ix86_binary_operator_ok (MINUS, HImode, operands, TARGET_APX_NDD)
   22532              :    && ix86_pre_reload_split ()))
   22533              :             return -1;
   22534              :           return 607; /* *subhi3_eq_1 */
   22535              : 
   22536              :         case 6:
   22537              :           if (!
   22538              : #line 10624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22539              : (CONST_INT_P (operands[2])
   22540              :    && (SImode != DImode
   22541              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22542              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)
   22543              :    && ix86_pre_reload_split ()))
   22544              :             return -1;
   22545              :           return 608; /* *subsi3_eq_1 */
   22546              : 
   22547              :         case 7:
   22548              :           if (!(
   22549              : #line 10624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22550              : (CONST_INT_P (operands[2])
   22551              :    && (DImode != DImode
   22552              :        || INTVAL (operands[2]) != HOST_WIDE_INT_C (-0x80000000))
   22553              :    && ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)
   22554              :    && ix86_pre_reload_split ()) && 
   22555              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22556              : (TARGET_64BIT)))
   22557              :             return -1;
   22558              :           return 609; /* *subdi3_eq_1 */
   22559              : 
   22560              :         default:
   22561              :           return -1;
   22562              :         }
   22563              : 
   22564              :     case LSHIFTRT:
   22565              :       x10 = XEXP (x4, 1);
   22566              :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   22567              :         return -1;
   22568              :       x8 = XEXP (x3, 1);
   22569              :       if (GET_CODE (x8) != ASHIFT)
   22570              :         return -1;
   22571              :       x11 = XEXP (x8, 0);
   22572              :       if (GET_CODE (x11) != LTU)
   22573              :         return -1;
   22574              :       x12 = XEXP (x11, 0);
   22575              :       if (GET_CODE (x12) != REG
   22576              :           || REGNO (x12) != 17
   22577              :           || GET_MODE (x12) != E_CCCmode)
   22578              :         return -1;
   22579              :       x13 = XEXP (x11, 1);
   22580              :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   22581              :         return -1;
   22582              :       x14 = XEXP (x8, 1);
   22583              :       if (GET_CODE (x14) != CONST_INT
   22584              :           || pattern349 (x1) != 0)
   22585              :         return -1;
   22586              :       switch (XWINT (x14, 0))
   22587              :         {
   22588              :         case 31L:
   22589              :           if (pattern1698 (x3, 
   22590              : E_SImode) != 0)
   22591              :             return -1;
   22592              :           return 1417; /* rcrsi2 */
   22593              : 
   22594              :         case 63L:
   22595              :           if (pattern1698 (x3, 
   22596              : E_DImode) != 0
   22597              :               || !
   22598              : #line 19114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22599              : (TARGET_64BIT))
   22600              :             return -1;
   22601              :           return 1418; /* rcrdi2 */
   22602              : 
   22603              :         default:
   22604              :           return -1;
   22605              :         }
   22606              : 
   22607              :     case UNSPEC:
   22608              :       x6 = XVECEXP (x1, 0, 1);
   22609              :       if (pattern355 (x6) != 0)
   22610              :         return -1;
   22611              :       switch (pattern950 (x2))
   22612              :         {
   22613              :         case 0:
   22614              :           if (!
   22615              : #line 1409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22616              : (ptr_mode == SImode))
   22617              :             return -1;
   22618              :           return 1695; /* *add_tp_si */
   22619              : 
   22620              :         case 1:
   22621              :           if (!
   22622              : #line 1409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22623              : (ptr_mode == DImode))
   22624              :             return -1;
   22625              :           return 1696; /* *add_tp_di */
   22626              : 
   22627              :         case 2:
   22628              :           if (!
   22629              : #line 23689 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22630              : (!TARGET_64BIT && TARGET_GNU2_TLS))
   22631              :             return -1;
   22632              :           return 1700; /* *tls_dynamic_gnu2_combine_32 */
   22633              : 
   22634              :         case 3:
   22635              :           if (!(
   22636              : #line 23752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22637              : (TARGET_64BIT && TARGET_GNU2_TLS) && 
   22638              : #line 1409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22639              : (ptr_mode == SImode)))
   22640              :             return -1;
   22641              :           return 1705; /* *tls_dynamic_gnu2_combine_64_si */
   22642              : 
   22643              :         case 4:
   22644              :           if (!(
   22645              : #line 23752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22646              : (TARGET_64BIT && TARGET_GNU2_TLS) && 
   22647              : #line 1409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22648              : (ptr_mode == DImode)))
   22649              :             return -1;
   22650              :           return 1706; /* *tls_dynamic_gnu2_combine_64_di */
   22651              : 
   22652              :         default:
   22653              :           return -1;
   22654              :         }
   22655              : 
   22656              :     default:
   22657              :       return -1;
   22658              :     }
   22659              : }
   22660              : 
   22661              :  int
   22662              : recog_404 (rtx x1 ATTRIBUTE_UNUSED,
   22663              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22664              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22665              : {
   22666              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22667              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   22668              :   rtx x10, x11;
   22669              :   int res ATTRIBUTE_UNUSED;
   22670              :   x2 = XVECEXP (x1, 0, 0);
   22671              :   x3 = XEXP (x2, 1);
   22672              :   x4 = XEXP (x3, 0);
   22673              :   x5 = XEXP (x4, 1);
   22674              :   if (GET_CODE (x5) != CONST_INT)
   22675              :     return -1;
   22676              :   switch (pattern703 (x1))
   22677              :     {
   22678              :     case 0:
   22679              :       switch (XWINT (x5, 0))
   22680              :         {
   22681              :         case 0L:
   22682              :           x6 = XEXP (x3, 1);
   22683              :           if (GET_CODE (x6) != PLUS)
   22684              :             return -1;
   22685              :           x7 = XEXP (x6, 1);
   22686              :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
   22687              :             return -1;
   22688              :           x8 = XEXP (x2, 0);
   22689              :           operands[0] = x8;
   22690              :           operands[1] = x4;
   22691              :           x9 = XEXP (x4, 0);
   22692              :           operands[2] = x9;
   22693              :           switch (pattern1588 (x3))
   22694              :             {
   22695              :             case 0:
   22696              :               if (!
   22697              : #line 8797 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22698              : (TARGET_CMOVE))
   22699              :                 return -1;
   22700              :               return 453; /* *dec_cmovhi */
   22701              : 
   22702              :             case 1:
   22703              :               if (!
   22704              : #line 8797 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22705              : (TARGET_CMOVE))
   22706              :                 return -1;
   22707              :               return 454; /* *dec_cmovsi */
   22708              : 
   22709              :             case 2:
   22710              :               if (!(
   22711              : #line 8797 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22712              : (TARGET_CMOVE) && 
   22713              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22714              : (TARGET_64BIT)))
   22715              :                 return -1;
   22716              :               return 455; /* *dec_cmovdi */
   22717              : 
   22718              :             default:
   22719              :               return -1;
   22720              :             }
   22721              : 
   22722              :         case -1L:
   22723              :           switch (pattern1193 (x2))
   22724              :             {
   22725              :             case 0:
   22726              :               if (!(
   22727              : #line 2442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22728              : (TARGET_AVX512BW) && 
   22729              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22730              : (TARGET_AVX512DQ)))
   22731              :                 return -1;
   22732              :               return 2692; /* *kortest_cmpqi_jcc */
   22733              : 
   22734              :             case 1:
   22735              :               if (!
   22736              : #line 2442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22737              : (TARGET_AVX512BW))
   22738              :                 return -1;
   22739              :               return 2693; /* *kortest_cmphi_jcc */
   22740              : 
   22741              :             case 2:
   22742              :               if (!
   22743              : #line 2442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22744              : (TARGET_AVX512BW))
   22745              :                 return -1;
   22746              :               return 2694; /* *kortest_cmpsi_jcc */
   22747              : 
   22748              :             case 3:
   22749              :               if (!(
   22750              : #line 2442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22751              : (TARGET_AVX512BW) && 
   22752              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22753              : (TARGET_AVX512BW && TARGET_64BIT)))
   22754              :                 return -1;
   22755              :               return 2695; /* *kortest_cmpdi_jcc */
   22756              : 
   22757              :             case 4:
   22758              :               if (!(
   22759              : #line 2478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22760              : (TARGET_AVX512BW && TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL) && 
   22761              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22762              : (TARGET_AVX512DQ)))
   22763              :                 return -1;
   22764              :               return 2696; /* *kortest_cmpqi_movqicc */
   22765              : 
   22766              :             case 5:
   22767              :               if (!
   22768              : #line 2478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22769              : (TARGET_AVX512BW && TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL))
   22770              :                 return -1;
   22771              :               return 2697; /* *kortest_cmphi_movqicc */
   22772              : 
   22773              :             case 6:
   22774              :               if (!(
   22775              : #line 2478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22776              : (TARGET_AVX512BW && TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL) && 
   22777              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22778              : (TARGET_AVX512BW)))
   22779              :                 return -1;
   22780              :               return 2698; /* *kortest_cmpsi_movqicc */
   22781              : 
   22782              :             case 7:
   22783              :               if (!(
   22784              : #line 2478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22785              : (TARGET_AVX512BW && TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL) && 
   22786              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22787              : (TARGET_AVX512BW && TARGET_64BIT)))
   22788              :                 return -1;
   22789              :               return 2699; /* *kortest_cmpdi_movqicc */
   22790              : 
   22791              :             case 8:
   22792              :               if (!(
   22793              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22794              : (TARGET_AVX512BW && TARGET_CMOVE
   22795              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   22796              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22797              : (TARGET_AVX512DQ)))
   22798              :                 return -1;
   22799              :               return 2700; /* *kortest_cmpqi_movhicc */
   22800              : 
   22801              :             case 9:
   22802              :               if (!
   22803              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22804              : (TARGET_AVX512BW && TARGET_CMOVE
   22805              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
   22806              :                 return -1;
   22807              :               return 2703; /* *kortest_cmphi_movhicc */
   22808              : 
   22809              :             case 10:
   22810              :               if (!(
   22811              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22812              : (TARGET_AVX512BW && TARGET_CMOVE
   22813              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   22814              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22815              : (TARGET_AVX512BW)))
   22816              :                 return -1;
   22817              :               return 2706; /* *kortest_cmpsi_movhicc */
   22818              : 
   22819              :             case 11:
   22820              :               if (!(
   22821              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22822              : (TARGET_AVX512BW && TARGET_CMOVE
   22823              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   22824              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22825              : (TARGET_AVX512BW && TARGET_64BIT)))
   22826              :                 return -1;
   22827              :               return 2709; /* *kortest_cmpdi_movhicc */
   22828              : 
   22829              :             case 12:
   22830              :               if (!(
   22831              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22832              : (TARGET_AVX512BW && TARGET_CMOVE
   22833              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   22834              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22835              : (TARGET_AVX512DQ)))
   22836              :                 return -1;
   22837              :               return 2701; /* *kortest_cmpqi_movsicc */
   22838              : 
   22839              :             case 13:
   22840              :               if (!
   22841              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22842              : (TARGET_AVX512BW && TARGET_CMOVE
   22843              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
   22844              :                 return -1;
   22845              :               return 2704; /* *kortest_cmphi_movsicc */
   22846              : 
   22847              :             case 14:
   22848              :               if (!(
   22849              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22850              : (TARGET_AVX512BW && TARGET_CMOVE
   22851              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   22852              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22853              : (TARGET_AVX512BW)))
   22854              :                 return -1;
   22855              :               return 2707; /* *kortest_cmpsi_movsicc */
   22856              : 
   22857              :             case 15:
   22858              :               if (!(
   22859              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22860              : (TARGET_AVX512BW && TARGET_CMOVE
   22861              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   22862              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22863              : (TARGET_AVX512BW && TARGET_64BIT)))
   22864              :                 return -1;
   22865              :               return 2710; /* *kortest_cmpdi_movsicc */
   22866              : 
   22867              :             case 16:
   22868              :               if (!(
   22869              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22870              : (TARGET_AVX512BW && TARGET_CMOVE
   22871              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && ((((
   22872              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22873              : (TARGET_64BIT) && 
   22874              : #line 1556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22875              : (TARGET_AVX512DQ)) && 
   22876              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22877              : (TARGET_64BIT)) && 
   22878              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22879              : (TARGET_64BIT)) && 
   22880              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22881              : (TARGET_64BIT))))
   22882              :                 return -1;
   22883              :               return 2702; /* *kortest_cmpqi_movdicc */
   22884              : 
   22885              :             case 17:
   22886              :               if (!(
   22887              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22888              : (TARGET_AVX512BW && TARGET_CMOVE
   22889              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
   22890              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22891              : (TARGET_64BIT)))
   22892              :                 return -1;
   22893              :               return 2705; /* *kortest_cmphi_movdicc */
   22894              : 
   22895              :             case 18:
   22896              :               if (!(
   22897              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22898              : (TARGET_AVX512BW && TARGET_CMOVE
   22899              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && ((((
   22900              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22901              : (TARGET_64BIT) && 
   22902              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22903              : (TARGET_AVX512BW)) && 
   22904              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22905              : (TARGET_64BIT)) && 
   22906              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22907              : (TARGET_64BIT)) && 
   22908              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22909              : (TARGET_64BIT))))
   22910              :                 return -1;
   22911              :               return 2708; /* *kortest_cmpsi_movdicc */
   22912              : 
   22913              :             case 19:
   22914              :               if (!(
   22915              : #line 2521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   22916              : (TARGET_AVX512BW && TARGET_CMOVE
   22917              :    && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && ((((
   22918              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22919              : (TARGET_64BIT) && 
   22920              : #line 1557 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22921              : (TARGET_AVX512BW && TARGET_64BIT)) && 
   22922              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22923              : (TARGET_64BIT)) && 
   22924              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22925              : (TARGET_64BIT)) && 
   22926              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22927              : (TARGET_64BIT))))
   22928              :                 return -1;
   22929              :               return 2711; /* *kortest_cmpdi_movdicc */
   22930              : 
   22931              :             default:
   22932              :               return -1;
   22933              :             }
   22934              : 
   22935              :         default:
   22936              :           return -1;
   22937              :         }
   22938              : 
   22939              :     case 1:
   22940              :       x9 = XEXP (x4, 0);
   22941              :       x10 = XEXP (x9, 1);
   22942              :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   22943              :           || XWINT (x5, 0) != 0L)
   22944              :         return -1;
   22945              :       switch (pattern1346 (x2))
   22946              :         {
   22947              :         case 0:
   22948              :           x11 = XEXP (x9, 2);
   22949              :           operands[2] = x11;
   22950              :           switch (pattern1706 (x3))
   22951              :             {
   22952              :             case 0:
   22953              :               if (
   22954              : #line 19549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22955              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   22956              :    && (CONST_INT_P (operands[2])
   22957              :        ? (INTVAL (operands[2]) < GET_MODE_BITSIZE (SImode)
   22958              :           && INTVAL (operands[2])
   22959              :                >= (optimize_function_for_size_p (cfun) ? 8 : 32))
   22960              :        : !memory_operand (operands[1], SImode))
   22961              :    && ix86_pre_reload_split ()))
   22962              :                 return 1456; /* *jcc_btsi */
   22963              :               break;
   22964              : 
   22965              :             case 1:
   22966              :               if ((
   22967              : #line 19549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22968              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   22969              :    && (CONST_INT_P (operands[2])
   22970              :        ? (INTVAL (operands[2]) < GET_MODE_BITSIZE (DImode)
   22971              :           && INTVAL (operands[2])
   22972              :                >= (optimize_function_for_size_p (cfun) ? 8 : 32))
   22973              :        : !memory_operand (operands[1], DImode))
   22974              :    && ix86_pre_reload_split ()) && 
   22975              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22976              : (TARGET_64BIT)))
   22977              :                 return 1457; /* *jcc_btdi */
   22978              :               break;
   22979              : 
   22980              :             default:
   22981              :               break;
   22982              :             }
   22983              :           if (GET_CODE (x11) != SUBREG)
   22984              :             return -1;
   22985              :           switch (pattern1708 (x3))
   22986              :             {
   22987              :             case 0:
   22988              :               if (!
   22989              : #line 19625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22990              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   22991              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   22992              :       == GET_MODE_BITSIZE (SImode)-1
   22993              :    && ix86_pre_reload_split ()))
   22994              :                 return -1;
   22995              :               return 1460; /* *jcc_btsi_mask_1 */
   22996              : 
   22997              :             case 1:
   22998              :               if (!
   22999              : #line 19625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23000              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   23001              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   23002              :       == GET_MODE_BITSIZE (SImode)-1
   23003              :    && ix86_pre_reload_split ()))
   23004              :                 return -1;
   23005              :               return 1462; /* *jcc_btsi_mask_1 */
   23006              : 
   23007              :             case 2:
   23008              :               if (!(
   23009              : #line 19625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23010              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   23011              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   23012              :       == GET_MODE_BITSIZE (SImode)-1
   23013              :    && ix86_pre_reload_split ()) && 
   23014              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23015              : (TARGET_64BIT)))
   23016              :                 return -1;
   23017              :               return 1464; /* *jcc_btsi_mask_1 */
   23018              : 
   23019              :             case 3:
   23020              :               if (!(
   23021              : #line 19625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23022              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   23023              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   23024              :       == GET_MODE_BITSIZE (DImode)-1
   23025              :    && ix86_pre_reload_split ()) && 
   23026              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23027              : (TARGET_64BIT)))
   23028              :                 return -1;
   23029              :               return 1461; /* *jcc_btdi_mask_1 */
   23030              : 
   23031              :             case 4:
   23032              :               if (!(
   23033              : #line 19625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23034              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   23035              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   23036              :       == GET_MODE_BITSIZE (DImode)-1
   23037              :    && ix86_pre_reload_split ()) && 
   23038              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23039              : (TARGET_64BIT)))
   23040              :                 return -1;
   23041              :               return 1463; /* *jcc_btdi_mask_1 */
   23042              : 
   23043              :             case 5:
   23044              :               if (!(
   23045              : #line 19625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23046              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   23047              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   23048              :       == GET_MODE_BITSIZE (DImode)-1
   23049              :    && ix86_pre_reload_split ()) && 
   23050              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23051              : (TARGET_64BIT)))
   23052              :                 return -1;
   23053              :               return 1465; /* *jcc_btdi_mask_1 */
   23054              : 
   23055              :             default:
   23056              :               return -1;
   23057              :             }
   23058              : 
   23059              :         case 1:
   23060              :           if (!
   23061              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23062              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   23063              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (SImode)-1))
   23064              :       == GET_MODE_BITSIZE (SImode)-1
   23065              :    && ix86_pre_reload_split ()))
   23066              :             return -1;
   23067              :           return 1458; /* *jcc_btsi_mask */
   23068              : 
   23069              :         case 2:
   23070              :           if (!(
   23071              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23072              : ((TARGET_USE_BT || optimize_function_for_size_p (cfun))
   23073              :    && (INTVAL (operands[3]) & (GET_MODE_BITSIZE (DImode)-1))
   23074              :       == GET_MODE_BITSIZE (DImode)-1
   23075              :    && ix86_pre_reload_split ()) && 
   23076              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23077              : (TARGET_64BIT)))
   23078              :             return -1;
   23079              :           return 1459; /* *jcc_btdi_mask */
   23080              : 
   23081              :         default:
   23082              :           return -1;
   23083              :         }
   23084              : 
   23085              :     default:
   23086              :       return -1;
   23087              :     }
   23088              : }
   23089              : 
   23090              :  int
   23091              : recog_417 (rtx x1 ATTRIBUTE_UNUSED,
   23092              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23093              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23094              : {
   23095              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23096              :   rtx x2, x3, x4, x5, x6, x7;
   23097              :   int res ATTRIBUTE_UNUSED;
   23098              :   x2 = XVECEXP (x1, 0, 0);
   23099              :   x3 = XEXP (x2, 0);
   23100              :   operands[0] = x3;
   23101              :   x4 = XEXP (x2, 1);
   23102              :   x5 = XEXP (x4, 0);
   23103              :   operands[1] = x5;
   23104              :   x6 = XVECEXP (x1, 0, 1);
   23105              :   switch (GET_CODE (x6))
   23106              :     {
   23107              :     case CLOBBER:
   23108              :       x7 = XEXP (x6, 0);
   23109              :       switch (pattern705 (x7))
   23110              :         {
   23111              :         case 0:
   23112              :           if (!register_operand (operands[0], E_DImode)
   23113              :               || GET_MODE (x4) != E_DImode
   23114              :               || !general_operand (operands[1], E_DImode))
   23115              :             return -1;
   23116              :           if ((
   23117              : #line 14945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23118              : (TARGET_CMOVE
   23119              :    && ix86_pre_reload_split ()) && 
   23120              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23121              : (!TARGET_64BIT)))
   23122              :             return 1027; /* *absdi2_doubleword */
   23123              :           if (!(
   23124              : #line 15032 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23125              : (TARGET_CMOVE
   23126              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   23127              :    && ix86_pre_reload_split ()) && 
   23128              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23129              : (TARGET_64BIT)))
   23130              :             return -1;
   23131              :           return 1034; /* *absdi2_1 */
   23132              : 
   23133              :         case 1:
   23134              :           if (!register_operand (operands[0], E_TImode)
   23135              :               || GET_MODE (x4) != E_TImode
   23136              :               || !general_operand (operands[1], E_TImode)
   23137              :               || !(
   23138              : #line 14945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23139              : (TARGET_CMOVE
   23140              :    && ix86_pre_reload_split ()) && 
   23141              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23142              : (TARGET_64BIT)))
   23143              :             return -1;
   23144              :           return 1028; /* *absti2_doubleword */
   23145              : 
   23146              :         case 2:
   23147              :           if (!register_operand (operands[0], E_QImode)
   23148              :               || GET_MODE (x4) != E_QImode
   23149              :               || !general_operand (operands[1], E_QImode)
   23150              :               || !
   23151              : #line 15032 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23152              : (TARGET_CMOVE
   23153              :    && (QImode != QImode || !TARGET_PARTIAL_REG_STALL)
   23154              :    && ix86_pre_reload_split ()))
   23155              :             return -1;
   23156              :           return 1031; /* *absqi2_1 */
   23157              : 
   23158              :         case 3:
   23159              :           if (!register_operand (operands[0], E_HImode)
   23160              :               || GET_MODE (x4) != E_HImode
   23161              :               || !general_operand (operands[1], E_HImode)
   23162              :               || !
   23163              : #line 15032 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23164              : (TARGET_CMOVE
   23165              :    && (HImode != QImode || !TARGET_PARTIAL_REG_STALL)
   23166              :    && ix86_pre_reload_split ()))
   23167              :             return -1;
   23168              :           return 1032; /* *abshi2_1 */
   23169              : 
   23170              :         case 4:
   23171              :           if (!register_operand (operands[0], E_SImode)
   23172              :               || GET_MODE (x4) != E_SImode
   23173              :               || !general_operand (operands[1], E_SImode)
   23174              :               || !
   23175              : #line 15032 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23176              : (TARGET_CMOVE
   23177              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   23178              :    && ix86_pre_reload_split ()))
   23179              :             return -1;
   23180              :           return 1033; /* *abssi2_1 */
   23181              : 
   23182              :         case 5:
   23183              :           if (!register_operand (operands[0], E_SFmode)
   23184              :               || GET_MODE (x4) != E_SFmode
   23185              :               || !register_operand (operands[1], E_SFmode)
   23186              :               || !
   23187              : #line 15155 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23188              : (TARGET_80387 && !(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)))
   23189              :             return -1;
   23190              :           return 1042; /* *abssf2_i387_1 */
   23191              : 
   23192              :         case 6:
   23193              :           if (!register_operand (operands[0], E_DFmode)
   23194              :               || GET_MODE (x4) != E_DFmode
   23195              :               || !register_operand (operands[1], E_DFmode)
   23196              :               || !
   23197              : #line 15155 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23198              : (TARGET_80387 && !(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)))
   23199              :             return -1;
   23200              :           return 1044; /* *absdf2_i387_1 */
   23201              : 
   23202              :         case 7:
   23203              :           if (!register_operand (operands[0], E_XFmode)
   23204              :               || GET_MODE (x4) != E_XFmode
   23205              :               || !register_operand (operands[1], E_XFmode)
   23206              :               || !
   23207              : #line 15155 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23208              : (TARGET_80387 && !(SSE_FLOAT_MODE_P (XFmode) && TARGET_SSE_MATH)))
   23209              :             return -1;
   23210              :           return 1046; /* *absxf2_i387_1 */
   23211              : 
   23212              :         default:
   23213              :           return -1;
   23214              :         }
   23215              : 
   23216              :     case USE:
   23217              :       switch (pattern709 (x1, pnum_clobbers))
   23218              :         {
   23219              :         case 0:
   23220              :           if (!
   23221              : #line 15093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23222              : (TARGET_SSE))
   23223              :             return -1;
   23224              :           return 1039; /* *abstf2_1 */
   23225              : 
   23226              :         case 1:
   23227              :           if (!
   23228              : #line 15179 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23229              : (TARGET_AVX512FP16))
   23230              :             return -1;
   23231              :           *pnum_clobbers = 1;
   23232              :           return 1048; /* *abshf2_1 */
   23233              : 
   23234              :         case 2:
   23235              :           if (!
   23236              : #line 15195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23237              : (TARGET_80387 || (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH)))
   23238              :             return -1;
   23239              :           *pnum_clobbers = 1;
   23240              :           return 1050; /* *abssf2_1 */
   23241              : 
   23242              :         case 3:
   23243              :           if (!
   23244              : #line 15195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23245              : (TARGET_80387 || (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH)))
   23246              :             return -1;
   23247              :           *pnum_clobbers = 1;
   23248              :           return 1052; /* *absdf2_1 */
   23249              : 
   23250              :         case 4:
   23251              :           if (!
   23252              : #line 706 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23253              : (TARGET_MMX_WITH_SSE))
   23254              :             return -1;
   23255              :           return 2105; /* *mmx_absv2sf2 */
   23256              : 
   23257              :         case 5:
   23258              :           if (!
   23259              : #line 2263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23260              : (TARGET_SSE))
   23261              :             return -1;
   23262              :           return 2151; /* *mmx_absv2bf */
   23263              : 
   23264              :         case 6:
   23265              :           if (!(
   23266              : #line 2263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23267              : (TARGET_SSE) && 
   23268              : #line 2248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23269              : (TARGET_MMX_WITH_SSE)))
   23270              :             return -1;
   23271              :           return 2153; /* *mmx_absv4bf */
   23272              : 
   23273              :         case 7:
   23274              :           if (!
   23275              : #line 2263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23276              : (TARGET_SSE))
   23277              :             return -1;
   23278              :           return 2155; /* *mmx_absv2hf */
   23279              : 
   23280              :         case 8:
   23281              :           if (!(
   23282              : #line 2263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23283              : (TARGET_SSE) && 
   23284              : #line 2249 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23285              : (TARGET_MMX_WITH_SSE)))
   23286              :             return -1;
   23287              :           return 2157; /* *mmx_absv4hf */
   23288              : 
   23289              :         case 9:
   23290              :           if (!(
   23291              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23292              : (TARGET_SSE) && 
   23293              : #line 415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23294              : (TARGET_AVX512F)))
   23295              :             return -1;
   23296              :           return 2715; /* *absv32bf2 */
   23297              : 
   23298              :         case 10:
   23299              :           if (!(
   23300              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23301              : (TARGET_SSE) && 
   23302              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23303              : (TARGET_AVX)))
   23304              :             return -1;
   23305              :           return 2717; /* *absv16bf2 */
   23306              : 
   23307              :         case 11:
   23308              :           if (!(
   23309              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23310              : (TARGET_SSE) && 
   23311              : #line 416 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23312              : (TARGET_SSE2)))
   23313              :             return -1;
   23314              :           return 2719; /* *absv8bf2 */
   23315              : 
   23316              :         case 12:
   23317              :           if (!(
   23318              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23319              : (TARGET_SSE) && 
   23320              : #line 417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23321              : (TARGET_AVX512F)))
   23322              :             return -1;
   23323              :           return 2721; /* *absv32hf2 */
   23324              : 
   23325              :         case 13:
   23326              :           if (!(
   23327              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23328              : (TARGET_SSE) && 
   23329              : #line 418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23330              : (TARGET_AVX)))
   23331              :             return -1;
   23332              :           return 2723; /* *absv16hf2 */
   23333              : 
   23334              :         case 14:
   23335              :           if (!(
   23336              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23337              : (TARGET_SSE) && 
   23338              : #line 418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23339              : (TARGET_SSE2)))
   23340              :             return -1;
   23341              :           return 2725; /* *absv8hf2 */
   23342              : 
   23343              :         case 15:
   23344              :           if (!(
   23345              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23346              : (TARGET_SSE) && 
   23347              : #line 419 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23348              : (TARGET_AVX512F)))
   23349              :             return -1;
   23350              :           return 2727; /* *absv16sf2 */
   23351              : 
   23352              :         case 16:
   23353              :           if (!(
   23354              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23355              : (TARGET_SSE) && 
   23356              : #line 419 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23357              : (TARGET_AVX)))
   23358              :             return -1;
   23359              :           return 2729; /* *absv8sf2 */
   23360              : 
   23361              :         case 17:
   23362              :           if (!
   23363              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23364              : (TARGET_SSE))
   23365              :             return -1;
   23366              :           return 2731; /* *absv4sf2 */
   23367              : 
   23368              :         case 18:
   23369              :           if (!(
   23370              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23371              : (TARGET_SSE) && 
   23372              : #line 420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23373              : (TARGET_AVX512F)))
   23374              :             return -1;
   23375              :           return 2733; /* *absv8df2 */
   23376              : 
   23377              :         case 19:
   23378              :           if (!(
   23379              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23380              : (TARGET_SSE) && 
   23381              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23382              : (TARGET_AVX)))
   23383              :             return -1;
   23384              :           return 2735; /* *absv4df2 */
   23385              : 
   23386              :         case 20:
   23387              :           if (!(
   23388              : #line 2609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23389              : (TARGET_SSE) && 
   23390              : #line 421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23391              : (TARGET_SSE2)))
   23392              :             return -1;
   23393              :           return 2737; /* *absv2df2 */
   23394              : 
   23395              :         default:
   23396              :           return -1;
   23397              :         }
   23398              : 
   23399              :     default:
   23400              :       return -1;
   23401              :     }
   23402              : }
   23403              : 
   23404              :  int
   23405              : recog_427 (rtx x1 ATTRIBUTE_UNUSED,
   23406              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23407              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23408              : {
   23409              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23410              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   23411              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   23412              :   rtx x18, x19, x20, x21;
   23413              :   int res ATTRIBUTE_UNUSED;
   23414              :   x2 = XVECEXP (x1, 0, 0);
   23415              :   x3 = XEXP (x2, 1);
   23416              :   x4 = XEXP (x3, 0);
   23417              :   if (GET_CODE (x4) != UNSPEC
   23418              :       || XVECLEN (x4, 0) != 4
   23419              :       || XINT (x4, 1) != 154)
   23420              :     return -1;
   23421              :   x5 = XVECEXP (x4, 0, 1);
   23422              :   if (GET_CODE (x5) != MEM)
   23423              :     return -1;
   23424              :   x6 = XEXP (x5, 0);
   23425              :   if (GET_CODE (x6) != UNSPEC
   23426              :       || XVECLEN (x6, 0) != 3
   23427              :       || XINT (x6, 1) != 155)
   23428              :     return -1;
   23429              :   x7 = XVECEXP (x4, 0, 2);
   23430              :   if (GET_CODE (x7) != MEM
   23431              :       || GET_MODE (x7) != E_BLKmode)
   23432              :     return -1;
   23433              :   x8 = XEXP (x7, 0);
   23434              :   if (GET_CODE (x8) != SCRATCH)
   23435              :     return -1;
   23436              :   x9 = XEXP (x3, 1);
   23437              :   if (GET_CODE (x9) != PARALLEL
   23438              :       || XVECLEN (x9, 0) != 4)
   23439              :     return -1;
   23440              :   x10 = XVECEXP (x9, 0, 0);
   23441              :   if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   23442              :     return -1;
   23443              :   x11 = XVECEXP (x9, 0, 1);
   23444              :   if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   23445              :     return -1;
   23446              :   x12 = XVECEXP (x9, 0, 2);
   23447              :   if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
   23448              :     return -1;
   23449              :   x13 = XVECEXP (x9, 0, 3);
   23450              :   if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
   23451              :     return -1;
   23452              :   x14 = XVECEXP (x1, 0, 1);
   23453              :   if (GET_CODE (x14) != CLOBBER)
   23454              :     return -1;
   23455              :   x15 = XEXP (x2, 0);
   23456              :   operands[0] = x15;
   23457              :   x16 = XVECEXP (x6, 0, 1);
   23458              :   if (!register_operand (x16, E_V4DImode))
   23459              :     return -1;
   23460              :   x17 = XVECEXP (x6, 0, 2);
   23461              :   if (!const1248_operand (x17, E_SImode))
   23462              :     return -1;
   23463              :   x18 = XEXP (x14, 0);
   23464              :   operands[1] = x18;
   23465              :   x19 = XVECEXP (x4, 0, 0);
   23466              :   switch (GET_CODE (x19))
   23467              :     {
   23468              :     case REG:
   23469              :     case SUBREG:
   23470              :       operands[2] = x19;
   23471              :       operands[7] = x5;
   23472              :       x20 = XVECEXP (x6, 0, 0);
   23473              :       operands[3] = x20;
   23474              :       operands[4] = x16;
   23475              :       operands[6] = x17;
   23476              :       x21 = XVECEXP (x4, 0, 3);
   23477              :       operands[5] = x21;
   23478              :       switch (GET_MODE (operands[0]))
   23479              :         {
   23480              :         case E_V4SImode:
   23481              :           switch (pattern1881 (x3, 
   23482              : E_V8SImode, 
   23483              : E_V4SImode, 
   23484              : E_SImode))
   23485              :             {
   23486              :             case 0:
   23487              :               if (!(
   23488              : #line 30105 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23489              : (TARGET_AVX2) && 
   23490              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23491              : (Pmode == SImode)))
   23492              :                 return -1;
   23493              :               return 9807; /* *avx2_gatherdiv8si_3 */
   23494              : 
   23495              :             case 1:
   23496              :               if (!(
   23497              : #line 30105 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23498              : (TARGET_AVX2) && 
   23499              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23500              : (Pmode == DImode)))
   23501              :                 return -1;
   23502              :               return 9809; /* *avx2_gatherdiv8si_3 */
   23503              : 
   23504              :             default:
   23505              :               return -1;
   23506              :             }
   23507              : 
   23508              :         case E_V4SFmode:
   23509              :           switch (pattern1881 (x3, 
   23510              : E_V8SFmode, 
   23511              : E_V4SFmode, 
   23512              : E_SFmode))
   23513              :             {
   23514              :             case 0:
   23515              :               if (!(
   23516              : #line 30105 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23517              : (TARGET_AVX2) && 
   23518              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23519              : (Pmode == SImode)))
   23520              :                 return -1;
   23521              :               return 9808; /* *avx2_gatherdiv8sf_3 */
   23522              : 
   23523              :             case 1:
   23524              :               if (!(
   23525              : #line 30105 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23526              : (TARGET_AVX2) && 
   23527              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23528              : (Pmode == DImode)))
   23529              :                 return -1;
   23530              :               return 9810; /* *avx2_gatherdiv8sf_3 */
   23531              : 
   23532              :             default:
   23533              :               return -1;
   23534              :             }
   23535              : 
   23536              :         default:
   23537              :           return -1;
   23538              :         }
   23539              : 
   23540              :     case PC:
   23541              :       operands[6] = x5;
   23542              :       x20 = XVECEXP (x6, 0, 0);
   23543              :       operands[2] = x20;
   23544              :       operands[3] = x16;
   23545              :       operands[5] = x17;
   23546              :       x21 = XVECEXP (x4, 0, 3);
   23547              :       operands[4] = x21;
   23548              :       switch (GET_MODE (operands[0]))
   23549              :         {
   23550              :         case E_V4SImode:
   23551              :           switch (pattern1877 (x3, 
   23552              : E_V8SImode, 
   23553              : E_V4SImode, 
   23554              : E_SImode))
   23555              :             {
   23556              :             case 0:
   23557              :               if (!(
   23558              : #line 30129 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23559              : (TARGET_AVX2) && 
   23560              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23561              : (Pmode == SImode)))
   23562              :                 return -1;
   23563              :               return 9811; /* *avx2_gatherdiv8si_4 */
   23564              : 
   23565              :             case 1:
   23566              :               if (!(
   23567              : #line 30129 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23568              : (TARGET_AVX2) && 
   23569              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23570              : (Pmode == DImode)))
   23571              :                 return -1;
   23572              :               return 9813; /* *avx2_gatherdiv8si_4 */
   23573              : 
   23574              :             default:
   23575              :               return -1;
   23576              :             }
   23577              : 
   23578              :         case E_V4SFmode:
   23579              :           switch (pattern1877 (x3, 
   23580              : E_V8SFmode, 
   23581              : E_V4SFmode, 
   23582              : E_SFmode))
   23583              :             {
   23584              :             case 0:
   23585              :               if (!(
   23586              : #line 30129 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23587              : (TARGET_AVX2) && 
   23588              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23589              : (Pmode == SImode)))
   23590              :                 return -1;
   23591              :               return 9812; /* *avx2_gatherdiv8sf_4 */
   23592              : 
   23593              :             case 1:
   23594              :               if (!(
   23595              : #line 30129 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23596              : (TARGET_AVX2) && 
   23597              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23598              : (Pmode == DImode)))
   23599              :                 return -1;
   23600              :               return 9814; /* *avx2_gatherdiv8sf_4 */
   23601              : 
   23602              :             default:
   23603              :               return -1;
   23604              :             }
   23605              : 
   23606              :         default:
   23607              :           return -1;
   23608              :         }
   23609              : 
   23610              :     default:
   23611              :       return -1;
   23612              :     }
   23613              : }
   23614              : 
   23615              :  int
   23616              : recog_434 (rtx x1 ATTRIBUTE_UNUSED,
   23617              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23618              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23619              : {
   23620              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23621              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   23622              :   rtx x10, x11, x12, x13, x14, x15, x16;
   23623              :   int res ATTRIBUTE_UNUSED;
   23624              :   x2 = XVECEXP (x1, 0, 0);
   23625              :   x3 = XEXP (x2, 1);
   23626              :   x4 = XEXP (x3, 0);
   23627              :   if (GET_CODE (x4) != MEM
   23628              :       || GET_MODE (x4) != E_QImode)
   23629              :     return -1;
   23630              :   x5 = XEXP (x2, 0);
   23631              :   operands[0] = x5;
   23632              :   x6 = XEXP (x4, 0);
   23633              :   switch (GET_CODE (x6))
   23634              :     {
   23635              :     case SUBREG:
   23636              :     case MEM:
   23637              :       operands[1] = x6;
   23638              :       if (!memory_operand (operands[1], E_SImode)
   23639              :           || pattern386 (x1) != 0)
   23640              :         return -1;
   23641              :       x7 = XEXP (x3, 1);
   23642              :       operands[2] = x7;
   23643              :       x8 = XVECEXP (x1, 0, 1);
   23644              :       x9 = XEXP (x8, 1);
   23645              :       x10 = XEXP (x9, 1);
   23646              :       operands[3] = x10;
   23647              :       if (!immediate_operand (operands[3], E_SImode)
   23648              :           || !
   23649              : #line 20827 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23650              : (!TARGET_64BIT && !TARGET_INDIRECT_BRANCH_REGISTER))
   23651              :         return -1;
   23652              :       return 1517; /* *sibcall_value_pop_memory */
   23653              : 
   23654              :     case SYMBOL_REF:
   23655              :       if (!constant_call_address_operand (x6, E_VOIDmode))
   23656              :         return -1;
   23657              :       x8 = XVECEXP (x1, 0, 1);
   23658              :       if (GET_CODE (x8) != UNSPEC)
   23659              :         return -1;
   23660              :       x11 = XVECEXP (x1, 0, 2);
   23661              :       if (GET_CODE (x11) != CLOBBER)
   23662              :         return -1;
   23663              :       switch (pattern1180 (x8))
   23664              :         {
   23665              :         case 0:
   23666              :           operands[2] = x6;
   23667              :           x7 = XEXP (x3, 1);
   23668              :           operands[3] = x7;
   23669              :           x12 = XVECEXP (x8, 0, 0);
   23670              :           operands[1] = x12;
   23671              :           if (!tls_symbolic_operand (operands[1], E_VOIDmode))
   23672              :             return -1;
   23673              :           x13 = XEXP (x11, 0);
   23674              :           operands[4] = x13;
   23675              :           switch (GET_MODE (operands[0]))
   23676              :             {
   23677              :             case E_SImode:
   23678              :               if (pattern1750 (x1, 
   23679              : E_SImode) != 0
   23680              :                   || !(
   23681              : #line 23352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23682              : (TARGET_64BIT) && 
   23683              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23684              : (Pmode == SImode)))
   23685              :                 return -1;
   23686              :               return 1684; /* *tls_global_dynamic_64_si */
   23687              : 
   23688              :             case E_DImode:
   23689              :               if (pattern1750 (x1, 
   23690              : E_DImode) != 0
   23691              :                   || !(
   23692              : #line 23352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23693              : (TARGET_64BIT) && 
   23694              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23695              : (Pmode == DImode)))
   23696              :                 return -1;
   23697              :               return 1685; /* *tls_global_dynamic_64_di */
   23698              : 
   23699              :             default:
   23700              :               return -1;
   23701              :             }
   23702              : 
   23703              :         case 1:
   23704              :           operands[1] = x6;
   23705              :           x7 = XEXP (x3, 1);
   23706              :           operands[2] = x7;
   23707              :           x13 = XEXP (x11, 0);
   23708              :           operands[3] = x13;
   23709              :           switch (GET_MODE (operands[0]))
   23710              :             {
   23711              :             case E_SImode:
   23712              :               if (pattern1679 (x1, 
   23713              : E_SImode) != 0
   23714              :                   || !(
   23715              : #line 23475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23716              : (TARGET_64BIT) && 
   23717              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23718              : (Pmode == SImode)))
   23719              :                 return -1;
   23720              :               return 1688; /* *tls_local_dynamic_base_64_si */
   23721              : 
   23722              :             case E_DImode:
   23723              :               if (pattern1679 (x1, 
   23724              : E_DImode) != 0
   23725              :                   || !(
   23726              : #line 23475 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23727              : (TARGET_64BIT) && 
   23728              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23729              : (Pmode == DImode)))
   23730              :                 return -1;
   23731              :               return 1689; /* *tls_local_dynamic_base_64_di */
   23732              : 
   23733              :             default:
   23734              :               return -1;
   23735              :             }
   23736              : 
   23737              :         default:
   23738              :           return -1;
   23739              :         }
   23740              : 
   23741              :     case PLUS:
   23742              :       if (GET_MODE (x6) != E_DImode)
   23743              :         return -1;
   23744              :       x8 = XVECEXP (x1, 0, 1);
   23745              :       if (GET_CODE (x8) != UNSPEC)
   23746              :         return -1;
   23747              :       x11 = XVECEXP (x1, 0, 2);
   23748              :       if (GET_CODE (x11) != CLOBBER
   23749              :           || !register_operand (operands[0], E_DImode)
   23750              :           || GET_MODE (x3) != E_DImode)
   23751              :         return -1;
   23752              :       x14 = XEXP (x6, 0);
   23753              :       if (!register_operand (x14, E_DImode))
   23754              :         return -1;
   23755              :       x15 = XEXP (x6, 1);
   23756              :       if (!immediate_operand (x15, E_DImode)
   23757              :           || GET_MODE (x8) != E_DImode)
   23758              :         return -1;
   23759              :       x13 = XEXP (x11, 0);
   23760              :       if (!register_operand (x13, E_DImode))
   23761              :         return -1;
   23762              :       switch (pattern1180 (x8))
   23763              :         {
   23764              :         case 0:
   23765              :           x16 = XVECEXP (x8, 0, 1);
   23766              :           if (GET_MODE (x16) != E_DImode)
   23767              :             return -1;
   23768              :           operands[2] = x14;
   23769              :           operands[3] = x15;
   23770              :           x7 = XEXP (x3, 1);
   23771              :           operands[4] = x7;
   23772              :           x12 = XVECEXP (x8, 0, 0);
   23773              :           operands[1] = x12;
   23774              :           if (!tls_symbolic_operand (operands[1], E_VOIDmode))
   23775              :             return -1;
   23776              :           operands[5] = x13;
   23777              :           if (!
   23778              : #line 23395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23779              : (TARGET_64BIT && ix86_cmodel == CM_LARGE_PIC && !TARGET_PECOFF
   23780              :    && GET_CODE (operands[3]) == CONST
   23781              :    && GET_CODE (XEXP (operands[3], 0)) == UNSPEC
   23782              :    && XINT (XEXP (operands[3], 0), 1) == UNSPEC_PLTOFF))
   23783              :             return -1;
   23784              :           return 1686; /* *tls_global_dynamic_64_largepic */
   23785              : 
   23786              :         case 1:
   23787              :           x12 = XVECEXP (x8, 0, 0);
   23788              :           if (GET_MODE (x12) != E_DImode)
   23789              :             return -1;
   23790              :           operands[1] = x14;
   23791              :           operands[2] = x15;
   23792              :           x7 = XEXP (x3, 1);
   23793              :           operands[3] = x7;
   23794              :           operands[4] = x13;
   23795              :           if (!
   23796              : #line 23497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23797              : (TARGET_64BIT && ix86_cmodel == CM_LARGE_PIC && !TARGET_PECOFF
   23798              :    && GET_CODE (operands[2]) == CONST
   23799              :    && GET_CODE (XEXP (operands[2], 0)) == UNSPEC
   23800              :    && XINT (XEXP (operands[2], 0), 1) == UNSPEC_PLTOFF))
   23801              :             return -1;
   23802              :           return 1690; /* *tls_local_dynamic_base_64_largepic */
   23803              : 
   23804              :         default:
   23805              :           return -1;
   23806              :         }
   23807              : 
   23808              :     default:
   23809              :       return -1;
   23810              :     }
   23811              : }
   23812              : 
   23813              :  int
   23814              : recog_439 (rtx x1 ATTRIBUTE_UNUSED,
   23815              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23816              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23817              : {
   23818              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23819              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   23820              :   rtx x10, x11, x12, x13, x14, x15, x16;
   23821              :   int res ATTRIBUTE_UNUSED;
   23822              :   x2 = XVECEXP (x1, 0, 0);
   23823              :   if (GET_CODE (x2) != SET)
   23824              :     return -1;
   23825              :   x3 = XVECEXP (x1, 0, 3);
   23826              :   if (GET_CODE (x3) != CLOBBER)
   23827              :     return -1;
   23828              :   x4 = XEXP (x2, 1);
   23829              :   switch (GET_CODE (x4))
   23830              :     {
   23831              :     case UNSIGNED_FIX:
   23832              :       switch (pattern388 (x1))
   23833              :         {
   23834              :         case 0:
   23835              :           if (!
   23836              : #line 5920 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23837              : (!TARGET_64BIT && TARGET_SSE2 && TARGET_SSE_MATH
   23838              :    && optimize_function_for_speed_p (cfun)))
   23839              :             return -1;
   23840              :           return 227; /* *fixuns_truncsf_1 */
   23841              : 
   23842              :         case 1:
   23843              :           if (!
   23844              : #line 5920 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23845              : (!TARGET_64BIT && TARGET_SSE2 && TARGET_SSE_MATH
   23846              :    && optimize_function_for_speed_p (cfun)))
   23847              :             return -1;
   23848              :           return 228; /* *fixuns_truncdf_1 */
   23849              : 
   23850              :         default:
   23851              :           return -1;
   23852              :         }
   23853              : 
   23854              :     case FIX:
   23855              :       if (GET_MODE (x4) != E_DImode)
   23856              :         return -1;
   23857              :       x5 = XVECEXP (x1, 0, 1);
   23858              :       if (GET_CODE (x5) != USE)
   23859              :         return -1;
   23860              :       x6 = XVECEXP (x1, 0, 2);
   23861              :       if (GET_CODE (x6) != USE)
   23862              :         return -1;
   23863              :       x7 = XEXP (x2, 0);
   23864              :       operands[0] = x7;
   23865              :       if (!nonimmediate_operand (operands[0], E_DImode))
   23866              :         return -1;
   23867              :       x8 = XEXP (x4, 0);
   23868              :       operands[1] = x8;
   23869              :       if (!register_operand (operands[1], E_VOIDmode))
   23870              :         return -1;
   23871              :       x9 = XEXP (x5, 0);
   23872              :       operands[2] = x9;
   23873              :       if (!memory_operand (operands[2], E_HImode))
   23874              :         return -1;
   23875              :       x10 = XEXP (x6, 0);
   23876              :       operands[3] = x10;
   23877              :       if (!memory_operand (operands[3], E_HImode))
   23878              :         return -1;
   23879              :       x11 = XEXP (x3, 0);
   23880              :       operands[4] = x11;
   23881              :       if (!scratch_operand (operands[4], E_XFmode)
   23882              :           || !
   23883              : #line 6030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23884              : (X87_FLOAT_MODE_P (GET_MODE (operands[1]))
   23885              :    && !TARGET_FISTTP
   23886              :    && !(TARGET_64BIT && SSE_FLOAT_MODE_P (GET_MODE (operands[1])))))
   23887              :         return -1;
   23888              :       return 239; /* fix_truncdi_i387 */
   23889              : 
   23890              :     case FLOAT:
   23891              :       switch (pattern390 (x1))
   23892              :         {
   23893              :         case 0:
   23894              :           if (!
   23895              : #line 6215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23896              : (!TARGET_64BIT && TARGET_INTER_UNIT_MOVES_TO_VEC
   23897              :    && TARGET_80387 && X87_ENABLE_FLOAT (SFmode, DImode)
   23898              :    && TARGET_SSE2 && optimize_function_for_speed_p (cfun)))
   23899              :             return -1;
   23900              :           return 258; /* floatdisf2_i387_with_xmm */
   23901              : 
   23902              :         case 1:
   23903              :           if (!
   23904              : #line 6215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23905              : (!TARGET_64BIT && TARGET_INTER_UNIT_MOVES_TO_VEC
   23906              :    && TARGET_80387 && X87_ENABLE_FLOAT (DFmode, DImode)
   23907              :    && TARGET_SSE2 && optimize_function_for_speed_p (cfun)))
   23908              :             return -1;
   23909              :           return 259; /* floatdidf2_i387_with_xmm */
   23910              : 
   23911              :         case 2:
   23912              :           if (!
   23913              : #line 6215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23914              : (!TARGET_64BIT && TARGET_INTER_UNIT_MOVES_TO_VEC
   23915              :    && TARGET_80387 && X87_ENABLE_FLOAT (XFmode, DImode)
   23916              :    && TARGET_SSE2 && optimize_function_for_speed_p (cfun)))
   23917              :             return -1;
   23918              :           return 260; /* floatdixf2_i387_with_xmm */
   23919              : 
   23920              :         default:
   23921              :           return -1;
   23922              :         }
   23923              : 
   23924              :     case DIV:
   23925              :       switch (pattern395 (x1, 
   23926              : MOD))
   23927              :         {
   23928              :         case 0:
   23929              :           return 667; /* divmodsi4_1 */
   23930              : 
   23931              :         case 1:
   23932              :           if (!
   23933              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23934              : (TARGET_64BIT))
   23935              :             return -1;
   23936              :           return 668; /* divmoddi4_1 */
   23937              : 
   23938              :         case 2:
   23939              :           if (!
   23940              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23941              : (TARGET_HIMODE_MATH))
   23942              :             return -1;
   23943              :           return 695; /* *divmodhi4_noext */
   23944              : 
   23945              :         case 3:
   23946              :           return 697; /* *divmodsi4_noext */
   23947              : 
   23948              :         case 4:
   23949              :           if (!
   23950              : #line 1193 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23951              : (TARGET_64BIT))
   23952              :             return -1;
   23953              :           return 699; /* *divmoddi4_noext */
   23954              : 
   23955              :         default:
   23956              :           return -1;
   23957              :         }
   23958              : 
   23959              :     case UDIV:
   23960              :       switch (pattern395 (x1, 
   23961              : UMOD))
   23962              :         {
   23963              :         case 0:
   23964              :           return 669; /* udivmodsi4_1 */
   23965              : 
   23966              :         case 1:
   23967              :           if (!
   23968              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23969              : (TARGET_64BIT))
   23970              :             return -1;
   23971              :           return 670; /* udivmoddi4_1 */
   23972              : 
   23973              :         case 2:
   23974              :           if (!
   23975              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23976              : (TARGET_HIMODE_MATH))
   23977              :             return -1;
   23978              :           return 696; /* *udivmodhi4_noext */
   23979              : 
   23980              :         case 3:
   23981              :           return 698; /* *udivmodsi4_noext */
   23982              : 
   23983              :         case 4:
   23984              :           if (!
   23985              : #line 1193 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23986              : (TARGET_64BIT))
   23987              :             return -1;
   23988              :           return 700; /* *udivmoddi4_noext */
   23989              : 
   23990              :         default:
   23991              :           return -1;
   23992              :         }
   23993              : 
   23994              :     case ZERO_EXTEND:
   23995              :       if (GET_MODE (x4) != E_DImode)
   23996              :         return -1;
   23997              :       x5 = XVECEXP (x1, 0, 1);
   23998              :       if (GET_CODE (x5) != SET)
   23999              :         return -1;
   24000              :       x11 = XEXP (x3, 0);
   24001              :       if (GET_CODE (x11) != REG
   24002              :           || REGNO (x11) != 17
   24003              :           || GET_MODE (x11) != E_CCmode)
   24004              :         return -1;
   24005              :       switch (pattern1065 (x1))
   24006              :         {
   24007              :         case 0:
   24008              :           switch (pattern1510 (x1, 
   24009              : MOD))
   24010              :             {
   24011              :             case 0:
   24012              :               if (!
   24013              : #line 11828 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24014              : (TARGET_64BIT))
   24015              :                 return -1;
   24016              :               return 671; /* divmodsi4_zext_1 */
   24017              : 
   24018              :             case 1:
   24019              :               if (!
   24020              : #line 12223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24021              : (TARGET_64BIT))
   24022              :                 return -1;
   24023              :               return 701; /* *divmodsi4_noext_zext_1 */
   24024              : 
   24025              :             default:
   24026              :               return -1;
   24027              :             }
   24028              : 
   24029              :         case 1:
   24030              :           switch (pattern1510 (x1, 
   24031              : UMOD))
   24032              :             {
   24033              :             case 0:
   24034              :               if (!
   24035              : #line 11864 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24036              : (TARGET_64BIT))
   24037              :                 return -1;
   24038              :               return 672; /* udivmodsi4_zext_1 */
   24039              : 
   24040              :             case 1:
   24041              :               if (!
   24042              : #line 12223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24043              : (TARGET_64BIT))
   24044              :                 return -1;
   24045              :               return 702; /* *udivmodsi4_noext_zext_1 */
   24046              : 
   24047              :             default:
   24048              :               return -1;
   24049              :             }
   24050              : 
   24051              :         case 2:
   24052              :           switch (pattern1511 (x1, 
   24053              : DIV))
   24054              :             {
   24055              :             case 0:
   24056              :               if (!
   24057              : #line 11887 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24058              : (TARGET_64BIT))
   24059              :                 return -1;
   24060              :               return 673; /* divmodsi4_zext_2 */
   24061              : 
   24062              :             case 1:
   24063              :               if (!
   24064              : #line 12237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24065              : (TARGET_64BIT))
   24066              :                 return -1;
   24067              :               return 703; /* *divmodsi4_noext_zext_2 */
   24068              : 
   24069              :             default:
   24070              :               return -1;
   24071              :             }
   24072              : 
   24073              :         case 3:
   24074              :           switch (pattern1511 (x1, 
   24075              : UDIV))
   24076              :             {
   24077              :             case 0:
   24078              :               if (!
   24079              : #line 11924 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24080              : (TARGET_64BIT))
   24081              :                 return -1;
   24082              :               return 674; /* udivmodsi4_zext_2 */
   24083              : 
   24084              :             case 1:
   24085              :               if (!
   24086              : #line 12237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24087              : (TARGET_64BIT))
   24088              :                 return -1;
   24089              :               return 704; /* *udivmodsi4_noext_zext_2 */
   24090              : 
   24091              :             default:
   24092              :               return -1;
   24093              :             }
   24094              : 
   24095              :         default:
   24096              :           return -1;
   24097              :         }
   24098              : 
   24099              :     case UNSPEC:
   24100              :       x7 = XEXP (x2, 0);
   24101              :       operands[0] = x7;
   24102              :       switch (XVECLEN (x4, 0))
   24103              :         {
   24104              :         case 4:
   24105              :           if (XINT (x4, 1) != 21
   24106              :               || pattern825 (x4) != 0
   24107              :               || pattern1260 (x1) != 0
   24108              :               || !tls_symbolic_operand (operands[2], E_VOIDmode))
   24109              :             return -1;
   24110              :           x12 = XVECEXP (x4, 0, 2);
   24111              :           operands[3] = x12;
   24112              :           if (!constant_call_address_operand (operands[3], E_VOIDmode))
   24113              :             return -1;
   24114              :           x5 = XVECEXP (x1, 0, 1);
   24115              :           x9 = XEXP (x5, 0);
   24116              :           operands[4] = x9;
   24117              :           if (!scratch_operand (operands[4], E_SImode))
   24118              :             return -1;
   24119              :           x6 = XVECEXP (x1, 0, 2);
   24120              :           x10 = XEXP (x6, 0);
   24121              :           operands[5] = x10;
   24122              :           if (!scratch_operand (operands[5], E_SImode)
   24123              :               || !
   24124              : #line 23308 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24125              : (!TARGET_64BIT && TARGET_GNU_TLS))
   24126              :             return -1;
   24127              :           return 1683; /* *tls_global_dynamic_32_gnu */
   24128              : 
   24129              :         case 3:
   24130              :           if (XINT (x4, 1) != 22
   24131              :               || GET_MODE (x4) != E_SImode)
   24132              :             return -1;
   24133              :           x12 = XVECEXP (x4, 0, 2);
   24134              :           if (GET_CODE (x12) != REG
   24135              :               || REGNO (x12) != 7
   24136              :               || GET_MODE (x12) != E_SImode
   24137              :               || pattern1260 (x1) != 0
   24138              :               || !constant_call_address_operand (operands[2], E_VOIDmode))
   24139              :             return -1;
   24140              :           x5 = XVECEXP (x1, 0, 1);
   24141              :           x9 = XEXP (x5, 0);
   24142              :           operands[3] = x9;
   24143              :           if (!scratch_operand (operands[3], E_SImode))
   24144              :             return -1;
   24145              :           x6 = XVECEXP (x1, 0, 2);
   24146              :           x10 = XEXP (x6, 0);
   24147              :           operands[4] = x10;
   24148              :           if (!scratch_operand (operands[4], E_SImode)
   24149              :               || !
   24150              : #line 23436 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24151              : (!TARGET_64BIT && TARGET_GNU_TLS))
   24152              :             return -1;
   24153              :           return 1687; /* *tls_local_dynamic_base_32_gnu */
   24154              : 
   24155              :         case 1:
   24156              :           x5 = XVECEXP (x1, 0, 1);
   24157              :           if (GET_CODE (x5) != USE)
   24158              :             return -1;
   24159              :           x6 = XVECEXP (x1, 0, 2);
   24160              :           if (GET_CODE (x6) != USE
   24161              :               || !nonimmediate_operand (operands[0], E_DImode)
   24162              :               || GET_MODE (x4) != E_DImode)
   24163              :             return -1;
   24164              :           x13 = XVECEXP (x4, 0, 0);
   24165              :           operands[1] = x13;
   24166              :           if (!register_operand (operands[1], E_XFmode))
   24167              :             return -1;
   24168              :           x9 = XEXP (x5, 0);
   24169              :           operands[2] = x9;
   24170              :           if (!memory_operand (operands[2], E_HImode))
   24171              :             return -1;
   24172              :           x10 = XEXP (x6, 0);
   24173              :           operands[3] = x10;
   24174              :           if (!memory_operand (operands[3], E_HImode))
   24175              :             return -1;
   24176              :           x11 = XEXP (x3, 0);
   24177              :           operands[4] = x11;
   24178              :           if (!scratch_operand (operands[4], E_XFmode))
   24179              :             return -1;
   24180              :           switch (XINT (x4, 1))
   24181              :             {
   24182              :             case 79:
   24183              :               if (!
   24184              : #line 25744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24185              : (TARGET_USE_FANCY_MATH_387
   24186              :    && flag_unsafe_math_optimizations))
   24187              :                 return -1;
   24188              :               return 1784; /* fistdi2_floor */
   24189              : 
   24190              :             case 80:
   24191              :               if (!
   24192              : #line 25744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24193              : (TARGET_USE_FANCY_MATH_387
   24194              :    && flag_unsafe_math_optimizations))
   24195              :                 return -1;
   24196              :               return 1785; /* fistdi2_ceil */
   24197              : 
   24198              :             default:
   24199              :               return -1;
   24200              :             }
   24201              : 
   24202              :         default:
   24203              :           return -1;
   24204              :         }
   24205              : 
   24206              :     case PLUS:
   24207              :       if (pattern396 (x1) != 0)
   24208              :         return -1;
   24209              :       return 1691; /* *tls_local_dynamic_32_once */
   24210              : 
   24211              :     case UNSPEC_VOLATILE:
   24212              :       if (XVECLEN (x4, 0) != 1
   24213              :           || XINT (x4, 1) != 3)
   24214              :         return -1;
   24215              :       x5 = XVECEXP (x1, 0, 1);
   24216              :       if (pattern720 (x5, 
   24217              : 7, 
   24218              : MINUS) != 0)
   24219              :         return -1;
   24220              :       x6 = XVECEXP (x1, 0, 2);
   24221              :       if (pattern953 (x6, 
   24222              : E_CCmode, 
   24223              : 17) != 0)
   24224              :         return -1;
   24225              :       x11 = XEXP (x3, 0);
   24226              :       if (GET_CODE (x11) != MEM
   24227              :           || GET_MODE (x11) != E_BLKmode)
   24228              :         return -1;
   24229              :       x14 = XEXP (x11, 0);
   24230              :       if (GET_CODE (x14) != SCRATCH)
   24231              :         return -1;
   24232              :       x7 = XEXP (x2, 0);
   24233              :       operands[0] = x7;
   24234              :       x13 = XVECEXP (x4, 0, 0);
   24235              :       operands[1] = x13;
   24236              :       x15 = XEXP (x5, 1);
   24237              :       x16 = XEXP (x15, 1);
   24238              :       operands[2] = x16;
   24239              :       switch (GET_MODE (operands[0]))
   24240              :         {
   24241              :         case E_SImode:
   24242              :           if (pattern1802 (x1, 
   24243              : E_SImode) != 0
   24244              :               || !
   24245              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24246              : (Pmode == SImode))
   24247              :             return -1;
   24248              :           return 1916; /* adjust_stack_and_probe_si */
   24249              : 
   24250              :         case E_DImode:
   24251              :           if (pattern1802 (x1, 
   24252              : E_DImode) != 0
   24253              :               || !
   24254              : #line 1399 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24255              : (Pmode == DImode))
   24256              :             return -1;
   24257              :           return 1917; /* adjust_stack_and_probe_di */
   24258              : 
   24259              :         default:
   24260              :           return -1;
   24261              :         }
   24262              : 
   24263              :     default:
   24264              :       return -1;
   24265              :     }
   24266              : }
   24267              : 
   24268              :  rtx_insn *
   24269              : split_8 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   24270              : {
   24271              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24272              :   rtx x2, x3, x4, x5, x6, x7;
   24273              :   rtx_insn *res ATTRIBUTE_UNUSED;
   24274              :   x2 = XEXP (x1, 0);
   24275              :   operands[0] = x2;
   24276              :   x3 = XEXP (x1, 1);
   24277              :   x4 = XEXP (x3, 0);
   24278              :   switch (GET_CODE (x4))
   24279              :     {
   24280              :     case AND:
   24281              :       switch (pattern76 (x3))
   24282              :         {
   24283              :         case 0:
   24284              :           if (!(
   24285              : #line 3715 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24286              : (TARGET_64BIT
   24287              :    && CONST_WIDE_INT_P (operands[3])
   24288              :    && CONST_WIDE_INT_NUNITS (operands[3]) == 2
   24289              :    && CONST_WIDE_INT_ELT (operands[3], 0) == -1
   24290              :    && CONST_WIDE_INT_ELT (operands[3], 1) == 0) && 
   24291              : #line 3721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24292              : ( reload_completed)))
   24293              :             return NULL;
   24294              :           return gen_split_30 (insn, operands);
   24295              : 
   24296              :         case 1:
   24297              :           if (!(
   24298              : #line 3737 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24299              : (TARGET_64BIT
   24300              :    && CONST_WIDE_INT_P (operands[3])
   24301              :    && CONST_WIDE_INT_NUNITS (operands[3]) == 2
   24302              :    && CONST_WIDE_INT_ELT (operands[3], 0) == 0
   24303              :    && CONST_WIDE_INT_ELT (operands[3], 1) == -1) && 
   24304              : #line 3743 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24305              : ( reload_completed)))
   24306              :             return NULL;
   24307              :           return gen_split_33 (insn, operands);
   24308              : 
   24309              :         case 2:
   24310              :           if (!(
   24311              : #line 3759 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24312              : (!TARGET_64BIT
   24313              :    && CONST_INT_P (operands[3])
   24314              :    && UINTVAL (operands[3]) == 0xffffffff00000000ll) && 
   24315              : #line 3763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24316              : ( reload_completed)))
   24317              :             return NULL;
   24318              :           return gen_split_36 (insn, operands);
   24319              : 
   24320              :         default:
   24321              :           return NULL;
   24322              :         }
   24323              : 
   24324              :     case ASHIFT:
   24325              :       x5 = XEXP (x4, 1);
   24326              :       operands[2] = x5;
   24327              :       x6 = XEXP (x4, 0);
   24328              :       switch (GET_CODE (x6))
   24329              :         {
   24330              :         case REG:
   24331              :         case SUBREG:
   24332              :           operands[1] = x6;
   24333              :           x7 = XEXP (x3, 1);
   24334              :           switch (GET_CODE (x7))
   24335              :             {
   24336              :             case CONST_INT:
   24337              :             case CONST_WIDE_INT:
   24338              :               operands[3] = x7;
   24339              :               switch (GET_MODE (operands[0]))
   24340              :                 {
   24341              :                 case E_QImode:
   24342              :                   if (pattern614 (x3, 
   24343              : E_QImode) != 0
   24344              :                       || !(
   24345              : #line 8048 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24346              : ((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   24347              :    && ((unsigned HOST_WIDE_INT) INTVAL (operands[3])
   24348              :        < (HOST_WIDE_INT_1U << INTVAL (operands[2])))) && 
   24349              : #line 8052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24350              : ( reload_completed)))
   24351              :                     return NULL;
   24352              :                   return gen_split_167 (insn, operands);
   24353              : 
   24354              :                 case E_HImode:
   24355              :                   if (pattern614 (x3, 
   24356              : E_HImode) != 0
   24357              :                       || !(
   24358              : #line 8048 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24359              : ((!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   24360              :    && ((unsigned HOST_WIDE_INT) INTVAL (operands[3])
   24361              :        < (HOST_WIDE_INT_1U << INTVAL (operands[2])))) && 
   24362              : #line 8052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24363              : ( reload_completed)))
   24364              :                     return NULL;
   24365              :                   return gen_split_169 (insn, operands);
   24366              : 
   24367              :                 case E_SImode:
   24368              :                   if (pattern614 (x3, 
   24369              : E_SImode) != 0
   24370              :                       || !(
   24371              : #line 8072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24372              : ((unsigned HOST_WIDE_INT) INTVAL (operands[3])
   24373              :    < (HOST_WIDE_INT_1U << INTVAL (operands[2]))) && 
   24374              : #line 8075 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24375              : ( reload_completed)))
   24376              :                     return NULL;
   24377              :                   return gen_split_171 (insn, operands);
   24378              : 
   24379              :                 case E_DImode:
   24380              :                   if (GET_MODE (x3) != E_DImode
   24381              :                       || GET_MODE (x4) != E_DImode)
   24382              :                     return NULL;
   24383              :                   if (register_operand (operands[0], E_DImode)
   24384              :                       && register_no_SP_operand (operands[1], E_DImode)
   24385              :                       && const_0_to_3_operand (operands[2], E_VOIDmode)
   24386              :                       && const_int_operand (operands[3], E_VOIDmode)
   24387              :                       && ((
   24388              : #line 8072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24389              : ((unsigned HOST_WIDE_INT) INTVAL (operands[3])
   24390              :    < (HOST_WIDE_INT_1U << INTVAL (operands[2]))) && 
   24391              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24392              : (TARGET_64BIT)) && 
   24393              : #line 8075 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24394              : ( reload_completed)))
   24395              :                     return gen_split_173 (insn, operands);
   24396              :                   if (!nonimmediate_operand (operands[0], E_DImode)
   24397              :                       || !register_operand (operands[1], E_DImode)
   24398              :                       || !const_int_operand (operands[2], E_QImode)
   24399              :                       || !const_scalar_int_operand (operands[3], E_DImode)
   24400              :                       || !((
   24401              : #line 14473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24402              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT / 2
   24403              :    && (DImode == DImode
   24404              :        ? CONST_INT_P (operands[3])
   24405              :          && (UINTVAL (operands[3]) & ~GET_MODE_MASK (SImode)) == 0
   24406              :        : CONST_INT_P (operands[3])
   24407              :        ? INTVAL (operands[3]) >= 0
   24408              :        : CONST_WIDE_INT_NUNITS (operands[3]) == 2
   24409              :          && CONST_WIDE_INT_ELT (operands[3], 1) == 0)
   24410              :    && !(CONST_INT_P (operands[3])
   24411              :         ? ix86_endbr_immediate_operand (operands[3], VOIDmode)
   24412              :         : ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[3],
   24413              :                                                                      0)),
   24414              :                                         VOIDmode))) && 
   24415              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24416              : (!TARGET_64BIT)) && 
   24417              : #line 14487 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24418              : ( reload_completed)))
   24419              :                     return NULL;
   24420              :                   return gen_split_474 (insn, operands);
   24421              : 
   24422              :                 case E_TImode:
   24423              :                   if (pattern615 (x3, 
   24424              : E_TImode) != 0
   24425              :                       || !((
   24426              : #line 14473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24427              : (INTVAL (operands[2]) == 16 * BITS_PER_UNIT / 2
   24428              :    && (TImode == DImode
   24429              :        ? CONST_INT_P (operands[3])
   24430              :          && (UINTVAL (operands[3]) & ~GET_MODE_MASK (SImode)) == 0
   24431              :        : CONST_INT_P (operands[3])
   24432              :        ? INTVAL (operands[3]) >= 0
   24433              :        : CONST_WIDE_INT_NUNITS (operands[3]) == 2
   24434              :          && CONST_WIDE_INT_ELT (operands[3], 1) == 0)
   24435              :    && !(CONST_INT_P (operands[3])
   24436              :         ? ix86_endbr_immediate_operand (operands[3], VOIDmode)
   24437              :         : ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[3],
   24438              :                                                                      0)),
   24439              :                                         VOIDmode))) && 
   24440              : #line 1197 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24441              : (TARGET_64BIT)) && 
   24442              : #line 14487 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24443              : ( reload_completed)))
   24444              :                     return NULL;
   24445              :                   return gen_split_477 (insn, operands);
   24446              : 
   24447              :                 default:
   24448              :                   return NULL;
   24449              :                 }
   24450              : 
   24451              :             case ZERO_EXTEND:
   24452              :               switch (pattern955 (x3))
   24453              :                 {
   24454              :                 case 0:
   24455              :                   if (!((
   24456              : #line 14396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24457              : (INTVAL (operands[2]) == 4 * BITS_PER_UNIT) && 
   24458              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24459              : (!TARGET_64BIT)) && 
   24460              : #line 14398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24461              : ( reload_completed)))
   24462              :                     return NULL;
   24463              :                   return gen_split_438 (insn, operands);
   24464              : 
   24465              :                 case 1:
   24466              :                   if (!((
   24467              : #line 14396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24468              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT) && 
   24469              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24470              : (TARGET_64BIT)) && 
   24471              : #line 14398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24472              : ( reload_completed)))
   24473              :                     return NULL;
   24474              :                   return gen_split_441 (insn, operands);
   24475              : 
   24476              :                 default:
   24477              :                   return NULL;
   24478              :                 }
   24479              : 
   24480              :             default:
   24481              :               return NULL;
   24482              :             }
   24483              : 
   24484              :         case SIGN_EXTEND:
   24485              :           switch (pattern723 (x3))
   24486              :             {
   24487              :             case 0:
   24488              :               if (!((
   24489              : #line 14432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24490              : (INTVAL (operands[2]) == 4 * BITS_PER_UNIT) && 
   24491              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24492              : (!TARGET_64BIT)) && 
   24493              : #line 14434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24494              : ( reload_completed)))
   24495              :                 return NULL;
   24496              :               return gen_split_450 (insn, operands);
   24497              : 
   24498              :             case 1:
   24499              :               if (!((
   24500              : #line 14432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24501              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT) && 
   24502              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24503              : (TARGET_64BIT)) && 
   24504              : #line 14434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24505              : ( reload_completed)))
   24506              :                 return NULL;
   24507              :               return gen_split_456 (insn, operands);
   24508              : 
   24509              :             case 2:
   24510              :               if (!((
   24511              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24512              : (INTVAL (operands[2]) == 4 * BITS_PER_UNIT
   24513              :    && (DImode == DImode
   24514              :        ? CONST_INT_P (operands[3])
   24515              :          && (UINTVAL (operands[3]) & ~GET_MODE_MASK (SImode)) == 0
   24516              :        : CONST_INT_P (operands[3])
   24517              :        ? INTVAL (operands[3]) >= 0
   24518              :        : CONST_WIDE_INT_NUNITS (operands[3]) == 2
   24519              :          && CONST_WIDE_INT_ELT (operands[3], 1) == 0)
   24520              :    && !(CONST_INT_P (operands[3])
   24521              :         ? ix86_endbr_immediate_operand (operands[3], VOIDmode)
   24522              :         : ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[3],
   24523              :                                                                      0)),
   24524              :                                         VOIDmode))) && 
   24525              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24526              : (!TARGET_64BIT)) && 
   24527              : #line 14519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24528              : ( reload_completed)))
   24529              :                 return NULL;
   24530              :               return gen_split_480 (insn, operands);
   24531              : 
   24532              :             case 3:
   24533              :               if (!((
   24534              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24535              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT
   24536              :    && (TImode == DImode
   24537              :        ? CONST_INT_P (operands[3])
   24538              :          && (UINTVAL (operands[3]) & ~GET_MODE_MASK (SImode)) == 0
   24539              :        : CONST_INT_P (operands[3])
   24540              :        ? INTVAL (operands[3]) >= 0
   24541              :        : CONST_WIDE_INT_NUNITS (operands[3]) == 2
   24542              :          && CONST_WIDE_INT_ELT (operands[3], 1) == 0)
   24543              :    && !(CONST_INT_P (operands[3])
   24544              :         ? ix86_endbr_immediate_operand (operands[3], VOIDmode)
   24545              :         : ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[3],
   24546              :                                                                      0)),
   24547              :                                         VOIDmode))) && 
   24548              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24549              : (TARGET_64BIT)) && 
   24550              : #line 14519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24551              : ( reload_completed)))
   24552              :                 return NULL;
   24553              :               return gen_split_486 (insn, operands);
   24554              : 
   24555              :             default:
   24556              :               return NULL;
   24557              :             }
   24558              : 
   24559              :         case ZERO_EXTEND:
   24560              :           switch (pattern723 (x3))
   24561              :             {
   24562              :             case 0:
   24563              :               if (!((
   24564              : #line 14432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24565              : (INTVAL (operands[2]) == 4 * BITS_PER_UNIT) && 
   24566              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24567              : (!TARGET_64BIT)) && 
   24568              : #line 14434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24569              : ( reload_completed)))
   24570              :                 return NULL;
   24571              :               return gen_split_453 (insn, operands);
   24572              : 
   24573              :             case 1:
   24574              :               if (!((
   24575              : #line 14432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24576              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT) && 
   24577              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24578              : (TARGET_64BIT)) && 
   24579              : #line 14434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24580              : ( reload_completed)))
   24581              :                 return NULL;
   24582              :               return gen_split_459 (insn, operands);
   24583              : 
   24584              :             case 2:
   24585              :               if (!((
   24586              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24587              : (INTVAL (operands[2]) == 4 * BITS_PER_UNIT
   24588              :    && (DImode == DImode
   24589              :        ? CONST_INT_P (operands[3])
   24590              :          && (UINTVAL (operands[3]) & ~GET_MODE_MASK (SImode)) == 0
   24591              :        : CONST_INT_P (operands[3])
   24592              :        ? INTVAL (operands[3]) >= 0
   24593              :        : CONST_WIDE_INT_NUNITS (operands[3]) == 2
   24594              :          && CONST_WIDE_INT_ELT (operands[3], 1) == 0)
   24595              :    && !(CONST_INT_P (operands[3])
   24596              :         ? ix86_endbr_immediate_operand (operands[3], VOIDmode)
   24597              :         : ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[3],
   24598              :                                                                      0)),
   24599              :                                         VOIDmode))) && 
   24600              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24601              : (!TARGET_64BIT)) && 
   24602              : #line 14519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24603              : ( reload_completed)))
   24604              :                 return NULL;
   24605              :               return gen_split_483 (insn, operands);
   24606              : 
   24607              :             case 3:
   24608              :               if (!((
   24609              : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24610              : (INTVAL (operands[2]) == 8 * BITS_PER_UNIT
   24611              :    && (TImode == DImode
   24612              :        ? CONST_INT_P (operands[3])
   24613              :          && (UINTVAL (operands[3]) & ~GET_MODE_MASK (SImode)) == 0
   24614              :        : CONST_INT_P (operands[3])
   24615              :        ? INTVAL (operands[3]) >= 0
   24616              :        : CONST_WIDE_INT_NUNITS (operands[3]) == 2
   24617              :          && CONST_WIDE_INT_ELT (operands[3], 1) == 0)
   24618              :    && !(CONST_INT_P (operands[3])
   24619              :         ? ix86_endbr_immediate_operand (operands[3], VOIDmode)
   24620              :         : ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[3],
   24621              :                                                                      0)),
   24622              :                                         VOIDmode))) && 
   24623              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24624              : (TARGET_64BIT)) && 
   24625              : #line 14519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24626              : ( reload_completed)))
   24627              :                 return NULL;
   24628              :               return gen_split_489 (insn, operands);
   24629              : 
   24630              :             default:
   24631              :               return NULL;
   24632              :             }
   24633              : 
   24634              :         default:
   24635              :           return NULL;
   24636              :         }
   24637              : 
   24638              :     case ZERO_EXTEND:
   24639              :       switch (pattern405 (x3))
   24640              :         {
   24641              :         case 0:
   24642              :           if (!((
   24643              : #line 14413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24644              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   24645              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24646              : (!TARGET_64BIT)) && 
   24647              : #line 14415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24648              : ( reload_completed)))
   24649              :             return NULL;
   24650              :           return gen_split_444 (insn, operands);
   24651              : 
   24652              :         case 1:
   24653              :           if (!((
   24654              : #line 14413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24655              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   24656              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24657              : (TARGET_64BIT)) && 
   24658              : #line 14415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24659              : ( reload_completed)))
   24660              :             return NULL;
   24661              :           return gen_split_447 (insn, operands);
   24662              : 
   24663              :         case 2:
   24664              :           if (!((
   24665              : #line 14457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24666              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   24667              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24668              : (!TARGET_64BIT)) && 
   24669              : #line 14459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24670              : ( reload_completed)))
   24671              :             return NULL;
   24672              :           return gen_split_462 (insn, operands);
   24673              : 
   24674              :         case 3:
   24675              :           if (!((
   24676              : #line 14457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24677              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   24678              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24679              : (TARGET_64BIT)) && 
   24680              : #line 14459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24681              : ( reload_completed)))
   24682              :             return NULL;
   24683              :           return gen_split_468 (insn, operands);
   24684              : 
   24685              :         case 4:
   24686              :           if (!((
   24687              : #line 14457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24688              : (INTVAL (operands[3]) == 4 * BITS_PER_UNIT) && 
   24689              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24690              : (!TARGET_64BIT)) && 
   24691              : #line 14459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24692              : ( reload_completed)))
   24693              :             return NULL;
   24694              :           return gen_split_465 (insn, operands);
   24695              : 
   24696              :         case 5:
   24697              :           if (!((
   24698              : #line 14457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24699              : (INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
   24700              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24701              : (TARGET_64BIT)) && 
   24702              : #line 14459 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24703              : ( reload_completed)))
   24704              :             return NULL;
   24705              :           return gen_split_471 (insn, operands);
   24706              : 
   24707              :         case 6:
   24708              :           if (!((
   24709              : #line 14534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24710              : (DImode == DImode
   24711              :    ? CONST_INT_P (operands[2])
   24712              :      && (UINTVAL (operands[2]) & GET_MODE_MASK (SImode)) == 0
   24713              :      && !ix86_endbr_immediate_operand (operands[2], VOIDmode)
   24714              :    : CONST_WIDE_INT_P (operands[2])
   24715              :      && CONST_WIDE_INT_NUNITS (operands[2]) == 2
   24716              :      && CONST_WIDE_INT_ELT (operands[2], 0) == 0
   24717              :      && !ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[2],
   24718              :                                                                     1)),
   24719              :                                        VOIDmode)) && 
   24720              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24721              : (!TARGET_64BIT)) && 
   24722              : #line 14545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24723              : ( reload_completed)))
   24724              :             return NULL;
   24725              :           return gen_split_492 (insn, operands);
   24726              : 
   24727              :         case 7:
   24728              :           if (!((
   24729              : #line 14534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24730              : (TImode == DImode
   24731              :    ? CONST_INT_P (operands[2])
   24732              :      && (UINTVAL (operands[2]) & GET_MODE_MASK (SImode)) == 0
   24733              :      && !ix86_endbr_immediate_operand (operands[2], VOIDmode)
   24734              :    : CONST_WIDE_INT_P (operands[2])
   24735              :      && CONST_WIDE_INT_NUNITS (operands[2]) == 2
   24736              :      && CONST_WIDE_INT_ELT (operands[2], 0) == 0
   24737              :      && !ix86_endbr_immediate_operand (GEN_INT (CONST_WIDE_INT_ELT (operands[2],
   24738              :                                                                     1)),
   24739              :                                        VOIDmode)) && 
   24740              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24741              : (TARGET_64BIT)) && 
   24742              : #line 14545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24743              : ( reload_completed)))
   24744              :             return NULL;
   24745              :           return gen_split_495 (insn, operands);
   24746              : 
   24747              :         default:
   24748              :           return NULL;
   24749              :         }
   24750              : 
   24751              :     default:
   24752              :       return NULL;
   24753              :     }
   24754              : }
   24755              : 
   24756              :  rtx_insn *
   24757              : split_17 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   24758              : {
   24759              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24760              :   rtx x2, x3, x4, x5;
   24761              :   rtx_insn *res ATTRIBUTE_UNUSED;
   24762              :   x2 = XVECEXP (x1, 0, 0);
   24763              :   switch (pattern937 (x2))
   24764              :     {
   24765              :     case 0:
   24766              :       x3 = XEXP (x2, 0);
   24767              :       operands[0] = x3;
   24768              :       x4 = XEXP (x2, 1);
   24769              :       x5 = XEXP (x4, 1);
   24770              :       if (GET_CODE (x5) == SUBREG)
   24771              :         {
   24772              :           switch (pattern1429 (x4))
   24773              :             {
   24774              :             case 0:
   24775              :               if (((
   24776              : #line 16918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24777              : (((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) == 0
   24778              :     || ((INTVAL (operands[3]) & (2 * 4 * BITS_PER_UNIT - 1))
   24779              :          == (2 * 4 * BITS_PER_UNIT - 1)))
   24780              :    && ix86_pre_reload_split ()) && 
   24781              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24782              : (!TARGET_64BIT)) && 
   24783              : #line 16923 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24784              : ( 1)))
   24785              :                 return gen_split_596 (insn, operands);
   24786              :               break;
   24787              : 
   24788              :             case 1:
   24789              :               if (((
   24790              : #line 16918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24791              : (((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) == 0
   24792              :     || ((INTVAL (operands[3]) & (2 * 8 * BITS_PER_UNIT - 1))
   24793              :          == (2 * 8 * BITS_PER_UNIT - 1)))
   24794              :    && ix86_pre_reload_split ()) && 
   24795              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24796              : (TARGET_64BIT)) && 
   24797              : #line 16923 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24798              : ( 1)))
   24799              :                 return gen_split_598 (insn, operands);
   24800              :               break;
   24801              : 
   24802              :             default:
   24803              :               break;
   24804              :             }
   24805              :         }
   24806              :       if (GET_MODE (x4) == E_SImode
   24807              :           && nonimmediate_operand (operands[1], E_SImode))
   24808              :         {
   24809              :           if (register_operand (operands[0], E_SImode))
   24810              :             {
   24811              :               operands[2] = x5;
   24812              :               if (register_operand (operands[2], E_QImode)
   24813              :                   && 
   24814              : #line 17771 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24815              : (TARGET_BMI2 && reload_completed))
   24816              :                 return gen_split_629 (insn, operands);
   24817              :             }
   24818              :           if (GET_CODE (x5) == SUBREG)
   24819              :             {
   24820              :               switch (pattern1541 (x5))
   24821              :                 {
   24822              :                 case 0:
   24823              :                   if ((
   24824              : #line 18174 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24825              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   24826              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   24827              :       == 4 * BITS_PER_UNIT - 1
   24828              :    && ix86_pre_reload_split ()) && 
   24829              : #line 18179 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24830              : ( 1)))
   24831              :                     return gen_split_646 (insn, operands);
   24832              :                   break;
   24833              : 
   24834              :                 case 1:
   24835              :                   if ((
   24836              : #line 18222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24837              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   24838              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   24839              :    && ix86_pre_reload_split ()) && 
   24840              : #line 18226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24841              : ( 1)))
   24842              :                     return gen_split_658 (insn, operands);
   24843              :                   break;
   24844              : 
   24845              :                 case 2:
   24846              :                   if ((
   24847              : #line 18268 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24848              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   24849              :    && ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   24850              :        || (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   24851              :           == 4 * BITS_PER_UNIT - 1)
   24852              :    && ix86_pre_reload_split ()) && 
   24853              : #line 18274 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24854              : ( 1)))
   24855              :                     return gen_split_670 (insn, operands);
   24856              :                   break;
   24857              : 
   24858              :                 default:
   24859              :                   break;
   24860              :                 }
   24861              :             }
   24862              :         }
   24863              :       operands[2] = x5;
   24864              :       switch (pattern1345 (x2))
   24865              :         {
   24866              :         case 0:
   24867              :           if (register_operand (operands[1], E_DImode)
   24868              :               && nonmemory_operand (operands[2], E_QImode)
   24869              :               && (
   24870              : #line 17030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24871              : (epilogue_completed) && 
   24872              : #line 1196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24873              : (!TARGET_64BIT)))
   24874              :             return gen_split_604 (insn, operands);
   24875              :           if (nonimmediate_operand (operands[1], E_DImode)
   24876              :               && register_operand (operands[2], E_QImode)
   24877              :               && (
   24878              : #line 17771 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24879              : (TARGET_BMI2 && reload_completed) && 
   24880              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24881              : (TARGET_64BIT)))
   24882              :             return gen_split_631 (insn, operands);
   24883              :           break;
   24884              : 
   24885              :         case 1:
   24886              :           if ((
   24887              : #line 17030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24888              : (epilogue_completed) && 
   24889              : #line 1197 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24890              : (TARGET_64BIT)))
   24891              :             return gen_split_606 (insn, operands);
   24892              :           break;
   24893              : 
   24894              :         case 2:
   24895              :           if ((
   24896              : #line 17974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24897              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   24898              : #line 17985 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24899              : ( reload_completed
   24900              :    && !(rtx_equal_p (operands[0], operands[1])))))
   24901              :             return gen_split_635 (insn, operands);
   24902              :           break;
   24903              : 
   24904              :         case 3:
   24905              :           if ((
   24906              : #line 17974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24907              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   24908              : #line 17985 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24909              : ( reload_completed
   24910              :    && !(rtx_equal_p (operands[0], operands[1])))))
   24911              :             return gen_split_637 (insn, operands);
   24912              :           break;
   24913              : 
   24914              :         default:
   24915              :           break;
   24916              :         }
   24917              :       if (GET_CODE (x5) != SUBREG)
   24918              :         return NULL;
   24919              :       switch (pattern1244 (x2, 
   24920              : E_DImode))
   24921              :         {
   24922              :         case 0:
   24923              :           if (!((
   24924              : #line 18174 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24925              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   24926              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   24927              :       == 8 * BITS_PER_UNIT - 1
   24928              :    && ix86_pre_reload_split ()) && 
   24929              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24930              : (TARGET_64BIT)) && 
   24931              : #line 18179 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24932              : ( 1)))
   24933              :             return NULL;
   24934              :           return gen_split_649 (insn, operands);
   24935              : 
   24936              :         case 1:
   24937              :           if (!((
   24938              : #line 18222 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24939              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   24940              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   24941              :    && ix86_pre_reload_split ()) && 
   24942              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24943              : (TARGET_64BIT)) && 
   24944              : #line 18226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24945              : ( 1)))
   24946              :             return NULL;
   24947              :           return gen_split_661 (insn, operands);
   24948              : 
   24949              :         case 2:
   24950              :           if (!((
   24951              : #line 18268 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24952              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   24953              :    && ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   24954              :        || (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   24955              :           == 8 * BITS_PER_UNIT - 1)
   24956              :    && ix86_pre_reload_split ()) && 
   24957              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24958              : (TARGET_64BIT)) && 
   24959              : #line 18274 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24960              : ( 1)))
   24961              :             return NULL;
   24962              :           return gen_split_673 (insn, operands);
   24963              : 
   24964              :         default:
   24965              :           return NULL;
   24966              :         }
   24967              : 
   24968              :     case 1:
   24969              :       if (register_operand (operands[0], E_DImode)
   24970              :           && register_operand (operands[1], E_DImode)
   24971              :           && ((
   24972              : #line 16979 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24973              : (((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) == 0
   24974              :     || ((INTVAL (operands[3]) & (2 * 4 * BITS_PER_UNIT - 1))
   24975              :          == (2 * 4 * BITS_PER_UNIT - 1)))
   24976              :    && ix86_pre_reload_split ()) && 
   24977              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24978              : (!TARGET_64BIT)) && 
   24979              : #line 16984 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24980              : ( 1)))
   24981              :         return gen_split_600 (insn, operands);
   24982              :       if (!nonimmediate_operand (operands[0], E_DImode)
   24983              :           || !nonimmediate_operand (operands[1], E_DImode)
   24984              :           || !((
   24985              : #line 18199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24986              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   24987              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   24988              :       == 8 * BITS_PER_UNIT - 1
   24989              :    && ix86_pre_reload_split ()) && 
   24990              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24991              : (TARGET_64BIT)) && 
   24992              : #line 18204 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24993              : ( 1)))
   24994              :         return NULL;
   24995              :       return gen_split_655 (insn, operands);
   24996              : 
   24997              :     case 2:
   24998              :       if (!((
   24999              : #line 16979 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25000              : (((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) == 0
   25001              :     || ((INTVAL (operands[3]) & (2 * 8 * BITS_PER_UNIT - 1))
   25002              :          == (2 * 8 * BITS_PER_UNIT - 1)))
   25003              :    && ix86_pre_reload_split ()) && 
   25004              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25005              : (TARGET_64BIT)) && 
   25006              : #line 16984 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25007              : ( 1)))
   25008              :         return NULL;
   25009              :       return gen_split_602 (insn, operands);
   25010              : 
   25011              :     case 3:
   25012              :       if (!(
   25013              : #line 18199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25014              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   25015              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   25016              :       == 4 * BITS_PER_UNIT - 1
   25017              :    && ix86_pre_reload_split ()) && 
   25018              : #line 18204 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25019              : ( 1)))
   25020              :         return NULL;
   25021              :       return gen_split_652 (insn, operands);
   25022              : 
   25023              :     case 4:
   25024              :       if (!(
   25025              : #line 18246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25026              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   25027              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   25028              :    && ix86_pre_reload_split ()) && 
   25029              : #line 18250 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25030              : ( 1)))
   25031              :         return NULL;
   25032              :       return gen_split_664 (insn, operands);
   25033              : 
   25034              :     case 5:
   25035              :       if (!((
   25036              : #line 18246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25037              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   25038              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   25039              :    && ix86_pre_reload_split ()) && 
   25040              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25041              : (TARGET_64BIT)) && 
   25042              : #line 18250 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25043              : ( 1)))
   25044              :         return NULL;
   25045              :       return gen_split_667 (insn, operands);
   25046              : 
   25047              :     case 6:
   25048              :       if (!(
   25049              : #line 18301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25050              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   25051              :    && ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   25052              :        || (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   25053              :           == 4 * BITS_PER_UNIT - 1)
   25054              :    && ix86_pre_reload_split ()) && 
   25055              : #line 18307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25056              : ( 1)))
   25057              :         return NULL;
   25058              :       return gen_split_676 (insn, operands);
   25059              : 
   25060              :     case 7:
   25061              :       if (!((
   25062              : #line 18301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25063              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   25064              :    && ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   25065              :        || (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   25066              :           == 8 * BITS_PER_UNIT - 1)
   25067              :    && ix86_pre_reload_split ()) && 
   25068              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25069              : (TARGET_64BIT)) && 
   25070              : #line 18307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25071              : ( 1)))
   25072              :         return NULL;
   25073              :       return gen_split_679 (insn, operands);
   25074              : 
   25075              :     case 8:
   25076              :       if (!((
   25077              : #line 18330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25078              : (INTVAL (operands[2]) == INTVAL (operands[3])
   25079              :    && UINTVAL (operands[2]) < 4 * BITS_PER_UNIT) && 
   25080              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25081              : (!TARGET_64BIT)) && 
   25082              : #line 18333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25083              : ( reload_completed)))
   25084              :         return NULL;
   25085              :       return gen_split_680 (insn, operands);
   25086              : 
   25087              :     case 9:
   25088              :       if (!((
   25089              : #line 18330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25090              : (INTVAL (operands[2]) == INTVAL (operands[3])
   25091              :    && UINTVAL (operands[2]) < 8 * BITS_PER_UNIT) && 
   25092              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25093              : (TARGET_64BIT)) && 
   25094              : #line 18333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25095              : ( reload_completed)))
   25096              :         return NULL;
   25097              :       return gen_split_681 (insn, operands);
   25098              : 
   25099              :     default:
   25100              :       return NULL;
   25101              :     }
   25102              : }
   25103              : 
   25104              :  rtx_insn *
   25105              : split_31 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25106              : {
   25107              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25108              :   rtx x2, x3, x4, x5, x6;
   25109              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25110              :   x2 = XVECEXP (x1, 0, 0);
   25111              :   x3 = XEXP (x2, 1);
   25112              :   x4 = XEXP (x3, 0);
   25113              :   switch (GET_CODE (x4))
   25114              :     {
   25115              :     case REG:
   25116              :     case SUBREG:
   25117              :     case MEM:
   25118              :       switch (pattern378 (x1))
   25119              :         {
   25120              :         case 0:
   25121              :           x5 = XVECEXP (x1, 0, 1);
   25122              :           x6 = XEXP (x5, 0);
   25123              :           if (GET_CODE (x6) != REG
   25124              :               || REGNO (x6) != 17
   25125              :               || GET_MODE (x6) != E_CCmode)
   25126              :             return NULL;
   25127              :           switch (GET_MODE (operands[0]))
   25128              :             {
   25129              :             case E_DImode:
   25130              :               if (!nonimmediate_operand (operands[0], E_DImode)
   25131              :                   || GET_MODE (x3) != E_DImode
   25132              :                   || !nonimmediate_operand (operands[1], E_DImode)
   25133              :                   || !((
   25134              : #line 14573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25135              : (ix86_unary_operator_ok (NEG, DImode, operands, TARGET_APX_NDD)) && 
   25136              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25137              : (!TARGET_64BIT)) && 
   25138              : #line 14575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25139              : ( reload_completed)))
   25140              :                 return NULL;
   25141              :               return gen_split_496 (insn, operands);
   25142              : 
   25143              :             case E_TImode:
   25144              :               if (!nonimmediate_operand (operands[0], E_TImode)
   25145              :                   || GET_MODE (x3) != E_TImode
   25146              :                   || !nonimmediate_operand (operands[1], E_TImode)
   25147              :                   || !((
   25148              : #line 14573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25149              : (ix86_unary_operator_ok (NEG, TImode, operands, TARGET_APX_NDD)) && 
   25150              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25151              : (TARGET_64BIT)) && 
   25152              : #line 14575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25153              : ( reload_completed)))
   25154              :                 return NULL;
   25155              :               return gen_split_497 (insn, operands);
   25156              : 
   25157              :             case E_SFmode:
   25158              :               if (GET_MODE (x3) != E_SFmode)
   25159              :                 return NULL;
   25160              :               if (fp_register_operand (operands[0], E_SFmode)
   25161              :                   && fp_register_operand (operands[1], E_SFmode)
   25162              :                   && 
   25163              : #line 15162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25164              : (TARGET_80387 && reload_completed))
   25165              :                 return gen_split_519 (insn, operands);
   25166              :               if (!general_reg_operand (operands[0], E_SFmode)
   25167              :                   || !general_reg_operand (operands[1], E_SFmode)
   25168              :                   || !
   25169              : #line 15169 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25170              : (TARGET_80387 && reload_completed))
   25171              :                 return NULL;
   25172              :               return gen_split_525 (insn, operands);
   25173              : 
   25174              :             case E_DFmode:
   25175              :               if (GET_MODE (x3) != E_DFmode)
   25176              :                 return NULL;
   25177              :               if (fp_register_operand (operands[0], E_DFmode)
   25178              :                   && fp_register_operand (operands[1], E_DFmode)
   25179              :                   && 
   25180              : #line 15162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25181              : (TARGET_80387 && reload_completed))
   25182              :                 return gen_split_521 (insn, operands);
   25183              :               if (!general_reg_operand (operands[0], E_DFmode)
   25184              :                   || !general_reg_operand (operands[1], E_DFmode)
   25185              :                   || !
   25186              : #line 15169 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25187              : (TARGET_80387 && reload_completed))
   25188              :                 return NULL;
   25189              :               return gen_split_527 (insn, operands);
   25190              : 
   25191              :             case E_XFmode:
   25192              :               if (GET_MODE (x3) != E_XFmode)
   25193              :                 return NULL;
   25194              :               if (fp_register_operand (operands[0], E_XFmode)
   25195              :                   && fp_register_operand (operands[1], E_XFmode)
   25196              :                   && 
   25197              : #line 15162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25198              : (TARGET_80387 && reload_completed))
   25199              :                 return gen_split_523 (insn, operands);
   25200              :               if (!general_reg_operand (operands[0], E_XFmode)
   25201              :                   || !general_reg_operand (operands[1], E_XFmode)
   25202              :                   || !
   25203              : #line 15169 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25204              : (TARGET_80387 && reload_completed))
   25205              :                 return NULL;
   25206              :               return gen_split_529 (insn, operands);
   25207              : 
   25208              :             default:
   25209              :               return NULL;
   25210              :             }
   25211              : 
   25212              :         case 1:
   25213              :           if (pattern843 (x1) != 0
   25214              :               || !(
   25215              : #line 15093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25216              : (TARGET_SSE) && 
   25217              : #line 15095 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25218              : ( reload_completed)))
   25219              :             return NULL;
   25220              :           return gen_split_516 (insn, operands);
   25221              : 
   25222              :         case 2:
   25223              :           if (!(
   25224              : #line 14731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25225              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25226              : #line 14735 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25227              : ( reload_completed
   25228              :    && !(rtx_equal_p (operands[0], operands[1])))))
   25229              :             return NULL;
   25230              :           return gen_split_498 (insn, operands);
   25231              : 
   25232              :         case 3:
   25233              :           if (!(
   25234              : #line 14731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25235              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25236              : #line 14735 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25237              : ( reload_completed
   25238              :    && !(rtx_equal_p (operands[0], operands[1])))))
   25239              :             return NULL;
   25240              :           return gen_split_499 (insn, operands);
   25241              : 
   25242              :         default:
   25243              :           return NULL;
   25244              :         }
   25245              : 
   25246              :     case ABS:
   25247              :       switch (pattern380 (x1))
   25248              :         {
   25249              :         case 0:
   25250              :           if (((
   25251              : #line 14989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25252              : (TARGET_CMOVE
   25253              :    && ix86_pre_reload_split ()) && 
   25254              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25255              : (!TARGET_64BIT)) && 
   25256              : #line 14992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25257              : ( 1)))
   25258              :             return gen_split_505 (insn, operands);
   25259              :           if (!((
   25260              : #line 15060 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25261              : (TARGET_CMOVE
   25262              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   25263              :    && ix86_pre_reload_split ()) && 
   25264              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25265              : (TARGET_64BIT)) && 
   25266              : #line 15064 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25267              : ( 1)))
   25268              :             return NULL;
   25269              :           return gen_split_514 (insn, operands);
   25270              : 
   25271              :         case 1:
   25272              :           if (!((
   25273              : #line 14989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25274              : (TARGET_CMOVE
   25275              :    && ix86_pre_reload_split ()) && 
   25276              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25277              : (TARGET_64BIT)) && 
   25278              : #line 14992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25279              : ( 1)))
   25280              :             return NULL;
   25281              :           return gen_split_506 (insn, operands);
   25282              : 
   25283              :         case 2:
   25284              :           if (!(
   25285              : #line 15060 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25286              : (TARGET_CMOVE
   25287              :    && (QImode != QImode || !TARGET_PARTIAL_REG_STALL)
   25288              :    && ix86_pre_reload_split ()) && 
   25289              : #line 15064 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25290              : ( 1)))
   25291              :             return NULL;
   25292              :           return gen_split_511 (insn, operands);
   25293              : 
   25294              :         case 3:
   25295              :           if (!(
   25296              : #line 15060 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25297              : (TARGET_CMOVE
   25298              :    && (HImode != QImode || !TARGET_PARTIAL_REG_STALL)
   25299              :    && ix86_pre_reload_split ()) && 
   25300              : #line 15064 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25301              : ( 1)))
   25302              :             return NULL;
   25303              :           return gen_split_512 (insn, operands);
   25304              : 
   25305              :         case 4:
   25306              :           if (!(
   25307              : #line 15060 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25308              : (TARGET_CMOVE
   25309              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   25310              :    && ix86_pre_reload_split ()) && 
   25311              : #line 15064 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25312              : ( 1)))
   25313              :             return NULL;
   25314              :           return gen_split_513 (insn, operands);
   25315              : 
   25316              :         case 5:
   25317              :           switch (GET_MODE (operands[0]))
   25318              :             {
   25319              :             case E_TFmode:
   25320              :               if (pattern1061 (x3, 
   25321              : E_TFmode) != 0
   25322              :                   || !(
   25323              : #line 15118 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25324              : (TARGET_SSE) && 
   25325              : #line 15120 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25326              : ( reload_completed)))
   25327              :                 return NULL;
   25328              :               return gen_split_517 (insn, operands);
   25329              : 
   25330              :             case E_SFmode:
   25331              :               if (pattern1062 (x3, 
   25332              : E_V4SFmode, 
   25333              : E_SFmode) != 0
   25334              :                   || !(
   25335              : #line 15254 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25336              : (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH) && 
   25337              : #line 15256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25338              : ( reload_completed)))
   25339              :                 return NULL;
   25340              :               return gen_split_544 (insn, operands);
   25341              : 
   25342              :             case E_DFmode:
   25343              :               if (pattern1062 (x3, 
   25344              : E_V2DFmode, 
   25345              : E_DFmode) != 0
   25346              :                   || !(
   25347              : #line 15254 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25348              : (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH) && 
   25349              : #line 15256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25350              : ( reload_completed)))
   25351              :                 return NULL;
   25352              :               return gen_split_545 (insn, operands);
   25353              : 
   25354              :             default:
   25355              :               return NULL;
   25356              :             }
   25357              : 
   25358              :         default:
   25359              :           return NULL;
   25360              :         }
   25361              : 
   25362              :     default:
   25363              :       return NULL;
   25364              :     }
   25365              : }
   25366              : 
   25367              :  rtx_insn *
   25368              : split_32 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25369              : {
   25370              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25371              :   rtx x2, x3, x4, x5, x6, x7, x8;
   25372              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25373              :   if (pattern344 (x1) != 0)
   25374              :     return NULL;
   25375              :   x2 = XVECEXP (x1, 0, 0);
   25376              :   x3 = XEXP (x2, 1);
   25377              :   x4 = XEXP (x3, 0);
   25378              :   switch (GET_CODE (x4))
   25379              :     {
   25380              :     case REG:
   25381              :     case SUBREG:
   25382              :     case MEM:
   25383              :       operands[1] = x4;
   25384              :       switch (pattern1162 (x3))
   25385              :         {
   25386              :         case 0:
   25387              :           if (!(
   25388              : #line 4850 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25389              : (TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)) && 
   25390              : #line 4852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25391              : ( reload_completed)))
   25392              :             return NULL;
   25393              :           return gen_split_63 (insn, operands);
   25394              : 
   25395              :         case 1:
   25396              :           if (!(
   25397              : #line 4850 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25398              : (TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)) && 
   25399              : #line 4852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25400              : ( reload_completed)))
   25401              :             return NULL;
   25402              :           return gen_split_64 (insn, operands);
   25403              : 
   25404              :         case 2:
   25405              :           if (!(
   25406              : #line 4904 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25407              : (TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)) && 
   25408              : #line 4906 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25409              : ( reload_completed)))
   25410              :             return NULL;
   25411              :           return gen_split_65 (insn, operands);
   25412              : 
   25413              :         default:
   25414              :           return NULL;
   25415              :         }
   25416              : 
   25417              :     case PLUS:
   25418              :       if (GET_MODE (x4) != E_SImode
   25419              :           || !register_operand (operands[0], E_DImode)
   25420              :           || GET_MODE (x3) != E_DImode)
   25421              :         return NULL;
   25422              :       x5 = XEXP (x4, 0);
   25423              :       switch (GET_CODE (x5))
   25424              :         {
   25425              :         case REG:
   25426              :         case SUBREG:
   25427              :           operands[1] = x5;
   25428              :           if (!register_operand (operands[1], E_SImode))
   25429              :             return NULL;
   25430              :           x6 = XEXP (x4, 1);
   25431              :           operands[2] = x6;
   25432              :           if (!x86_64_nonmemory_operand (operands[2], E_SImode))
   25433              :             return NULL;
   25434              :           if (
   25435              : #line 7110 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25436              : (TARGET_64BIT
   25437              :    && reload_completed && ix86_avoid_lea_for_add (insn, operands)))
   25438              :             return gen_split_130 (insn, operands);
   25439              :           if (!
   25440              : #line 7160 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25441              : (TARGET_64BIT && reload_completed && ix86_lea_for_add_ok (insn, operands)))
   25442              :             return NULL;
   25443              :           return gen_split_139 (insn, operands);
   25444              : 
   25445              :         case UNSPEC:
   25446              :           if (pattern1165 (x5) != 0)
   25447              :             return NULL;
   25448              :           x6 = XEXP (x4, 1);
   25449              :           operands[1] = x6;
   25450              :           if (!register_operand (operands[1], E_SImode)
   25451              :               || !(
   25452              : #line 23616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25453              : (TARGET_X32) && 
   25454              : #line 23618 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25455              : ( 1)))
   25456              :             return NULL;
   25457              :           return gen_split_932 (insn, operands);
   25458              : 
   25459              :         default:
   25460              :           return NULL;
   25461              :         }
   25462              : 
   25463              :     case ASHIFT:
   25464              :       if (GET_MODE (x4) != E_SImode
   25465              :           || GET_MODE (x3) != E_DImode)
   25466              :         return NULL;
   25467              :       x5 = XEXP (x4, 0);
   25468              :       operands[1] = x5;
   25469              :       x6 = XEXP (x4, 1);
   25470              :       operands[2] = x6;
   25471              :       switch (GET_CODE (operands[2]))
   25472              :         {
   25473              :         case REG:
   25474              :         case SUBREG:
   25475              :           if (!register_operand (operands[2], E_QImode)
   25476              :               || !register_operand (operands[0], E_DImode)
   25477              :               || !nonimmediate_operand (operands[1], E_SImode)
   25478              :               || !
   25479              : #line 16424 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25480              : (TARGET_64BIT && TARGET_BMI2 && reload_completed))
   25481              :             return NULL;
   25482              :           return gen_split_580 (insn, operands);
   25483              : 
   25484              :         case CONST_INT:
   25485              :           if (!const_0_to_3_operand (operands[2], E_VOIDmode)
   25486              :               || !general_reg_operand (operands[0], E_DImode)
   25487              :               || !index_reg_operand (operands[1], E_SImode)
   25488              :               || !
   25489              : #line 16659 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25490              : (TARGET_64BIT && reload_completed
   25491              :    && REGNO (operands[0]) != REGNO (operands[1])))
   25492              :             return NULL;
   25493              :           return gen_split_591 (insn, operands);
   25494              : 
   25495              :         default:
   25496              :           return NULL;
   25497              :         }
   25498              : 
   25499              :     case LSHIFTRT:
   25500              :       if (pattern1183 (x3) != 0
   25501              :           || !
   25502              : #line 17858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25503              : (TARGET_64BIT && TARGET_BMI2 && reload_completed))
   25504              :         return NULL;
   25505              :       return gen_split_632 (insn, operands);
   25506              : 
   25507              :     case ASHIFTRT:
   25508              :       if (pattern1183 (x3) != 0
   25509              :           || !
   25510              : #line 17858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25511              : (TARGET_64BIT && TARGET_BMI2 && reload_completed))
   25512              :         return NULL;
   25513              :       return gen_split_633 (insn, operands);
   25514              : 
   25515              :     case ROTATE:
   25516              :       if (pattern1184 (x3) != 0
   25517              :           || !
   25518              : #line 18994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25519              : (TARGET_64BIT && TARGET_BMI2 && reload_completed
   25520              :    && !optimize_function_for_size_p (cfun)))
   25521              :         return NULL;
   25522              :       return gen_split_794 (insn, operands);
   25523              : 
   25524              :     case ROTATERT:
   25525              :       if (pattern1184 (x3) != 0
   25526              :           || !
   25527              : #line 19010 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25528              : (TARGET_64BIT && TARGET_BMI2 && reload_completed
   25529              :    && !optimize_function_for_size_p (cfun)))
   25530              :         return NULL;
   25531              :       return gen_split_795 (insn, operands);
   25532              : 
   25533              :     case CTZ:
   25534              :       if (pattern1185 (x3, 
   25535              : E_SImode, 
   25536              : E_DImode) != 0
   25537              :           || !
   25538              : #line 21542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25539              : ((TARGET_BMI || TARGET_CPU_P (GENERIC))
   25540              :    && (TARGET_AVOID_FALSE_DEP_FOR_BMI || TARGET_AVOID_FALSE_DEP_FOR_TZCNT)
   25541              :    && epilogue_completed
   25542              :    && optimize_function_for_speed_p (cfun)
   25543              :    && !reg_mentioned_p (operands[0], operands[1])))
   25544              :         return NULL;
   25545              :       return gen_split_883 (insn, operands);
   25546              : 
   25547              :     case XOR:
   25548              :       if (GET_MODE (x4) != E_SImode)
   25549              :         return NULL;
   25550              :       x5 = XEXP (x4, 0);
   25551              :       if (GET_CODE (x5) != MINUS
   25552              :           || pattern1166 (x4) != 0
   25553              :           || !register_operand (operands[0], E_DImode)
   25554              :           || GET_MODE (x3) != E_DImode)
   25555              :         return NULL;
   25556              :       x7 = XEXP (x5, 1);
   25557              :       x8 = XEXP (x7, 0);
   25558              :       operands[1] = x8;
   25559              :       if (!nonimmediate_operand (operands[1], E_SImode)
   25560              :           || !(
   25561              : #line 21705 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25562              : (!TARGET_LZCNT && TARGET_64BIT && ix86_pre_reload_split ()) && 
   25563              : #line 21707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25564              : ( 1)))
   25565              :         return NULL;
   25566              :       return gen_split_887 (insn, operands);
   25567              : 
   25568              :     case CLZ:
   25569              :       if (pattern1185 (x3, 
   25570              : E_SImode, 
   25571              : E_DImode) != 0
   25572              :           || !(
   25573              : #line 21969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25574              : (TARGET_LZCNT && TARGET_64BIT) && 
   25575              : #line 21971 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25576              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   25577              :    && optimize_function_for_speed_p (cfun)
   25578              :    && !reg_mentioned_p (operands[0], operands[1]))))
   25579              :         return NULL;
   25580              :       return gen_split_899 (insn, operands);
   25581              : 
   25582              :     case POPCOUNT:
   25583              :       x5 = XEXP (x4, 0);
   25584              :       operands[1] = x5;
   25585              :       switch (GET_MODE (operands[0]))
   25586              :         {
   25587              :         case E_DImode:
   25588              :           if (pattern350 (x3, 
   25589              : E_SImode, 
   25590              : E_DImode) != 0
   25591              :               || !(
   25592              : #line 22808 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25593              : (TARGET_POPCNT && TARGET_64BIT) && 
   25594              : #line 22816 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25595              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   25596              :    && optimize_function_for_speed_p (cfun)
   25597              :    && !reg_mentioned_p (operands[0], operands[1]))))
   25598              :             return NULL;
   25599              :           return gen_split_923 (insn, operands);
   25600              : 
   25601              :         case E_SImode:
   25602              :           if (pattern350 (x3, 
   25603              : E_HImode, 
   25604              : E_SImode) != 0
   25605              :               || !(
   25606              : #line 22874 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25607              : (TARGET_POPCNT
   25608              :    && ix86_pre_reload_split ()) && 
   25609              : #line 22877 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25610              : ( 1)))
   25611              :             return NULL;
   25612              :           return gen_split_925 (insn, operands);
   25613              : 
   25614              :         default:
   25615              :           return NULL;
   25616              :         }
   25617              : 
   25618              :     default:
   25619              :       return NULL;
   25620              :     }
   25621              : }
   25622              : 
   25623              :  rtx_insn *
   25624              : split_41 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25625              : {
   25626              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25627              :   rtx x2, x3, x4, x5, x6;
   25628              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25629              :   x2 = XEXP (x1, 0);
   25630              :   operands[0] = x2;
   25631              :   x3 = XEXP (x1, 1);
   25632              :   x4 = XEXP (x3, 0);
   25633              :   switch (GET_CODE (x4))
   25634              :     {
   25635              :     case LEU:
   25636              :       x5 = XEXP (x4, 0);
   25637              :       operands[1] = x5;
   25638              :       if (!int_nonimmediate_operand (operands[1], E_VOIDmode))
   25639              :         return NULL;
   25640              :       x6 = XEXP (x4, 1);
   25641              :       operands[2] = x6;
   25642              :       if (!const_int_operand (operands[2], E_VOIDmode))
   25643              :         return NULL;
   25644              :       switch (GET_MODE (operands[0]))
   25645              :         {
   25646              :         case E_SImode:
   25647              :           if (!register_operand (operands[0], E_SImode)
   25648              :               || GET_MODE (x3) != E_SImode
   25649              :               || GET_MODE (x4) != E_SImode
   25650              :               || !
   25651              : #line 26744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25652              : (x86_64_immediate_operand (operands[2], VOIDmode)
   25653              :    && INTVAL (operands[2]) != -1
   25654              :    && INTVAL (operands[2]) != 2147483647))
   25655              :             return NULL;
   25656              :           return gen_split_947 (insn, operands);
   25657              : 
   25658              :         case E_DImode:
   25659              :           if (!register_operand (operands[0], E_DImode)
   25660              :               || GET_MODE (x3) != E_DImode
   25661              :               || GET_MODE (x4) != E_DImode
   25662              :               || !(
   25663              : #line 26744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25664              : (x86_64_immediate_operand (operands[2], VOIDmode)
   25665              :    && INTVAL (operands[2]) != -1
   25666              :    && INTVAL (operands[2]) != 2147483647) && 
   25667              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25668              : (TARGET_64BIT)))
   25669              :             return NULL;
   25670              :           return gen_split_948 (insn, operands);
   25671              : 
   25672              :         default:
   25673              :           return NULL;
   25674              :         }
   25675              : 
   25676              :     case EQ:
   25677              :       switch (pattern411 (x3))
   25678              :         {
   25679              :         case 0:
   25680              :           return gen_split_949 (insn, operands);
   25681              : 
   25682              :         case 1:
   25683              :           return gen_split_950 (insn, operands);
   25684              : 
   25685              :         case 2:
   25686              :           return gen_split_951 (insn, operands);
   25687              : 
   25688              :         case 3:
   25689              :           if (!
   25690              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25691              : (TARGET_64BIT))
   25692              :             return NULL;
   25693              :           return gen_split_952 (insn, operands);
   25694              : 
   25695              :         default:
   25696              :           return NULL;
   25697              :         }
   25698              : 
   25699              :     case NE:
   25700              :       switch (pattern411 (x3))
   25701              :         {
   25702              :         case 0:
   25703              :           return gen_split_953 (insn, operands);
   25704              : 
   25705              :         case 1:
   25706              :           return gen_split_954 (insn, operands);
   25707              : 
   25708              :         case 2:
   25709              :           return gen_split_955 (insn, operands);
   25710              : 
   25711              :         case 3:
   25712              :           if (!
   25713              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25714              : (TARGET_64BIT))
   25715              :             return NULL;
   25716              :           return gen_split_956 (insn, operands);
   25717              : 
   25718              :         default:
   25719              :           return NULL;
   25720              :         }
   25721              : 
   25722              :     default:
   25723              :       return NULL;
   25724              :     }
   25725              : }
   25726              : 
   25727              :  rtx_insn *
   25728              : split_42 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25729              : {
   25730              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25731              :   rtx x2, x3, x4, x5, x6, x7, x8;
   25732              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25733              :   x2 = XEXP (x1, 1);
   25734              :   x3 = XEXP (x2, 0);
   25735              :   x4 = XEXP (x3, 0);
   25736              :   if (GET_CODE (x4) != REG
   25737              :       || REGNO (x4) != 17)
   25738              :     return NULL;
   25739              :   x5 = XEXP (x3, 1);
   25740              :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   25741              :     return NULL;
   25742              :   x6 = XEXP (x1, 0);
   25743              :   operands[0] = x6;
   25744              :   x7 = XEXP (x2, 1);
   25745              :   operands[2] = x7;
   25746              :   x8 = XEXP (x2, 2);
   25747              :   operands[3] = x8;
   25748              :   switch (GET_MODE (operands[0]))
   25749              :     {
   25750              :     case E_HImode:
   25751              :       if (!register_operand (operands[0], E_HImode)
   25752              :           || GET_MODE (x2) != E_HImode
   25753              :           || !ix86_comparison_operator (operands[1], E_VOIDmode))
   25754              :         return NULL;
   25755              :       if (nonimmediate_operand (operands[2], E_HImode)
   25756              :           && nonimmediate_operand (operands[3], E_HImode)
   25757              :           && 
   25758              : #line 26837 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25759              : (!TARGET_64BIT && TARGET_CMOVE
   25760              :    && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   25761              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   25762              :    && can_create_pseudo_p ()
   25763              :    && optimize_insn_for_speed_p ()))
   25764              :         return gen_split_957 (insn, operands);
   25765              :       if (!register_operand (operands[2], E_HImode)
   25766              :           || !register_operand (operands[3], E_HImode)
   25767              :           || !
   25768              : #line 26867 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25769              : (TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL
   25770              :    && reload_completed))
   25771              :         return NULL;
   25772              :       return gen_split_961 (insn, operands);
   25773              : 
   25774              :     case E_SImode:
   25775              :       if (pattern1208 (x2, 
   25776              : E_SImode) != 0
   25777              :           || !
   25778              : #line 26837 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25779              : (!TARGET_64BIT && TARGET_CMOVE
   25780              :    && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   25781              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   25782              :    && can_create_pseudo_p ()
   25783              :    && optimize_insn_for_speed_p ()))
   25784              :         return NULL;
   25785              :       return gen_split_958 (insn, operands);
   25786              : 
   25787              :     case E_DImode:
   25788              :       if (pattern1208 (x2, 
   25789              : E_DImode) != 0
   25790              :           || !(
   25791              : #line 26837 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25792              : (!TARGET_64BIT && TARGET_CMOVE
   25793              :    && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   25794              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   25795              :    && can_create_pseudo_p ()
   25796              :    && optimize_insn_for_speed_p ()) && 
   25797              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25798              : (TARGET_64BIT)))
   25799              :         return NULL;
   25800              :       return gen_split_959 (insn, operands);
   25801              : 
   25802              :     case E_QImode:
   25803              :       if (pattern1209 (x2) != 0
   25804              :           || !
   25805              : #line 26867 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25806              : (TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL
   25807              :    && reload_completed))
   25808              :         return NULL;
   25809              :       return gen_split_960 (insn, operands);
   25810              : 
   25811              :     case E_DFmode:
   25812              :       if (GET_MODE (x2) != E_DFmode
   25813              :           || !nonimmediate_operand (operands[2], E_DFmode)
   25814              :           || !nonimmediate_operand (operands[3], E_DFmode))
   25815              :         return NULL;
   25816              :       if (general_reg_operand (operands[0], E_DFmode)
   25817              :           && fcmov_comparison_operator (operands[1], E_VOIDmode)
   25818              :           && 
   25819              : #line 27083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25820              : (!TARGET_64BIT && reload_completed))
   25821              :         return gen_split_962 (insn, operands);
   25822              :       if (!register_operand (operands[0], E_DFmode)
   25823              :           || !ix86_comparison_operator (operands[1], E_VOIDmode)
   25824              :           || !
   25825              : #line 27117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25826              : (!TARGET_64BIT && TARGET_80387 && TARGET_CMOVE
   25827              :    && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   25828              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   25829              :    && can_create_pseudo_p ()
   25830              :    && optimize_insn_for_speed_p ()))
   25831              :         return NULL;
   25832              :       return gen_split_964 (insn, operands);
   25833              : 
   25834              :     case E_SFmode:
   25835              :       if (pattern1208 (x2, 
   25836              : E_SFmode) != 0
   25837              :           || !
   25838              : #line 27117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25839              : (!TARGET_64BIT && TARGET_80387 && TARGET_CMOVE
   25840              :    && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   25841              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   25842              :    && can_create_pseudo_p ()
   25843              :    && optimize_insn_for_speed_p ()))
   25844              :         return NULL;
   25845              :       return gen_split_963 (insn, operands);
   25846              : 
   25847              :     default:
   25848              :       return NULL;
   25849              :     }
   25850              : }
   25851              : 
   25852              :  rtx_insn *
   25853              : split_45 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25854              : {
   25855              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25856              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   25857              :   rtx x10;
   25858              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25859              :   x2 = XEXP (x1, 1);
   25860              :   x3 = XEXP (x2, 0);
   25861              :   switch (GET_CODE (x3))
   25862              :     {
   25863              :     case AND:
   25864              :       x4 = XEXP (x2, 1);
   25865              :       if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   25866              :         return NULL;
   25867              :       x5 = XEXP (x1, 0);
   25868              :       operands[0] = x5;
   25869              :       if (!flags_reg_operand (operands[0], E_VOIDmode))
   25870              :         return NULL;
   25871              :       operands[1] = x2;
   25872              :       if (!compare_operator (operands[1], E_VOIDmode))
   25873              :         return NULL;
   25874              :       x6 = XEXP (x3, 0);
   25875              :       operands[2] = x6;
   25876              :       if (!aligned_operand (operands[2], E_HImode))
   25877              :         return NULL;
   25878              :       x7 = XEXP (x3, 1);
   25879              :       operands[3] = x7;
   25880              :       if (!const_int_operand (operands[3], E_HImode)
   25881              :           || !
   25882              : #line 28279 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25883              : (! TARGET_PARTIAL_REG_STALL && reload_completed
   25884              :    && ! TARGET_FAST_PREFIX
   25885              :    && optimize_insn_for_speed_p ()
   25886              :    /* Ensure that the operand will remain sign-extended immediate.  */
   25887              :    && ix86_match_ccmode (insn, INTVAL (operands[3]) >= 0 ? CCNOmode : CCZmode)))
   25888              :         return NULL;
   25889              :       return gen_split_1013 (insn, operands);
   25890              : 
   25891              :     case UNSPEC:
   25892              :       if (XVECLEN (x3, 0) != 1
   25893              :           || XINT (x3, 1) != 50
   25894              :           || GET_MODE (x3) != E_SImode
   25895              :           || pattern46 (x1, 
   25896              : E_CCZmode) != 0)
   25897              :         return NULL;
   25898              :       x4 = XEXP (x2, 1);
   25899              :       operands[2] = x4;
   25900              :       if (!const_int_operand (operands[2], E_VOIDmode))
   25901              :         return NULL;
   25902              :       x8 = XVECEXP (x3, 0, 0);
   25903              :       switch (GET_CODE (x8))
   25904              :         {
   25905              :         case EQ:
   25906              :           x9 = XEXP (x8, 0);
   25907              :           operands[0] = x9;
   25908              :           x10 = XEXP (x8, 1);
   25909              :           operands[1] = x10;
   25910              :           switch (GET_MODE (x8))
   25911              :             {
   25912              :             case E_V32QImode:
   25913              :               if (!vector_operand (operands[0], E_V32QImode)
   25914              :                   || !const0_operand (operands[1], E_V32QImode)
   25915              :                   || !(
   25916              : #line 22753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25917              : (TARGET_SSE4_1 && (INTVAL (operands[2]) == (int) (0xffffffff))) && 
   25918              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25919              : (TARGET_AVX2)))
   25920              :                 return NULL;
   25921              :               return gen_split_3550 (insn, operands);
   25922              : 
   25923              :             case E_V16QImode:
   25924              :               if (!vector_operand (operands[0], E_V16QImode)
   25925              :                   || !const0_operand (operands[1], E_V16QImode)
   25926              :                   || !
   25927              : #line 22753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25928              : (TARGET_SSE4_1 && (INTVAL (operands[2]) == (int) (0xffff))))
   25929              :                 return NULL;
   25930              :               return gen_split_3551 (insn, operands);
   25931              : 
   25932              :             default:
   25933              :               return NULL;
   25934              :             }
   25935              : 
   25936              :         case VEC_MERGE:
   25937              :           switch (pattern1271 (x8))
   25938              :             {
   25939              :             case 0:
   25940              :               if (!((
   25941              : #line 22770 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25942              : (TARGET_AVX512VL && UINTVAL (operands[2]) <= 0xffffffff) && 
   25943              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25944              : (TARGET_AVX2)) && 
   25945              : #line 22772 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25946              : ( 1)))
   25947              :                 return NULL;
   25948              :               return gen_split_3552 (insn, operands);
   25949              : 
   25950              :             case 1:
   25951              :               if (!(
   25952              : #line 22770 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25953              : (TARGET_AVX512VL && UINTVAL (operands[2]) <= 0xffff) && 
   25954              : #line 22772 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25955              : ( 1)))
   25956              :                 return NULL;
   25957              :               return gen_split_3553 (insn, operands);
   25958              : 
   25959              :             case 2:
   25960              :               if (!((
   25961              : #line 22793 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25962              : (TARGET_AVX512VL && (INTVAL (operands[2]) == (int) (0xffffffff))) && 
   25963              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25964              : (TARGET_AVX2)) && 
   25965              : #line 22795 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25966              : ( 1)))
   25967              :                 return NULL;
   25968              :               return gen_split_3554 (insn, operands);
   25969              : 
   25970              :             case 3:
   25971              :               if (!(
   25972              : #line 22793 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25973              : (TARGET_AVX512VL && (INTVAL (operands[2]) == (int) (0xffff))) && 
   25974              : #line 22795 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25975              : ( 1)))
   25976              :                 return NULL;
   25977              :               return gen_split_3555 (insn, operands);
   25978              : 
   25979              :             default:
   25980              :               return NULL;
   25981              :             }
   25982              : 
   25983              :         default:
   25984              :           return NULL;
   25985              :         }
   25986              : 
   25987              :     default:
   25988              :       return NULL;
   25989              :     }
   25990              : }
   25991              : 
   25992              :  rtx_insn *
   25993              : split_49 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25994              : {
   25995              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25996              :   rtx x2, x3, x4, x5, x6;
   25997              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25998              :   x2 = XEXP (x1, 1);
   25999              :   x3 = XEXP (x2, 0);
   26000              :   if (GET_CODE (x3) != VEC_SELECT)
   26001              :     return NULL;
   26002              :   switch (pattern98 (x1))
   26003              :     {
   26004              :     case 0:
   26005              :       x4 = XEXP (x3, 0);
   26006              :       operands[1] = x4;
   26007              :       if (!register_operand (operands[1], E_V2SFmode)
   26008              :           || pattern976 (x2) != 0
   26009              :           || !register_operand (operands[0], E_SFmode)
   26010              :           || GET_MODE (x2) != E_SFmode
   26011              :           || GET_MODE (x3) != E_SFmode)
   26012              :         return NULL;
   26013              :       x5 = XEXP (x2, 1);
   26014              :       if (GET_MODE (x5) != E_SFmode)
   26015              :         return NULL;
   26016              :       x6 = XEXP (x5, 0);
   26017              :       if (!rtx_equal_p (x6, operands[1])
   26018              :           || !(
   26019              : #line 1081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26020              : (TARGET_SSE3 && TARGET_MMX_WITH_SSE && ix86_partial_vec_fp_math
   26021              :    && ix86_pre_reload_split ()) && 
   26022              : #line 1084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26023              : ( 1)))
   26024              :         return NULL;
   26025              :       return gen_split_1073 (insn, operands);
   26026              : 
   26027              :     case 1:
   26028              :       switch (pattern864 (x2))
   26029              :         {
   26030              :         case 0:
   26031              :           if (!
   26032              : #line 22975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26033              : (TARGET_SSSE3 && reload_completed
   26034              :    && SSE_REGNO_P (REGNO (operands[0]))))
   26035              :             return NULL;
   26036              :           return gen_split_3558 (insn, operands);
   26037              : 
   26038              :         case 1:
   26039              :           if (!
   26040              : #line 23062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26041              : (TARGET_SSSE3 && reload_completed
   26042              :    && SSE_REGNO_P (REGNO (operands[0]))))
   26043              :             return NULL;
   26044              :           return gen_split_3561 (insn, operands);
   26045              : 
   26046              :         default:
   26047              :           return NULL;
   26048              :         }
   26049              : 
   26050              :     default:
   26051              :       return NULL;
   26052              :     }
   26053              : }
   26054              : 
   26055              :  rtx_insn *
   26056              : split_51 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   26057              : {
   26058              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   26059              :   rtx x2, x3, x4, x5, x6, x7, x8;
   26060              :   rtx_insn *res ATTRIBUTE_UNUSED;
   26061              :   x2 = XEXP (x1, 1);
   26062              :   x3 = XEXP (x2, 1);
   26063              :   if (GET_CODE (x3) != PARALLEL)
   26064              :     return NULL;
   26065              :   x4 = XEXP (x1, 0);
   26066              :   operands[0] = x4;
   26067              :   x5 = XEXP (x2, 0);
   26068              :   switch (GET_CODE (x5))
   26069              :     {
   26070              :     case VEC_CONCAT:
   26071              :       switch (pattern274 (x2))
   26072              :         {
   26073              :         case 0:
   26074              :           x6 = XVECEXP (x3, 0, 1);
   26075              :           if (GET_CODE (x6) == CONST_INT)
   26076              :             {
   26077              :               switch (pattern980 (x2))
   26078              :                 {
   26079              :                 case 0:
   26080              :                   if ((
   26081              : #line 1714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26082              : (TARGET_MMX_WITH_SSE) && 
   26083              : #line 1716 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26084              : ( reload_completed)))
   26085              :                     return gen_split_1074 (insn, operands);
   26086              :                   break;
   26087              : 
   26088              :                 case 1:
   26089              :                   if ((
   26090              : #line 5019 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26091              : (TARGET_MMX || TARGET_MMX_WITH_SSE) && 
   26092              : #line 5024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26093              : ( reload_completed
   26094              :    && SSE_REGNO_P (REGNO (operands[0])))))
   26095              :                     return gen_split_1157 (insn, operands);
   26096              :                   break;
   26097              : 
   26098              :                 case 2:
   26099              :                   if ((
   26100              : #line 1731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26101              : (TARGET_MMX_WITH_SSE) && 
   26102              : #line 1733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26103              : ( reload_completed)))
   26104              :                     return gen_split_1075 (insn, operands);
   26105              :                   break;
   26106              : 
   26107              :                 case 3:
   26108              :                   if ((
   26109              : #line 4998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26110              : (TARGET_MMX || TARGET_MMX_WITH_SSE) && 
   26111              : #line 5003 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26112              : ( reload_completed
   26113              :    && SSE_REGNO_P (REGNO (operands[0])))))
   26114              :                     return gen_split_1156 (insn, operands);
   26115              :                   break;
   26116              : 
   26117              :                 default:
   26118              :                   break;
   26119              :                 }
   26120              :             }
   26121              :           x7 = XVECEXP (x3, 0, 0);
   26122              :           operands[3] = x7;
   26123              :           switch (pattern981 (x2))
   26124              :             {
   26125              :             case 0:
   26126              :               if (!(
   26127              : #line 6225 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26128              : (TARGET_SSE2) && 
   26129              : #line 6227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26130              : ( reload_completed)))
   26131              :                 return NULL;
   26132              :               return gen_split_1169 (insn, operands);
   26133              : 
   26134              :             case 1:
   26135              :               if (!(
   26136              : #line 6225 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26137              : (TARGET_SSE2) && 
   26138              : #line 6227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26139              : ( reload_completed)))
   26140              :                 return NULL;
   26141              :               return gen_split_1170 (insn, operands);
   26142              : 
   26143              :             case 2:
   26144              :               if (!(
   26145              : #line 6225 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26146              : (TARGET_SSE2) && 
   26147              : #line 6227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26148              : ( reload_completed)))
   26149              :                 return NULL;
   26150              :               return gen_split_1171 (insn, operands);
   26151              : 
   26152              :             default:
   26153              :               return NULL;
   26154              :             }
   26155              : 
   26156              :         case 1:
   26157              :           if (!(
   26158              : #line 4878 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26159              : (TARGET_MMX || TARGET_MMX_WITH_SSE) && 
   26160              : #line 4883 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26161              : ( reload_completed
   26162              :    && SSE_REGNO_P (REGNO (operands[0])))))
   26163              :             return NULL;
   26164              :           return gen_split_1150 (insn, operands);
   26165              : 
   26166              :         case 2:
   26167              :           if (!(
   26168              : #line 4918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26169              : (TARGET_MMX || TARGET_MMX_WITH_SSE) && 
   26170              : #line 4923 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26171              : ( reload_completed
   26172              :    && SSE_REGNO_P (REGNO (operands[0])))))
   26173              :             return NULL;
   26174              :           return gen_split_1152 (insn, operands);
   26175              : 
   26176              :         case 3:
   26177              :           if (!(
   26178              : #line 4899 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26179              : (TARGET_SSE2) && 
   26180              : #line 4901 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26181              : ( reload_completed)))
   26182              :             return NULL;
   26183              :           return gen_split_1151 (insn, operands);
   26184              : 
   26185              :         case 4:
   26186              :           if (!(
   26187              : #line 4956 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26188              : (TARGET_MMX || TARGET_MMX_WITH_SSE) && 
   26189              : #line 4961 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26190              : ( reload_completed
   26191              :    && SSE_REGNO_P (REGNO (operands[0])))))
   26192              :             return NULL;
   26193              :           return gen_split_1154 (insn, operands);
   26194              : 
   26195              :         case 5:
   26196              :           if (!(
   26197              : #line 4939 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26198              : (TARGET_SSE2) && 
   26199              : #line 4941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26200              : ( reload_completed)))
   26201              :             return NULL;
   26202              :           return gen_split_1153 (insn, operands);
   26203              : 
   26204              :         case 6:
   26205              :           if (!(
   26206              : #line 4977 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26207              : (TARGET_MMX || TARGET_MMX_WITH_SSE) && 
   26208              : #line 4982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26209              : ( reload_completed
   26210              :    && SSE_REGNO_P (REGNO (operands[0])))))
   26211              :             return NULL;
   26212              :           return gen_split_1155 (insn, operands);
   26213              : 
   26214              :         default:
   26215              :           return NULL;
   26216              :         }
   26217              : 
   26218              :     case REG:
   26219              :     case SUBREG:
   26220              :     case MEM:
   26221              :       switch (XVECLEN (x3, 0))
   26222              :         {
   26223              :         case 1:
   26224              :           res = split_50 (x1, insn);
   26225              :           if (res != NULL_RTX)
   26226              :             return res;
   26227              :           break;
   26228              : 
   26229              :         case 2:
   26230              :           x7 = XVECEXP (x3, 0, 0);
   26231              :           if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + 1])
   26232              :             {
   26233              :               x6 = XVECEXP (x3, 0, 1);
   26234              :               if (x6 == const_int_rtx[MAX_SAVED_CONST_INT + 0]
   26235              :                   && memory_operand (operands[0], E_V2SImode)
   26236              :                   && GET_MODE (x2) == E_V2SImode
   26237              :                   && rtx_equal_p (x5, operands[0])
   26238              :                   && 
   26239              : #line 5661 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26240              : (TARGET_64BIT && (TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())))
   26241              :                 return gen_split_1161 (insn, operands);
   26242              :             }
   26243              :           break;
   26244              : 
   26245              :         default:
   26246              :           break;
   26247              :         }
   26248              :       if (XVECLEN (x3, 0) != 1)
   26249              :         return NULL;
   26250              :       x7 = XVECEXP (x3, 0, 0);
   26251              :       if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + 0]
   26252              :           && GET_MODE (x2) == E_DImode)
   26253              :         {
   26254              :           if (GET_CODE (x5) == SUBREG
   26255              :               && known_eq (SUBREG_BYTE (x5), 0)
   26256              :               && GET_MODE (x5) == E_V2DImode
   26257              :               && register_operand (operands[0], E_DImode))
   26258              :             {
   26259              :               x8 = XEXP (x5, 0);
   26260              :               switch (pattern1220 (x8))
   26261              :                 {
   26262              :                 case 0:
   26263              :                   if (pshufb_truncv8hiv8qi_operand (operands[2], E_V16QImode)
   26264              :                       && (
   26265              : #line 15707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26266              : (TARGET_AVX512VL && TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   26267              : #line 15709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26268              : ( 1)))
   26269              :                     return gen_split_3267 (insn, operands);
   26270              :                   if (pshufb_truncv4siv4hi_operand (operands[2], E_V16QImode)
   26271              :                       && (
   26272              : #line 16062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26273              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26274              : #line 16064 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26275              : ( 1)))
   26276              :                     return gen_split_3283 (insn, operands);
   26277              :                   break;
   26278              : 
   26279              :                 case 1:
   26280              :                   if ((
   26281              : #line 16303 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26282              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   26283              : #line 16305 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26284              : ( 1)))
   26285              :                     return gen_split_3293 (insn, operands);
   26286              :                   break;
   26287              : 
   26288              :                 default:
   26289              :                   break;
   26290              :                 }
   26291              :             }
   26292              :           operands[1] = x5;
   26293              :           if (register_operand (operands[1], E_V2DImode))
   26294              :             {
   26295              :               if (general_reg_operand (operands[0], E_DImode)
   26296              :                   && 
   26297              : #line 21526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26298              : (TARGET_SSE4_1 && !TARGET_64BIT
   26299              :    && reload_completed))
   26300              :                 return gen_split_3479 (insn, operands);
   26301              :               if (nonimmediate_operand (operands[0], E_DImode)
   26302              :                   && 
   26303              : #line 21544 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26304              : (TARGET_SSE && reload_completed))
   26305              :                 return gen_split_3481 (insn, operands);
   26306              :             }
   26307              :         }
   26308              :       if (!register_operand (operands[0], E_DImode)
   26309              :           || GET_MODE (x2) != E_DImode)
   26310              :         return NULL;
   26311              :       operands[1] = x5;
   26312              :       if (!memory_operand (operands[1], E_V2DImode))
   26313              :         return NULL;
   26314              :       operands[2] = x7;
   26315              :       if (!const_0_to_1_operand (operands[2], E_VOIDmode)
   26316              :           || !
   26317              : #line 21731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26318              : (TARGET_SSE && reload_completed))
   26319              :         return NULL;
   26320              :       return gen_split_3487 (insn, operands);
   26321              : 
   26322              :     case UNSPEC:
   26323              :       if (pattern275 (x2) != 0
   26324              :           || !
   26325              : #line 8756 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26326              : (TARGET_SSE2 && reload_completed
   26327              :    && SSE_REG_P (operands[0])))
   26328              :         return NULL;
   26329              :       return gen_split_1601 (insn, operands);
   26330              : 
   26331              :     case FIX:
   26332              :       if (pattern277 (x2) != 0
   26333              :           || !
   26334              : #line 8820 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26335              : (TARGET_SSE2 && reload_completed
   26336              :    && SSE_REG_P (operands[0])))
   26337              :         return NULL;
   26338              :       return gen_split_1603 (insn, operands);
   26339              : 
   26340              :     default:
   26341              :       return NULL;
   26342              :     }
   26343              : }
   26344              : 
   26345              :  rtx_insn *
   26346              : split_57 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   26347              : {
   26348              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   26349              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   26350              :   rtx x10, x11, x12, x13, x14;
   26351              :   rtx_insn *res ATTRIBUTE_UNUSED;
   26352              :   x2 = XEXP (x1, 1);
   26353              :   operands[3] = x2;
   26354              :   x3 = XEXP (x2, 0);
   26355              :   if (GET_CODE (x3) != UNSPEC
   26356              :       || XVECLEN (x3, 0) != 2
   26357              :       || XINT (x3, 1) != 131
   26358              :       || GET_MODE (x3) != E_CCZmode)
   26359              :     return NULL;
   26360              :   x4 = XVECEXP (x3, 0, 0);
   26361              :   if (GET_CODE (x4) != AND)
   26362              :     return NULL;
   26363              :   x5 = XEXP (x4, 0);
   26364              :   if (GET_CODE (x5) != NOT)
   26365              :     return NULL;
   26366              :   x6 = XVECEXP (x3, 0, 1);
   26367              :   if (GET_CODE (x6) != AND)
   26368              :     return NULL;
   26369              :   x7 = XEXP (x6, 0);
   26370              :   if (GET_CODE (x7) != NOT)
   26371              :     return NULL;
   26372              :   x8 = XEXP (x2, 1);
   26373              :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   26374              :     return NULL;
   26375              :   x9 = XEXP (x5, 0);
   26376              :   operands[1] = x9;
   26377              :   x10 = XEXP (x4, 1);
   26378              :   operands[2] = x10;
   26379              :   x11 = XEXP (x7, 0);
   26380              :   if (!rtx_equal_p (x11, operands[1]))
   26381              :     return NULL;
   26382              :   x12 = XEXP (x6, 1);
   26383              :   if (!rtx_equal_p (x12, operands[2]))
   26384              :     return NULL;
   26385              :   x13 = XEXP (x1, 0);
   26386              :   switch (GET_CODE (x13))
   26387              :     {
   26388              :     case REG:
   26389              :     case SUBREG:
   26390              :       operands[0] = x13;
   26391              :       switch (GET_MODE (operands[0]))
   26392              :         {
   26393              :         case E_QImode:
   26394              :           if (!register_operand (operands[0], E_QImode))
   26395              :             return NULL;
   26396              :           switch (pattern1710 (x3, 
   26397              : E_QImode))
   26398              :             {
   26399              :             case 0:
   26400              :               if (!
   26401              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26402              : (TARGET_SSE4_1))
   26403              :                 return NULL;
   26404              :               return gen_split_3699 (insn, operands);
   26405              : 
   26406              :             case 1:
   26407              :               if (!
   26408              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26409              : (TARGET_SSE4_1))
   26410              :                 return NULL;
   26411              :               return gen_split_3700 (insn, operands);
   26412              : 
   26413              :             case 2:
   26414              :               if (!
   26415              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26416              : (TARGET_SSE4_1))
   26417              :                 return NULL;
   26418              :               return gen_split_3701 (insn, operands);
   26419              : 
   26420              :             case 3:
   26421              :               if (!
   26422              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26423              : (TARGET_SSE4_1))
   26424              :                 return NULL;
   26425              :               return gen_split_3702 (insn, operands);
   26426              : 
   26427              :             case 4:
   26428              :               if (!
   26429              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26430              : (TARGET_SSE4_1))
   26431              :                 return NULL;
   26432              :               return gen_split_3703 (insn, operands);
   26433              : 
   26434              :             case 5:
   26435              :               if (!
   26436              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26437              : (TARGET_SSE4_1))
   26438              :                 return NULL;
   26439              :               return gen_split_3704 (insn, operands);
   26440              : 
   26441              :             case 6:
   26442              :               if (!
   26443              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26444              : (TARGET_SSE4_1))
   26445              :                 return NULL;
   26446              :               return gen_split_3705 (insn, operands);
   26447              : 
   26448              :             case 7:
   26449              :               if (!(
   26450              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26451              : (TARGET_SSE4_1) && 
   26452              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26453              : (TARGET_AVX)))
   26454              :                 return NULL;
   26455              :               return gen_split_3706 (insn, operands);
   26456              : 
   26457              :             case 8:
   26458              :               if (!(
   26459              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26460              : (TARGET_SSE4_1) && 
   26461              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26462              : (TARGET_AVX)))
   26463              :                 return NULL;
   26464              :               return gen_split_3707 (insn, operands);
   26465              : 
   26466              :             case 9:
   26467              :               if (!(
   26468              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26469              : (TARGET_SSE4_1) && 
   26470              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26471              : (TARGET_AVX)))
   26472              :                 return NULL;
   26473              :               return gen_split_3708 (insn, operands);
   26474              : 
   26475              :             case 10:
   26476              :               if (!(
   26477              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26478              : (TARGET_SSE4_1) && 
   26479              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26480              : (TARGET_AVX)))
   26481              :                 return NULL;
   26482              :               return gen_split_3709 (insn, operands);
   26483              : 
   26484              :             case 11:
   26485              :               if (!(
   26486              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26487              : (TARGET_SSE4_1) && 
   26488              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26489              : (TARGET_AVX)))
   26490              :                 return NULL;
   26491              :               return gen_split_3710 (insn, operands);
   26492              : 
   26493              :             case 12:
   26494              :               if (!(
   26495              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26496              : (TARGET_SSE4_1) && 
   26497              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26498              : (TARGET_AVX)))
   26499              :                 return NULL;
   26500              :               return gen_split_3711 (insn, operands);
   26501              : 
   26502              :             case 13:
   26503              :               if (!(
   26504              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26505              : (TARGET_SSE4_1) && 
   26506              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26507              : (TARGET_AVX)))
   26508              :                 return NULL;
   26509              :               return gen_split_3712 (insn, operands);
   26510              : 
   26511              :             default:
   26512              :               return NULL;
   26513              :             }
   26514              : 
   26515              :         case E_HImode:
   26516              :           if (!register_operand (operands[0], E_HImode))
   26517              :             return NULL;
   26518              :           switch (pattern1710 (x3, 
   26519              : E_HImode))
   26520              :             {
   26521              :             case 0:
   26522              :               if (!
   26523              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26524              : (TARGET_SSE4_1))
   26525              :                 return NULL;
   26526              :               return gen_split_3713 (insn, operands);
   26527              : 
   26528              :             case 1:
   26529              :               if (!
   26530              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26531              : (TARGET_SSE4_1))
   26532              :                 return NULL;
   26533              :               return gen_split_3714 (insn, operands);
   26534              : 
   26535              :             case 2:
   26536              :               if (!
   26537              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26538              : (TARGET_SSE4_1))
   26539              :                 return NULL;
   26540              :               return gen_split_3715 (insn, operands);
   26541              : 
   26542              :             case 3:
   26543              :               if (!
   26544              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26545              : (TARGET_SSE4_1))
   26546              :                 return NULL;
   26547              :               return gen_split_3716 (insn, operands);
   26548              : 
   26549              :             case 4:
   26550              :               if (!
   26551              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26552              : (TARGET_SSE4_1))
   26553              :                 return NULL;
   26554              :               return gen_split_3717 (insn, operands);
   26555              : 
   26556              :             case 5:
   26557              :               if (!
   26558              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26559              : (TARGET_SSE4_1))
   26560              :                 return NULL;
   26561              :               return gen_split_3718 (insn, operands);
   26562              : 
   26563              :             case 6:
   26564              :               if (!
   26565              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26566              : (TARGET_SSE4_1))
   26567              :                 return NULL;
   26568              :               return gen_split_3719 (insn, operands);
   26569              : 
   26570              :             case 7:
   26571              :               if (!(
   26572              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26573              : (TARGET_SSE4_1) && 
   26574              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26575              : (TARGET_AVX)))
   26576              :                 return NULL;
   26577              :               return gen_split_3720 (insn, operands);
   26578              : 
   26579              :             case 8:
   26580              :               if (!(
   26581              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26582              : (TARGET_SSE4_1) && 
   26583              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26584              : (TARGET_AVX)))
   26585              :                 return NULL;
   26586              :               return gen_split_3721 (insn, operands);
   26587              : 
   26588              :             case 9:
   26589              :               if (!(
   26590              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26591              : (TARGET_SSE4_1) && 
   26592              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26593              : (TARGET_AVX)))
   26594              :                 return NULL;
   26595              :               return gen_split_3722 (insn, operands);
   26596              : 
   26597              :             case 10:
   26598              :               if (!(
   26599              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26600              : (TARGET_SSE4_1) && 
   26601              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26602              : (TARGET_AVX)))
   26603              :                 return NULL;
   26604              :               return gen_split_3723 (insn, operands);
   26605              : 
   26606              :             case 11:
   26607              :               if (!(
   26608              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26609              : (TARGET_SSE4_1) && 
   26610              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26611              : (TARGET_AVX)))
   26612              :                 return NULL;
   26613              :               return gen_split_3724 (insn, operands);
   26614              : 
   26615              :             case 12:
   26616              :               if (!(
   26617              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26618              : (TARGET_SSE4_1) && 
   26619              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26620              : (TARGET_AVX)))
   26621              :                 return NULL;
   26622              :               return gen_split_3725 (insn, operands);
   26623              : 
   26624              :             case 13:
   26625              :               if (!(
   26626              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26627              : (TARGET_SSE4_1) && 
   26628              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26629              : (TARGET_AVX)))
   26630              :                 return NULL;
   26631              :               return gen_split_3726 (insn, operands);
   26632              : 
   26633              :             default:
   26634              :               return NULL;
   26635              :             }
   26636              : 
   26637              :         case E_SImode:
   26638              :           if (!register_operand (operands[0], E_SImode))
   26639              :             return NULL;
   26640              :           switch (pattern1710 (x3, 
   26641              : E_SImode))
   26642              :             {
   26643              :             case 0:
   26644              :               if (!
   26645              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26646              : (TARGET_SSE4_1))
   26647              :                 return NULL;
   26648              :               return gen_split_3727 (insn, operands);
   26649              : 
   26650              :             case 1:
   26651              :               if (!
   26652              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26653              : (TARGET_SSE4_1))
   26654              :                 return NULL;
   26655              :               return gen_split_3728 (insn, operands);
   26656              : 
   26657              :             case 2:
   26658              :               if (!
   26659              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26660              : (TARGET_SSE4_1))
   26661              :                 return NULL;
   26662              :               return gen_split_3729 (insn, operands);
   26663              : 
   26664              :             case 3:
   26665              :               if (!
   26666              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26667              : (TARGET_SSE4_1))
   26668              :                 return NULL;
   26669              :               return gen_split_3730 (insn, operands);
   26670              : 
   26671              :             case 4:
   26672              :               if (!
   26673              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26674              : (TARGET_SSE4_1))
   26675              :                 return NULL;
   26676              :               return gen_split_3731 (insn, operands);
   26677              : 
   26678              :             case 5:
   26679              :               if (!
   26680              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26681              : (TARGET_SSE4_1))
   26682              :                 return NULL;
   26683              :               return gen_split_3732 (insn, operands);
   26684              : 
   26685              :             case 6:
   26686              :               if (!
   26687              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26688              : (TARGET_SSE4_1))
   26689              :                 return NULL;
   26690              :               return gen_split_3733 (insn, operands);
   26691              : 
   26692              :             case 7:
   26693              :               if (!(
   26694              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26695              : (TARGET_SSE4_1) && 
   26696              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26697              : (TARGET_AVX)))
   26698              :                 return NULL;
   26699              :               return gen_split_3734 (insn, operands);
   26700              : 
   26701              :             case 8:
   26702              :               if (!(
   26703              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26704              : (TARGET_SSE4_1) && 
   26705              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26706              : (TARGET_AVX)))
   26707              :                 return NULL;
   26708              :               return gen_split_3735 (insn, operands);
   26709              : 
   26710              :             case 9:
   26711              :               if (!(
   26712              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26713              : (TARGET_SSE4_1) && 
   26714              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26715              : (TARGET_AVX)))
   26716              :                 return NULL;
   26717              :               return gen_split_3736 (insn, operands);
   26718              : 
   26719              :             case 10:
   26720              :               if (!(
   26721              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26722              : (TARGET_SSE4_1) && 
   26723              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26724              : (TARGET_AVX)))
   26725              :                 return NULL;
   26726              :               return gen_split_3737 (insn, operands);
   26727              : 
   26728              :             case 11:
   26729              :               if (!(
   26730              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26731              : (TARGET_SSE4_1) && 
   26732              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26733              : (TARGET_AVX)))
   26734              :                 return NULL;
   26735              :               return gen_split_3738 (insn, operands);
   26736              : 
   26737              :             case 12:
   26738              :               if (!(
   26739              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26740              : (TARGET_SSE4_1) && 
   26741              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26742              : (TARGET_AVX)))
   26743              :                 return NULL;
   26744              :               return gen_split_3739 (insn, operands);
   26745              : 
   26746              :             case 13:
   26747              :               if (!(
   26748              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26749              : (TARGET_SSE4_1) && 
   26750              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26751              : (TARGET_AVX)))
   26752              :                 return NULL;
   26753              :               return gen_split_3740 (insn, operands);
   26754              : 
   26755              :             default:
   26756              :               return NULL;
   26757              :             }
   26758              : 
   26759              :         case E_DImode:
   26760              :           if (!register_operand (operands[0], E_DImode))
   26761              :             return NULL;
   26762              :           switch (pattern1710 (x3, 
   26763              : E_DImode))
   26764              :             {
   26765              :             case 0:
   26766              :               if (!(
   26767              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26768              : (TARGET_SSE4_1) && 
   26769              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26770              : (TARGET_64BIT)))
   26771              :                 return NULL;
   26772              :               return gen_split_3741 (insn, operands);
   26773              : 
   26774              :             case 1:
   26775              :               if (!(
   26776              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26777              : (TARGET_SSE4_1) && 
   26778              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26779              : (TARGET_64BIT)))
   26780              :                 return NULL;
   26781              :               return gen_split_3742 (insn, operands);
   26782              : 
   26783              :             case 2:
   26784              :               if (!(
   26785              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26786              : (TARGET_SSE4_1) && 
   26787              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26788              : (TARGET_64BIT)))
   26789              :                 return NULL;
   26790              :               return gen_split_3743 (insn, operands);
   26791              : 
   26792              :             case 3:
   26793              :               if (!(
   26794              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26795              : (TARGET_SSE4_1) && 
   26796              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26797              : (TARGET_64BIT)))
   26798              :                 return NULL;
   26799              :               return gen_split_3744 (insn, operands);
   26800              : 
   26801              :             case 4:
   26802              :               if (!(
   26803              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26804              : (TARGET_SSE4_1) && 
   26805              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26806              : (TARGET_64BIT)))
   26807              :                 return NULL;
   26808              :               return gen_split_3745 (insn, operands);
   26809              : 
   26810              :             case 5:
   26811              :               if (!(
   26812              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26813              : (TARGET_SSE4_1) && 
   26814              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26815              : (TARGET_64BIT)))
   26816              :                 return NULL;
   26817              :               return gen_split_3746 (insn, operands);
   26818              : 
   26819              :             case 6:
   26820              :               if (!(
   26821              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26822              : (TARGET_SSE4_1) && 
   26823              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26824              : (TARGET_64BIT)))
   26825              :                 return NULL;
   26826              :               return gen_split_3747 (insn, operands);
   26827              : 
   26828              :             case 7:
   26829              :               if (!(
   26830              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26831              : (TARGET_SSE4_1) && ((((((
   26832              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26833              : (TARGET_64BIT) && 
   26834              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26835              : (TARGET_AVX)) && 
   26836              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26837              : (TARGET_AVX)) && 
   26838              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26839              : (TARGET_AVX)) && 
   26840              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26841              : (TARGET_AVX)) && 
   26842              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26843              : (TARGET_AVX)) && 
   26844              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26845              : (TARGET_AVX))))
   26846              :                 return NULL;
   26847              :               return gen_split_3748 (insn, operands);
   26848              : 
   26849              :             case 8:
   26850              :               if (!(
   26851              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26852              : (TARGET_SSE4_1) && ((((((
   26853              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26854              : (TARGET_64BIT) && 
   26855              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26856              : (TARGET_AVX)) && 
   26857              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26858              : (TARGET_AVX)) && 
   26859              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26860              : (TARGET_AVX)) && 
   26861              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26862              : (TARGET_AVX)) && 
   26863              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26864              : (TARGET_AVX)) && 
   26865              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26866              : (TARGET_AVX))))
   26867              :                 return NULL;
   26868              :               return gen_split_3749 (insn, operands);
   26869              : 
   26870              :             case 9:
   26871              :               if (!(
   26872              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26873              : (TARGET_SSE4_1) && ((((((
   26874              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26875              : (TARGET_64BIT) && 
   26876              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26877              : (TARGET_AVX)) && 
   26878              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26879              : (TARGET_AVX)) && 
   26880              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26881              : (TARGET_AVX)) && 
   26882              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26883              : (TARGET_AVX)) && 
   26884              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26885              : (TARGET_AVX)) && 
   26886              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26887              : (TARGET_AVX))))
   26888              :                 return NULL;
   26889              :               return gen_split_3750 (insn, operands);
   26890              : 
   26891              :             case 10:
   26892              :               if (!(
   26893              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26894              : (TARGET_SSE4_1) && ((((((
   26895              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26896              : (TARGET_64BIT) && 
   26897              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26898              : (TARGET_AVX)) && 
   26899              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26900              : (TARGET_AVX)) && 
   26901              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26902              : (TARGET_AVX)) && 
   26903              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26904              : (TARGET_AVX)) && 
   26905              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26906              : (TARGET_AVX)) && 
   26907              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26908              : (TARGET_AVX))))
   26909              :                 return NULL;
   26910              :               return gen_split_3751 (insn, operands);
   26911              : 
   26912              :             case 11:
   26913              :               if (!(
   26914              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26915              : (TARGET_SSE4_1) && ((((((
   26916              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26917              : (TARGET_64BIT) && 
   26918              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26919              : (TARGET_AVX)) && 
   26920              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26921              : (TARGET_AVX)) && 
   26922              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26923              : (TARGET_AVX)) && 
   26924              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26925              : (TARGET_AVX)) && 
   26926              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26927              : (TARGET_AVX)) && 
   26928              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26929              : (TARGET_AVX))))
   26930              :                 return NULL;
   26931              :               return gen_split_3752 (insn, operands);
   26932              : 
   26933              :             case 12:
   26934              :               if (!(
   26935              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26936              : (TARGET_SSE4_1) && ((((((
   26937              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26938              : (TARGET_64BIT) && 
   26939              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26940              : (TARGET_AVX)) && 
   26941              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26942              : (TARGET_AVX)) && 
   26943              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26944              : (TARGET_AVX)) && 
   26945              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26946              : (TARGET_AVX)) && 
   26947              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26948              : (TARGET_AVX)) && 
   26949              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26950              : (TARGET_AVX))))
   26951              :                 return NULL;
   26952              :               return gen_split_3753 (insn, operands);
   26953              : 
   26954              :             case 13:
   26955              :               if (!(
   26956              : #line 25989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26957              : (TARGET_SSE4_1) && ((((((
   26958              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26959              : (TARGET_64BIT) && 
   26960              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26961              : (TARGET_AVX)) && 
   26962              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26963              : (TARGET_AVX)) && 
   26964              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26965              : (TARGET_AVX)) && 
   26966              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26967              : (TARGET_AVX)) && 
   26968              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26969              : (TARGET_AVX)) && 
   26970              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26971              : (TARGET_AVX))))
   26972              :                 return NULL;
   26973              :               return gen_split_3754 (insn, operands);
   26974              : 
   26975              :             default:
   26976              :               return NULL;
   26977              :             }
   26978              : 
   26979              :         default:
   26980              :           return NULL;
   26981              :         }
   26982              : 
   26983              :     case STRICT_LOW_PART:
   26984              :       x14 = XEXP (x13, 0);
   26985              :       operands[0] = x14;
   26986              :       if (!register_operand (operands[0], E_QImode))
   26987              :         return NULL;
   26988              :       switch (pattern1710 (x3, 
   26989              : E_QImode))
   26990              :         {
   26991              :         case 0:
   26992              :           if (!
   26993              : #line 26004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26994              : (TARGET_SSE4_1))
   26995              :             return NULL;
   26996              :           return gen_split_3755 (insn, operands);
   26997              : 
   26998              :         case 1:
   26999              :           if (!
   27000              : #line 26004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27001              : (TARGET_SSE4_1))
   27002              :             return NULL;
   27003              :           return gen_split_3756 (insn, operands);
   27004              : 
   27005              :         case 2:
   27006              :           if (!
   27007              : #line 26004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27008              : (TARGET_SSE4_1))
   27009              :             return NULL;
   27010              :           return gen_split_3757 (insn, operands);
   27011              : 
   27012              :         case 3:
   27013              :           if (!
   27014              : #line 26004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27015              : (TARGET_SSE4_1))
   27016              :             return NULL;
   27017              :           return gen_split_3758 (insn, operands);
   27018              : 
   27019              :         case 4:
   27020              :           if (!
   27021              : #line 26004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27022              : (TARGET_SSE4_1))
   27023              :             return NULL;
   27024              :           return gen_split_3759 (insn, operands);
   27025              : 
   27026              :         case 5:
   27027              :           if (!
   27028              : #line 26004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27029              : (TARGET_SSE4_1))
   27030              :             return NULL;
   27031              :           return gen_split_3760 (insn, operands);
   27032              : 
   27033              :         case 6:
   27034              :           if (!
   27035              : #line 26004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27036              : (TARGET_SSE4_1))
   27037              :             return NULL;
   27038              :           return gen_split_3761 (insn, operands);
   27039              : 
   27040              :         case 7:
   27041              :           if (!(
   27042              : #line 26004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27043              : (TARGET_SSE4_1) && 
   27044              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27045              : (TARGET_AVX)))
   27046              :             return NULL;
   27047              :           return gen_split_3762 (insn, operands);
   27048              : 
   27049              :         case 8:
   27050              :           if (!(
   27051              : #line 26004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27052              : (TARGET_SSE4_1) && 
   27053              : #line 602 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27054              : (TARGET_AVX)))
   27055              :             return NULL;
   27056              :           return gen_split_3763 (insn, operands);
   27057              : 
   27058              :         case 9:
   27059              :           if (!(
   27060              : #line 26004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27061              : (TARGET_SSE4_1) && 
   27062              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27063              : (TARGET_AVX)))
   27064              :             return NULL;
   27065              :           return gen_split_3764 (insn, operands);
   27066              : 
   27067              :         case 10:
   27068              :           if (!(
   27069              : #line 26004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27070              : (TARGET_SSE4_1) && 
   27071              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27072              : (TARGET_AVX)))
   27073              :             return NULL;
   27074              :           return gen_split_3765 (insn, operands);
   27075              : 
   27076              :         case 11:
   27077              :           if (!(
   27078              : #line 26004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27079              : (TARGET_SSE4_1) && 
   27080              : #line 603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27081              : (TARGET_AVX)))
   27082              :             return NULL;
   27083              :           return gen_split_3766 (insn, operands);
   27084              : 
   27085              :         case 12:
   27086              :           if (!(
   27087              : #line 26004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27088              : (TARGET_SSE4_1) && 
   27089              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27090              : (TARGET_AVX)))
   27091              :             return NULL;
   27092              :           return gen_split_3767 (insn, operands);
   27093              : 
   27094              :         case 13:
   27095              :           if (!(
   27096              : #line 26004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27097              : (TARGET_SSE4_1) && 
   27098              : #line 604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27099              : (TARGET_AVX)))
   27100              :             return NULL;
   27101              :           return gen_split_3768 (insn, operands);
   27102              : 
   27103              :         default:
   27104              :           return NULL;
   27105              :         }
   27106              : 
   27107              :     default:
   27108              :       return NULL;
   27109              :     }
   27110              : }
   27111              : 
   27112              :  rtx_insn *
   27113              : split_67 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   27114              : {
   27115              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   27116              :   rtx x2, x3, x4;
   27117              :   rtx_insn *res ATTRIBUTE_UNUSED;
   27118              :   x2 = XEXP (x1, 1);
   27119              :   x3 = XEXP (x2, 0);
   27120              :   x4 = XEXP (x3, 0);
   27121              :   switch (GET_CODE (x4))
   27122              :     {
   27123              :     case REG:
   27124              :     case SUBREG:
   27125              :     case MEM:
   27126              :     case NOT:
   27127              :       switch (pattern535 (x2))
   27128              :         {
   27129              :         case 0:
   27130              :           if (!((
   27131              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27132              : ((64 == 64 || TARGET_AVX512VL
   27133              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27134              :    && ix86_pre_reload_split ()
   27135              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27136              :                     STRIP_UNARY (operands[4]))
   27137              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27138              :                        STRIP_UNARY (operands[4]))
   27139              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27140              :                        STRIP_UNARY (operands[3]))
   27141              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27142              :                        STRIP_UNARY (operands[3])))) && 
   27143              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27144              : (TARGET_AVX512F)) && 
   27145              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27146              : ( 1)))
   27147              :             return NULL;
   27148              :           return gen_split_1752 (insn, operands);
   27149              : 
   27150              :         case 1:
   27151              :           if (!((
   27152              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27153              : ((32 == 64 || TARGET_AVX512VL
   27154              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27155              :    && ix86_pre_reload_split ()
   27156              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27157              :                     STRIP_UNARY (operands[4]))
   27158              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27159              :                        STRIP_UNARY (operands[4]))
   27160              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27161              :                        STRIP_UNARY (operands[3]))
   27162              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27163              :                        STRIP_UNARY (operands[3])))) && 
   27164              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27165              : (TARGET_AVX)) && 
   27166              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27167              : ( 1)))
   27168              :             return NULL;
   27169              :           return gen_split_1779 (insn, operands);
   27170              : 
   27171              :         case 2:
   27172              :           if (!(
   27173              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27174              : ((16 == 64 || TARGET_AVX512VL
   27175              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27176              :    && ix86_pre_reload_split ()
   27177              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27178              :                     STRIP_UNARY (operands[4]))
   27179              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27180              :                        STRIP_UNARY (operands[4]))
   27181              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27182              :                        STRIP_UNARY (operands[3]))
   27183              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27184              :                        STRIP_UNARY (operands[3])))) && 
   27185              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27186              : ( 1)))
   27187              :             return NULL;
   27188              :           return gen_split_1806 (insn, operands);
   27189              : 
   27190              :         case 3:
   27191              :           if (!((
   27192              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27193              : ((64 == 64 || TARGET_AVX512VL
   27194              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27195              :    && ix86_pre_reload_split ()
   27196              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27197              :                     STRIP_UNARY (operands[4]))
   27198              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27199              :                        STRIP_UNARY (operands[4]))
   27200              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27201              :                        STRIP_UNARY (operands[3]))
   27202              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27203              :                        STRIP_UNARY (operands[3])))) && 
   27204              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27205              : (TARGET_AVX512F)) && 
   27206              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27207              : ( 1)))
   27208              :             return NULL;
   27209              :           return gen_split_1833 (insn, operands);
   27210              : 
   27211              :         case 4:
   27212              :           if (!((
   27213              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27214              : ((32 == 64 || TARGET_AVX512VL
   27215              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27216              :    && ix86_pre_reload_split ()
   27217              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27218              :                     STRIP_UNARY (operands[4]))
   27219              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27220              :                        STRIP_UNARY (operands[4]))
   27221              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27222              :                        STRIP_UNARY (operands[3]))
   27223              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27224              :                        STRIP_UNARY (operands[3])))) && 
   27225              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27226              : (TARGET_AVX)) && 
   27227              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27228              : ( 1)))
   27229              :             return NULL;
   27230              :           return gen_split_1860 (insn, operands);
   27231              : 
   27232              :         case 5:
   27233              :           if (!(
   27234              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27235              : ((16 == 64 || TARGET_AVX512VL
   27236              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27237              :    && ix86_pre_reload_split ()
   27238              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27239              :                     STRIP_UNARY (operands[4]))
   27240              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27241              :                        STRIP_UNARY (operands[4]))
   27242              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27243              :                        STRIP_UNARY (operands[3]))
   27244              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27245              :                        STRIP_UNARY (operands[3])))) && 
   27246              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27247              : ( 1)))
   27248              :             return NULL;
   27249              :           return gen_split_1887 (insn, operands);
   27250              : 
   27251              :         case 6:
   27252              :           if (!((
   27253              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27254              : ((64 == 64 || TARGET_AVX512VL
   27255              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27256              :    && ix86_pre_reload_split ()
   27257              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27258              :                     STRIP_UNARY (operands[4]))
   27259              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27260              :                        STRIP_UNARY (operands[4]))
   27261              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27262              :                        STRIP_UNARY (operands[3]))
   27263              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27264              :                        STRIP_UNARY (operands[3])))) && 
   27265              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27266              : (TARGET_AVX512F)) && 
   27267              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27268              : ( 1)))
   27269              :             return NULL;
   27270              :           return gen_split_1914 (insn, operands);
   27271              : 
   27272              :         case 7:
   27273              :           if (!((
   27274              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27275              : ((32 == 64 || TARGET_AVX512VL
   27276              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27277              :    && ix86_pre_reload_split ()
   27278              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27279              :                     STRIP_UNARY (operands[4]))
   27280              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27281              :                        STRIP_UNARY (operands[4]))
   27282              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27283              :                        STRIP_UNARY (operands[3]))
   27284              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27285              :                        STRIP_UNARY (operands[3])))) && 
   27286              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27287              : (TARGET_AVX)) && 
   27288              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27289              : ( 1)))
   27290              :             return NULL;
   27291              :           return gen_split_1941 (insn, operands);
   27292              : 
   27293              :         case 8:
   27294              :           if (!(
   27295              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27296              : ((16 == 64 || TARGET_AVX512VL
   27297              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27298              :    && ix86_pre_reload_split ()
   27299              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27300              :                     STRIP_UNARY (operands[4]))
   27301              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27302              :                        STRIP_UNARY (operands[4]))
   27303              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27304              :                        STRIP_UNARY (operands[3]))
   27305              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27306              :                        STRIP_UNARY (operands[3])))) && 
   27307              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27308              : ( 1)))
   27309              :             return NULL;
   27310              :           return gen_split_1968 (insn, operands);
   27311              : 
   27312              :         case 9:
   27313              :           if (!((
   27314              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27315              : ((64 == 64 || TARGET_AVX512VL
   27316              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27317              :    && ix86_pre_reload_split ()
   27318              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27319              :                     STRIP_UNARY (operands[4]))
   27320              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27321              :                        STRIP_UNARY (operands[4]))
   27322              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27323              :                        STRIP_UNARY (operands[3]))
   27324              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27325              :                        STRIP_UNARY (operands[3])))) && 
   27326              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27327              : (TARGET_AVX512F)) && 
   27328              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27329              : ( 1)))
   27330              :             return NULL;
   27331              :           return gen_split_1995 (insn, operands);
   27332              : 
   27333              :         case 10:
   27334              :           if (!((
   27335              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27336              : ((32 == 64 || TARGET_AVX512VL
   27337              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27338              :    && ix86_pre_reload_split ()
   27339              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27340              :                     STRIP_UNARY (operands[4]))
   27341              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27342              :                        STRIP_UNARY (operands[4]))
   27343              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27344              :                        STRIP_UNARY (operands[3]))
   27345              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27346              :                        STRIP_UNARY (operands[3])))) && 
   27347              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27348              : (TARGET_AVX)) && 
   27349              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27350              : ( 1)))
   27351              :             return NULL;
   27352              :           return gen_split_2022 (insn, operands);
   27353              : 
   27354              :         case 11:
   27355              :           if (!(
   27356              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27357              : ((16 == 64 || TARGET_AVX512VL
   27358              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27359              :    && ix86_pre_reload_split ()
   27360              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27361              :                     STRIP_UNARY (operands[4]))
   27362              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27363              :                        STRIP_UNARY (operands[4]))
   27364              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27365              :                        STRIP_UNARY (operands[3]))
   27366              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27367              :                        STRIP_UNARY (operands[3])))) && 
   27368              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27369              : ( 1)))
   27370              :             return NULL;
   27371              :           return gen_split_2049 (insn, operands);
   27372              : 
   27373              :         case 12:
   27374              :           if (!((
   27375              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27376              : ((64 == 64 || TARGET_AVX512VL
   27377              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27378              :    && ix86_pre_reload_split ()
   27379              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27380              :                     STRIP_UNARY (operands[4]))
   27381              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27382              :                        STRIP_UNARY (operands[4]))
   27383              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27384              :                        STRIP_UNARY (operands[3]))
   27385              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27386              :                        STRIP_UNARY (operands[3])))) && 
   27387              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27388              : (TARGET_AVX512F)) && 
   27389              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27390              : ( 1)))
   27391              :             return NULL;
   27392              :           return gen_split_1755 (insn, operands);
   27393              : 
   27394              :         case 13:
   27395              :           if (!((
   27396              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27397              : ((32 == 64 || TARGET_AVX512VL
   27398              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27399              :    && ix86_pre_reload_split ()
   27400              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27401              :                     STRIP_UNARY (operands[4]))
   27402              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27403              :                        STRIP_UNARY (operands[4]))
   27404              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27405              :                        STRIP_UNARY (operands[3]))
   27406              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27407              :                        STRIP_UNARY (operands[3])))) && 
   27408              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27409              : (TARGET_AVX)) && 
   27410              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27411              : ( 1)))
   27412              :             return NULL;
   27413              :           return gen_split_1782 (insn, operands);
   27414              : 
   27415              :         case 14:
   27416              :           if (!(
   27417              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27418              : ((16 == 64 || TARGET_AVX512VL
   27419              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27420              :    && ix86_pre_reload_split ()
   27421              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27422              :                     STRIP_UNARY (operands[4]))
   27423              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27424              :                        STRIP_UNARY (operands[4]))
   27425              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27426              :                        STRIP_UNARY (operands[3]))
   27427              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27428              :                        STRIP_UNARY (operands[3])))) && 
   27429              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27430              : ( 1)))
   27431              :             return NULL;
   27432              :           return gen_split_1809 (insn, operands);
   27433              : 
   27434              :         case 15:
   27435              :           if (!((
   27436              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27437              : ((64 == 64 || TARGET_AVX512VL
   27438              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27439              :    && ix86_pre_reload_split ()
   27440              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27441              :                     STRIP_UNARY (operands[4]))
   27442              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27443              :                        STRIP_UNARY (operands[4]))
   27444              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27445              :                        STRIP_UNARY (operands[3]))
   27446              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27447              :                        STRIP_UNARY (operands[3])))) && 
   27448              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27449              : (TARGET_AVX512F)) && 
   27450              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27451              : ( 1)))
   27452              :             return NULL;
   27453              :           return gen_split_1836 (insn, operands);
   27454              : 
   27455              :         case 16:
   27456              :           if (!((
   27457              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27458              : ((32 == 64 || TARGET_AVX512VL
   27459              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27460              :    && ix86_pre_reload_split ()
   27461              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27462              :                     STRIP_UNARY (operands[4]))
   27463              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27464              :                        STRIP_UNARY (operands[4]))
   27465              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27466              :                        STRIP_UNARY (operands[3]))
   27467              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27468              :                        STRIP_UNARY (operands[3])))) && 
   27469              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27470              : (TARGET_AVX)) && 
   27471              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27472              : ( 1)))
   27473              :             return NULL;
   27474              :           return gen_split_1863 (insn, operands);
   27475              : 
   27476              :         case 17:
   27477              :           if (!(
   27478              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27479              : ((16 == 64 || TARGET_AVX512VL
   27480              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27481              :    && ix86_pre_reload_split ()
   27482              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27483              :                     STRIP_UNARY (operands[4]))
   27484              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27485              :                        STRIP_UNARY (operands[4]))
   27486              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27487              :                        STRIP_UNARY (operands[3]))
   27488              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27489              :                        STRIP_UNARY (operands[3])))) && 
   27490              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27491              : ( 1)))
   27492              :             return NULL;
   27493              :           return gen_split_1890 (insn, operands);
   27494              : 
   27495              :         case 18:
   27496              :           if (!((
   27497              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27498              : ((64 == 64 || TARGET_AVX512VL
   27499              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27500              :    && ix86_pre_reload_split ()
   27501              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27502              :                     STRIP_UNARY (operands[4]))
   27503              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27504              :                        STRIP_UNARY (operands[4]))
   27505              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27506              :                        STRIP_UNARY (operands[3]))
   27507              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27508              :                        STRIP_UNARY (operands[3])))) && 
   27509              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27510              : (TARGET_AVX512F)) && 
   27511              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27512              : ( 1)))
   27513              :             return NULL;
   27514              :           return gen_split_1917 (insn, operands);
   27515              : 
   27516              :         case 19:
   27517              :           if (!((
   27518              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27519              : ((32 == 64 || TARGET_AVX512VL
   27520              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27521              :    && ix86_pre_reload_split ()
   27522              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27523              :                     STRIP_UNARY (operands[4]))
   27524              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27525              :                        STRIP_UNARY (operands[4]))
   27526              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27527              :                        STRIP_UNARY (operands[3]))
   27528              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27529              :                        STRIP_UNARY (operands[3])))) && 
   27530              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27531              : (TARGET_AVX)) && 
   27532              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27533              : ( 1)))
   27534              :             return NULL;
   27535              :           return gen_split_1944 (insn, operands);
   27536              : 
   27537              :         case 20:
   27538              :           if (!(
   27539              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27540              : ((16 == 64 || TARGET_AVX512VL
   27541              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27542              :    && ix86_pre_reload_split ()
   27543              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27544              :                     STRIP_UNARY (operands[4]))
   27545              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27546              :                        STRIP_UNARY (operands[4]))
   27547              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27548              :                        STRIP_UNARY (operands[3]))
   27549              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27550              :                        STRIP_UNARY (operands[3])))) && 
   27551              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27552              : ( 1)))
   27553              :             return NULL;
   27554              :           return gen_split_1971 (insn, operands);
   27555              : 
   27556              :         case 21:
   27557              :           if (!((
   27558              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27559              : ((64 == 64 || TARGET_AVX512VL
   27560              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27561              :    && ix86_pre_reload_split ()
   27562              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27563              :                     STRIP_UNARY (operands[4]))
   27564              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27565              :                        STRIP_UNARY (operands[4]))
   27566              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27567              :                        STRIP_UNARY (operands[3]))
   27568              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27569              :                        STRIP_UNARY (operands[3])))) && 
   27570              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27571              : (TARGET_AVX512F)) && 
   27572              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27573              : ( 1)))
   27574              :             return NULL;
   27575              :           return gen_split_1998 (insn, operands);
   27576              : 
   27577              :         case 22:
   27578              :           if (!((
   27579              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27580              : ((32 == 64 || TARGET_AVX512VL
   27581              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27582              :    && ix86_pre_reload_split ()
   27583              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27584              :                     STRIP_UNARY (operands[4]))
   27585              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27586              :                        STRIP_UNARY (operands[4]))
   27587              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27588              :                        STRIP_UNARY (operands[3]))
   27589              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27590              :                        STRIP_UNARY (operands[3])))) && 
   27591              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27592              : (TARGET_AVX)) && 
   27593              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27594              : ( 1)))
   27595              :             return NULL;
   27596              :           return gen_split_2025 (insn, operands);
   27597              : 
   27598              :         case 23:
   27599              :           if (!(
   27600              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27601              : ((16 == 64 || TARGET_AVX512VL
   27602              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27603              :    && ix86_pre_reload_split ()
   27604              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27605              :                     STRIP_UNARY (operands[4]))
   27606              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27607              :                        STRIP_UNARY (operands[4]))
   27608              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27609              :                        STRIP_UNARY (operands[3]))
   27610              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27611              :                        STRIP_UNARY (operands[3])))) && 
   27612              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27613              : ( 1)))
   27614              :             return NULL;
   27615              :           return gen_split_2052 (insn, operands);
   27616              : 
   27617              :         case 24:
   27618              :           if (!((
   27619              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27620              : ((64 == 64 || TARGET_AVX512VL
   27621              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27622              :    && ix86_pre_reload_split ()
   27623              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27624              :                     STRIP_UNARY (operands[4]))
   27625              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27626              :                        STRIP_UNARY (operands[4]))
   27627              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27628              :                        STRIP_UNARY (operands[3]))
   27629              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27630              :                        STRIP_UNARY (operands[3])))) && 
   27631              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27632              : (TARGET_AVX512F)) && 
   27633              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27634              : ( 1)))
   27635              :             return NULL;
   27636              :           return gen_split_1758 (insn, operands);
   27637              : 
   27638              :         case 25:
   27639              :           if (!((
   27640              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27641              : ((32 == 64 || TARGET_AVX512VL
   27642              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27643              :    && ix86_pre_reload_split ()
   27644              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27645              :                     STRIP_UNARY (operands[4]))
   27646              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27647              :                        STRIP_UNARY (operands[4]))
   27648              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27649              :                        STRIP_UNARY (operands[3]))
   27650              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27651              :                        STRIP_UNARY (operands[3])))) && 
   27652              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27653              : (TARGET_AVX)) && 
   27654              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27655              : ( 1)))
   27656              :             return NULL;
   27657              :           return gen_split_1785 (insn, operands);
   27658              : 
   27659              :         case 26:
   27660              :           if (!(
   27661              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27662              : ((16 == 64 || TARGET_AVX512VL
   27663              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27664              :    && ix86_pre_reload_split ()
   27665              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27666              :                     STRIP_UNARY (operands[4]))
   27667              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27668              :                        STRIP_UNARY (operands[4]))
   27669              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27670              :                        STRIP_UNARY (operands[3]))
   27671              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27672              :                        STRIP_UNARY (operands[3])))) && 
   27673              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27674              : ( 1)))
   27675              :             return NULL;
   27676              :           return gen_split_1812 (insn, operands);
   27677              : 
   27678              :         case 27:
   27679              :           if (!((
   27680              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27681              : ((64 == 64 || TARGET_AVX512VL
   27682              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27683              :    && ix86_pre_reload_split ()
   27684              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27685              :                     STRIP_UNARY (operands[4]))
   27686              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27687              :                        STRIP_UNARY (operands[4]))
   27688              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27689              :                        STRIP_UNARY (operands[3]))
   27690              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27691              :                        STRIP_UNARY (operands[3])))) && 
   27692              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27693              : (TARGET_AVX512F)) && 
   27694              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27695              : ( 1)))
   27696              :             return NULL;
   27697              :           return gen_split_1839 (insn, operands);
   27698              : 
   27699              :         case 28:
   27700              :           if (!((
   27701              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27702              : ((32 == 64 || TARGET_AVX512VL
   27703              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27704              :    && ix86_pre_reload_split ()
   27705              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27706              :                     STRIP_UNARY (operands[4]))
   27707              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27708              :                        STRIP_UNARY (operands[4]))
   27709              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27710              :                        STRIP_UNARY (operands[3]))
   27711              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27712              :                        STRIP_UNARY (operands[3])))) && 
   27713              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27714              : (TARGET_AVX)) && 
   27715              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27716              : ( 1)))
   27717              :             return NULL;
   27718              :           return gen_split_1866 (insn, operands);
   27719              : 
   27720              :         case 29:
   27721              :           if (!(
   27722              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27723              : ((16 == 64 || TARGET_AVX512VL
   27724              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27725              :    && ix86_pre_reload_split ()
   27726              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27727              :                     STRIP_UNARY (operands[4]))
   27728              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27729              :                        STRIP_UNARY (operands[4]))
   27730              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27731              :                        STRIP_UNARY (operands[3]))
   27732              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27733              :                        STRIP_UNARY (operands[3])))) && 
   27734              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27735              : ( 1)))
   27736              :             return NULL;
   27737              :           return gen_split_1893 (insn, operands);
   27738              : 
   27739              :         case 30:
   27740              :           if (!((
   27741              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27742              : ((64 == 64 || TARGET_AVX512VL
   27743              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27744              :    && ix86_pre_reload_split ()
   27745              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27746              :                     STRIP_UNARY (operands[4]))
   27747              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27748              :                        STRIP_UNARY (operands[4]))
   27749              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27750              :                        STRIP_UNARY (operands[3]))
   27751              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27752              :                        STRIP_UNARY (operands[3])))) && 
   27753              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27754              : (TARGET_AVX512F)) && 
   27755              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27756              : ( 1)))
   27757              :             return NULL;
   27758              :           return gen_split_1920 (insn, operands);
   27759              : 
   27760              :         case 31:
   27761              :           if (!((
   27762              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27763              : ((32 == 64 || TARGET_AVX512VL
   27764              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27765              :    && ix86_pre_reload_split ()
   27766              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27767              :                     STRIP_UNARY (operands[4]))
   27768              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27769              :                        STRIP_UNARY (operands[4]))
   27770              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27771              :                        STRIP_UNARY (operands[3]))
   27772              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27773              :                        STRIP_UNARY (operands[3])))) && 
   27774              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27775              : (TARGET_AVX)) && 
   27776              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27777              : ( 1)))
   27778              :             return NULL;
   27779              :           return gen_split_1947 (insn, operands);
   27780              : 
   27781              :         case 32:
   27782              :           if (!(
   27783              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27784              : ((16 == 64 || TARGET_AVX512VL
   27785              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27786              :    && ix86_pre_reload_split ()
   27787              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27788              :                     STRIP_UNARY (operands[4]))
   27789              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27790              :                        STRIP_UNARY (operands[4]))
   27791              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27792              :                        STRIP_UNARY (operands[3]))
   27793              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27794              :                        STRIP_UNARY (operands[3])))) && 
   27795              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27796              : ( 1)))
   27797              :             return NULL;
   27798              :           return gen_split_1974 (insn, operands);
   27799              : 
   27800              :         case 33:
   27801              :           if (!((
   27802              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27803              : ((64 == 64 || TARGET_AVX512VL
   27804              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27805              :    && ix86_pre_reload_split ()
   27806              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27807              :                     STRIP_UNARY (operands[4]))
   27808              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27809              :                        STRIP_UNARY (operands[4]))
   27810              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27811              :                        STRIP_UNARY (operands[3]))
   27812              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27813              :                        STRIP_UNARY (operands[3])))) && 
   27814              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27815              : (TARGET_AVX512F)) && 
   27816              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27817              : ( 1)))
   27818              :             return NULL;
   27819              :           return gen_split_2001 (insn, operands);
   27820              : 
   27821              :         case 34:
   27822              :           if (!((
   27823              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27824              : ((32 == 64 || TARGET_AVX512VL
   27825              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27826              :    && ix86_pre_reload_split ()
   27827              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27828              :                     STRIP_UNARY (operands[4]))
   27829              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27830              :                        STRIP_UNARY (operands[4]))
   27831              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27832              :                        STRIP_UNARY (operands[3]))
   27833              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27834              :                        STRIP_UNARY (operands[3])))) && 
   27835              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27836              : (TARGET_AVX)) && 
   27837              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27838              : ( 1)))
   27839              :             return NULL;
   27840              :           return gen_split_2028 (insn, operands);
   27841              : 
   27842              :         case 35:
   27843              :           if (!(
   27844              : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27845              : ((16 == 64 || TARGET_AVX512VL
   27846              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27847              :    && ix86_pre_reload_split ()
   27848              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27849              :                     STRIP_UNARY (operands[4]))
   27850              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27851              :                        STRIP_UNARY (operands[4]))
   27852              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27853              :                        STRIP_UNARY (operands[3]))
   27854              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27855              :                        STRIP_UNARY (operands[3])))) && 
   27856              : #line 14114 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27857              : ( 1)))
   27858              :             return NULL;
   27859              :           return gen_split_2055 (insn, operands);
   27860              : 
   27861              :         case 36:
   27862              :           if (!((
   27863              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27864              : ((64 == 64 || TARGET_AVX512VL
   27865              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27866              :    && ix86_pre_reload_split ()) && 
   27867              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27868              : (TARGET_AVX512F)) && 
   27869              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27870              : ( 1)))
   27871              :             return NULL;
   27872              :           return gen_split_3042 (insn, operands);
   27873              : 
   27874              :         case 37:
   27875              :           if (!((
   27876              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27877              : ((32 == 64 || TARGET_AVX512VL
   27878              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27879              :    && ix86_pre_reload_split ()) && 
   27880              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27881              : (TARGET_AVX)) && 
   27882              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27883              : ( 1)))
   27884              :             return NULL;
   27885              :           return gen_split_3051 (insn, operands);
   27886              : 
   27887              :         case 38:
   27888              :           if (!(
   27889              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27890              : ((16 == 64 || TARGET_AVX512VL
   27891              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27892              :    && ix86_pre_reload_split ()) && 
   27893              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27894              : ( 1)))
   27895              :             return NULL;
   27896              :           return gen_split_3060 (insn, operands);
   27897              : 
   27898              :         case 39:
   27899              :           if (!((
   27900              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27901              : ((64 == 64 || TARGET_AVX512VL
   27902              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27903              :    && ix86_pre_reload_split ()) && 
   27904              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27905              : (TARGET_AVX512F)) && 
   27906              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27907              : ( 1)))
   27908              :             return NULL;
   27909              :           return gen_split_3069 (insn, operands);
   27910              : 
   27911              :         case 40:
   27912              :           if (!((
   27913              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27914              : ((32 == 64 || TARGET_AVX512VL
   27915              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27916              :    && ix86_pre_reload_split ()) && 
   27917              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27918              : (TARGET_AVX)) && 
   27919              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27920              : ( 1)))
   27921              :             return NULL;
   27922              :           return gen_split_3078 (insn, operands);
   27923              : 
   27924              :         case 41:
   27925              :           if (!(
   27926              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27927              : ((16 == 64 || TARGET_AVX512VL
   27928              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27929              :    && ix86_pre_reload_split ()) && 
   27930              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27931              : ( 1)))
   27932              :             return NULL;
   27933              :           return gen_split_3087 (insn, operands);
   27934              : 
   27935              :         case 42:
   27936              :           if (!((
   27937              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27938              : ((64 == 64 || TARGET_AVX512VL
   27939              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27940              :    && ix86_pre_reload_split ()) && 
   27941              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27942              : (TARGET_AVX512F)) && 
   27943              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27944              : ( 1)))
   27945              :             return NULL;
   27946              :           return gen_split_3096 (insn, operands);
   27947              : 
   27948              :         case 43:
   27949              :           if (!((
   27950              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27951              : ((32 == 64 || TARGET_AVX512VL
   27952              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27953              :    && ix86_pre_reload_split ()) && 
   27954              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27955              : (TARGET_AVX)) && 
   27956              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27957              : ( 1)))
   27958              :             return NULL;
   27959              :           return gen_split_3105 (insn, operands);
   27960              : 
   27961              :         case 44:
   27962              :           if (!(
   27963              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27964              : ((16 == 64 || TARGET_AVX512VL
   27965              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27966              :    && ix86_pre_reload_split ()) && 
   27967              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27968              : ( 1)))
   27969              :             return NULL;
   27970              :           return gen_split_3114 (insn, operands);
   27971              : 
   27972              :         case 45:
   27973              :           if (!((
   27974              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27975              : ((64 == 64 || TARGET_AVX512VL
   27976              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27977              :    && ix86_pre_reload_split ()) && 
   27978              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27979              : (TARGET_AVX512F)) && 
   27980              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27981              : ( 1)))
   27982              :             return NULL;
   27983              :           return gen_split_3123 (insn, operands);
   27984              : 
   27985              :         case 46:
   27986              :           if (!((
   27987              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27988              : ((32 == 64 || TARGET_AVX512VL
   27989              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27990              :    && ix86_pre_reload_split ()) && 
   27991              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27992              : (TARGET_AVX)) && 
   27993              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27994              : ( 1)))
   27995              :             return NULL;
   27996              :           return gen_split_3132 (insn, operands);
   27997              : 
   27998              :         case 47:
   27999              :           if (!(
   28000              : #line 14271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28001              : ((16 == 64 || TARGET_AVX512VL
   28002              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28003              :    && ix86_pre_reload_split ()) && 
   28004              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28005              : ( 1)))
   28006              :             return NULL;
   28007              :           return gen_split_3141 (insn, operands);
   28008              : 
   28009              :         default:
   28010              :           return NULL;
   28011              :         }
   28012              : 
   28013              :     case AND:
   28014              :       switch (pattern537 (x2))
   28015              :         {
   28016              :         case 0:
   28017              :           if (!((
   28018              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28019              : ((64 == 64 || TARGET_AVX512VL
   28020              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28021              :    && ix86_pre_reload_split ()
   28022              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28023              :                     STRIP_UNARY (operands[4]))
   28024              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28025              :                        STRIP_UNARY (operands[4]))
   28026              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28027              :                        STRIP_UNARY (operands[3]))
   28028              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28029              :                        STRIP_UNARY (operands[3])))) && 
   28030              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28031              : (TARGET_AVX512F)) && 
   28032              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28033              : ( 1)))
   28034              :             return NULL;
   28035              :           return gen_split_2400 (insn, operands);
   28036              : 
   28037              :         case 1:
   28038              :           if (!((
   28039              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28040              : ((32 == 64 || TARGET_AVX512VL
   28041              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28042              :    && ix86_pre_reload_split ()
   28043              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28044              :                     STRIP_UNARY (operands[4]))
   28045              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28046              :                        STRIP_UNARY (operands[4]))
   28047              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28048              :                        STRIP_UNARY (operands[3]))
   28049              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28050              :                        STRIP_UNARY (operands[3])))) && 
   28051              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28052              : (TARGET_AVX)) && 
   28053              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28054              : ( 1)))
   28055              :             return NULL;
   28056              :           return gen_split_2427 (insn, operands);
   28057              : 
   28058              :         case 2:
   28059              :           if (!(
   28060              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28061              : ((16 == 64 || TARGET_AVX512VL
   28062              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28063              :    && ix86_pre_reload_split ()
   28064              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28065              :                     STRIP_UNARY (operands[4]))
   28066              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28067              :                        STRIP_UNARY (operands[4]))
   28068              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28069              :                        STRIP_UNARY (operands[3]))
   28070              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28071              :                        STRIP_UNARY (operands[3])))) && 
   28072              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28073              : ( 1)))
   28074              :             return NULL;
   28075              :           return gen_split_2454 (insn, operands);
   28076              : 
   28077              :         case 3:
   28078              :           if (!((
   28079              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28080              : ((64 == 64 || TARGET_AVX512VL
   28081              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28082              :    && ix86_pre_reload_split ()
   28083              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28084              :                     STRIP_UNARY (operands[4]))
   28085              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28086              :                        STRIP_UNARY (operands[4]))
   28087              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28088              :                        STRIP_UNARY (operands[3]))
   28089              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28090              :                        STRIP_UNARY (operands[3])))) && 
   28091              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28092              : (TARGET_AVX512F)) && 
   28093              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28094              : ( 1)))
   28095              :             return NULL;
   28096              :           return gen_split_2481 (insn, operands);
   28097              : 
   28098              :         case 4:
   28099              :           if (!((
   28100              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28101              : ((32 == 64 || TARGET_AVX512VL
   28102              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28103              :    && ix86_pre_reload_split ()
   28104              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28105              :                     STRIP_UNARY (operands[4]))
   28106              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28107              :                        STRIP_UNARY (operands[4]))
   28108              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28109              :                        STRIP_UNARY (operands[3]))
   28110              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28111              :                        STRIP_UNARY (operands[3])))) && 
   28112              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28113              : (TARGET_AVX)) && 
   28114              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28115              : ( 1)))
   28116              :             return NULL;
   28117              :           return gen_split_2508 (insn, operands);
   28118              : 
   28119              :         case 5:
   28120              :           if (!(
   28121              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28122              : ((16 == 64 || TARGET_AVX512VL
   28123              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28124              :    && ix86_pre_reload_split ()
   28125              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28126              :                     STRIP_UNARY (operands[4]))
   28127              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28128              :                        STRIP_UNARY (operands[4]))
   28129              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28130              :                        STRIP_UNARY (operands[3]))
   28131              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28132              :                        STRIP_UNARY (operands[3])))) && 
   28133              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28134              : ( 1)))
   28135              :             return NULL;
   28136              :           return gen_split_2535 (insn, operands);
   28137              : 
   28138              :         case 6:
   28139              :           if (!((
   28140              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28141              : ((64 == 64 || TARGET_AVX512VL
   28142              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28143              :    && ix86_pre_reload_split ()
   28144              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28145              :                     STRIP_UNARY (operands[4]))
   28146              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28147              :                        STRIP_UNARY (operands[4]))
   28148              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28149              :                        STRIP_UNARY (operands[3]))
   28150              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28151              :                        STRIP_UNARY (operands[3])))) && 
   28152              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28153              : (TARGET_AVX512F)) && 
   28154              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28155              : ( 1)))
   28156              :             return NULL;
   28157              :           return gen_split_2562 (insn, operands);
   28158              : 
   28159              :         case 7:
   28160              :           if (!((
   28161              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28162              : ((32 == 64 || TARGET_AVX512VL
   28163              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28164              :    && ix86_pre_reload_split ()
   28165              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28166              :                     STRIP_UNARY (operands[4]))
   28167              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28168              :                        STRIP_UNARY (operands[4]))
   28169              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28170              :                        STRIP_UNARY (operands[3]))
   28171              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28172              :                        STRIP_UNARY (operands[3])))) && 
   28173              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28174              : (TARGET_AVX)) && 
   28175              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28176              : ( 1)))
   28177              :             return NULL;
   28178              :           return gen_split_2589 (insn, operands);
   28179              : 
   28180              :         case 8:
   28181              :           if (!(
   28182              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28183              : ((16 == 64 || TARGET_AVX512VL
   28184              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28185              :    && ix86_pre_reload_split ()
   28186              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28187              :                     STRIP_UNARY (operands[4]))
   28188              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28189              :                        STRIP_UNARY (operands[4]))
   28190              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28191              :                        STRIP_UNARY (operands[3]))
   28192              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28193              :                        STRIP_UNARY (operands[3])))) && 
   28194              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28195              : ( 1)))
   28196              :             return NULL;
   28197              :           return gen_split_2616 (insn, operands);
   28198              : 
   28199              :         case 9:
   28200              :           if (!((
   28201              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28202              : ((64 == 64 || TARGET_AVX512VL
   28203              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28204              :    && ix86_pre_reload_split ()
   28205              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28206              :                     STRIP_UNARY (operands[4]))
   28207              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28208              :                        STRIP_UNARY (operands[4]))
   28209              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28210              :                        STRIP_UNARY (operands[3]))
   28211              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28212              :                        STRIP_UNARY (operands[3])))) && 
   28213              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28214              : (TARGET_AVX512F)) && 
   28215              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28216              : ( 1)))
   28217              :             return NULL;
   28218              :           return gen_split_2643 (insn, operands);
   28219              : 
   28220              :         case 10:
   28221              :           if (!((
   28222              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28223              : ((32 == 64 || TARGET_AVX512VL
   28224              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28225              :    && ix86_pre_reload_split ()
   28226              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28227              :                     STRIP_UNARY (operands[4]))
   28228              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28229              :                        STRIP_UNARY (operands[4]))
   28230              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28231              :                        STRIP_UNARY (operands[3]))
   28232              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28233              :                        STRIP_UNARY (operands[3])))) && 
   28234              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28235              : (TARGET_AVX)) && 
   28236              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28237              : ( 1)))
   28238              :             return NULL;
   28239              :           return gen_split_2670 (insn, operands);
   28240              : 
   28241              :         case 11:
   28242              :           if (!(
   28243              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28244              : ((16 == 64 || TARGET_AVX512VL
   28245              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28246              :    && ix86_pre_reload_split ()
   28247              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28248              :                     STRIP_UNARY (operands[4]))
   28249              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28250              :                        STRIP_UNARY (operands[4]))
   28251              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28252              :                        STRIP_UNARY (operands[3]))
   28253              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28254              :                        STRIP_UNARY (operands[3])))) && 
   28255              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28256              : ( 1)))
   28257              :             return NULL;
   28258              :           return gen_split_2697 (insn, operands);
   28259              : 
   28260              :         default:
   28261              :           return NULL;
   28262              :         }
   28263              : 
   28264              :     case IOR:
   28265              :       switch (pattern537 (x2))
   28266              :         {
   28267              :         case 0:
   28268              :           if (!((
   28269              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28270              : ((64 == 64 || TARGET_AVX512VL
   28271              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28272              :    && ix86_pre_reload_split ()
   28273              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28274              :                     STRIP_UNARY (operands[4]))
   28275              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28276              :                        STRIP_UNARY (operands[4]))
   28277              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28278              :                        STRIP_UNARY (operands[3]))
   28279              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28280              :                        STRIP_UNARY (operands[3])))) && 
   28281              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28282              : (TARGET_AVX512F)) && 
   28283              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28284              : ( 1)))
   28285              :             return NULL;
   28286              :           return gen_split_2403 (insn, operands);
   28287              : 
   28288              :         case 1:
   28289              :           if (!((
   28290              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28291              : ((32 == 64 || TARGET_AVX512VL
   28292              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28293              :    && ix86_pre_reload_split ()
   28294              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28295              :                     STRIP_UNARY (operands[4]))
   28296              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28297              :                        STRIP_UNARY (operands[4]))
   28298              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28299              :                        STRIP_UNARY (operands[3]))
   28300              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28301              :                        STRIP_UNARY (operands[3])))) && 
   28302              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28303              : (TARGET_AVX)) && 
   28304              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28305              : ( 1)))
   28306              :             return NULL;
   28307              :           return gen_split_2430 (insn, operands);
   28308              : 
   28309              :         case 2:
   28310              :           if (!(
   28311              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28312              : ((16 == 64 || TARGET_AVX512VL
   28313              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28314              :    && ix86_pre_reload_split ()
   28315              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28316              :                     STRIP_UNARY (operands[4]))
   28317              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28318              :                        STRIP_UNARY (operands[4]))
   28319              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28320              :                        STRIP_UNARY (operands[3]))
   28321              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28322              :                        STRIP_UNARY (operands[3])))) && 
   28323              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28324              : ( 1)))
   28325              :             return NULL;
   28326              :           return gen_split_2457 (insn, operands);
   28327              : 
   28328              :         case 3:
   28329              :           if (!((
   28330              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28331              : ((64 == 64 || TARGET_AVX512VL
   28332              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28333              :    && ix86_pre_reload_split ()
   28334              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28335              :                     STRIP_UNARY (operands[4]))
   28336              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28337              :                        STRIP_UNARY (operands[4]))
   28338              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28339              :                        STRIP_UNARY (operands[3]))
   28340              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28341              :                        STRIP_UNARY (operands[3])))) && 
   28342              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28343              : (TARGET_AVX512F)) && 
   28344              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28345              : ( 1)))
   28346              :             return NULL;
   28347              :           return gen_split_2484 (insn, operands);
   28348              : 
   28349              :         case 4:
   28350              :           if (!((
   28351              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28352              : ((32 == 64 || TARGET_AVX512VL
   28353              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28354              :    && ix86_pre_reload_split ()
   28355              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28356              :                     STRIP_UNARY (operands[4]))
   28357              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28358              :                        STRIP_UNARY (operands[4]))
   28359              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28360              :                        STRIP_UNARY (operands[3]))
   28361              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28362              :                        STRIP_UNARY (operands[3])))) && 
   28363              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28364              : (TARGET_AVX)) && 
   28365              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28366              : ( 1)))
   28367              :             return NULL;
   28368              :           return gen_split_2511 (insn, operands);
   28369              : 
   28370              :         case 5:
   28371              :           if (!(
   28372              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28373              : ((16 == 64 || TARGET_AVX512VL
   28374              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28375              :    && ix86_pre_reload_split ()
   28376              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28377              :                     STRIP_UNARY (operands[4]))
   28378              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28379              :                        STRIP_UNARY (operands[4]))
   28380              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28381              :                        STRIP_UNARY (operands[3]))
   28382              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28383              :                        STRIP_UNARY (operands[3])))) && 
   28384              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28385              : ( 1)))
   28386              :             return NULL;
   28387              :           return gen_split_2538 (insn, operands);
   28388              : 
   28389              :         case 6:
   28390              :           if (!((
   28391              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28392              : ((64 == 64 || TARGET_AVX512VL
   28393              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28394              :    && ix86_pre_reload_split ()
   28395              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28396              :                     STRIP_UNARY (operands[4]))
   28397              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28398              :                        STRIP_UNARY (operands[4]))
   28399              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28400              :                        STRIP_UNARY (operands[3]))
   28401              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28402              :                        STRIP_UNARY (operands[3])))) && 
   28403              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28404              : (TARGET_AVX512F)) && 
   28405              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28406              : ( 1)))
   28407              :             return NULL;
   28408              :           return gen_split_2565 (insn, operands);
   28409              : 
   28410              :         case 7:
   28411              :           if (!((
   28412              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28413              : ((32 == 64 || TARGET_AVX512VL
   28414              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28415              :    && ix86_pre_reload_split ()
   28416              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28417              :                     STRIP_UNARY (operands[4]))
   28418              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28419              :                        STRIP_UNARY (operands[4]))
   28420              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28421              :                        STRIP_UNARY (operands[3]))
   28422              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28423              :                        STRIP_UNARY (operands[3])))) && 
   28424              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28425              : (TARGET_AVX)) && 
   28426              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28427              : ( 1)))
   28428              :             return NULL;
   28429              :           return gen_split_2592 (insn, operands);
   28430              : 
   28431              :         case 8:
   28432              :           if (!(
   28433              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28434              : ((16 == 64 || TARGET_AVX512VL
   28435              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28436              :    && ix86_pre_reload_split ()
   28437              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28438              :                     STRIP_UNARY (operands[4]))
   28439              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28440              :                        STRIP_UNARY (operands[4]))
   28441              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28442              :                        STRIP_UNARY (operands[3]))
   28443              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28444              :                        STRIP_UNARY (operands[3])))) && 
   28445              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28446              : ( 1)))
   28447              :             return NULL;
   28448              :           return gen_split_2619 (insn, operands);
   28449              : 
   28450              :         case 9:
   28451              :           if (!((
   28452              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28453              : ((64 == 64 || TARGET_AVX512VL
   28454              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28455              :    && ix86_pre_reload_split ()
   28456              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28457              :                     STRIP_UNARY (operands[4]))
   28458              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28459              :                        STRIP_UNARY (operands[4]))
   28460              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28461              :                        STRIP_UNARY (operands[3]))
   28462              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28463              :                        STRIP_UNARY (operands[3])))) && 
   28464              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28465              : (TARGET_AVX512F)) && 
   28466              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28467              : ( 1)))
   28468              :             return NULL;
   28469              :           return gen_split_2646 (insn, operands);
   28470              : 
   28471              :         case 10:
   28472              :           if (!((
   28473              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28474              : ((32 == 64 || TARGET_AVX512VL
   28475              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28476              :    && ix86_pre_reload_split ()
   28477              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28478              :                     STRIP_UNARY (operands[4]))
   28479              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28480              :                        STRIP_UNARY (operands[4]))
   28481              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28482              :                        STRIP_UNARY (operands[3]))
   28483              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28484              :                        STRIP_UNARY (operands[3])))) && 
   28485              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28486              : (TARGET_AVX)) && 
   28487              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28488              : ( 1)))
   28489              :             return NULL;
   28490              :           return gen_split_2673 (insn, operands);
   28491              : 
   28492              :         case 11:
   28493              :           if (!(
   28494              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28495              : ((16 == 64 || TARGET_AVX512VL
   28496              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28497              :    && ix86_pre_reload_split ()
   28498              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28499              :                     STRIP_UNARY (operands[4]))
   28500              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28501              :                        STRIP_UNARY (operands[4]))
   28502              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28503              :                        STRIP_UNARY (operands[3]))
   28504              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28505              :                        STRIP_UNARY (operands[3])))) && 
   28506              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28507              : ( 1)))
   28508              :             return NULL;
   28509              :           return gen_split_2700 (insn, operands);
   28510              : 
   28511              :         default:
   28512              :           return NULL;
   28513              :         }
   28514              : 
   28515              :     case XOR:
   28516              :       switch (pattern537 (x2))
   28517              :         {
   28518              :         case 0:
   28519              :           if (!((
   28520              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28521              : ((64 == 64 || TARGET_AVX512VL
   28522              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28523              :    && ix86_pre_reload_split ()
   28524              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28525              :                     STRIP_UNARY (operands[4]))
   28526              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28527              :                        STRIP_UNARY (operands[4]))
   28528              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28529              :                        STRIP_UNARY (operands[3]))
   28530              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28531              :                        STRIP_UNARY (operands[3])))) && 
   28532              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28533              : (TARGET_AVX512F)) && 
   28534              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28535              : ( 1)))
   28536              :             return NULL;
   28537              :           return gen_split_2406 (insn, operands);
   28538              : 
   28539              :         case 1:
   28540              :           if (!((
   28541              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28542              : ((32 == 64 || TARGET_AVX512VL
   28543              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28544              :    && ix86_pre_reload_split ()
   28545              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28546              :                     STRIP_UNARY (operands[4]))
   28547              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28548              :                        STRIP_UNARY (operands[4]))
   28549              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28550              :                        STRIP_UNARY (operands[3]))
   28551              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28552              :                        STRIP_UNARY (operands[3])))) && 
   28553              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28554              : (TARGET_AVX)) && 
   28555              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28556              : ( 1)))
   28557              :             return NULL;
   28558              :           return gen_split_2433 (insn, operands);
   28559              : 
   28560              :         case 2:
   28561              :           if (!(
   28562              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28563              : ((16 == 64 || TARGET_AVX512VL
   28564              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28565              :    && ix86_pre_reload_split ()
   28566              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28567              :                     STRIP_UNARY (operands[4]))
   28568              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28569              :                        STRIP_UNARY (operands[4]))
   28570              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28571              :                        STRIP_UNARY (operands[3]))
   28572              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28573              :                        STRIP_UNARY (operands[3])))) && 
   28574              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28575              : ( 1)))
   28576              :             return NULL;
   28577              :           return gen_split_2460 (insn, operands);
   28578              : 
   28579              :         case 3:
   28580              :           if (!((
   28581              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28582              : ((64 == 64 || TARGET_AVX512VL
   28583              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28584              :    && ix86_pre_reload_split ()
   28585              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28586              :                     STRIP_UNARY (operands[4]))
   28587              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28588              :                        STRIP_UNARY (operands[4]))
   28589              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28590              :                        STRIP_UNARY (operands[3]))
   28591              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28592              :                        STRIP_UNARY (operands[3])))) && 
   28593              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28594              : (TARGET_AVX512F)) && 
   28595              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28596              : ( 1)))
   28597              :             return NULL;
   28598              :           return gen_split_2487 (insn, operands);
   28599              : 
   28600              :         case 4:
   28601              :           if (!((
   28602              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28603              : ((32 == 64 || TARGET_AVX512VL
   28604              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28605              :    && ix86_pre_reload_split ()
   28606              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28607              :                     STRIP_UNARY (operands[4]))
   28608              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28609              :                        STRIP_UNARY (operands[4]))
   28610              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28611              :                        STRIP_UNARY (operands[3]))
   28612              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28613              :                        STRIP_UNARY (operands[3])))) && 
   28614              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28615              : (TARGET_AVX)) && 
   28616              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28617              : ( 1)))
   28618              :             return NULL;
   28619              :           return gen_split_2514 (insn, operands);
   28620              : 
   28621              :         case 5:
   28622              :           if (!(
   28623              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28624              : ((16 == 64 || TARGET_AVX512VL
   28625              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28626              :    && ix86_pre_reload_split ()
   28627              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28628              :                     STRIP_UNARY (operands[4]))
   28629              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28630              :                        STRIP_UNARY (operands[4]))
   28631              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28632              :                        STRIP_UNARY (operands[3]))
   28633              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28634              :                        STRIP_UNARY (operands[3])))) && 
   28635              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28636              : ( 1)))
   28637              :             return NULL;
   28638              :           return gen_split_2541 (insn, operands);
   28639              : 
   28640              :         case 6:
   28641              :           if (!((
   28642              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28643              : ((64 == 64 || TARGET_AVX512VL
   28644              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28645              :    && ix86_pre_reload_split ()
   28646              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28647              :                     STRIP_UNARY (operands[4]))
   28648              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28649              :                        STRIP_UNARY (operands[4]))
   28650              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28651              :                        STRIP_UNARY (operands[3]))
   28652              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28653              :                        STRIP_UNARY (operands[3])))) && 
   28654              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28655              : (TARGET_AVX512F)) && 
   28656              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28657              : ( 1)))
   28658              :             return NULL;
   28659              :           return gen_split_2568 (insn, operands);
   28660              : 
   28661              :         case 7:
   28662              :           if (!((
   28663              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28664              : ((32 == 64 || TARGET_AVX512VL
   28665              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28666              :    && ix86_pre_reload_split ()
   28667              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28668              :                     STRIP_UNARY (operands[4]))
   28669              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28670              :                        STRIP_UNARY (operands[4]))
   28671              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28672              :                        STRIP_UNARY (operands[3]))
   28673              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28674              :                        STRIP_UNARY (operands[3])))) && 
   28675              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28676              : (TARGET_AVX)) && 
   28677              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28678              : ( 1)))
   28679              :             return NULL;
   28680              :           return gen_split_2595 (insn, operands);
   28681              : 
   28682              :         case 8:
   28683              :           if (!(
   28684              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28685              : ((16 == 64 || TARGET_AVX512VL
   28686              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28687              :    && ix86_pre_reload_split ()
   28688              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28689              :                     STRIP_UNARY (operands[4]))
   28690              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28691              :                        STRIP_UNARY (operands[4]))
   28692              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28693              :                        STRIP_UNARY (operands[3]))
   28694              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28695              :                        STRIP_UNARY (operands[3])))) && 
   28696              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28697              : ( 1)))
   28698              :             return NULL;
   28699              :           return gen_split_2622 (insn, operands);
   28700              : 
   28701              :         case 9:
   28702              :           if (!((
   28703              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28704              : ((64 == 64 || TARGET_AVX512VL
   28705              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28706              :    && ix86_pre_reload_split ()
   28707              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28708              :                     STRIP_UNARY (operands[4]))
   28709              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28710              :                        STRIP_UNARY (operands[4]))
   28711              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28712              :                        STRIP_UNARY (operands[3]))
   28713              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28714              :                        STRIP_UNARY (operands[3])))) && 
   28715              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28716              : (TARGET_AVX512F)) && 
   28717              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28718              : ( 1)))
   28719              :             return NULL;
   28720              :           return gen_split_2649 (insn, operands);
   28721              : 
   28722              :         case 10:
   28723              :           if (!((
   28724              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28725              : ((32 == 64 || TARGET_AVX512VL
   28726              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28727              :    && ix86_pre_reload_split ()
   28728              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28729              :                     STRIP_UNARY (operands[4]))
   28730              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28731              :                        STRIP_UNARY (operands[4]))
   28732              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28733              :                        STRIP_UNARY (operands[3]))
   28734              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28735              :                        STRIP_UNARY (operands[3])))) && 
   28736              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28737              : (TARGET_AVX)) && 
   28738              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28739              : ( 1)))
   28740              :             return NULL;
   28741              :           return gen_split_2676 (insn, operands);
   28742              : 
   28743              :         case 11:
   28744              :           if (!(
   28745              : #line 14187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28746              : ((16 == 64 || TARGET_AVX512VL
   28747              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28748              :    && ix86_pre_reload_split ()
   28749              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28750              :                     STRIP_UNARY (operands[4]))
   28751              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28752              :                        STRIP_UNARY (operands[4]))
   28753              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28754              :                        STRIP_UNARY (operands[3]))
   28755              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28756              :                        STRIP_UNARY (operands[3])))) && 
   28757              : #line 14199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28758              : ( 1)))
   28759              :             return NULL;
   28760              :           return gen_split_2703 (insn, operands);
   28761              : 
   28762              :         default:
   28763              :           return NULL;
   28764              :         }
   28765              : 
   28766              :     default:
   28767              :       return NULL;
   28768              :     }
   28769              : }
   28770              : 
   28771              :  rtx_insn *
   28772              : split_75 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   28773              : {
   28774              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   28775              :   rtx x2, x3, x4, x5, x6, x7;
   28776              :   rtx_insn *res ATTRIBUTE_UNUSED;
   28777              :   x2 = XEXP (x1, 1);
   28778              :   x3 = XEXP (x2, 0);
   28779              :   x4 = XEXP (x3, 1);
   28780              :   if (!rtx_equal_p (x4, operands[1]))
   28781              :     return NULL;
   28782              :   x5 = XEXP (x2, 1);
   28783              :   if (XVECLEN (x5, 0) != 2)
   28784              :     return NULL;
   28785              :   x6 = XVECEXP (x5, 0, 0);
   28786              :   if (GET_CODE (x6) != CONST_INT
   28787              :       || GET_MODE (x2) != E_V2DFmode
   28788              :       || GET_MODE (x3) != E_V4DFmode)
   28789              :     return NULL;
   28790              :   if (XWINT (x6, 0) == 0L)
   28791              :     {
   28792              :       x7 = XVECEXP (x5, 0, 1);
   28793              :       if (x7 == const_int_rtx[MAX_SAVED_CONST_INT + 2]
   28794              :           && memory_operand (operands[0], E_V2DFmode)
   28795              :           && register_operand (operands[1], E_V2DFmode)
   28796              :           && 
   28797              : #line 13904 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28798              : (TARGET_SSE3 && reload_completed))
   28799              :         return gen_split_1667 (insn, operands);
   28800              :     }
   28801              :   if (!register_operand (operands[0], E_V2DFmode)
   28802              :       || !memory_operand (operands[1], E_V2DFmode))
   28803              :     return NULL;
   28804              :   operands[2] = x6;
   28805              :   if (!const_0_to_1_operand (operands[2], E_SImode))
   28806              :     return NULL;
   28807              :   x7 = XVECEXP (x5, 0, 1);
   28808              :   operands[3] = x7;
   28809              :   if (!const_int_operand (operands[3], E_SImode)
   28810              :       || !
   28811              : #line 13922 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28812              : (TARGET_SSE3 && INTVAL (operands[2]) + 2 == INTVAL (operands[3])))
   28813              :     return NULL;
   28814              :   return gen_split_1668 (insn, operands);
   28815              : }
   28816              : 
   28817              :  rtx_insn *
   28818              : split_77 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   28819              : {
   28820              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   28821              :   rtx x2, x3;
   28822              :   rtx_insn *res ATTRIBUTE_UNUSED;
   28823              :   x2 = XEXP (x1, 1);
   28824              :   x3 = XEXP (x2, 1);
   28825              :   if (pattern845 (x3) != 0)
   28826              :     return NULL;
   28827              :   switch (GET_MODE (operands[0]))
   28828              :     {
   28829              :     case E_V4SFmode:
   28830              :       if (!nonimmediate_operand (operands[0], E_V4SFmode)
   28831              :           || GET_MODE (x2) != E_V4SFmode)
   28832              :         return NULL;
   28833              :       switch (GET_MODE (operands[1]))
   28834              :         {
   28835              :         case E_V16SFmode:
   28836              :           if (!register_operand (operands[1], E_V16SFmode)
   28837              :               || !
   28838              : #line 12868 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28839              : (TARGET_AVX512F
   28840              :    && reload_completed
   28841              :    && (TARGET_AVX512VL
   28842              :        || REG_P (operands[0])
   28843              :        || !EXT_REX_SSE_REG_P (operands[1]))))
   28844              :             return NULL;
   28845              :           return gen_split_1643 (insn, operands);
   28846              : 
   28847              :         case E_V8SFmode:
   28848              :           if (!nonimmediate_operand (operands[1], E_V8SFmode)
   28849              :               || !
   28850              : #line 13267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28851              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))
   28852              :    && reload_completed))
   28853              :             return NULL;
   28854              :           return gen_split_1652 (insn, operands);
   28855              : 
   28856              :         default:
   28857              :           return NULL;
   28858              :         }
   28859              : 
   28860              :     case E_V4SImode:
   28861              :       if (!nonimmediate_operand (operands[0], E_V4SImode)
   28862              :           || GET_MODE (x2) != E_V4SImode)
   28863              :         return NULL;
   28864              :       switch (GET_MODE (operands[1]))
   28865              :         {
   28866              :         case E_V16SImode:
   28867              :           if (!register_operand (operands[1], E_V16SImode)
   28868              :               || !
   28869              : #line 12868 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28870              : (TARGET_AVX512F
   28871              :    && reload_completed
   28872              :    && (TARGET_AVX512VL
   28873              :        || REG_P (operands[0])
   28874              :        || !EXT_REX_SSE_REG_P (operands[1]))))
   28875              :             return NULL;
   28876              :           return gen_split_1644 (insn, operands);
   28877              : 
   28878              :         case E_V8SImode:
   28879              :           if (!nonimmediate_operand (operands[1], E_V8SImode)
   28880              :               || !
   28881              : #line 13267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28882              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))
   28883              :    && reload_completed))
   28884              :             return NULL;
   28885              :           return gen_split_1651 (insn, operands);
   28886              : 
   28887              :         default:
   28888              :           return NULL;
   28889              :         }
   28890              : 
   28891              :     case E_V4DFmode:
   28892              :       if (!nonimmediate_operand (operands[0], E_V4DFmode)
   28893              :           || GET_MODE (x2) != E_V4DFmode
   28894              :           || !nonimmediate_operand (operands[1], E_V8DFmode)
   28895              :           || !
   28896              : #line 12931 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28897              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))
   28898              :    && reload_completed
   28899              :    && (TARGET_AVX512VL
   28900              :        || (REG_P (operands[0]) && !EXT_REX_SSE_REG_P (operands[1])))))
   28901              :         return NULL;
   28902              :       return gen_split_1645 (insn, operands);
   28903              : 
   28904              :     case E_V4DImode:
   28905              :       if (!nonimmediate_operand (operands[0], E_V4DImode)
   28906              :           || GET_MODE (x2) != E_V4DImode
   28907              :           || !nonimmediate_operand (operands[1], E_V8DImode)
   28908              :           || !
   28909              : #line 12931 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28910              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))
   28911              :    && reload_completed
   28912              :    && (TARGET_AVX512VL
   28913              :        || (REG_P (operands[0]) && !EXT_REX_SSE_REG_P (operands[1])))))
   28914              :         return NULL;
   28915              :       return gen_split_1646 (insn, operands);
   28916              : 
   28917              :     default:
   28918              :       return NULL;
   28919              :     }
   28920              : }
   28921              : 
   28922              :  rtx_insn *
   28923              : split_79 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   28924              : {
   28925              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   28926              :   rtx x2, x3, x4, x5;
   28927              :   rtx_insn *res ATTRIBUTE_UNUSED;
   28928              :   x2 = XEXP (x1, 1);
   28929              :   x3 = XEXP (x2, 1);
   28930              :   switch (XVECLEN (x3, 0))
   28931              :     {
   28932              :     case 2:
   28933              :       res = split_76 (x1, insn);
   28934              :       if (res != NULL_RTX)
   28935              :         return res;
   28936              :       break;
   28937              : 
   28938              :     case 4:
   28939              :       res = split_77 (x1, insn);
   28940              :       if (res != NULL_RTX)
   28941              :         return res;
   28942              :       break;
   28943              : 
   28944              :     case 8:
   28945              :       res = split_78 (x1, insn);
   28946              :       if (res != NULL_RTX)
   28947              :         return res;
   28948              :       break;
   28949              : 
   28950              :     case 16:
   28951              :       if (pattern846 (x3, 
   28952              : 6, 
   28953              : 5, 
   28954              : 4) == 0
   28955              :           && pattern1514 (x3, 
   28956              : 11, 
   28957              : 10, 
   28958              : 9, 
   28959              : 8, 
   28960              : 7) == 0)
   28961              :         {
   28962              :           switch (pattern1804 (x2))
   28963              :             {
   28964              :             case 0:
   28965              :               if ((
   28966              : #line 13350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28967              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   28968              : #line 13359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28969              : ( reload_completed
   28970              :    && (TARGET_AVX512VL
   28971              :        || REG_P (operands[0])
   28972              :        || !EXT_REX_SSE_REG_P (operands[1])))))
   28973              :                 return gen_split_1653 (insn, operands);
   28974              :               break;
   28975              : 
   28976              :             case 1:
   28977              :               if ((
   28978              : #line 13350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28979              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   28980              : #line 13359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28981              : ( reload_completed
   28982              :    && (TARGET_AVX512VL
   28983              :        || REG_P (operands[0])
   28984              :        || !EXT_REX_SSE_REG_P (operands[1])))))
   28985              :                 return gen_split_1654 (insn, operands);
   28986              :               break;
   28987              : 
   28988              :             case 2:
   28989              :               if ((
   28990              : #line 13350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28991              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   28992              : #line 13359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28993              : ( reload_completed
   28994              :    && (TARGET_AVX512VL
   28995              :        || REG_P (operands[0])
   28996              :        || !EXT_REX_SSE_REG_P (operands[1])))))
   28997              :                 return gen_split_1655 (insn, operands);
   28998              :               break;
   28999              : 
   29000              :             case 3:
   29001              :               if ((
   29002              : #line 13520 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29003              : (TARGET_AVX && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   29004              : #line 13522 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29005              : ( reload_completed)))
   29006              :                 return gen_split_1660 (insn, operands);
   29007              :               break;
   29008              : 
   29009              :             default:
   29010              :               break;
   29011              :             }
   29012              :         }
   29013              :       break;
   29014              : 
   29015              :     case 32:
   29016              :       if (pattern848 (x3, 
   29017              : 11, 
   29018              : 10, 
   29019              : 9, 
   29020              : 8) == 0
   29021              :           && pattern1711 (x3, 
   29022              : 15, 
   29023              : 14, 
   29024              : 13, 
   29025              : 12, 
   29026              : 16) == 0
   29027              :           && pattern1831 (x3, 
   29028              : 21, 
   29029              : 20, 
   29030              : 19, 
   29031              : 18, 
   29032              : 17) == 0
   29033              :           && pattern1873 (x3, 
   29034              : 26, 
   29035              : 25, 
   29036              : 24, 
   29037              : 23, 
   29038              : 22) == 0)
   29039              :         {
   29040              :           x4 = XVECEXP (x3, 0, 27);
   29041              :           if (x4 == const_int_rtx[MAX_SAVED_CONST_INT + 27]
   29042              :               && pattern1891 (x3, 
   29043              : 31, 
   29044              : 30, 
   29045              : 29, 
   29046              : 28) == 0
   29047              :               && nonimmediate_operand (operands[0], E_V32QImode)
   29048              :               && GET_MODE (x2) == E_V32QImode
   29049              :               && nonimmediate_operand (operands[1], E_V64QImode)
   29050              :               && (
   29051              : #line 13452 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29052              : (TARGET_AVX512F
   29053              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   29054              : #line 13462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29055              : ( reload_completed
   29056              :    && (TARGET_AVX512VL
   29057              :        || REG_P (operands[0])
   29058              :        || !EXT_REX_SSE_REG_P (operands[1])))))
   29059              :             return gen_split_1659 (insn, operands);
   29060              :         }
   29061              :       break;
   29062              : 
   29063              :     default:
   29064              :       break;
   29065              :     }
   29066              :   if (XVECLEN (x3, 0) < 1)
   29067              :     return NULL;
   29068              :   operands[2] = x3;
   29069              :   if (!avx_vbroadcast_operand (operands[2], E_VOIDmode))
   29070              :     return NULL;
   29071              :   x5 = XVECEXP (x3, 0, 0);
   29072              :   operands[3] = x5;
   29073              :   if (!const_int_operand (operands[3], E_VOIDmode))
   29074              :     return NULL;
   29075              :   switch (GET_MODE (operands[0]))
   29076              :     {
   29077              :     case E_V8SFmode:
   29078              :       if (!register_operand (operands[0], E_V8SFmode)
   29079              :           || GET_MODE (x2) != E_V8SFmode
   29080              :           || !nonimmediate_operand (operands[1], E_V8SFmode)
   29081              :           || !(
   29082              : #line 28078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29083              : (TARGET_AVX
   29084              :    && (V8SFmode != V4DFmode || !TARGET_AVX2 || operands[3] == const0_rtx)) && 
   29085              : #line 28081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29086              : ( reload_completed)))
   29087              :         return NULL;
   29088              :       return gen_split_3826 (insn, operands);
   29089              : 
   29090              :     case E_V4DFmode:
   29091              :       if (!register_operand (operands[0], E_V4DFmode)
   29092              :           || GET_MODE (x2) != E_V4DFmode
   29093              :           || !nonimmediate_operand (operands[1], E_V4DFmode)
   29094              :           || !(
   29095              : #line 28078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29096              : (TARGET_AVX
   29097              :    && (V4DFmode != V4DFmode || !TARGET_AVX2 || operands[3] == const0_rtx)) && 
   29098              : #line 28081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29099              : ( reload_completed)))
   29100              :         return NULL;
   29101              :       return gen_split_3827 (insn, operands);
   29102              : 
   29103              :     default:
   29104              :       return NULL;
   29105              :     }
   29106              : }
   29107              : 
   29108              :  rtx_insn *
   29109              : split_83 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   29110              : {
   29111              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   29112              :   rtx x2, x3, x4, x5, x6;
   29113              :   rtx_insn *res ATTRIBUTE_UNUSED;
   29114              :   x2 = XEXP (x1, 1);
   29115              :   x3 = XEXP (x2, 1);
   29116              :   if (GET_CODE (x3) != PARALLEL)
   29117              :     return NULL;
   29118              :   x4 = XEXP (x2, 0);
   29119              :   switch (GET_CODE (x4))
   29120              :     {
   29121              :     case VEC_CONCAT:
   29122              :       x5 = XEXP (x4, 0);
   29123              :       switch (GET_CODE (x5))
   29124              :         {
   29125              :         case MINUS:
   29126              :           switch (pattern732 (x2, 
   29127              : PLUS))
   29128              :             {
   29129              :             case 0:
   29130              :               if (pattern1683 (x4, 
   29131              : E_V8SFmode, 
   29132              : E_V16SFmode) != 0
   29133              :                   || !(
   29134              : #line 3659 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29135              : (TARGET_SSE3
   29136              :    && can_create_pseudo_p ()
   29137              :    && ((rtx_equal_p (operands[1], operands[3])
   29138              :         && rtx_equal_p (operands[2], operands[4]))
   29139              :        || (rtx_equal_p (operands[1], operands[4])
   29140              :            && rtx_equal_p (operands[2], operands[3])))) && 
   29141              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29142              : (TARGET_AVX)))
   29143              :                 return NULL;
   29144              :               return gen_split_1366 (insn, operands);
   29145              : 
   29146              :             case 1:
   29147              :               if (pattern1683 (x4, 
   29148              : E_V4SFmode, 
   29149              : E_V8SFmode) != 0
   29150              :                   || !
   29151              : #line 3659 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29152              : (TARGET_SSE3
   29153              :    && can_create_pseudo_p ()
   29154              :    && ((rtx_equal_p (operands[1], operands[3])
   29155              :         && rtx_equal_p (operands[2], operands[4]))
   29156              :        || (rtx_equal_p (operands[1], operands[4])
   29157              :            && rtx_equal_p (operands[2], operands[3])))))
   29158              :                 return NULL;
   29159              :               return gen_split_1367 (insn, operands);
   29160              : 
   29161              :             case 2:
   29162              :               if (pattern1683 (x4, 
   29163              : E_V4DFmode, 
   29164              : E_V8DFmode) != 0
   29165              :                   || !(
   29166              : #line 3659 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29167              : (TARGET_SSE3
   29168              :    && can_create_pseudo_p ()
   29169              :    && ((rtx_equal_p (operands[1], operands[3])
   29170              :         && rtx_equal_p (operands[2], operands[4]))
   29171              :        || (rtx_equal_p (operands[1], operands[4])
   29172              :            && rtx_equal_p (operands[2], operands[3])))) && 
   29173              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29174              : (TARGET_AVX)))
   29175              :                 return NULL;
   29176              :               return gen_split_1368 (insn, operands);
   29177              : 
   29178              :             case 3:
   29179              :               if (pattern1683 (x4, 
   29180              : E_V2DFmode, 
   29181              : E_V4DFmode) != 0
   29182              :                   || !(
   29183              : #line 3659 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29184              : (TARGET_SSE3
   29185              :    && can_create_pseudo_p ()
   29186              :    && ((rtx_equal_p (operands[1], operands[3])
   29187              :         && rtx_equal_p (operands[2], operands[4]))
   29188              :        || (rtx_equal_p (operands[1], operands[4])
   29189              :            && rtx_equal_p (operands[2], operands[3])))) && 
   29190              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29191              : (TARGET_SSE2)))
   29192              :                 return NULL;
   29193              :               return gen_split_1369 (insn, operands);
   29194              : 
   29195              :             default:
   29196              :               return NULL;
   29197              :             }
   29198              : 
   29199              :         case PLUS:
   29200              :           switch (pattern732 (x2, 
   29201              : MINUS))
   29202              :             {
   29203              :             case 0:
   29204              :               if (pattern1684 (x4, 
   29205              : E_V8SFmode, 
   29206              : E_V16SFmode) != 0
   29207              :                   || !(
   29208              : #line 3693 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29209              : (TARGET_SSE3
   29210              :    && can_create_pseudo_p ()
   29211              :    && ((rtx_equal_p (operands[1], operands[3])
   29212              :         && rtx_equal_p (operands[2], operands[4]))
   29213              :        || (rtx_equal_p (operands[1], operands[4])
   29214              :            && rtx_equal_p (operands[2], operands[3])))) && 
   29215              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29216              : (TARGET_AVX)))
   29217              :                 return NULL;
   29218              :               return gen_split_1370 (insn, operands);
   29219              : 
   29220              :             case 1:
   29221              :               if (pattern1684 (x4, 
   29222              : E_V4SFmode, 
   29223              : E_V8SFmode) != 0
   29224              :                   || !
   29225              : #line 3693 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29226              : (TARGET_SSE3
   29227              :    && can_create_pseudo_p ()
   29228              :    && ((rtx_equal_p (operands[1], operands[3])
   29229              :         && rtx_equal_p (operands[2], operands[4]))
   29230              :        || (rtx_equal_p (operands[1], operands[4])
   29231              :            && rtx_equal_p (operands[2], operands[3])))))
   29232              :                 return NULL;
   29233              :               return gen_split_1371 (insn, operands);
   29234              : 
   29235              :             case 2:
   29236              :               if (pattern1684 (x4, 
   29237              : E_V4DFmode, 
   29238              : E_V8DFmode) != 0
   29239              :                   || !(
   29240              : #line 3693 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29241              : (TARGET_SSE3
   29242              :    && can_create_pseudo_p ()
   29243              :    && ((rtx_equal_p (operands[1], operands[3])
   29244              :         && rtx_equal_p (operands[2], operands[4]))
   29245              :        || (rtx_equal_p (operands[1], operands[4])
   29246              :            && rtx_equal_p (operands[2], operands[3])))) && 
   29247              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29248              : (TARGET_AVX)))
   29249              :                 return NULL;
   29250              :               return gen_split_1372 (insn, operands);
   29251              : 
   29252              :             case 3:
   29253              :               if (pattern1684 (x4, 
   29254              : E_V2DFmode, 
   29255              : E_V4DFmode) != 0
   29256              :                   || !(
   29257              : #line 3693 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29258              : (TARGET_SSE3
   29259              :    && can_create_pseudo_p ()
   29260              :    && ((rtx_equal_p (operands[1], operands[3])
   29261              :         && rtx_equal_p (operands[2], operands[4]))
   29262              :        || (rtx_equal_p (operands[1], operands[4])
   29263              :            && rtx_equal_p (operands[2], operands[3])))) && 
   29264              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29265              : (TARGET_SSE2)))
   29266              :                 return NULL;
   29267              :               return gen_split_1373 (insn, operands);
   29268              : 
   29269              :             default:
   29270              :               return NULL;
   29271              :             }
   29272              : 
   29273              :         case REG:
   29274              :         case SUBREG:
   29275              :         case MEM:
   29276              :           operands[1] = x5;
   29277              :           x6 = XEXP (x4, 1);
   29278              :           switch (GET_CODE (x6))
   29279              :             {
   29280              :             case REG:
   29281              :             case SUBREG:
   29282              :             case MEM:
   29283              :               res = split_75 (x1, insn);
   29284              :               if (res != NULL_RTX)
   29285              :                 return res;
   29286              :               break;
   29287              : 
   29288              :             case CONST_INT:
   29289              :             case CONST_DOUBLE:
   29290              :             case CONST_VECTOR:
   29291              :               switch (pattern810 (x2))
   29292              :                 {
   29293              :                 case 0:
   29294              :                   if ((
   29295              : #line 24481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29296              : (TARGET_AVX2) && 
   29297              : #line 24483 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29298              : ( reload_completed)))
   29299              :                     return gen_split_3600 (insn, operands);
   29300              :                   break;
   29301              : 
   29302              :                 case 1:
   29303              :                   if ((
   29304              : #line 24534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29305              : (TARGET_AVX512BW) && 
   29306              : #line 24536 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29307              : ( reload_completed)))
   29308              :                     return gen_split_3604 (insn, operands);
   29309              :                   break;
   29310              : 
   29311              :                 case 2:
   29312              :                   if ((
   29313              : #line 24656 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29314              : (TARGET_SSE4_1) && 
   29315              : #line 24658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29316              : ( reload_completed)))
   29317              :                     return gen_split_3612 (insn, operands);
   29318              :                   break;
   29319              : 
   29320              :                 case 3:
   29321              :                   if ((
   29322              : #line 24960 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29323              : (TARGET_AVX512F) && 
   29324              : #line 24962 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29325              : ( reload_completed)))
   29326              :                     return gen_split_3626 (insn, operands);
   29327              :                   break;
   29328              : 
   29329              :                 case 4:
   29330              :                   if ((
   29331              : #line 25014 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29332              : (TARGET_AVX2) && 
   29333              : #line 25016 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29334              : ( reload_completed)))
   29335              :                     return gen_split_3630 (insn, operands);
   29336              :                   break;
   29337              : 
   29338              :                 case 5:
   29339              :                   if ((
   29340              : #line 25144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29341              : (TARGET_SSE4_1) && 
   29342              : #line 25146 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29343              : ( reload_completed)))
   29344              :                     return gen_split_3638 (insn, operands);
   29345              :                   break;
   29346              : 
   29347              :                 case 6:
   29348              :                   if (pmovzx_parallel (operands[3], E_VOIDmode)
   29349              :                       && (
   29350              : #line 25649 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29351              : (TARGET_AVX512F) && 
   29352              : #line 25651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29353              : ( reload_completed)))
   29354              :                     return gen_split_3661 (insn, operands);
   29355              :                   if (movq_parallel (operands[3], E_VOIDmode)
   29356              :                       && ((
   29357              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29358              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29359              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29360              : (TARGET_AVX512F)) && 
   29361              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29362              : ( 1)))
   29363              :                     return gen_split_3884 (insn, operands);
   29364              :                   break;
   29365              : 
   29366              :                 case 7:
   29367              :                   if (pmovzx_parallel (operands[3], E_VOIDmode)
   29368              :                       && (
   29369              : #line 25701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29370              : (TARGET_AVX2) && 
   29371              : #line 25703 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29372              : ( reload_completed)))
   29373              :                     return gen_split_3663 (insn, operands);
   29374              :                   if (movq_parallel (operands[3], E_VOIDmode)
   29375              :                       && ((
   29376              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29377              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29378              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29379              : (TARGET_AVX)) && 
   29380              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29381              : ( 1)))
   29382              :                     return gen_split_3885 (insn, operands);
   29383              :                   break;
   29384              : 
   29385              :                 case 8:
   29386              :                   if (vector_operand (operands[1], E_V4SImode)
   29387              :                       && pmovzx_parallel (operands[3], E_VOIDmode)
   29388              :                       && (
   29389              : #line 25809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29390              : (TARGET_SSE4_1) && 
   29391              : #line 25811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29392              : ( reload_completed)))
   29393              :                     return gen_split_3669 (insn, operands);
   29394              :                   if (nonimmediate_operand (operands[1], E_V4SImode)
   29395              :                       && movq_parallel (operands[3], E_VOIDmode)
   29396              :                       && (
   29397              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29398              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29399              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29400              : ( 1)))
   29401              :                     return gen_split_3886 (insn, operands);
   29402              :                   break;
   29403              : 
   29404              :                 case 9:
   29405              :                   if (((
   29406              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29407              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29408              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29409              : (TARGET_AVX512F)) && 
   29410              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29411              : ( 1)))
   29412              :                     return gen_split_3887 (insn, operands);
   29413              :                   break;
   29414              : 
   29415              :                 case 10:
   29416              :                   if (((
   29417              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29418              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29419              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29420              : (TARGET_AVX)) && 
   29421              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29422              : ( 1)))
   29423              :                     return gen_split_3888 (insn, operands);
   29424              :                   break;
   29425              : 
   29426              :                 case 11:
   29427              :                   if ((
   29428              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29429              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29430              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29431              : ( 1)))
   29432              :                     return gen_split_3889 (insn, operands);
   29433              :                   break;
   29434              : 
   29435              :                 case 12:
   29436              :                   if (((
   29437              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29438              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29439              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29440              : (TARGET_AVX512F)) && 
   29441              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29442              : ( 1)))
   29443              :                     return gen_split_3890 (insn, operands);
   29444              :                   break;
   29445              : 
   29446              :                 case 13:
   29447              :                   if (((
   29448              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29449              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29450              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29451              : (TARGET_AVX)) && 
   29452              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29453              : ( 1)))
   29454              :                     return gen_split_3891 (insn, operands);
   29455              :                   break;
   29456              : 
   29457              :                 case 14:
   29458              :                   if ((
   29459              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29460              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29461              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29462              : ( 1)))
   29463              :                     return gen_split_3892 (insn, operands);
   29464              :                   break;
   29465              : 
   29466              :                 case 15:
   29467              :                   if (((
   29468              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29469              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29470              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29471              : (TARGET_AVX512F)) && 
   29472              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29473              : ( 1)))
   29474              :                     return gen_split_3893 (insn, operands);
   29475              :                   break;
   29476              : 
   29477              :                 case 16:
   29478              :                   if (((
   29479              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29480              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29481              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29482              : (TARGET_AVX)) && 
   29483              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29484              : ( 1)))
   29485              :                     return gen_split_3894 (insn, operands);
   29486              :                   break;
   29487              : 
   29488              :                 case 17:
   29489              :                   if ((
   29490              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29491              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29492              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29493              : ( 1)))
   29494              :                     return gen_split_3895 (insn, operands);
   29495              :                   break;
   29496              : 
   29497              :                 case 18:
   29498              :                   if (((
   29499              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29500              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29501              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29502              : (TARGET_AVX512F)) && 
   29503              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29504              : ( 1)))
   29505              :                     return gen_split_3896 (insn, operands);
   29506              :                   break;
   29507              : 
   29508              :                 case 19:
   29509              :                   if (((
   29510              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29511              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29512              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29513              : (TARGET_AVX)) && 
   29514              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29515              : ( 1)))
   29516              :                     return gen_split_3897 (insn, operands);
   29517              :                   break;
   29518              : 
   29519              :                 case 20:
   29520              :                   if ((
   29521              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29522              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29523              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29524              : ( 1)))
   29525              :                     return gen_split_3898 (insn, operands);
   29526              :                   break;
   29527              : 
   29528              :                 case 21:
   29529              :                   if (((
   29530              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29531              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29532              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29533              : (TARGET_AVX512F)) && 
   29534              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29535              : ( 1)))
   29536              :                     return gen_split_3899 (insn, operands);
   29537              :                   break;
   29538              : 
   29539              :                 case 22:
   29540              :                   if (((
   29541              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29542              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29543              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29544              : (TARGET_AVX)) && 
   29545              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29546              : ( 1)))
   29547              :                     return gen_split_3900 (insn, operands);
   29548              :                   break;
   29549              : 
   29550              :                 case 23:
   29551              :                   if (((
   29552              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29553              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29554              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29555              : (TARGET_SSE2)) && 
   29556              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29557              : ( 1)))
   29558              :                     return gen_split_3901 (insn, operands);
   29559              :                   break;
   29560              : 
   29561              :                 default:
   29562              :                   break;
   29563              :                 }
   29564              :               break;
   29565              : 
   29566              :             default:
   29567              :               break;
   29568              :             }
   29569              :           if (XVECLEN (x3, 0) >= 1)
   29570              :             {
   29571              :               switch (pattern812 (x2))
   29572              :                 {
   29573              :                 case 0:
   29574              :                   if ((
   29575              : #line 28719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29576              : (TARGET_AVX && ix86_pre_reload_split ()) && 
   29577              : #line 28721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29578              : ( 1)))
   29579              :                     return gen_split_3843 (insn, operands);
   29580              :                   break;
   29581              : 
   29582              :                 case 1:
   29583              :                   if ((
   29584              : #line 28719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29585              : (TARGET_AVX && ix86_pre_reload_split ()) && 
   29586              : #line 28721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29587              : ( 1)))
   29588              :                     return gen_split_3844 (insn, operands);
   29589              :                   break;
   29590              : 
   29591              :                 case 2:
   29592              :                   if ((
   29593              : #line 28719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29594              : (TARGET_AVX && ix86_pre_reload_split ()) && 
   29595              : #line 28721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29596              : ( 1)))
   29597              :                     return gen_split_3845 (insn, operands);
   29598              :                   break;
   29599              : 
   29600              :                 case 3:
   29601              :                   if ((
   29602              : #line 28719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29603              : (TARGET_AVX && ix86_pre_reload_split ()) && 
   29604              : #line 28721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29605              : ( 1)))
   29606              :                     return gen_split_3846 (insn, operands);
   29607              :                   break;
   29608              : 
   29609              :                 case 4:
   29610              :                   if ((
   29611              : #line 28719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29612              : (TARGET_AVX && ix86_pre_reload_split ()) && 
   29613              : #line 28721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29614              : ( 1)))
   29615              :                     return gen_split_3847 (insn, operands);
   29616              :                   break;
   29617              : 
   29618              :                 case 5:
   29619              :                   if ((
   29620              : #line 28719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29621              : (TARGET_AVX && ix86_pre_reload_split ()) && 
   29622              : #line 28721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29623              : ( 1)))
   29624              :                     return gen_split_3848 (insn, operands);
   29625              :                   break;
   29626              : 
   29627              :                 case 6:
   29628              :                   if ((
   29629              : #line 28719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29630              : (TARGET_AVX && ix86_pre_reload_split ()) && 
   29631              : #line 28721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29632              : ( 1)))
   29633              :                     return gen_split_3849 (insn, operands);
   29634              :                   break;
   29635              : 
   29636              :                 case 7:
   29637              :                   if ((
   29638              : #line 28719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29639              : (TARGET_AVX && ix86_pre_reload_split ()) && 
   29640              : #line 28721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29641              : ( 1)))
   29642              :                     return gen_split_3850 (insn, operands);
   29643              :                   break;
   29644              : 
   29645              :                 default:
   29646              :                   break;
   29647              :                 }
   29648              :             }
   29649              :           if (XVECLEN (x3, 0) < 1)
   29650              :             return NULL;
   29651              :           operands[4] = x3;
   29652              :           switch (pattern813 (x2))
   29653              :             {
   29654              :             case 0:
   29655              :               if ((
   29656              : #line 24501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29657              : (TARGET_AVX2) && 
   29658              : #line 24503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29659              : ( reload_completed)))
   29660              :                 return gen_split_3601 (insn, operands);
   29661              :               break;
   29662              : 
   29663              :             case 1:
   29664              :               if ((
   29665              : #line 24501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29666              : (TARGET_AVX2) && 
   29667              : #line 24503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29668              : ( reload_completed)))
   29669              :                 return gen_split_3602 (insn, operands);
   29670              :               break;
   29671              : 
   29672              :             case 2:
   29673              :               if ((
   29674              : #line 24501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29675              : (TARGET_AVX2) && 
   29676              : #line 24503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29677              : ( reload_completed)))
   29678              :                 return gen_split_3603 (insn, operands);
   29679              :               break;
   29680              : 
   29681              :             case 3:
   29682              :               if ((
   29683              : #line 24554 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29684              : (TARGET_AVX512BW) && 
   29685              : #line 24556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29686              : ( reload_completed)))
   29687              :                 return gen_split_3605 (insn, operands);
   29688              :               break;
   29689              : 
   29690              :             case 4:
   29691              :               if ((
   29692              : #line 24554 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29693              : (TARGET_AVX512BW) && 
   29694              : #line 24556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29695              : ( reload_completed)))
   29696              :                 return gen_split_3606 (insn, operands);
   29697              :               break;
   29698              : 
   29699              :             case 5:
   29700              :               if ((
   29701              : #line 24554 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29702              : (TARGET_AVX512BW) && 
   29703              : #line 24556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29704              : ( reload_completed)))
   29705              :                 return gen_split_3607 (insn, operands);
   29706              :               break;
   29707              : 
   29708              :             case 6:
   29709              :               if ((
   29710              : #line 24691 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29711              : (TARGET_SSE4_1) && 
   29712              : #line 24693 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29713              : ( reload_completed)))
   29714              :                 return gen_split_3613 (insn, operands);
   29715              :               break;
   29716              : 
   29717              :             case 7:
   29718              :               if ((
   29719              : #line 24691 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29720              : (TARGET_SSE4_1) && 
   29721              : #line 24693 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29722              : ( reload_completed)))
   29723              :                 return gen_split_3614 (insn, operands);
   29724              :               break;
   29725              : 
   29726              :             case 8:
   29727              :               if ((
   29728              : #line 24691 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29729              : (TARGET_SSE4_1) && 
   29730              : #line 24693 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29731              : ( reload_completed)))
   29732              :                 return gen_split_3615 (insn, operands);
   29733              :               break;
   29734              : 
   29735              :             case 9:
   29736              :               if ((
   29737              : #line 24980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29738              : (TARGET_AVX512F) && 
   29739              : #line 24982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29740              : ( reload_completed)))
   29741              :                 return gen_split_3627 (insn, operands);
   29742              :               break;
   29743              : 
   29744              :             case 10:
   29745              :               if ((
   29746              : #line 24980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29747              : (TARGET_AVX512F) && 
   29748              : #line 24982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29749              : ( reload_completed)))
   29750              :                 return gen_split_3628 (insn, operands);
   29751              :               break;
   29752              : 
   29753              :             case 11:
   29754              :               if ((
   29755              : #line 24980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29756              : (TARGET_AVX512F) && 
   29757              : #line 24982 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29758              : ( reload_completed)))
   29759              :                 return gen_split_3629 (insn, operands);
   29760              :               break;
   29761              : 
   29762              :             case 12:
   29763              :               if ((
   29764              : #line 25034 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29765              : (TARGET_AVX2) && 
   29766              : #line 25036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29767              : ( reload_completed)))
   29768              :                 return gen_split_3631 (insn, operands);
   29769              :               break;
   29770              : 
   29771              :             case 13:
   29772              :               if ((
   29773              : #line 25034 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29774              : (TARGET_AVX2) && 
   29775              : #line 25036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29776              : ( reload_completed)))
   29777              :                 return gen_split_3632 (insn, operands);
   29778              :               break;
   29779              : 
   29780              :             case 14:
   29781              :               if ((
   29782              : #line 25034 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29783              : (TARGET_AVX2) && 
   29784              : #line 25036 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29785              : ( reload_completed)))
   29786              :                 return gen_split_3633 (insn, operands);
   29787              :               break;
   29788              : 
   29789              :             case 15:
   29790              :               if ((
   29791              : #line 25177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29792              : (TARGET_SSE4_1) && 
   29793              : #line 25179 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29794              : ( reload_completed)))
   29795              :                 return gen_split_3639 (insn, operands);
   29796              :               break;
   29797              : 
   29798              :             case 16:
   29799              :               if ((
   29800              : #line 25177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29801              : (TARGET_SSE4_1) && 
   29802              : #line 25179 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29803              : ( reload_completed)))
   29804              :                 return gen_split_3640 (insn, operands);
   29805              :               break;
   29806              : 
   29807              :             case 17:
   29808              :               if ((
   29809              : #line 25177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29810              : (TARGET_SSE4_1) && 
   29811              : #line 25179 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29812              : ( reload_completed)))
   29813              :                 return gen_split_3641 (insn, operands);
   29814              :               break;
   29815              : 
   29816              :             default:
   29817              :               break;
   29818              :             }
   29819              :           operands[3] = x3;
   29820              :           switch (pattern814 (x2))
   29821              :             {
   29822              :             case 0:
   29823              :               if (!((
   29824              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29825              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29826              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29827              : (TARGET_AVX512F)) && 
   29828              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29829              : ( 1)))
   29830              :                 return NULL;
   29831              :               return gen_split_3878 (insn, operands);
   29832              : 
   29833              :             case 1:
   29834              :               if (!((
   29835              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29836              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29837              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29838              : (TARGET_AVX)) && 
   29839              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29840              : ( 1)))
   29841              :                 return NULL;
   29842              :               return gen_split_3879 (insn, operands);
   29843              : 
   29844              :             case 2:
   29845              :               if (!(
   29846              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29847              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29848              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29849              : ( 1)))
   29850              :                 return NULL;
   29851              :               return gen_split_3880 (insn, operands);
   29852              : 
   29853              :             case 3:
   29854              :               if (!((
   29855              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29856              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29857              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29858              : (TARGET_AVX512F)) && 
   29859              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29860              : ( 1)))
   29861              :                 return NULL;
   29862              :               return gen_split_3881 (insn, operands);
   29863              : 
   29864              :             case 4:
   29865              :               if (!((
   29866              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29867              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29868              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29869              : (TARGET_AVX)) && 
   29870              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29871              : ( 1)))
   29872              :                 return NULL;
   29873              :               return gen_split_3882 (insn, operands);
   29874              : 
   29875              :             case 5:
   29876              :               if (!(
   29877              : #line 29761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29878              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   29879              : #line 29763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29880              : ( 1)))
   29881              :                 return NULL;
   29882              :               return gen_split_3883 (insn, operands);
   29883              : 
   29884              :             default:
   29885              :               return NULL;
   29886              :             }
   29887              : 
   29888              :         case VEC_CONCAT:
   29889              :           switch (pattern523 (x2))
   29890              :             {
   29891              :             case 0:
   29892              :               if (!(
   29893              : #line 25668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29894              : (TARGET_AVX512F) && 
   29895              : #line 25670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29896              : ( reload_completed)))
   29897              :                 return NULL;
   29898              :               return gen_split_3662 (insn, operands);
   29899              : 
   29900              :             case 1:
   29901              :               if (!(
   29902              : #line 25720 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29903              : (TARGET_AVX2) && 
   29904              : #line 25722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29905              : ( reload_completed)))
   29906              :                 return NULL;
   29907              :               return gen_split_3664 (insn, operands);
   29908              : 
   29909              :             case 2:
   29910              :               if (!(
   29911              : #line 25839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29912              : (TARGET_SSE4_1) && 
   29913              : #line 25841 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29914              : ( reload_completed)))
   29915              :                 return NULL;
   29916              :               return gen_split_3670 (insn, operands);
   29917              : 
   29918              :             default:
   29919              :               return NULL;
   29920              :             }
   29921              : 
   29922              :         default:
   29923              :           return NULL;
   29924              :         }
   29925              : 
   29926              :     case REG:
   29927              :     case SUBREG:
   29928              :     case MEM:
   29929              :       operands[1] = x4;
   29930              :       res = split_79 (x1, insn);
   29931              :       if (res != NULL_RTX)
   29932              :         return res;
   29933              :       if (GET_CODE (x4) != SUBREG)
   29934              :         return NULL;
   29935              :       switch (pattern525 (x2))
   29936              :         {
   29937              :         case 0:
   29938              :           if (!(
   29939              : #line 15360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29940              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   29941              : #line 15362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29942              : ( 1)))
   29943              :             return NULL;
   29944              :           return gen_split_3260 (insn, operands);
   29945              : 
   29946              :         case 1:
   29947              :           if (!(
   29948              : #line 15413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29949              : (TARGET_AVX512VL && TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   29950              : #line 15415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29951              : ( 1)))
   29952              :             return NULL;
   29953              :           return gen_split_3262 (insn, operands);
   29954              : 
   29955              :         default:
   29956              :           return NULL;
   29957              :         }
   29958              : 
   29959              :     case UNSPEC:
   29960              :       if (XVECLEN (x4, 0) != 2)
   29961              :         return NULL;
   29962              :       switch (pattern527 (x2))
   29963              :         {
   29964              :         case 0:
   29965              :           if (!(
   29966              : #line 15335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29967              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   29968              : #line 15337 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29969              : ( 1)))
   29970              :             return NULL;
   29971              :           return gen_split_3259 (insn, operands);
   29972              : 
   29973              :         case 1:
   29974              :           if (!(
   29975              : #line 15597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29976              : (TARGET_AVX512VL && TARGET_AVX512VBMI
   29977              :    && ix86_pre_reload_split ()) && 
   29978              : #line 15600 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29979              : ( 1)))
   29980              :             return NULL;
   29981              :           return gen_split_3265 (insn, operands);
   29982              : 
   29983              :         case 2:
   29984              :           if (!(
   29985              : #line 15392 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29986              : (TARGET_AVX512VL && TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   29987              : #line 15394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29988              : ( 1)))
   29989              :             return NULL;
   29990              :           return gen_split_3261 (insn, operands);
   29991              : 
   29992              :         case 3:
   29993              :           if (!(
   29994              : #line 15444 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29995              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   29996              : #line 15446 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29997              : ( 1)))
   29998              :             return NULL;
   29999              :           return gen_split_3263 (insn, operands);
   30000              : 
   30001              :         case 4:
   30002              :           if (!(
   30003              : #line 15516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30004              : (TARGET_AVX512VBMI && ix86_pre_reload_split ()) && 
   30005              : #line 15518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30006              : ( 1)))
   30007              :             return NULL;
   30008              :           return gen_split_3264 (insn, operands);
   30009              : 
   30010              :         case 5:
   30011              :           if (!(
   30012              : #line 15616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30013              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   30014              : #line 15618 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30015              : ( 1)))
   30016              :             return NULL;
   30017              :           return gen_split_3266 (insn, operands);
   30018              : 
   30019              :         default:
   30020              :           return NULL;
   30021              :         }
   30022              : 
   30023              :     default:
   30024              :       return NULL;
   30025              :     }
   30026              : }
   30027              : 
   30028              :  rtx_insn *
   30029              : peephole2_1 (rtx x1 ATTRIBUTE_UNUSED,
   30030              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   30031              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   30032              : {
   30033              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   30034              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   30035              :   rtx x10, x11;
   30036              :   rtx_insn *res ATTRIBUTE_UNUSED;
   30037              :   x2 = XEXP (x1, 0);
   30038              :   if (GET_CODE (x2) != REG
   30039              :       || REGNO (x2) != 17)
   30040              :     return NULL;
   30041              :   x3 = XEXP (x1, 1);
   30042              :   x4 = XEXP (x3, 0);
   30043              :   switch (GET_CODE (x4))
   30044              :     {
   30045              :     case NEG:
   30046              :       if (GET_MODE (x4) != E_QImode)
   30047              :         return NULL;
   30048              :       x5 = XEXP (x4, 0);
   30049              :       if (GET_CODE (x5) != LTU
   30050              :           || GET_MODE (x5) != E_QImode)
   30051              :         return NULL;
   30052              :       x6 = XEXP (x5, 0);
   30053              :       if (GET_CODE (x6) != REG
   30054              :           || REGNO (x6) != 17
   30055              :           || GET_MODE (x6) != E_CCCmode)
   30056              :         return NULL;
   30057              :       x7 = XEXP (x5, 1);
   30058              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   30059              :         return NULL;
   30060              :       x8 = XEXP (x3, 1);
   30061              :       if (GET_CODE (x8) != GEU
   30062              :           || GET_MODE (x8) != E_QImode)
   30063              :         return NULL;
   30064              :       x9 = XEXP (x8, 0);
   30065              :       if (GET_CODE (x9) != REG
   30066              :           || REGNO (x9) != 17
   30067              :           || GET_MODE (x9) != E_CCCmode)
   30068              :         return NULL;
   30069              :       x10 = XEXP (x8, 1);
   30070              :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   30071              :           || GET_MODE (x2) != E_CCCmode
   30072              :           || GET_MODE (x3) != E_CCCmode
   30073              :           || !
   30074              : #line 2167 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30075              : (TARGET_SLOW_STC && !optimize_insn_for_size_p ()))
   30076              :         return NULL;
   30077              :       *pmatch_len_ = 0;
   30078              :       return gen_peephole2_2 (insn, operands);
   30079              : 
   30080              :     case AND:
   30081              :       x8 = XEXP (x3, 1);
   30082              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   30083              :           || GET_MODE (x2) != E_CCZmode
   30084              :           || GET_MODE (x3) != E_CCZmode)
   30085              :         return NULL;
   30086              :       x5 = XEXP (x4, 0);
   30087              :       operands[0] = x5;
   30088              :       x11 = XEXP (x4, 1);
   30089              :       operands[1] = x11;
   30090              :       if (!const_int_operand (operands[1], E_VOIDmode))
   30091              :         return NULL;
   30092              :       switch (GET_MODE (x4))
   30093              :         {
   30094              :         case E_HImode:
   30095              :           if (!memory_operand (operands[0], E_HImode)
   30096              :               || !
   30097              : #line 12754 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30098              : (!TARGET_PARTIAL_MEMORY_READ_STALL
   30099              :    && !MEM_VOLATILE_P (operands[0])
   30100              :    && offsettable_memref_p (operands[0])))
   30101              :             return NULL;
   30102              :           *pmatch_len_ = 0;
   30103              :           return gen_peephole2_140 (insn, operands);
   30104              : 
   30105              :         case E_SImode:
   30106              :           if (!memory_operand (operands[0], E_SImode)
   30107              :               || !
   30108              : #line 12754 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30109              : (!TARGET_PARTIAL_MEMORY_READ_STALL
   30110              :    && !MEM_VOLATILE_P (operands[0])
   30111              :    && offsettable_memref_p (operands[0])))
   30112              :             return NULL;
   30113              :           *pmatch_len_ = 0;
   30114              :           return gen_peephole2_141 (insn, operands);
   30115              : 
   30116              :         case E_DImode:
   30117              :           if (!memory_operand (operands[0], E_DImode)
   30118              :               || !(
   30119              : #line 12754 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30120              : (!TARGET_PARTIAL_MEMORY_READ_STALL
   30121              :    && !MEM_VOLATILE_P (operands[0])
   30122              :    && offsettable_memref_p (operands[0])) && 
   30123              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30124              : (TARGET_64BIT)))
   30125              :             return NULL;
   30126              :           *pmatch_len_ = 0;
   30127              :           return gen_peephole2_142 (insn, operands);
   30128              : 
   30129              :         default:
   30130              :           return NULL;
   30131              :         }
   30132              : 
   30133              :     default:
   30134              :       return NULL;
   30135              :     }
   30136              : }
   30137              : 
   30138              :  rtx_insn *
   30139              : peephole2_2 (rtx x1 ATTRIBUTE_UNUSED,
   30140              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   30141              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   30142              : {
   30143              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   30144              :   rtx x2, x3, x4;
   30145              :   rtx_insn *res ATTRIBUTE_UNUSED;
   30146              :   x2 = XEXP (x1, 0);
   30147              :   operands[0] = x2;
   30148              :   x3 = XEXP (x1, 1);
   30149              :   x4 = XEXP (x3, 0);
   30150              :   operands[1] = x4;
   30151              :   switch (GET_MODE (operands[0]))
   30152              :     {
   30153              :     case E_SImode:
   30154              :       switch (pattern417 (x3, 
   30155              : E_SImode))
   30156              :         {
   30157              :         case 0:
   30158              :           if (!
   30159              : #line 5974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30160              : (TARGET_AVOID_VECTOR_DECODE
   30161              :    && SSE_FLOAT_MODE_P (SFmode)
   30162              :    && optimize_insn_for_speed_p ()))
   30163              :             return NULL;
   30164              :           *pmatch_len_ = 0;
   30165              :           return gen_peephole2_56 (insn, operands);
   30166              : 
   30167              :         case 1:
   30168              :           if (!
   30169              : #line 5974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30170              : (TARGET_AVOID_VECTOR_DECODE
   30171              :    && SSE_FLOAT_MODE_P (DFmode)
   30172              :    && optimize_insn_for_speed_p ()))
   30173              :             return NULL;
   30174              :           *pmatch_len_ = 0;
   30175              :           return gen_peephole2_58 (insn, operands);
   30176              : 
   30177              :         default:
   30178              :           return NULL;
   30179              :         }
   30180              : 
   30181              :     case E_DImode:
   30182              :       switch (pattern417 (x3, 
   30183              : E_DImode))
   30184              :         {
   30185              :         case 0:
   30186              :           if (!(
   30187              : #line 5974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30188              : (TARGET_AVOID_VECTOR_DECODE
   30189              :    && SSE_FLOAT_MODE_P (SFmode)
   30190              :    && optimize_insn_for_speed_p ()) && 
   30191              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30192              : (TARGET_64BIT)))
   30193              :             return NULL;
   30194              :           *pmatch_len_ = 0;
   30195              :           return gen_peephole2_57 (insn, operands);
   30196              : 
   30197              :         case 1:
   30198              :           if (!(
   30199              : #line 5974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30200              : (TARGET_AVOID_VECTOR_DECODE
   30201              :    && SSE_FLOAT_MODE_P (DFmode)
   30202              :    && optimize_insn_for_speed_p ()) && 
   30203              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30204              : (TARGET_64BIT)))
   30205              :             return NULL;
   30206              :           *pmatch_len_ = 0;
   30207              :           return gen_peephole2_59 (insn, operands);
   30208              : 
   30209              :         default:
   30210              :           return NULL;
   30211              :         }
   30212              : 
   30213              :     default:
   30214              :       return NULL;
   30215              :     }
   30216              : }
   30217              : 
   30218              :  rtx_insn *
   30219              : peephole2_3 (rtx x1 ATTRIBUTE_UNUSED,
   30220              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   30221              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   30222              : {
   30223              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   30224              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   30225              :   rtx x10;
   30226              :   rtx_insn *res ATTRIBUTE_UNUSED;
   30227              :   if (peep2_current_count < 2
   30228              :       || peep2_current_count < 3)
   30229              :     return NULL;
   30230              :   x2 = XEXP (x1, 1);
   30231              :   operands[1] = x2;
   30232              :   if (!bt_comparison_operator (operands[1], E_QImode))
   30233              :     return NULL;
   30234              :   x3 = XEXP (x2, 0);
   30235              :   if (GET_CODE (x3) != REG
   30236              :       || REGNO (x3) != 17
   30237              :       || GET_MODE (x3) != E_CCZmode)
   30238              :     return NULL;
   30239              :   x4 = XEXP (x2, 1);
   30240              :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   30241              :     return NULL;
   30242              :   x5 = XEXP (x1, 0);
   30243              :   operands[0] = x5;
   30244              :   if (!nonimmediate_operand (operands[0], E_QImode))
   30245              :     return NULL;
   30246              :   x6 = PATTERN (peep2_next_insn (1));
   30247              :   if (pattern1265 (x6, 
   30248              : 0) != 0)
   30249              :     return NULL;
   30250              :   x7 = PATTERN (peep2_next_insn (2));
   30251              :   x8 = XEXP (x7, 1);
   30252              :   x9 = XEXP (x8, 0);
   30253              :   operands[2] = x9;
   30254              :   if (pattern1805 (x7) != 0)
   30255              :     return NULL;
   30256              :   x10 = XEXP (x8, 1);
   30257              :   operands[3] = x10;
   30258              :   if (!
   30259              : #line 20022 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30260              : (peep2_regno_dead_p (3, FLAGS_REG)))
   30261              :     return NULL;
   30262              :   *pmatch_len_ = 2;
   30263              :   return gen_peephole2_188 (insn, operands);
   30264              : }
   30265              : 
   30266              :  rtx_insn *
   30267              : peephole2_4 (rtx x1 ATTRIBUTE_UNUSED,
   30268              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   30269              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   30270              : {
   30271              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   30272              :   rtx x2;
   30273              :   rtx_insn *res ATTRIBUTE_UNUSED;
   30274              :   switch (GET_MODE (operands[0]))
   30275              :     {
   30276              :     case E_DImode:
   30277              :       if (register_operand (operands[0], E_DImode)
   30278              :           && const_int_operand (operands[1], E_DImode)
   30279              :           && 
   30280              : #line 2814 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30281              : (TARGET_64BIT
   30282              :    && optimize_insn_for_size_p ()
   30283              :    && LEGACY_INT_REG_P (operands[0])
   30284              :    && !x86_64_immediate_operand (operands[1], DImode)
   30285              :    && !x86_64_zext_immediate_operand (operands[1], DImode)
   30286              :    && !((UINTVAL (operands[1]) >> ctz_hwi (UINTVAL (operands[1])))
   30287              :         & ~HOST_WIDE_INT_C (0xffffffff))
   30288              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   30289              :         {
   30290              :           *pmatch_len_ = 0;
   30291              :           res = gen_peephole2_4 (insn, operands);
   30292              :           if (res != NULL_RTX)
   30293              :             return res;
   30294              :         }
   30295              :       if (!general_reg_operand (operands[0], E_DImode))
   30296              :         return NULL;
   30297              :       if (const_int_operand (operands[1], E_DImode))
   30298              :         {
   30299              :           if ((
   30300              : #line 2963 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30301              : (optimize_insn_for_size_p () && optimize_size > 1
   30302              :    && operands[1] != const0_rtx
   30303              :    && (operands[1] != constm1_rtx
   30304              :        || (DImode == DImode && LEGACY_INT_REG_P (operands[0])))
   30305              :    && IN_RANGE (INTVAL (operands[1]), -128, 127)
   30306              :    && !ix86_red_zone_used
   30307              :    && REGNO (operands[0]) != SP_REG) && 
   30308              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30309              : (TARGET_64BIT)))
   30310              :             {
   30311              :               *pmatch_len_ = 0;
   30312              :               res = gen_peephole2_7 (insn, operands);
   30313              :               if (res != NULL_RTX)
   30314              :                 return res;
   30315              :             }
   30316              :           if (peep2_current_count >= 2)
   30317              :             {
   30318              :               x2 = PATTERN (peep2_next_insn (1));
   30319              :               switch (pattern1074 (x2))
   30320              :                 {
   30321              :                 case 0:
   30322              :                   if ((
   30323              : #line 3669 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30324              : (REGNO (operands[0]) == REGNO (operands[2])) && 
   30325              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30326              : (TARGET_64BIT)))
   30327              :                     {
   30328              :                       *pmatch_len_ = 1;
   30329              :                       res = gen_peephole2_36 (insn, operands);
   30330              :                       if (res != NULL_RTX)
   30331              :                         return res;
   30332              :                     }
   30333              :                   break;
   30334              : 
   30335              :                 case 1:
   30336              :                   if ((
   30337              : #line 3669 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30338              : (REGNO (operands[0]) == REGNO (operands[2])) && 
   30339              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30340              : (TARGET_64BIT)))
   30341              :                     {
   30342              :                       *pmatch_len_ = 1;
   30343              :                       res = gen_peephole2_38 (insn, operands);
   30344              :                       if (res != NULL_RTX)
   30345              :                         return res;
   30346              :                     }
   30347              :                   break;
   30348              : 
   30349              :                 case 2:
   30350              :                   if ((
   30351              : #line 3669 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30352              : (REGNO (operands[0]) == REGNO (operands[2])) && 
   30353              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30354              : (TARGET_64BIT)))
   30355              :                     {
   30356              :                       *pmatch_len_ = 1;
   30357              :                       res = gen_peephole2_40 (insn, operands);
   30358              :                       if (res != NULL_RTX)
   30359              :                         return res;
   30360              :                     }
   30361              :                   break;
   30362              : 
   30363              :                 default:
   30364              :                   break;
   30365              :                 }
   30366              :             }
   30367              :         }
   30368              :       if (peep2_current_count < 2)
   30369              :         return NULL;
   30370              :       x2 = PATTERN (peep2_next_insn (1));
   30371              :       if (pattern959 (x2, 
   30372              : E_DImode) != 0
   30373              :           || !(
   30374              : #line 3300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30375              : (peep2_reg_dead_p (2, operands[0])
   30376              :    && (const0_operand (operands[1], DImode)
   30377              :        || (constm1_operand (operands[1], DImode)
   30378              :            && (8 > 1 || TARGET_AVX512DQ)))) && 
   30379              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30380              : (TARGET_64BIT)))
   30381              :         return NULL;
   30382              :       *pmatch_len_ = 1;
   30383              :       return gen_peephole2_14 (insn, operands);
   30384              : 
   30385              :     case E_HImode:
   30386              :       if (!general_reg_operand (operands[0], E_HImode))
   30387              :         return NULL;
   30388              :       if (const_int_operand (operands[1], E_HImode)
   30389              :           && 
   30390              : #line 2963 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30391              : (optimize_insn_for_size_p () && optimize_size > 1
   30392              :    && operands[1] != const0_rtx
   30393              :    && (operands[1] != constm1_rtx
   30394              :        || (HImode == DImode && LEGACY_INT_REG_P (operands[0])))
   30395              :    && IN_RANGE (INTVAL (operands[1]), -128, 127)
   30396              :    && !ix86_red_zone_used
   30397              :    && REGNO (operands[0]) != SP_REG))
   30398              :         {
   30399              :           *pmatch_len_ = 0;
   30400              :           res = gen_peephole2_5 (insn, operands);
   30401              :           if (res != NULL_RTX)
   30402              :             return res;
   30403              :         }
   30404              :       if (peep2_current_count < 2)
   30405              :         return NULL;
   30406              :       x2 = PATTERN (peep2_next_insn (1));
   30407              :       if (pattern959 (x2, 
   30408              : E_HImode) != 0
   30409              :           || !
   30410              : #line 3300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30411              : (peep2_reg_dead_p (2, operands[0])
   30412              :    && (const0_operand (operands[1], HImode)
   30413              :        || (constm1_operand (operands[1], HImode)
   30414              :            && (2 > 1 || TARGET_AVX512DQ)))))
   30415              :         return NULL;
   30416              :       *pmatch_len_ = 1;
   30417              :       return gen_peephole2_12 (insn, operands);
   30418              : 
   30419              :     case E_SImode:
   30420              :       if (!general_reg_operand (operands[0], E_SImode))
   30421              :         return NULL;
   30422              :       if (const_int_operand (operands[1], E_SImode))
   30423              :         {
   30424              :           if (
   30425              : #line 2963 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30426              : (optimize_insn_for_size_p () && optimize_size > 1
   30427              :    && operands[1] != const0_rtx
   30428              :    && (operands[1] != constm1_rtx
   30429              :        || (SImode == DImode && LEGACY_INT_REG_P (operands[0])))
   30430              :    && IN_RANGE (INTVAL (operands[1]), -128, 127)
   30431              :    && !ix86_red_zone_used
   30432              :    && REGNO (operands[0]) != SP_REG))
   30433              :             {
   30434              :               *pmatch_len_ = 0;
   30435              :               res = gen_peephole2_6 (insn, operands);
   30436              :               if (res != NULL_RTX)
   30437              :                 return res;
   30438              :             }
   30439              :           if (peep2_current_count >= 2)
   30440              :             {
   30441              :               x2 = PATTERN (peep2_next_insn (1));
   30442              :               switch (pattern1074 (x2))
   30443              :                 {
   30444              :                 case 0:
   30445              :                   if (
   30446              : #line 3669 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30447              : (REGNO (operands[0]) == REGNO (operands[2])))
   30448              :                     {
   30449              :                       *pmatch_len_ = 1;
   30450              :                       res = gen_peephole2_35 (insn, operands);
   30451              :                       if (res != NULL_RTX)
   30452              :                         return res;
   30453              :                     }
   30454              :                   break;
   30455              : 
   30456              :                 case 1:
   30457              :                   if (
   30458              : #line 3669 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30459              : (REGNO (operands[0]) == REGNO (operands[2])))
   30460              :                     {
   30461              :                       *pmatch_len_ = 1;
   30462              :                       res = gen_peephole2_37 (insn, operands);
   30463              :                       if (res != NULL_RTX)
   30464              :                         return res;
   30465              :                     }
   30466              :                   break;
   30467              : 
   30468              :                 case 2:
   30469              :                   if ((
   30470              : #line 3669 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30471              : (REGNO (operands[0]) == REGNO (operands[2])) && 
   30472              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30473              : (TARGET_64BIT)))
   30474              :                     {
   30475              :                       *pmatch_len_ = 1;
   30476              :                       res = gen_peephole2_39 (insn, operands);
   30477              :                       if (res != NULL_RTX)
   30478              :                         return res;
   30479              :                     }
   30480              :                   break;
   30481              : 
   30482              :                 default:
   30483              :                   break;
   30484              :                 }
   30485              :             }
   30486              :         }
   30487              :       if (peep2_current_count < 2)
   30488              :         return NULL;
   30489              :       x2 = PATTERN (peep2_next_insn (1));
   30490              :       if (pattern959 (x2, 
   30491              : E_SImode) != 0
   30492              :           || !
   30493              : #line 3300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30494              : (peep2_reg_dead_p (2, operands[0])
   30495              :    && (const0_operand (operands[1], SImode)
   30496              :        || (constm1_operand (operands[1], SImode)
   30497              :            && (4 > 1 || TARGET_AVX512DQ)))))
   30498              :         return NULL;
   30499              :       *pmatch_len_ = 1;
   30500              :       return gen_peephole2_13 (insn, operands);
   30501              : 
   30502              :     case E_QImode:
   30503              :       if (peep2_current_count < 2
   30504              :           || !general_reg_operand (operands[0], E_QImode))
   30505              :         return NULL;
   30506              :       x2 = PATTERN (peep2_next_insn (1));
   30507              :       if (pattern959 (x2, 
   30508              : E_QImode) != 0
   30509              :           || !
   30510              : #line 3300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30511              : (peep2_reg_dead_p (2, operands[0])
   30512              :    && (const0_operand (operands[1], QImode)
   30513              :        || (constm1_operand (operands[1], QImode)
   30514              :            && (1 > 1 || TARGET_AVX512DQ)))))
   30515              :         return NULL;
   30516              :       *pmatch_len_ = 1;
   30517              :       return gen_peephole2_11 (insn, operands);
   30518              : 
   30519              :     default:
   30520              :       return NULL;
   30521              :     }
   30522              : }
   30523              : 
   30524              :  rtx_insn *
   30525              : peephole2_6 (rtx x1 ATTRIBUTE_UNUSED,
   30526              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   30527              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   30528              : {
   30529              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   30530              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   30531              :   rtx x10, x11, x12, x13;
   30532              :   rtx_insn *res ATTRIBUTE_UNUSED;
   30533              :   x2 = XEXP (x1, 1);
   30534              :   operands[1] = x2;
   30535              :   x3 = XEXP (x1, 0);
   30536              :   operands[0] = x3;
   30537              :   switch (GET_CODE (operands[0]))
   30538              :     {
   30539              :     case REG:
   30540              :       switch (GET_MODE (operands[0]))
   30541              :         {
   30542              :         case E_QImode:
   30543              :           x4 = PATTERN (peep2_next_insn (1));
   30544              :           switch (pattern733 (x4, 
   30545              : E_QImode))
   30546              :             {
   30547              :             case 0:
   30548              :               if (pattern1351 (x4, 
   30549              : E_QImode) != 0
   30550              :                   || !
   30551              : #line 3402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30552              : (peep2_reg_dead_p (3, operands[0])
   30553              :    && optimize_insn_for_size_p ()))
   30554              :                 return NULL;
   30555              :               *pmatch_len_ = 2;
   30556              :               return gen_peephole2_15 (insn, operands);
   30557              : 
   30558              :             case 1:
   30559              :               if (XVECLEN (x4, 0) != 2)
   30560              :                 return NULL;
   30561              :               x5 = XVECEXP (x4, 0, 0);
   30562              :               if (GET_CODE (x5) != SET)
   30563              :                 return NULL;
   30564              :               x6 = XEXP (x5, 1);
   30565              :               if (GET_CODE (x6) != NEG
   30566              :                   || pattern1355 (x4, 
   30567              : E_QImode) != 0)
   30568              :                 return NULL;
   30569              :               *pmatch_len_ = 2;
   30570              :               return gen_peephole2_171 (insn, operands);
   30571              : 
   30572              :             default:
   30573              :               return NULL;
   30574              :             }
   30575              : 
   30576              :         case E_HImode:
   30577              :           x4 = PATTERN (peep2_next_insn (1));
   30578              :           switch (pattern733 (x4, 
   30579              : E_HImode))
   30580              :             {
   30581              :             case 0:
   30582              :               if (pattern1351 (x4, 
   30583              : E_HImode) != 0
   30584              :                   || !
   30585              : #line 3402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30586              : (peep2_reg_dead_p (3, operands[0])
   30587              :    && optimize_insn_for_size_p ()))
   30588              :                 return NULL;
   30589              :               *pmatch_len_ = 2;
   30590              :               return gen_peephole2_16 (insn, operands);
   30591              : 
   30592              :             case 1:
   30593              :               if (XVECLEN (x4, 0) != 2)
   30594              :                 return NULL;
   30595              :               x5 = XVECEXP (x4, 0, 0);
   30596              :               if (GET_CODE (x5) != SET)
   30597              :                 return NULL;
   30598              :               x6 = XEXP (x5, 1);
   30599              :               if (GET_CODE (x6) == NEG
   30600              :                   && pattern1355 (x4, 
   30601              : E_HImode) == 0)
   30602              :                 {
   30603              :                   *pmatch_len_ = 2;
   30604              :                   res = gen_peephole2_172 (insn, operands);
   30605              :                   if (res != NULL_RTX)
   30606              :                     return res;
   30607              :                 }
   30608              :               if (peep2_current_count < 4
   30609              :                   || pattern1357 (x4, 
   30610              : E_HImode) != 0
   30611              :                   || !
   30612              : #line 26953 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30613              : (TARGET_CMOVE
   30614              :   && REGNO (operands[2]) != REGNO (operands[0])
   30615              :   && REGNO (operands[2]) != REGNO (operands[1])
   30616              :   && peep2_reg_dead_p (1, operands[1])
   30617              :   && peep2_reg_dead_p (4, operands[2])
   30618              :   && !reg_overlap_mentioned_p (operands[0], operands[3])))
   30619              :                 return NULL;
   30620              :               *pmatch_len_ = 3;
   30621              :               return gen_peephole2_223 (insn, operands);
   30622              : 
   30623              :             default:
   30624              :               return NULL;
   30625              :             }
   30626              : 
   30627              :         case E_SImode:
   30628              :           if (!general_reg_operand (operands[0], E_SImode)
   30629              :               || !general_reg_operand (operands[1], E_SImode))
   30630              :             return NULL;
   30631              :           if (peep2_current_count >= 2)
   30632              :             {
   30633              :               x4 = PATTERN (peep2_next_insn (1));
   30634              :               if (pattern1075 (x4, 
   30635              : E_SImode) == 0
   30636              :                   && 
   30637              : #line 3402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30638              : (peep2_reg_dead_p (3, operands[0])
   30639              :    && optimize_insn_for_size_p ()))
   30640              :                 {
   30641              :                   *pmatch_len_ = 2;
   30642              :                   res = gen_peephole2_17 (insn, operands);
   30643              :                   if (res != NULL_RTX)
   30644              :                     return res;
   30645              :                 }
   30646              :             }
   30647              :           if (!
   30648              : #line 3435 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30649              : (optimize_size > 1
   30650              :   && ((REGNO (operands[0]) == AX_REG)
   30651              :       != (REGNO (operands[1]) == AX_REG))
   30652              :   && optimize_insn_for_size_p ()
   30653              :   && peep2_reg_dead_p (1, operands[1])))
   30654              :             return NULL;
   30655              :           *pmatch_len_ = 0;
   30656              :           return gen_peephole2_27 (insn, operands);
   30657              : 
   30658              :         case E_DImode:
   30659              :           if (!general_reg_operand (operands[0], E_DImode)
   30660              :               || !general_reg_operand (operands[1], E_DImode))
   30661              :             return NULL;
   30662              :           if (peep2_current_count >= 2)
   30663              :             {
   30664              :               x4 = PATTERN (peep2_next_insn (1));
   30665              :               if (pattern1075 (x4, 
   30666              : E_DImode) == 0
   30667              :                   && (
   30668              : #line 3402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30669              : (peep2_reg_dead_p (3, operands[0])
   30670              :    && optimize_insn_for_size_p ()) && 
   30671              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30672              : (TARGET_64BIT)))
   30673              :                 {
   30674              :                   *pmatch_len_ = 2;
   30675              :                   res = gen_peephole2_18 (insn, operands);
   30676              :                   if (res != NULL_RTX)
   30677              :                     return res;
   30678              :                 }
   30679              :             }
   30680              :           if ((
   30681              : #line 3435 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30682              : (optimize_size > 1
   30683              :   && ((REGNO (operands[0]) == AX_REG)
   30684              :       != (REGNO (operands[1]) == AX_REG))
   30685              :   && optimize_insn_for_size_p ()
   30686              :   && peep2_reg_dead_p (1, operands[1])) && 
   30687              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30688              : (TARGET_64BIT)))
   30689              :             {
   30690              :               *pmatch_len_ = 0;
   30691              :               res = gen_peephole2_28 (insn, operands);
   30692              :               if (res != NULL_RTX)
   30693              :                 return res;
   30694              :             }
   30695              :           if (peep2_current_count < 2
   30696              :               || peep2_current_count < 3
   30697              :               || peep2_current_count < 4)
   30698              :             return NULL;
   30699              :           x4 = PATTERN (peep2_next_insn (1));
   30700              :           if (GET_CODE (x4) != PARALLEL
   30701              :               || XVECLEN (x4, 0) != 2)
   30702              :             return NULL;
   30703              :           x5 = XVECEXP (x4, 0, 0);
   30704              :           if (GET_CODE (x5) != SET)
   30705              :             return NULL;
   30706              :           x6 = XEXP (x5, 1);
   30707              :           if (GET_CODE (x6) != ASHIFTRT
   30708              :               || GET_MODE (x6) != E_DImode)
   30709              :             return NULL;
   30710              :           x7 = XEXP (x6, 1);
   30711              :           if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 63]
   30712              :               || pattern1353 (x4) != 0)
   30713              :             return NULL;
   30714              :           x8 = PATTERN (peep2_next_insn (2));
   30715              :           if (GET_CODE (x8) != SET)
   30716              :             return NULL;
   30717              :           x9 = XEXP (x8, 0);
   30718              :           operands[2] = x9;
   30719              :           if (!general_reg_operand (operands[2], E_DImode))
   30720              :             return NULL;
   30721              :           x10 = XEXP (x8, 1);
   30722              :           if (!rtx_equal_p (x10, operands[1]))
   30723              :             return NULL;
   30724              :           x11 = PATTERN (peep2_next_insn (3));
   30725              :           if (GET_CODE (x11) != SET)
   30726              :             return NULL;
   30727              :           x12 = XEXP (x11, 0);
   30728              :           operands[3] = x12;
   30729              :           if (!general_reg_operand (operands[3], E_DImode))
   30730              :             return NULL;
   30731              :           x13 = XEXP (x11, 1);
   30732              :           if (!rtx_equal_p (x13, operands[0])
   30733              :               || !
   30734              : #line 5127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30735              : ((optimize_function_for_size_p (cfun) || TARGET_USE_CLTD)
   30736              :    && REGNO (operands[2]) == AX_REG
   30737              :    && REGNO (operands[3]) == DX_REG
   30738              :    && peep2_reg_dead_p (4, operands[0])
   30739              :    && !reg_mentioned_p (operands[0], operands[1])
   30740              :    && !reg_mentioned_p (operands[2], operands[0])))
   30741              :             return NULL;
   30742              :           *pmatch_len_ = 3;
   30743              :           return gen_peephole2_53 (insn, operands);
   30744              : 
   30745              :         default:
   30746              :           return NULL;
   30747              :         }
   30748              : 
   30749              :     case SUBREG:
   30750              :     case MEM:
   30751              :       if (peep2_current_count < 2
   30752              :           || peep2_current_count < 3)
   30753              :         return NULL;
   30754              :       switch (GET_MODE (operands[0]))
   30755              :         {
   30756              :         case E_SImode:
   30757              :           x4 = PATTERN (peep2_next_insn (1));
   30758              :           switch (pattern960 (x4, 
   30759              : E_SImode))
   30760              :             {
   30761              :             case 0:
   30762              :               if (!(
   30763              : #line 5050 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30764              : (REGNO (operands[1]) != REGNO (operands[2])
   30765              :    && INTVAL (operands[4]) == (4 * BITS_PER_UNIT - 1)
   30766              :    && peep2_reg_dead_p (2, operands[1])
   30767              :    && peep2_reg_dead_p (4, operands[2])
   30768              :    && !reg_mentioned_p (operands[2], operands[3])) && 
   30769              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30770              : (!TARGET_64BIT)))
   30771              :                 return NULL;
   30772              :               *pmatch_len_ = 3;
   30773              :               return gen_peephole2_49 (insn, operands);
   30774              : 
   30775              :             case 1:
   30776              :               if (!(
   30777              : #line 5068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30778              : (/* cltd is shorter than sarl $31, %eax */
   30779              :    !optimize_function_for_size_p (cfun)
   30780              :    && REGNO (operands[1]) == AX_REG
   30781              :    && REGNO (operands[2]) == DX_REG
   30782              :    && INTVAL (operands[4]) == (4 * BITS_PER_UNIT - 1)
   30783              :    && peep2_reg_dead_p (2, operands[1])
   30784              :    && peep2_reg_dead_p (3, operands[2])
   30785              :    && !reg_mentioned_p (operands[2], operands[3])) && 
   30786              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30787              : (!TARGET_64BIT)))
   30788              :                 return NULL;
   30789              :               *pmatch_len_ = 2;
   30790              :               return gen_peephole2_51 (insn, operands);
   30791              : 
   30792              :             default:
   30793              :               return NULL;
   30794              :             }
   30795              : 
   30796              :         case E_DImode:
   30797              :           x4 = PATTERN (peep2_next_insn (1));
   30798              :           switch (pattern960 (x4, 
   30799              : E_DImode))
   30800              :             {
   30801              :             case 0:
   30802              :               if (!(
   30803              : #line 5050 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30804              : (REGNO (operands[1]) != REGNO (operands[2])
   30805              :    && INTVAL (operands[4]) == (8 * BITS_PER_UNIT - 1)
   30806              :    && peep2_reg_dead_p (2, operands[1])
   30807              :    && peep2_reg_dead_p (4, operands[2])
   30808              :    && !reg_mentioned_p (operands[2], operands[3])) && 
   30809              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30810              : (TARGET_64BIT)))
   30811              :                 return NULL;
   30812              :               *pmatch_len_ = 3;
   30813              :               return gen_peephole2_50 (insn, operands);
   30814              : 
   30815              :             case 1:
   30816              :               if (!(
   30817              : #line 5068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30818              : (/* cltd is shorter than sarl $31, %eax */
   30819              :    !optimize_function_for_size_p (cfun)
   30820              :    && REGNO (operands[1]) == AX_REG
   30821              :    && REGNO (operands[2]) == DX_REG
   30822              :    && INTVAL (operands[4]) == (8 * BITS_PER_UNIT - 1)
   30823              :    && peep2_reg_dead_p (2, operands[1])
   30824              :    && peep2_reg_dead_p (3, operands[2])
   30825              :    && !reg_mentioned_p (operands[2], operands[3])) && 
   30826              : #line 1237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30827              : (TARGET_64BIT)))
   30828              :                 return NULL;
   30829              :               *pmatch_len_ = 2;
   30830              :               return gen_peephole2_52 (insn, operands);
   30831              : 
   30832              :             default:
   30833              :               return NULL;
   30834              :             }
   30835              : 
   30836              :         default:
   30837              :           return NULL;
   30838              :         }
   30839              : 
   30840              :     default:
   30841              :       return NULL;
   30842              :     }
   30843              : }
   30844              : 
   30845              :  rtx_insn *
   30846              : peephole2_11 (rtx x1 ATTRIBUTE_UNUSED,
   30847              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   30848              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   30849              : {
   30850              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   30851              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   30852              :   rtx x10, x11, x12, x13, x14;
   30853              :   rtx_insn *res ATTRIBUTE_UNUSED;
   30854              :   x2 = PATTERN (peep2_next_insn (1));
   30855              :   x3 = XEXP (x2, 1);
   30856              :   if (GET_CODE (x3) != IOR
   30857              :       || GET_MODE (x3) != E_SImode)
   30858              :     return NULL;
   30859              :   x4 = XEXP (x3, 0);
   30860              :   if (GET_CODE (x4) != AND
   30861              :       || GET_MODE (x4) != E_SImode)
   30862              :     return NULL;
   30863              :   x5 = XEXP (x4, 1);
   30864              :   if (GET_CODE (x5) != CONST_INT
   30865              :       || XWINT (x5, 0) != -65536L)
   30866              :     return NULL;
   30867              :   x6 = XEXP (x3, 1);
   30868              :   if (GET_CODE (x6) != LSHIFTRT
   30869              :       || GET_MODE (x6) != E_SImode)
   30870              :     return NULL;
   30871              :   x7 = XEXP (x6, 0);
   30872              :   if (GET_CODE (x7) != BSWAP
   30873              :       || GET_MODE (x7) != E_SImode)
   30874              :     return NULL;
   30875              :   x8 = XEXP (x6, 1);
   30876              :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 16])
   30877              :     return NULL;
   30878              :   x9 = XEXP (x4, 0);
   30879              :   if (!rtx_equal_p (x9, operands[0]))
   30880              :     return NULL;
   30881              :   x10 = XEXP (x7, 0);
   30882              :   if (!rtx_equal_p (x10, operands[0]))
   30883              :     return NULL;
   30884              :   x11 = XEXP (x2, 0);
   30885              :   if (!rtx_equal_p (x11, operands[0]))
   30886              :     return NULL;
   30887              :   x12 = PATTERN (peep2_next_insn (2));
   30888              :   if (GET_CODE (x12) != SET)
   30889              :     return NULL;
   30890              :   x13 = XEXP (x12, 0);
   30891              :   operands[2] = x13;
   30892              :   if (!general_reg_operand (operands[2], E_SImode))
   30893              :     return NULL;
   30894              :   x14 = XEXP (x12, 1);
   30895              :   if (!rtx_equal_p (x14, operands[0])
   30896              :       || !
   30897              : #line 23046 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30898              : (!(TARGET_USE_XCHGB ||
   30899              :      TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   30900              :    && peep2_regno_dead_p (0, FLAGS_REG)
   30901              :    && peep2_reg_dead_p(3, operands[0])))
   30902              :     return NULL;
   30903              :   *pmatch_len_ = 2;
   30904              :   return gen_peephole2_212 (insn, operands);
   30905              : }
   30906              : 
   30907              :  rtx_insn *
   30908              : peephole2_12 (rtx x1 ATTRIBUTE_UNUSED,
   30909              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   30910              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   30911              : {
   30912              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   30913              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   30914              :   rtx x10, x11, x12, x13, x14;
   30915              :   rtx_insn *res ATTRIBUTE_UNUSED;
   30916              :   x2 = XEXP (x1, 1);
   30917              :   operands[1] = x2;
   30918              :   if (register_operand (operands[0], E_SImode))
   30919              :     {
   30920              :       res = peephole2_10 (x1, insn, pmatch_len_);
   30921              :       if (res != NULL_RTX)
   30922              :         return res;
   30923              :     }
   30924              :   if (peep2_current_count < 2
   30925              :       || peep2_current_count < 3
   30926              :       || !general_reg_operand (operands[0], E_SImode))
   30927              :     return NULL;
   30928              :   x3 = PATTERN (peep2_next_insn (1));
   30929              :   if (GET_CODE (x3) == PARALLEL
   30930              :       && XVECLEN (x3, 0) == 2)
   30931              :     {
   30932              :       x4 = XVECEXP (x3, 0, 0);
   30933              :       if (GET_CODE (x4) == SET)
   30934              :         {
   30935              :           if (memory_operand (operands[1], E_SImode))
   30936              :             {
   30937              :               switch (pattern1205 (x3, 
   30938              : E_SImode, 
   30939              : E_DImode))
   30940              :                 {
   30941              :                 case 0:
   30942              :                   if (
   30943              : #line 8720 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30944              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   30945              :    && peep2_reg_dead_p (3, operands[0])
   30946              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   30947              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   30948              :                     {
   30949              :                       *pmatch_len_ = 2;
   30950              :                       res = gen_peephole2_76 (insn, operands);
   30951              :                       if (res != NULL_RTX)
   30952              :                         return res;
   30953              :                     }
   30954              :                   break;
   30955              : 
   30956              :                 case 1:
   30957              :                   if (
   30958              : #line 8747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30959              : (TARGET_APX_NDD
   30960              :    && (TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   30961              :    && peep2_reg_dead_p (3, operands[0])
   30962              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   30963              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   30964              :                     {
   30965              :                       *pmatch_len_ = 2;
   30966              :                       res = gen_peephole2_80 (insn, operands);
   30967              :                       if (res != NULL_RTX)
   30968              :                         return res;
   30969              :                     }
   30970              :                   break;
   30971              : 
   30972              :                 case 2:
   30973              :                   if (
   30974              : #line 9250 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30975              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   30976              :    && peep2_reg_dead_p (3, operands[0])
   30977              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   30978              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   30979              :                     {
   30980              :                       *pmatch_len_ = 2;
   30981              :                       res = gen_peephole2_96 (insn, operands);
   30982              :                       if (res != NULL_RTX)
   30983              :                         return res;
   30984              :                     }
   30985              :                   break;
   30986              : 
   30987              :                 case 3:
   30988              :                   x5 = PATTERN (peep2_next_insn (2));
   30989              :                   x6 = XEXP (x5, 0);
   30990              :                   if (rtx_equal_p (x6, operands[1])
   30991              :                       && 
   30992              : #line 9306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   30993              : (TARGET_APX_NDD
   30994              :    && (TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   30995              :    && peep2_reg_dead_p (3, operands[0])
   30996              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   30997              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   30998              :                     {
   30999              :                       *pmatch_len_ = 2;
   31000              :                       res = gen_peephole2_98 (insn, operands);
   31001              :                       if (res != NULL_RTX)
   31002              :                         return res;
   31003              :                     }
   31004              :                   if (rtx_equal_p (x6, operands[2])
   31005              :                       && 
   31006              : #line 9361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31007              : (TARGET_APX_NDD
   31008              :    && (TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31009              :    && peep2_reg_dead_p (3, operands[0])
   31010              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31011              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   31012              :                     {
   31013              :                       *pmatch_len_ = 2;
   31014              :                       res = gen_peephole2_100 (insn, operands);
   31015              :                       if (res != NULL_RTX)
   31016              :                         return res;
   31017              :                     }
   31018              :                   break;
   31019              : 
   31020              :                 case 4:
   31021              :                   if (
   31022              : #line 9918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31023              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31024              :    && peep2_reg_dead_p (3, operands[0])
   31025              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31026              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   31027              :                     {
   31028              :                       *pmatch_len_ = 2;
   31029              :                       res = gen_peephole2_112 (insn, operands);
   31030              :                       if (res != NULL_RTX)
   31031              :                         return res;
   31032              :                     }
   31033              :                   break;
   31034              : 
   31035              :                 case 5:
   31036              :                   if (
   31037              : #line 9963 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31038              : (TARGET_APX_NDD
   31039              :    && (TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31040              :    && peep2_reg_dead_p (3, operands[0])
   31041              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31042              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   31043              :                     {
   31044              :                       *pmatch_len_ = 2;
   31045              :                       res = gen_peephole2_114 (insn, operands);
   31046              :                       if (res != NULL_RTX)
   31047              :                         return res;
   31048              :                     }
   31049              :                   break;
   31050              : 
   31051              :                 case 6:
   31052              :                   if (
   31053              : #line 10330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31054              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31055              :    && peep2_reg_dead_p (3, operands[0])
   31056              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31057              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   31058              :                     {
   31059              :                       *pmatch_len_ = 2;
   31060              :                       res = gen_peephole2_126 (insn, operands);
   31061              :                       if (res != NULL_RTX)
   31062              :                         return res;
   31063              :                     }
   31064              :                   break;
   31065              : 
   31066              :                 case 7:
   31067              :                   if (
   31068              : #line 8865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31069              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31070              :    && peep2_reg_dead_p (3, operands[0])
   31071              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31072              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   31073              :                     {
   31074              :                       *pmatch_len_ = 2;
   31075              :                       res = gen_peephole2_88 (insn, operands);
   31076              :                       if (res != NULL_RTX)
   31077              :                         return res;
   31078              :                     }
   31079              :                   break;
   31080              : 
   31081              :                 case 8:
   31082              :                   if (
   31083              : #line 8891 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31084              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31085              :    && peep2_reg_dead_p (3, operands[0])
   31086              :    && peep2_reg_dead_p (4, operands[5])
   31087              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31088              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   31089              :    && !reg_overlap_mentioned_p (operands[5], operands[1])))
   31090              :                     {
   31091              :                       *pmatch_len_ = 3;
   31092              :                       res = gen_peephole2_92 (insn, operands);
   31093              :                       if (res != NULL_RTX)
   31094              :                         return res;
   31095              :                     }
   31096              :                   break;
   31097              : 
   31098              :                 case 9:
   31099              :                   if (
   31100              : #line 9530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31101              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31102              :    && peep2_reg_dead_p (3, operands[0])
   31103              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31104              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   31105              :                     {
   31106              :                       *pmatch_len_ = 2;
   31107              :                       res = gen_peephole2_106 (insn, operands);
   31108              :                       if (res != NULL_RTX)
   31109              :                         return res;
   31110              :                     }
   31111              :                   break;
   31112              : 
   31113              :                 case 10:
   31114              :                   if (
   31115              : #line 9556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31116              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31117              :    && peep2_reg_dead_p (3, operands[0])
   31118              :    && peep2_reg_dead_p (4, operands[5])
   31119              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31120              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   31121              :    && !reg_overlap_mentioned_p (operands[5], operands[1])))
   31122              :                     {
   31123              :                       *pmatch_len_ = 3;
   31124              :                       res = gen_peephole2_110 (insn, operands);
   31125              :                       if (res != NULL_RTX)
   31126              :                         return res;
   31127              :                     }
   31128              :                   break;
   31129              : 
   31130              :                 default:
   31131              :                   break;
   31132              :                 }
   31133              :             }
   31134              :           if (peep2_current_count >= 4
   31135              :               && pattern1207 (x3, 
   31136              : E_SImode) == 0
   31137              :               && 
   31138              : #line 14622 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31139              : (REGNO (operands[0]) != REGNO (operands[2])
   31140              :    && !reg_mentioned_p (operands[0], operands[1])
   31141              :    && !reg_mentioned_p (operands[2], operands[1])))
   31142              :             {
   31143              :               *pmatch_len_ = 3;
   31144              :               res = gen_peephole2_167 (insn, operands);
   31145              :               if (res != NULL_RTX)
   31146              :                 return res;
   31147              :             }
   31148              :           if (general_reg_operand (operands[1], E_SImode))
   31149              :             {
   31150              :               x7 = XEXP (x4, 1);
   31151              :               if (GET_CODE (x7) == NEG
   31152              :                   && GET_MODE (x7) == E_SImode
   31153              :                   && pattern1353 (x3) == 0)
   31154              :                 {
   31155              :                   x5 = PATTERN (peep2_next_insn (2));
   31156              :                   if (GET_CODE (x5) == SET
   31157              :                       && pattern1354 (x5) == 0)
   31158              :                     {
   31159              :                       *pmatch_len_ = 2;
   31160              :                       res = gen_peephole2_173 (insn, operands);
   31161              :                       if (res != NULL_RTX)
   31162              :                         return res;
   31163              :                     }
   31164              :                 }
   31165              :             }
   31166              :         }
   31167              :     }
   31168              :   if (GET_CODE (x3) != SET)
   31169              :     return NULL;
   31170              :   if (register_operand (operands[1], E_SImode))
   31171              :     {
   31172              :       res = peephole2_11 (x1, insn, pmatch_len_);
   31173              :       if (res != NULL_RTX)
   31174              :         return res;
   31175              :     }
   31176              :   if (!immediate_operand (operands[1], E_SImode))
   31177              :     return NULL;
   31178              :   switch (pattern961 (x3, 
   31179              : E_DImode, 
   31180              : E_SImode))
   31181              :     {
   31182              :     case 0:
   31183              :       if (!(
   31184              : #line 11428 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31185              : (REGNO (operands[3]) != AX_REG
   31186              :    && REGNO (operands[0]) != REGNO (operands[2])
   31187              :    && REGNO (operands[0]) != REGNO (operands[3])
   31188              :    && (REGNO (operands[0]) == REGNO (operands[4])
   31189              :        || REGNO (operands[0]) == DX_REG
   31190              :        || peep2_reg_dead_p (3, operands[0]))) && 
   31191              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31192              : (!TARGET_64BIT)))
   31193              :         return NULL;
   31194              :       *pmatch_len_ = 2;
   31195              :       return gen_peephole2_130 (insn, operands);
   31196              : 
   31197              :     case 1:
   31198              :       if (!(
   31199              : #line 11450 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31200              : (REGNO (operands[3]) != DX_REG
   31201              :    && REGNO (operands[0]) != REGNO (operands[2])
   31202              :    && REGNO (operands[0]) != REGNO (operands[3])
   31203              :    && (REGNO (operands[0]) == REGNO (operands[4])
   31204              :        || REGNO (operands[0]) == REGNO (operands[5])
   31205              :        || peep2_reg_dead_p (3, operands[0]))
   31206              :    && (REGNO (operands[2]) == REGNO (operands[4])
   31207              :        || REGNO (operands[2]) == REGNO (operands[5])
   31208              :        || peep2_reg_dead_p (3, operands[2]))) && 
   31209              : #line 1236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31210              : (!TARGET_64BIT)))
   31211              :         return NULL;
   31212              :       *pmatch_len_ = 2;
   31213              :       return gen_peephole2_132 (insn, operands);
   31214              : 
   31215              :     case 2:
   31216              :       x5 = PATTERN (peep2_next_insn (2));
   31217              :       x8 = XVECEXP (x5, 0, 1);
   31218              :       x9 = XEXP (x8, 0);
   31219              :       if (!rtx_equal_p (x9, operands[2]))
   31220              :         return NULL;
   31221              :       x10 = XVECEXP (x5, 0, 0);
   31222              :       x11 = XEXP (x10, 1);
   31223              :       switch (GET_CODE (x11))
   31224              :         {
   31225              :         case SMUL_HIGHPART:
   31226              :           if (pattern1806 (x11) != 0
   31227              :               || !
   31228              : #line 11589 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31229              : (REGNO (operands[3]) != AX_REG
   31230              :    && REGNO (operands[0]) != REGNO (operands[2])
   31231              :    && REGNO (operands[0]) != REGNO (operands[3])
   31232              :    && (REGNO (operands[0]) == REGNO (operands[4])
   31233              :        || peep2_reg_dead_p (3, operands[0]))))
   31234              :             return NULL;
   31235              :           *pmatch_len_ = 2;
   31236              :           return gen_peephole2_134 (insn, operands);
   31237              : 
   31238              :         case UMUL_HIGHPART:
   31239              :           if (pattern1806 (x11) != 0
   31240              :               || !
   31241              : #line 11589 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31242              : (REGNO (operands[3]) != AX_REG
   31243              :    && REGNO (operands[0]) != REGNO (operands[2])
   31244              :    && REGNO (operands[0]) != REGNO (operands[3])
   31245              :    && (REGNO (operands[0]) == REGNO (operands[4])
   31246              :        || peep2_reg_dead_p (3, operands[0]))))
   31247              :             return NULL;
   31248              :           *pmatch_len_ = 2;
   31249              :           return gen_peephole2_135 (insn, operands);
   31250              : 
   31251              :         case ZERO_EXTEND:
   31252              :           if (GET_MODE (x11) != E_DImode
   31253              :               || !general_reg_operand (operands[4], E_DImode))
   31254              :             return NULL;
   31255              :           x12 = XEXP (x11, 0);
   31256              :           if (GET_MODE (x12) != E_SImode)
   31257              :             return NULL;
   31258              :           switch (GET_CODE (x12))
   31259              :             {
   31260              :             case SMUL_HIGHPART:
   31261              :               x13 = XEXP (x12, 0);
   31262              :               if (!rtx_equal_p (x13, operands[2]))
   31263              :                 return NULL;
   31264              :               x14 = XEXP (x12, 1);
   31265              :               if (!rtx_equal_p (x14, operands[0])
   31266              :                   || !
   31267              : #line 11610 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31268              : (TARGET_64BIT
   31269              :    && REGNO (operands[3]) != AX_REG
   31270              :    && REGNO (operands[0]) != REGNO (operands[2])
   31271              :    && REGNO (operands[2]) != REGNO (operands[3])
   31272              :    && REGNO (operands[0]) != REGNO (operands[3])
   31273              :    && (REGNO (operands[0]) == REGNO (operands[4])
   31274              :        || peep2_reg_dead_p (3, operands[0]))))
   31275              :                 return NULL;
   31276              :               *pmatch_len_ = 2;
   31277              :               return gen_peephole2_138 (insn, operands);
   31278              : 
   31279              :             case UMUL_HIGHPART:
   31280              :               x13 = XEXP (x12, 0);
   31281              :               if (!rtx_equal_p (x13, operands[2]))
   31282              :                 return NULL;
   31283              :               x14 = XEXP (x12, 1);
   31284              :               if (!rtx_equal_p (x14, operands[0])
   31285              :                   || !
   31286              : #line 11610 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31287              : (TARGET_64BIT
   31288              :    && REGNO (operands[3]) != AX_REG
   31289              :    && REGNO (operands[0]) != REGNO (operands[2])
   31290              :    && REGNO (operands[2]) != REGNO (operands[3])
   31291              :    && REGNO (operands[0]) != REGNO (operands[3])
   31292              :    && (REGNO (operands[0]) == REGNO (operands[4])
   31293              :        || peep2_reg_dead_p (3, operands[0]))))
   31294              :                 return NULL;
   31295              :               *pmatch_len_ = 2;
   31296              :               return gen_peephole2_139 (insn, operands);
   31297              : 
   31298              :             default:
   31299              :               return NULL;
   31300              :             }
   31301              : 
   31302              :         default:
   31303              :           return NULL;
   31304              :         }
   31305              : 
   31306              :     default:
   31307              :       return NULL;
   31308              :     }
   31309              : }
   31310              : 
   31311              :  rtx_insn *
   31312              : peephole2_21 (rtx x1 ATTRIBUTE_UNUSED,
   31313              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31314              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31315              : {
   31316              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31317              :   rtx x2, x3, x4, x5, x6;
   31318              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31319              :   x2 = PATTERN (peep2_next_insn (1));
   31320              :   if (GET_CODE (x2) != SET)
   31321              :     return NULL;
   31322              :   x3 = XEXP (x2, 1);
   31323              :   if (!binary_fp_operator (x3, E_VOIDmode))
   31324              :     return NULL;
   31325              :   operands[2] = x3;
   31326              :   x4 = XEXP (x2, 0);
   31327              :   if (!rtx_equal_p (x4, operands[0]))
   31328              :     return NULL;
   31329              :   x5 = XEXP (x3, 0);
   31330              :   switch (GET_CODE (x5))
   31331              :     {
   31332              :     case REG:
   31333              :       if (!rtx_equal_p (x5, operands[0]))
   31334              :         return NULL;
   31335              :       x6 = XEXP (x3, 1);
   31336              :       operands[3] = x6;
   31337              :       if (!memory_operand (operands[3], E_VOIDmode)
   31338              :           || !
   31339              : #line 27295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31340              : (REGNO (operands[0]) != REGNO (operands[1])))
   31341              :         return NULL;
   31342              :       *pmatch_len_ = 1;
   31343              :       return gen_peephole2_231 (insn, operands);
   31344              : 
   31345              :     case SUBREG:
   31346              :     case MEM:
   31347              :       operands[3] = x5;
   31348              :       if (!memory_operand (operands[3], E_VOIDmode))
   31349              :         return NULL;
   31350              :       x6 = XEXP (x3, 1);
   31351              :       if (!rtx_equal_p (x6, operands[0])
   31352              :           || !
   31353              : #line 27317 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31354              : (REGNO (operands[0]) != REGNO (operands[1])))
   31355              :         return NULL;
   31356              :       *pmatch_len_ = 1;
   31357              :       return gen_peephole2_232 (insn, operands);
   31358              : 
   31359              :     default:
   31360              :       return NULL;
   31361              :     }
   31362              : }
   31363              : 
   31364              :  rtx_insn *
   31365              : peephole2_23 (rtx x1 ATTRIBUTE_UNUSED,
   31366              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31367              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31368              : {
   31369              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31370              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31371              :   rtx x10, x11, x12;
   31372              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31373              :   x2 = PATTERN (peep2_next_insn (1));
   31374              :   if (pattern421 (x2, 
   31375              : CALL, 
   31376              : 2) != 0)
   31377              :     return NULL;
   31378              :   x3 = XVECEXP (x2, 0, 0);
   31379              :   x4 = XEXP (x3, 1);
   31380              :   x5 = XEXP (x4, 0);
   31381              :   if (GET_CODE (x5) != MEM
   31382              :       || GET_MODE (x5) != E_QImode)
   31383              :     return NULL;
   31384              :   x6 = XVECEXP (x2, 0, 1);
   31385              :   if (pattern1266 (x6) != 0)
   31386              :     return NULL;
   31387              :   x7 = XEXP (x6, 0);
   31388              :   if (GET_CODE (x7) != REG
   31389              :       || REGNO (x7) != 7
   31390              :       || GET_MODE (x7) != E_SImode)
   31391              :     return NULL;
   31392              :   x8 = XEXP (x3, 0);
   31393              :   operands[2] = x8;
   31394              :   x9 = XEXP (x4, 1);
   31395              :   operands[3] = x9;
   31396              :   x10 = XEXP (x6, 1);
   31397              :   x11 = XEXP (x10, 1);
   31398              :   operands[4] = x11;
   31399              :   if (!immediate_operand (operands[4], E_SImode))
   31400              :     return NULL;
   31401              :   x12 = XEXP (x5, 0);
   31402              :   if (!rtx_equal_p (x12, operands[0])
   31403              :       || !
   31404              : #line 20840 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31405              : (!TARGET_64BIT && SIBLING_CALL_P (peep2_next_insn (1))
   31406              :    && !reg_mentioned_p (operands[0],
   31407              :                         CALL_INSN_FUNCTION_USAGE (peep2_next_insn (1)))))
   31408              :     return NULL;
   31409              :   *pmatch_len_ = 1;
   31410              :   return gen_peephole2_208 (insn, operands);
   31411              : }
   31412              : 
   31413              :  rtx_insn *
   31414              : peephole2_26 (rtx x1 ATTRIBUTE_UNUSED,
   31415              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31416              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31417              : {
   31418              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31419              :   rtx x2, x3, x4, x5, x6;
   31420              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31421              :   if (!memory_operand (operands[1], E_SImode)
   31422              :       || !register_operand (operands[0], E_SImode))
   31423              :     return NULL;
   31424              :   x2 = PATTERN (peep2_next_insn (1));
   31425              :   switch (GET_CODE (x2))
   31426              :     {
   31427              :     case PARALLEL:
   31428              :       if (XVECLEN (x2, 0) != 2)
   31429              :         return NULL;
   31430              :       x3 = XVECEXP (x2, 0, 0);
   31431              :       if (GET_CODE (x3) != SET)
   31432              :         return NULL;
   31433              :       x4 = PATTERN (peep2_next_insn (2));
   31434              :       if (GET_CODE (x4) != SET)
   31435              :         return NULL;
   31436              :       x5 = XEXP (x3, 1);
   31437              :       switch (GET_CODE (x5))
   31438              :         {
   31439              :         case PLUS:
   31440              :         case MINUS:
   31441              :         case AND:
   31442              :         case IOR:
   31443              :         case XOR:
   31444              :           if (peep2_current_count < 4)
   31445              :             return NULL;
   31446              :           operands[3] = x5;
   31447              :           res = peephole2_25 (x1, insn, pmatch_len_);
   31448              :           if (res != NULL_RTX)
   31449              :             return res;
   31450              :           if (GET_CODE (x5) != XOR
   31451              :               || pattern1362 (x2, 
   31452              : E_SImode) != 0
   31453              :               || pattern1832 (x4, 
   31454              : E_SImode) != 0
   31455              :               || !
   31456              : #line 28843 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31457              : (TARGET_APX_NDD
   31458              :    && (TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31459              :    && REGNO (operands[3]) == REGNO (operands[0])
   31460              :    && (rtx_equal_p (operands[0], operands[5])
   31461              :        ? rtx_equal_p (operands[2], operands[6])
   31462              :        : rtx_equal_p (operands[2], operands[5])
   31463              :          && rtx_equal_p (operands[0], operands[6]))
   31464              :    && peep2_reg_dead_p (3, operands[4])
   31465              :    && peep2_reg_dead_p (4, operands[0])
   31466              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31467              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   31468              :    && (SImode != QImode
   31469              :        || immediate_operand (operands[2], QImode)
   31470              :        || any_QIreg_operand (operands[2], QImode))))
   31471              :             return NULL;
   31472              :           *pmatch_len_ = 3;
   31473              :           return gen_peephole2_341 (insn, operands);
   31474              : 
   31475              :         case COMPARE:
   31476              :           if (pattern1267 (x2, 
   31477              : E_SImode) != 0
   31478              :               || pattern1516 (x2) != 0)
   31479              :             return NULL;
   31480              :           x6 = XEXP (x4, 0);
   31481              :           if (rtx_equal_p (x6, operands[1])
   31482              :               && 
   31483              : #line 28673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31484              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31485              :    && peep2_reg_dead_p (3, operands[0])
   31486              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31487              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   31488              :    && ix86_match_ccmode (peep2_next_insn (1),
   31489              :                          (GET_CODE (operands[3]) == PLUS
   31490              :                           || GET_CODE (operands[3]) == MINUS)
   31491              :                          ? CCGOCmode : CCNOmode)))
   31492              :             {
   31493              :               *pmatch_len_ = 2;
   31494              :               res = gen_peephole2_321 (insn, operands);
   31495              :               if (res != NULL_RTX)
   31496              :                 return res;
   31497              :             }
   31498              :           if (peep2_current_count < 4
   31499              :               || pattern1833 (x6, 
   31500              : E_SImode) != 0
   31501              :               || !
   31502              : #line 28996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31503              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31504              :    && peep2_reg_dead_p (3, operands[0])
   31505              :    && peep2_reg_dead_p (4, operands[4])
   31506              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31507              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   31508              :    && !reg_overlap_mentioned_p (operands[4], operands[1])
   31509              :    && ix86_match_ccmode (peep2_next_insn (1),
   31510              :                          (GET_CODE (operands[3]) == PLUS
   31511              :                           || GET_CODE (operands[3]) == MINUS)
   31512              :                          ? CCGOCmode : CCNOmode)))
   31513              :             return NULL;
   31514              :           *pmatch_len_ = 3;
   31515              :           return gen_peephole2_353 (insn, operands);
   31516              : 
   31517              :         default:
   31518              :           return NULL;
   31519              :         }
   31520              : 
   31521              :     case SET:
   31522              :       if (pattern852 (x2, 
   31523              : E_SImode) != 0
   31524              :           || !
   31525              : #line 29032 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31526              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31527              :    && (REGNO (operands[4]) == REGNO (operands[0])
   31528              :        || REGNO (operands[4]) == REGNO (operands[3]))
   31529              :    && (rtx_equal_p (operands[REGNO (operands[4]) == REGNO (operands[0])
   31530              :                              ? 3 : 0], operands[5])
   31531              :        ? rtx_equal_p (operands[2], operands[6])
   31532              :        : rtx_equal_p (operands[2], operands[5])
   31533              :          && rtx_equal_p (operands[REGNO (operands[4]) == REGNO (operands[0])
   31534              :                                   ? 3 : 0], operands[6]))
   31535              :    && peep2_reg_dead_p (4, operands[4])
   31536              :    && peep2_reg_dead_p (5, operands[REGNO (operands[4]) == REGNO (operands[0])
   31537              :                                     ? 3 : 0])
   31538              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31539              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   31540              :    && !reg_overlap_mentioned_p (operands[3], operands[0])
   31541              :    && !reg_overlap_mentioned_p (operands[3], operands[1])
   31542              :    && !reg_overlap_mentioned_p (operands[3], operands[2])
   31543              :    && (SImode != QImode
   31544              :        || immediate_operand (operands[2], QImode)
   31545              :        || any_QIreg_operand (operands[2], QImode))))
   31546              :         return NULL;
   31547              :       *pmatch_len_ = 4;
   31548              :       return gen_peephole2_357 (insn, operands);
   31549              : 
   31550              :     default:
   31551              :       return NULL;
   31552              :     }
   31553              : }
   31554              : 
   31555              :  rtx_insn *
   31556              : peephole2_30 (rtx x1 ATTRIBUTE_UNUSED,
   31557              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31558              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31559              : {
   31560              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31561              :   rtx x2, x3, x4, x5, x6, x7;
   31562              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31563              :   x2 = XEXP (x1, 1);
   31564              :   x3 = XEXP (x2, 0);
   31565              :   switch (GET_CODE (x3))
   31566              :     {
   31567              :     case NE:
   31568              :     case EQ:
   31569              :     case GE:
   31570              :     case GT:
   31571              :     case LE:
   31572              :     case LT:
   31573              :     case LTGT:
   31574              :     case GEU:
   31575              :     case GTU:
   31576              :     case LEU:
   31577              :     case LTU:
   31578              :     case UNORDERED:
   31579              :     case ORDERED:
   31580              :     case UNEQ:
   31581              :     case UNGE:
   31582              :     case UNGT:
   31583              :     case UNLE:
   31584              :     case UNLT:
   31585              :       operands[1] = x3;
   31586              :       switch (pattern247 (x1))
   31587              :         {
   31588              :         case 0:
   31589              :           switch (GET_MODE (operands[0]))
   31590              :             {
   31591              :             case E_HImode:
   31592              :               if (pattern1208 (x2, 
   31593              : E_HImode) != 0
   31594              :                   || !
   31595              : #line 26885 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31596              : (TARGET_CMOVE && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   31597              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   31598              :    && optimize_insn_for_speed_p ()))
   31599              :                 return NULL;
   31600              :               *pmatch_len_ = 0;
   31601              :               return gen_peephole2_219 (insn, operands);
   31602              : 
   31603              :             case E_SImode:
   31604              :               if (pattern1208 (x2, 
   31605              : E_SImode) != 0
   31606              :                   || !
   31607              : #line 26885 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31608              : (TARGET_CMOVE && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   31609              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   31610              :    && optimize_insn_for_speed_p ()))
   31611              :                 return NULL;
   31612              :               *pmatch_len_ = 0;
   31613              :               return gen_peephole2_220 (insn, operands);
   31614              : 
   31615              :             case E_DImode:
   31616              :               if (pattern1208 (x2, 
   31617              : E_DImode) != 0
   31618              :                   || !(
   31619              : #line 26885 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31620              : (TARGET_CMOVE && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   31621              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   31622              :    && optimize_insn_for_speed_p ()) && 
   31623              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31624              : (TARGET_64BIT)))
   31625              :                 return NULL;
   31626              :               *pmatch_len_ = 0;
   31627              :               return gen_peephole2_221 (insn, operands);
   31628              : 
   31629              :             case E_SFmode:
   31630              :               if (!general_reg_operand (operands[0], E_SFmode)
   31631              :                   || pattern1269 (x2, 
   31632              : E_SFmode) != 0
   31633              :                   || !
   31634              : #line 27137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31635              : ((SFmode != DFmode || TARGET_64BIT)
   31636              :    && TARGET_80387 && TARGET_CMOVE
   31637              :    && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   31638              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   31639              :    && optimize_insn_for_speed_p ()))
   31640              :                 return NULL;
   31641              :               *pmatch_len_ = 0;
   31642              :               return gen_peephole2_229 (insn, operands);
   31643              : 
   31644              :             case E_DFmode:
   31645              :               if (!general_reg_operand (operands[0], E_DFmode)
   31646              :                   || pattern1269 (x2, 
   31647              : E_DFmode) != 0
   31648              :                   || !
   31649              : #line 27137 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31650              : ((DFmode != DFmode || TARGET_64BIT)
   31651              :    && TARGET_80387 && TARGET_CMOVE
   31652              :    && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   31653              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   31654              :    && optimize_insn_for_speed_p ()))
   31655              :                 return NULL;
   31656              :               *pmatch_len_ = 0;
   31657              :               return gen_peephole2_230 (insn, operands);
   31658              : 
   31659              :             default:
   31660              :               return NULL;
   31661              :             }
   31662              : 
   31663              :         case 1:
   31664              :           if (!register_operand (operands[0], E_DImode)
   31665              :               || GET_MODE (x2) != E_DImode
   31666              :               || !ix86_comparison_operator (operands[1], E_VOIDmode))
   31667              :             return NULL;
   31668              :           x4 = XEXP (x2, 1);
   31669              :           x5 = XEXP (x4, 0);
   31670              :           operands[2] = x5;
   31671              :           if (!nonimmediate_operand (operands[2], E_SImode))
   31672              :             return NULL;
   31673              :           x6 = XEXP (x2, 2);
   31674              :           x7 = XEXP (x6, 0);
   31675              :           operands[3] = x7;
   31676              :           if (!nonimmediate_operand (operands[3], E_SImode)
   31677              :               || !
   31678              : #line 26915 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31679              : (TARGET_64BIT
   31680              :    && TARGET_CMOVE && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   31681              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   31682              :    && optimize_insn_for_speed_p ()))
   31683              :             return NULL;
   31684              :           *pmatch_len_ = 0;
   31685              :           return gen_peephole2_222 (insn, operands);
   31686              : 
   31687              :         default:
   31688              :           return NULL;
   31689              :         }
   31690              : 
   31691              :     default:
   31692              :       return NULL;
   31693              :     }
   31694              : }
   31695              : 
   31696              :  rtx_insn *
   31697              : peephole2_37 (rtx x1 ATTRIBUTE_UNUSED,
   31698              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31699              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31700              : {
   31701              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31702              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31703              :   rtx x10, x11;
   31704              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31705              :   x2 = XEXP (x1, 1);
   31706              :   if (XWINT (x2, 0) == -1L)
   31707              :     {
   31708              :       switch (GET_MODE (operands[0]))
   31709              :         {
   31710              :         case E_HImode:
   31711              :           if (general_reg_operand (operands[0], E_HImode)
   31712              :               && 
   31713              : #line 29199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31714              : ((TARGET_MOVE_M1_VIA_OR || optimize_insn_for_size_p ())
   31715              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   31716              :             {
   31717              :               *pmatch_len_ = 0;
   31718              :               res = gen_peephole2_367 (insn, operands);
   31719              :               if (res != NULL_RTX)
   31720              :                 return res;
   31721              :             }
   31722              :           break;
   31723              : 
   31724              :         case E_SImode:
   31725              :           if (general_reg_operand (operands[0], E_SImode)
   31726              :               && 
   31727              : #line 29199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31728              : ((TARGET_MOVE_M1_VIA_OR || optimize_insn_for_size_p ())
   31729              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   31730              :             {
   31731              :               *pmatch_len_ = 0;
   31732              :               res = gen_peephole2_368 (insn, operands);
   31733              :               if (res != NULL_RTX)
   31734              :                 return res;
   31735              :             }
   31736              :           break;
   31737              : 
   31738              :         case E_DImode:
   31739              :           if (general_reg_operand (operands[0], E_DImode)
   31740              :               && (
   31741              : #line 29199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31742              : ((TARGET_MOVE_M1_VIA_OR || optimize_insn_for_size_p ())
   31743              :    && peep2_regno_dead_p (0, FLAGS_REG)) && 
   31744              : #line 1165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31745              : (TARGET_64BIT)))
   31746              :             {
   31747              :               *pmatch_len_ = 0;
   31748              :               res = gen_peephole2_369 (insn, operands);
   31749              :               if (res != NULL_RTX)
   31750              :                 return res;
   31751              :             }
   31752              :           break;
   31753              : 
   31754              :         default:
   31755              :           break;
   31756              :         }
   31757              :     }
   31758              :   if (peep2_current_count < 2
   31759              :       || peep2_current_count < 3)
   31760              :     return NULL;
   31761              :   operands[2] = x2;
   31762              :   x3 = PATTERN (peep2_next_insn (1));
   31763              :   if (pattern608 (x3, 
   31764              : 2) != 0)
   31765              :     return NULL;
   31766              :   x4 = XVECEXP (x3, 0, 0);
   31767              :   x5 = XEXP (x4, 1);
   31768              :   if (XINT (x5, 1) != 110)
   31769              :     return NULL;
   31770              :   x6 = XVECEXP (x3, 0, 1);
   31771              :   if (GET_CODE (x6) != SET)
   31772              :     return NULL;
   31773              :   x7 = XEXP (x6, 1);
   31774              :   if (GET_CODE (x7) != PLUS
   31775              :       || pattern1518 (x3) != 0
   31776              :       || pattern1712 (x3) != 0)
   31777              :     return NULL;
   31778              :   x8 = PATTERN (peep2_next_insn (2));
   31779              :   x9 = XEXP (x8, 1);
   31780              :   x10 = XEXP (x9, 1);
   31781              :   operands[3] = x10;
   31782              :   x11 = XEXP (x9, 0);
   31783              :   if (!rtx_equal_p (x11, operands[0]))
   31784              :     return NULL;
   31785              :   switch (GET_MODE (operands[0]))
   31786              :     {
   31787              :     case E_HImode:
   31788              :       if (pattern1889 (x3, 
   31789              : E_HImode) != 0
   31790              :           || !
   31791              : #line 724 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31792              : (peep2_reg_dead_p (3, operands[0])
   31793              :    && (unsigned HOST_WIDE_INT) INTVAL (operands[2])
   31794              :       == -(unsigned HOST_WIDE_INT) INTVAL (operands[3])
   31795              :    && !reg_overlap_mentioned_p (operands[0], operands[1])))
   31796              :         return NULL;
   31797              :       *pmatch_len_ = 2;
   31798              :       return gen_peephole2_448 (insn, operands);
   31799              : 
   31800              :     case E_SImode:
   31801              :       if (pattern1889 (x3, 
   31802              : E_SImode) != 0
   31803              :           || !
   31804              : #line 724 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31805              : (peep2_reg_dead_p (3, operands[0])
   31806              :    && (unsigned HOST_WIDE_INT) INTVAL (operands[2])
   31807              :       == -(unsigned HOST_WIDE_INT) INTVAL (operands[3])
   31808              :    && !reg_overlap_mentioned_p (operands[0], operands[1])))
   31809              :         return NULL;
   31810              :       *pmatch_len_ = 2;
   31811              :       return gen_peephole2_449 (insn, operands);
   31812              : 
   31813              :     case E_DImode:
   31814              :       if (pattern1889 (x3, 
   31815              : E_DImode) != 0
   31816              :           || !(
   31817              : #line 724 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   31818              : (peep2_reg_dead_p (3, operands[0])
   31819              :    && (unsigned HOST_WIDE_INT) INTVAL (operands[2])
   31820              :       == -(unsigned HOST_WIDE_INT) INTVAL (operands[3])
   31821              :    && !reg_overlap_mentioned_p (operands[0], operands[1])) && 
   31822              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31823              : (TARGET_64BIT)))
   31824              :         return NULL;
   31825              :       *pmatch_len_ = 2;
   31826              :       return gen_peephole2_450 (insn, operands);
   31827              : 
   31828              :     default:
   31829              :       return NULL;
   31830              :     }
   31831              : }
   31832              : 
   31833              :  rtx_insn *
   31834              : peephole2_44 (rtx x1 ATTRIBUTE_UNUSED,
   31835              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31836              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31837              : {
   31838              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31839              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31840              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   31841              :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
   31842              :   rtx x26;
   31843              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31844              :   x2 = XVECEXP (x1, 0, 0);
   31845              :   x3 = XEXP (x2, 0);
   31846              :   if (GET_CODE (x3) != REG
   31847              :       || REGNO (x3) != 17)
   31848              :     return NULL;
   31849              :   x4 = XVECEXP (x1, 0, 1);
   31850              :   if (GET_CODE (x4) != SET)
   31851              :     return NULL;
   31852              :   x5 = XEXP (x2, 1);
   31853              :   x6 = XEXP (x5, 0);
   31854              :   switch (GET_CODE (x6))
   31855              :     {
   31856              :     case REG:
   31857              :       operands[0] = x6;
   31858              :       x7 = XEXP (x4, 1);
   31859              :       if (GET_CODE (x7) != MINUS
   31860              :           || GET_MODE (x3) != E_CCmode
   31861              :           || GET_MODE (x5) != E_CCmode)
   31862              :         return NULL;
   31863              :       x8 = XEXP (x5, 1);
   31864              :       operands[1] = x8;
   31865              :       x9 = XEXP (x7, 0);
   31866              :       if (!rtx_equal_p (x9, operands[0]))
   31867              :         return NULL;
   31868              :       x10 = XEXP (x7, 1);
   31869              :       if (!rtx_equal_p (x10, operands[1]))
   31870              :         return NULL;
   31871              :       x11 = XEXP (x4, 0);
   31872              :       if (!rtx_equal_p (x11, operands[0]))
   31873              :         return NULL;
   31874              :       switch (GET_MODE (operands[0]))
   31875              :         {
   31876              :         case E_QImode:
   31877              :           if (!general_reg_operand (operands[0], E_QImode)
   31878              :               || !general_gr_operand (operands[1], E_QImode)
   31879              :               || GET_MODE (x7) != E_QImode
   31880              :               || !
   31881              : #line 8707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31882              : (find_regno_note (peep2_next_insn (0), REG_UNUSED, REGNO (operands[0])) != 0))
   31883              :             return NULL;
   31884              :           *pmatch_len_ = 0;
   31885              :           return gen_peephole2_70 (insn, operands);
   31886              : 
   31887              :         case E_HImode:
   31888              :           if (!general_reg_operand (operands[0], E_HImode)
   31889              :               || !general_gr_operand (operands[1], E_HImode)
   31890              :               || GET_MODE (x7) != E_HImode
   31891              :               || !
   31892              : #line 8707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31893              : (find_regno_note (peep2_next_insn (0), REG_UNUSED, REGNO (operands[0])) != 0))
   31894              :             return NULL;
   31895              :           *pmatch_len_ = 0;
   31896              :           return gen_peephole2_71 (insn, operands);
   31897              : 
   31898              :         case E_SImode:
   31899              :           if (!general_reg_operand (operands[0], E_SImode)
   31900              :               || !general_gr_operand (operands[1], E_SImode)
   31901              :               || GET_MODE (x7) != E_SImode
   31902              :               || !
   31903              : #line 8707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31904              : (find_regno_note (peep2_next_insn (0), REG_UNUSED, REGNO (operands[0])) != 0))
   31905              :             return NULL;
   31906              :           *pmatch_len_ = 0;
   31907              :           return gen_peephole2_72 (insn, operands);
   31908              : 
   31909              :         case E_DImode:
   31910              :           if (!general_reg_operand (operands[0], E_DImode)
   31911              :               || !general_gr_operand (operands[1], E_DImode)
   31912              :               || GET_MODE (x7) != E_DImode
   31913              :               || !(
   31914              : #line 8707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31915              : (find_regno_note (peep2_next_insn (0), REG_UNUSED, REGNO (operands[0])) != 0) && 
   31916              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31917              : (TARGET_64BIT)))
   31918              :             return NULL;
   31919              :           *pmatch_len_ = 0;
   31920              :           return gen_peephole2_73 (insn, operands);
   31921              : 
   31922              :         default:
   31923              :           return NULL;
   31924              :         }
   31925              : 
   31926              :     case ZERO_EXTEND:
   31927              :       if (peep2_current_count < 2)
   31928              :         return NULL;
   31929              :       x12 = XEXP (x6, 0);
   31930              :       if (GET_CODE (x12) != PLUS)
   31931              :         return NULL;
   31932              :       x13 = XEXP (x12, 0);
   31933              :       if (GET_CODE (x13) != PLUS)
   31934              :         return NULL;
   31935              :       x14 = XEXP (x13, 0);
   31936              :       switch (GET_CODE (x14))
   31937              :         {
   31938              :         case LTU:
   31939              :         case UNLT:
   31940              :           operands[4] = x14;
   31941              :           x15 = XEXP (x14, 1);
   31942              :           if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   31943              :             return NULL;
   31944              :           x8 = XEXP (x5, 1);
   31945              :           if (GET_CODE (x8) != PLUS)
   31946              :             return NULL;
   31947              :           x16 = XEXP (x8, 0);
   31948              :           switch (GET_CODE (x16))
   31949              :             {
   31950              :             case LTU:
   31951              :             case UNLT:
   31952              :               operands[3] = x16;
   31953              :               x17 = XEXP (x16, 1);
   31954              :               if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   31955              :                 return NULL;
   31956              :               x18 = XEXP (x8, 1);
   31957              :               if (GET_CODE (x18) != ZERO_EXTEND)
   31958              :                 return NULL;
   31959              :               x7 = XEXP (x4, 1);
   31960              :               if (pattern1328 (x7) != 0
   31961              :                   || GET_MODE (x3) != E_CCCmode
   31962              :                   || GET_MODE (x5) != E_CCCmode)
   31963              :                 return NULL;
   31964              :               x19 = XEXP (x14, 0);
   31965              :               operands[2] = x19;
   31966              :               if (!flags_reg_operand (operands[2], E_VOIDmode))
   31967              :                 return NULL;
   31968              :               x20 = XEXP (x13, 1);
   31969              :               operands[0] = x20;
   31970              :               x21 = XEXP (x12, 1);
   31971              :               operands[1] = x21;
   31972              :               x22 = XEXP (x16, 0);
   31973              :               if (!rtx_equal_p (x22, operands[2]))
   31974              :                 return NULL;
   31975              :               x23 = XEXP (x18, 0);
   31976              :               if (!rtx_equal_p (x23, operands[1]))
   31977              :                 return NULL;
   31978              :               x9 = XEXP (x7, 0);
   31979              :               x24 = XEXP (x9, 1);
   31980              :               if (!rtx_equal_p (x24, operands[0]))
   31981              :                 return NULL;
   31982              :               x10 = XEXP (x7, 1);
   31983              :               if (!rtx_equal_p (x10, operands[1]))
   31984              :                 return NULL;
   31985              :               x11 = XEXP (x4, 0);
   31986              :               if (!rtx_equal_p (x11, operands[0]))
   31987              :                 return NULL;
   31988              :               x25 = PATTERN (peep2_next_insn (1));
   31989              :               if (GET_CODE (x25) != SET)
   31990              :                 return NULL;
   31991              :               switch (GET_MODE (x6))
   31992              :                 {
   31993              :                 case E_DImode:
   31994              :                   switch (pattern1893 (x1, 
   31995              : E_SImode, 
   31996              : E_DImode))
   31997              :                     {
   31998              :                     case 0:
   31999              :                       if (!
   32000              : #line 9205 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32001              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32002              :    && peep2_reg_dead_p (2, operands[0])
   32003              :    && !reg_overlap_mentioned_p (operands[0], operands[1])))
   32004              :                         return NULL;
   32005              :                       *pmatch_len_ = 1;
   32006              :                       return gen_peephole2_94 (insn, operands);
   32007              : 
   32008              :                     case 1:
   32009              :                       if (!
   32010              : #line 9411 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32011              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32012              :    && peep2_reg_dead_p (4, operands[0])
   32013              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   32014              :    && !reg_overlap_mentioned_p (operands[0], operands[5])
   32015              :    && !reg_overlap_mentioned_p (operands[5], operands[1])
   32016              :    && !reg_overlap_mentioned_p (operands[0], operands[6])
   32017              :    && !reg_overlap_mentioned_p (operands[6], operands[1])))
   32018              :                         return NULL;
   32019              :                       *pmatch_len_ = 3;
   32020              :                       return gen_peephole2_102 (insn, operands);
   32021              : 
   32022              :                     default:
   32023              :                       return NULL;
   32024              :                     }
   32025              : 
   32026              :                 case E_TImode:
   32027              :                   switch (pattern1893 (x1, 
   32028              : E_DImode, 
   32029              : E_TImode))
   32030              :                     {
   32031              :                     case 0:
   32032              :                       if (!(
   32033              : #line 9205 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32034              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32035              :    && peep2_reg_dead_p (2, operands[0])
   32036              :    && !reg_overlap_mentioned_p (operands[0], operands[1])) && 
   32037              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32038              : (TARGET_64BIT)))
   32039              :                         return NULL;
   32040              :                       *pmatch_len_ = 1;
   32041              :                       return gen_peephole2_95 (insn, operands);
   32042              : 
   32043              :                     case 1:
   32044              :                       if (!(
   32045              : #line 9411 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32046              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32047              :    && peep2_reg_dead_p (4, operands[0])
   32048              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   32049              :    && !reg_overlap_mentioned_p (operands[0], operands[5])
   32050              :    && !reg_overlap_mentioned_p (operands[5], operands[1])
   32051              :    && !reg_overlap_mentioned_p (operands[0], operands[6])
   32052              :    && !reg_overlap_mentioned_p (operands[6], operands[1])) && 
   32053              : #line 1168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32054              : (TARGET_64BIT)))
   32055              :                         return NULL;
   32056              :                       *pmatch_len_ = 3;
   32057              :                       return gen_peephole2_103 (insn, operands);
   32058              : 
   32059              :                     default:
   32060              :                       return NULL;
   32061              :                     }
   32062              : 
   32063              :                 default:
   32064              :                   return NULL;
   32065              :                 }
   32066              : 
   32067              :             default:
   32068              :               return NULL;
   32069              :             }
   32070              : 
   32071              :         default:
   32072              :           return NULL;
   32073              :         }
   32074              : 
   32075              :     case PLUS:
   32076              :     case MINUS:
   32077              :     case AND:
   32078              :     case IOR:
   32079              :     case XOR:
   32080              :       if (peep2_current_count < 2)
   32081              :         return NULL;
   32082              :       x12 = XEXP (x6, 0);
   32083              :       operands[0] = x12;
   32084              :       x26 = XEXP (x6, 1);
   32085              :       operands[1] = x26;
   32086              :       x25 = PATTERN (peep2_next_insn (1));
   32087              :       if (GET_CODE (x25) != SET)
   32088              :         return NULL;
   32089              :       if (GET_CODE (x6) == PLUS)
   32090              :         {
   32091              :           res = peephole2_43 (x1, insn, pmatch_len_);
   32092              :           if (res != NULL_RTX)
   32093              :             return res;
   32094              :         }
   32095              :       x8 = XEXP (x5, 1);
   32096              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   32097              :         return NULL;
   32098              :       operands[2] = x6;
   32099              :       x7 = XEXP (x4, 1);
   32100              :       if (!rtx_equal_p (x7, operands[2]))
   32101              :         return NULL;
   32102              :       switch (GET_MODE (operands[2]))
   32103              :         {
   32104              :         case E_QImode:
   32105              :           if (!plusminuslogic_operator (operands[2], E_QImode))
   32106              :             return NULL;
   32107              :           if (memory_operand (operands[0], E_QImode))
   32108              :             {
   32109              :               x11 = XEXP (x4, 0);
   32110              :               if (pattern1648 (x11, 
   32111              : E_QImode) == 0
   32112              :                   && 
   32113              : #line 28708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32114              : (TARGET_APX_NDD
   32115              :    && (TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32116              :    && peep2_reg_dead_p (2, operands[3])
   32117              :    && !reg_overlap_mentioned_p (operands[3], operands[0])
   32118              :    && ix86_match_ccmode (peep2_next_insn (0),
   32119              :                          (GET_CODE (operands[2]) == PLUS
   32120              :                           || GET_CODE (operands[2]) == MINUS)
   32121              :                          ? CCGOCmode : CCNOmode)))
   32122              :                 {
   32123              :                   *pmatch_len_ = 1;
   32124              :                   res = gen_peephole2_323 (insn, operands);
   32125              :                   if (res != NULL_RTX)
   32126              :                     return res;
   32127              :                 }
   32128              :             }
   32129              :           if (!register_operand (operands[0], E_QImode))
   32130              :             return NULL;
   32131              :           x11 = XEXP (x4, 0);
   32132              :           if (pattern1649 (x11, 
   32133              : E_QImode) != 0
   32134              :               || !
   32135              : #line 28802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32136              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32137              :    && COMMUTATIVE_ARITH_P (operands[2])
   32138              :    && peep2_reg_dead_p (2, operands[0])
   32139              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   32140              :    && ix86_match_ccmode (peep2_next_insn (0),
   32141              :                          GET_CODE (operands[2]) == PLUS
   32142              :                          ? CCGOCmode : CCNOmode)))
   32143              :             return NULL;
   32144              :           *pmatch_len_ = 1;
   32145              :           return gen_peephole2_335 (insn, operands);
   32146              : 
   32147              :         case E_HImode:
   32148              :           if (!plusminuslogic_operator (operands[2], E_HImode))
   32149              :             return NULL;
   32150              :           if (memory_operand (operands[0], E_HImode))
   32151              :             {
   32152              :               x11 = XEXP (x4, 0);
   32153              :               if (pattern1648 (x11, 
   32154              : E_HImode) == 0
   32155              :                   && 
   32156              : #line 28708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32157              : (TARGET_APX_NDD
   32158              :    && (TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32159              :    && peep2_reg_dead_p (2, operands[3])
   32160              :    && !reg_overlap_mentioned_p (operands[3], operands[0])
   32161              :    && ix86_match_ccmode (peep2_next_insn (0),
   32162              :                          (GET_CODE (operands[2]) == PLUS
   32163              :                           || GET_CODE (operands[2]) == MINUS)
   32164              :                          ? CCGOCmode : CCNOmode)))
   32165              :                 {
   32166              :                   *pmatch_len_ = 1;
   32167              :                   res = gen_peephole2_324 (insn, operands);
   32168              :                   if (res != NULL_RTX)
   32169              :                     return res;
   32170              :                 }
   32171              :             }
   32172              :           if (!register_operand (operands[0], E_HImode))
   32173              :             return NULL;
   32174              :           x11 = XEXP (x4, 0);
   32175              :           if (pattern1649 (x11, 
   32176              : E_HImode) != 0
   32177              :               || !
   32178              : #line 28802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32179              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32180              :    && COMMUTATIVE_ARITH_P (operands[2])
   32181              :    && peep2_reg_dead_p (2, operands[0])
   32182              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   32183              :    && ix86_match_ccmode (peep2_next_insn (0),
   32184              :                          GET_CODE (operands[2]) == PLUS
   32185              :                          ? CCGOCmode : CCNOmode)))
   32186              :             return NULL;
   32187              :           *pmatch_len_ = 1;
   32188              :           return gen_peephole2_336 (insn, operands);
   32189              : 
   32190              :         case E_SImode:
   32191              :           if (!plusminuslogic_operator (operands[2], E_SImode))
   32192              :             return NULL;
   32193              :           if (memory_operand (operands[0], E_SImode))
   32194              :             {
   32195              :               x11 = XEXP (x4, 0);
   32196              :               if (pattern1650 (x11, 
   32197              : E_SImode) == 0
   32198              :                   && 
   32199              : #line 28708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32200              : (TARGET_APX_NDD
   32201              :    && (TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32202              :    && peep2_reg_dead_p (2, operands[3])
   32203              :    && !reg_overlap_mentioned_p (operands[3], operands[0])
   32204              :    && ix86_match_ccmode (peep2_next_insn (0),
   32205              :                          (GET_CODE (operands[2]) == PLUS
   32206              :                           || GET_CODE (operands[2]) == MINUS)
   32207              :                          ? CCGOCmode : CCNOmode)))
   32208              :                 {
   32209              :                   *pmatch_len_ = 1;
   32210              :                   res = gen_peephole2_325 (insn, operands);
   32211              :                   if (res != NULL_RTX)
   32212              :                     return res;
   32213              :                 }
   32214              :             }
   32215              :           if (!register_operand (operands[0], E_SImode))
   32216              :             return NULL;
   32217              :           x11 = XEXP (x4, 0);
   32218              :           if (pattern1649 (x11, 
   32219              : E_SImode) != 0
   32220              :               || !
   32221              : #line 28802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32222              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32223              :    && COMMUTATIVE_ARITH_P (operands[2])
   32224              :    && peep2_reg_dead_p (2, operands[0])
   32225              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   32226              :    && ix86_match_ccmode (peep2_next_insn (0),
   32227              :                          GET_CODE (operands[2]) == PLUS
   32228              :                          ? CCGOCmode : CCNOmode)))
   32229              :             return NULL;
   32230              :           *pmatch_len_ = 1;
   32231              :           return gen_peephole2_337 (insn, operands);
   32232              : 
   32233              :         case E_DImode:
   32234              :           if (!plusminuslogic_operator (operands[2], E_DImode))
   32235              :             return NULL;
   32236              :           if (memory_operand (operands[0], E_DImode))
   32237              :             {
   32238              :               x11 = XEXP (x4, 0);
   32239              :               if (pattern1650 (x11, 
   32240              : E_DImode) == 0
   32241              :                   && (
   32242              : #line 28708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32243              : (TARGET_APX_NDD
   32244              :    && (TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32245              :    && peep2_reg_dead_p (2, operands[3])
   32246              :    && !reg_overlap_mentioned_p (operands[3], operands[0])
   32247              :    && ix86_match_ccmode (peep2_next_insn (0),
   32248              :                          (GET_CODE (operands[2]) == PLUS
   32249              :                           || GET_CODE (operands[2]) == MINUS)
   32250              :                          ? CCGOCmode : CCNOmode)) && 
   32251              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32252              : (TARGET_64BIT)))
   32253              :                 {
   32254              :                   *pmatch_len_ = 1;
   32255              :                   res = gen_peephole2_326 (insn, operands);
   32256              :                   if (res != NULL_RTX)
   32257              :                     return res;
   32258              :                 }
   32259              :             }
   32260              :           if (!register_operand (operands[0], E_DImode))
   32261              :             return NULL;
   32262              :           x11 = XEXP (x4, 0);
   32263              :           if (pattern1649 (x11, 
   32264              : E_DImode) != 0
   32265              :               || !(
   32266              : #line 28802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32267              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32268              :    && COMMUTATIVE_ARITH_P (operands[2])
   32269              :    && peep2_reg_dead_p (2, operands[0])
   32270              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   32271              :    && ix86_match_ccmode (peep2_next_insn (0),
   32272              :                          GET_CODE (operands[2]) == PLUS
   32273              :                          ? CCGOCmode : CCNOmode)) && 
   32274              : #line 1162 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32275              : (TARGET_64BIT)))
   32276              :             return NULL;
   32277              :           *pmatch_len_ = 1;
   32278              :           return gen_peephole2_338 (insn, operands);
   32279              : 
   32280              :         default:
   32281              :           return NULL;
   32282              :         }
   32283              : 
   32284              :     default:
   32285              :       return NULL;
   32286              :     }
   32287              : }
        

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.