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: 90.7 % 3940 3573
Test Date: 2026-07-11 15:47:05 Functions: 95.2 % 209 199
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       255853 : pattern6 (rtx x1, machine_mode i1)
      57              : {
      58       255853 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      59       255853 :   int res ATTRIBUTE_UNUSED;
      60       255853 :   if (!register_operand (operands[0], i1)
      61       234385 :       || GET_MODE (x1) != i1
      62       234324 :       || !register_mmxmem_operand (operands[1], i1)
      63       463935 :       || !register_mmxmem_operand (operands[2], i1))
      64        78469 :     return -1;
      65              :   return 0;
      66              : }
      67              : 
      68              : int
      69        69759 : pattern14 (rtx x1)
      70              : {
      71        69759 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      72        69759 :   int res ATTRIBUTE_UNUSED;
      73        69759 :   switch (GET_MODE (operands[0]))
      74              :     {
      75        40351 :     case E_SImode:
      76        40351 :       if (!nonimmediate_operand (operands[0], E_SImode)
      77        40308 :           || GET_MODE (x1) != E_SImode
      78        80659 :           || !nonimmediate_operand (operands[1], E_SImode))
      79        12864 :         return -1;
      80              :       return 0;
      81              : 
      82        24059 :     case E_DImode:
      83        24059 :       if (!nonimmediate_operand (operands[0], E_DImode)
      84        24037 :           || GET_MODE (x1) != E_DImode
      85        48096 :           || !nonimmediate_operand (operands[1], E_DImode))
      86         6964 :         return -1;
      87              :       return 1;
      88              : 
      89              :     default:
      90              :       return -1;
      91              :     }
      92              : }
      93              : 
      94              : int
      95       236705 : pattern22 (rtx x1, int *pnum_clobbers)
      96              : {
      97       236705 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
      98       236705 :   rtx x2, x3, x4, x5, x6, x7;
      99       236705 :   int res ATTRIBUTE_UNUSED;
     100       236705 :   if (pnum_clobbers == NULL)
     101              :     return -1;
     102       233976 :   x2 = XEXP (x1, 0);
     103       233976 :   operands[0] = x2;
     104       233976 :   x3 = XEXP (x1, 1);
     105       233976 :   x4 = XEXP (x3, 0);
     106       233976 :   switch (GET_CODE (x4))
     107              :     {
     108       104957 :     case REG:
     109       104957 :     case SUBREG:
     110       104957 :       return pattern19 (x3); /* [-1, 1] */
     111              : 
     112        22410 :     case PLUS:
     113        22410 :       x5 = XEXP (x4, 0);
     114        22410 :       operands[1] = x5;
     115        22410 :       x6 = XEXP (x4, 1);
     116        22410 :       operands[2] = x6;
     117        22410 :       switch (GET_MODE (operands[0]))
     118              :         {
     119         5025 :         case E_SImode:
     120         5025 :           if (!register_operand (operands[0], E_SImode)
     121         5025 :               || pattern21 (x3, 
     122              : E_SImode) != 0)
     123          170 :             return -1;
     124              :           return 2;
     125              : 
     126        17341 :         case E_DImode:
     127        17341 :           if (!register_operand (operands[0], E_DImode)
     128        17341 :               || pattern21 (x3, 
     129              : E_DImode) != 0)
     130         3034 :             return -1;
     131              :           return 3;
     132              : 
     133              :         default:
     134              :           return -1;
     135              :         }
     136              : 
     137        15350 :     case MINUS:
     138        15350 :       x5 = XEXP (x4, 0);
     139        15350 :       operands[1] = x5;
     140        15350 :       x6 = XEXP (x4, 1);
     141        15350 :       operands[2] = x6;
     142        15350 :       x7 = XEXP (x3, 1);
     143        15350 :       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      4260628 : pattern38 (rtx x1, int *pnum_clobbers)
     172              : {
     173      4260628 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     174      4260628 :   rtx x2, x3, x4, x5, x6, x7;
     175      4260628 :   int res ATTRIBUTE_UNUSED;
     176      4260628 :   x2 = XEXP (x1, 1);
     177      4260628 :   x3 = XEXP (x2, 0);
     178      4260628 :   operands[1] = x3;
     179      4260628 :   x4 = XEXP (x2, 1);
     180      4260628 :   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         3153 :     case AND:
     197         3153 :       if (pnum_clobbers == NULL
     198         3153 :           || 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       731518 : pattern42 (rtx x1)
     223              : {
     224       731518 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     225       731518 :   rtx x2, x3, x4, x5;
     226       731518 :   int res ATTRIBUTE_UNUSED;
     227       731518 :   x2 = XEXP (x1, 1);
     228       731518 :   x3 = XEXP (x2, 0);
     229       731518 :   operands[1] = x3;
     230       731518 :   x4 = XEXP (x1, 0);
     231       731518 :   switch (GET_CODE (x4))
     232              :     {
     233       731505 :     case REG:
     234       731505 :     case SUBREG:
     235       731505 :     case MEM:
     236       731505 :       operands[0] = x4;
     237       731505 :       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       268257 : pattern48 (rtx x1)
     254              : {
     255       268257 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     256       268257 :   rtx x2, x3, x4, x5, x6, x7, x8;
     257       268257 :   int res ATTRIBUTE_UNUSED;
     258       268257 :   x2 = XEXP (x1, 1);
     259       268257 :   x3 = XEXP (x2, 1);
     260       268257 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     261              :     return -1;
     262       266562 :   x4 = XEXP (x1, 0);
     263       266562 :   operands[0] = x4;
     264       266562 :   if (!flags_reg_operand (operands[0], E_VOIDmode))
     265              :     return -1;
     266       266562 :   operands[1] = x2;
     267       266562 :   if (!compare_operator (operands[1], E_VOIDmode))
     268              :     return -1;
     269       266562 :   x5 = XEXP (x2, 0);
     270       266562 :   x6 = XEXP (x5, 0);
     271       266562 :   operands[2] = x6;
     272       266562 :   if (!int_nonimmediate_operand (operands[2], E_VOIDmode))
     273              :     return -1;
     274       207560 :   x7 = XEXP (x5, 1);
     275       207560 :   operands[3] = x7;
     276       207560 :   if (!const_int_operand (operands[3], E_QImode))
     277              :     return -1;
     278       207560 :   x8 = XEXP (x5, 2);
     279       207560 :   operands[4] = x8;
     280       207560 :   if (!const_int_operand (operands[4], E_QImode))
     281              :     return -1;
     282       197771 :   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     11368236 : pattern59 (rtx x1, machine_mode i1)
     300              : {
     301     11368236 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     302     11368236 :   rtx x2, x3;
     303     11368236 :   int res ATTRIBUTE_UNUSED;
     304     11368236 :   x2 = XEXP (x1, 1);
     305     11368236 :   if (GET_MODE (x2) != i1)
     306              :     return -1;
     307      3920067 :   x3 = XEXP (x1, 0);
     308      3920067 :   if (GET_CODE (x3) != REG
     309      3482489 :       || REGNO (x3) != 17
     310      7371000 :       || GET_MODE (x3) != i1)
     311       469134 :     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        48576 : pattern65 (rtx x1)
     337              : {
     338        48576 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     339        48576 :   rtx x2, x3, x4, x5;
     340        48576 :   int res ATTRIBUTE_UNUSED;
     341        48576 :   x2 = XEXP (x1, 0);
     342        48576 :   operands[0] = x2;
     343        48576 :   x3 = XEXP (x1, 1);
     344        48576 :   x4 = XVECEXP (x3, 0, 0);
     345        48576 :   operands[1] = x4;
     346        48576 :   x5 = XVECEXP (x3, 0, 1);
     347        48576 :   operands[2] = x5;
     348        48576 :   switch (GET_MODE (operands[0]))
     349              :     {
     350          402 :     case E_HFmode:
     351          402 :       return pattern64 (x3, 
     352          402 : E_HFmode); /* [-1, 0] */
     353              : 
     354        31644 :     case E_SFmode:
     355        31644 :       if (pattern64 (x3, 
     356              : E_SFmode) != 0)
     357              :         return -1;
     358              :       return 1;
     359              : 
     360         5750 :     case E_DFmode:
     361         5750 :       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       163090 : pattern74 (rtx x1)
     373              : {
     374       163090 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     375       163090 :   rtx x2, x3, x4, x5, x6, x7, x8;
     376       163090 :   int res ATTRIBUTE_UNUSED;
     377       163090 :   x2 = XEXP (x1, 0);
     378       163090 :   operands[0] = x2;
     379       163090 :   x3 = XEXP (x1, 1);
     380       163090 :   x4 = XVECEXP (x3, 0, 0);
     381       163090 :   switch (GET_CODE (x4))
     382              :     {
     383       150514 :     case CONST_INT:
     384       150514 :     case CONST_WIDE_INT:
     385       150514 :     case CONST_POLY_INT:
     386       150514 :     case CONST_FIXED:
     387       150514 :     case CONST_DOUBLE:
     388       150514 :     case CONST_VECTOR:
     389       150514 :     case CONST:
     390       150514 :     case REG:
     391       150514 :     case SUBREG:
     392       150514 :     case MEM:
     393       150514 :     case LABEL_REF:
     394       150514 :     case SYMBOL_REF:
     395       150514 :     case HIGH:
     396       150514 :       operands[1] = x4;
     397       150514 :       x5 = XVECEXP (x3, 0, 2);
     398       150514 :       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        39811 : pattern93 (rtx x1, int *pnum_clobbers)
     439              : {
     440        39811 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     441        39811 :   rtx x2, x3, x4, x5, x6, x7;
     442        39811 :   int res ATTRIBUTE_UNUSED;
     443        39811 :   if (pnum_clobbers == NULL)
     444              :     return -1;
     445        39811 :   x2 = XEXP (x1, 1);
     446        39811 :   x3 = XEXP (x2, 0);
     447        39811 :   if (GET_MODE (x3) != E_TImode)
     448              :     return -1;
     449        14239 :   x4 = XEXP (x3, 0);
     450        14239 :   if (GET_CODE (x4) != ASHIFT
     451        11212 :       || GET_MODE (x4) != E_TImode)
     452              :     return -1;
     453        11212 :   x5 = XEXP (x4, 0);
     454        11212 :   if (GET_CODE (x5) != ZERO_EXTEND
     455        11187 :       || GET_MODE (x5) != E_TImode)
     456              :     return -1;
     457        11187 :   x6 = XEXP (x3, 1);
     458        11187 :   if (GET_CODE (x6) != ZERO_EXTEND
     459        11036 :       || GET_MODE (x6) != E_TImode)
     460              :     return -1;
     461        11036 :   x7 = XEXP (x1, 0);
     462        11036 :   operands[0] = x7;
     463        11036 :   return pattern92 (x2, 
     464              : E_TImode, 
     465        11036 : 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        11096 : pattern110 (rtx x1, int *pnum_clobbers)
     495              : {
     496        11096 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     497        11096 :   rtx x2, x3, x4, x5;
     498        11096 :   int res ATTRIBUTE_UNUSED;
     499        11096 :   if (pnum_clobbers == NULL)
     500              :     return -1;
     501        11096 :   x2 = XEXP (x1, 0);
     502        11096 :   operands[2] = x2;
     503        11096 :   x3 = XEXP (x2, 0);
     504        11096 :   if (GET_CODE (x3) != REG
     505        11096 :       || REGNO (x3) != 17)
     506              :     return -1;
     507         7354 :   x4 = XEXP (x2, 1);
     508         7354 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
     509              :     return -1;
     510         7354 :   x5 = XEXP (x1, 1);
     511         7354 :   operands[1] = x5;
     512         7354 :   switch (GET_MODE (operands[0]))
     513              :     {
     514              :     case E_SImode:
     515              :       return 0;
     516              : 
     517         3542 :     case E_DImode:
     518         3542 :       return 1;
     519              : 
     520              :     default:
     521              :       return -1;
     522              :     }
     523              : }
     524              : 
     525              : int
     526          429 : pattern117 (rtx x1, int *pnum_clobbers, machine_mode i1, machine_mode i2)
     527              : {
     528          429 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     529          429 :   rtx x2, x3;
     530          429 :   int res ATTRIBUTE_UNUSED;
     531          429 :   if (pnum_clobbers == NULL)
     532              :     return -1;
     533          429 :   x2 = XEXP (x1, 0);
     534          429 :   if (GET_MODE (x2) != E_SImode
     535          428 :       || !register_operand (operands[0], i2)
     536          855 :       || GET_MODE (x1) != i2)
     537            3 :     return -1;
     538          426 :   x3 = XEXP (x2, 0);
     539          426 :   operands[1] = x3;
     540          426 :   if (!nonimmediate_operand (operands[1], i1))
     541              :     return -1;
     542              :   return 0;
     543              : }
     544              : 
     545              : int
     546        14229 : pattern123 (rtx x1)
     547              : {
     548        14229 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     549        14229 :   rtx x2, x3, x4;
     550        14229 :   int res ATTRIBUTE_UNUSED;
     551        14229 :   x2 = XEXP (x1, 1);
     552        14229 :   x3 = XEXP (x2, 0);
     553        14229 :   operands[3] = x3;
     554        14229 :   if (!const_int_operand (operands[3], E_QImode))
     555              :     return -1;
     556         3781 :   x4 = XEXP (x2, 1);
     557         3781 :   operands[2] = x4;
     558         3781 :   if (!register_operand (operands[2], E_QImode))
     559              :     return -1;
     560         3258 :   return pattern14 (x1); /* [-1, 1] */
     561              : }
     562              : 
     563              : int
     564         1234 : pattern127 (rtx x1)
     565              : {
     566         1234 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     567         1234 :   rtx x2, x3, x4;
     568         1234 :   int res ATTRIBUTE_UNUSED;
     569         1234 :   x2 = XEXP (x1, 0);
     570         1234 :   operands[0] = x2;
     571         1234 :   x3 = XEXP (x1, 1);
     572         1234 :   x4 = XVECEXP (x3, 0, 0);
     573         1234 :   operands[1] = x4;
     574         1234 :   switch (GET_MODE (operands[0]))
     575              :     {
     576          463 :     case E_SImode:
     577          463 :       if (!memory_operand (operands[0], E_SImode)
     578          440 :           || GET_MODE (x3) != E_SImode
     579          903 :           || !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        37740 : pattern138 (rtx x1)
     597              : {
     598        37740 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     599        37740 :   rtx x2, x3;
     600        37740 :   int res ATTRIBUTE_UNUSED;
     601        37740 :   x2 = XEXP (x1, 2);
     602        37740 :   if (XWINT (x2, 0) != 1L)
     603              :     return -1;
     604         7884 :   x3 = XEXP (x1, 1);
     605         7884 :   if (!rtx_equal_p (x3, operands[1]))
     606              :     return -1;
     607         1650 :   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        16816 : pattern148 (rtx x1)
     632              : {
     633        16816 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     634        16816 :   rtx x2, x3, x4, x5, x6;
     635        16816 :   int res ATTRIBUTE_UNUSED;
     636        16816 :   x2 = XEXP (x1, 0);
     637        16816 :   x3 = XEXP (x2, 0);
     638        16816 :   operands[1] = x3;
     639        16816 :   x4 = XEXP (x2, 1);
     640        16816 :   operands[2] = x4;
     641        16816 :   x5 = XEXP (x1, 1);
     642        16816 :   operands[3] = x5;
     643        16816 :   x6 = XEXP (x1, 2);
     644        16816 :   operands[4] = x6;
     645        16816 :   switch (GET_MODE (operands[0]))
     646              :     {
     647         1432 :     case E_V16HImode:
     648         1432 :       return pattern135 (x1, 
     649              : E_HImode, 
     650         1432 : E_V16HImode); /* [-1, 0] */
     651              : 
     652         1167 :     case E_V8HImode:
     653         1167 :       if (pattern135 (x1, 
     654              : E_QImode, 
     655              : E_V8HImode) != 0)
     656              :         return -1;
     657              :       return 1;
     658              : 
     659         2841 :     case E_V8SImode:
     660         2841 :       if (pattern135 (x1, 
     661              : E_QImode, 
     662              : E_V8SImode) != 0)
     663              :         return -1;
     664              :       return 2;
     665              : 
     666         2775 :     case E_V4SImode:
     667         2775 :       if (pattern135 (x1, 
     668              : E_QImode, 
     669              : E_V4SImode) != 0)
     670              :         return -1;
     671              :       return 3;
     672              : 
     673         1663 :     case E_V4DImode:
     674         1663 :       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         1585 :     case E_V32HImode:
     688         1585 :       if (pattern135 (x1, 
     689              : E_SImode, 
     690              : E_V32HImode) != 0)
     691              :         return -1;
     692              :       return 6;
     693              : 
     694         2763 :     case E_V16SImode:
     695         2763 :       if (pattern135 (x1, 
     696              : E_HImode, 
     697              : E_V16SImode) != 0)
     698              :         return -1;
     699              :       return 7;
     700              : 
     701         1402 :     case E_V8DImode:
     702         1402 :       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        17442 : pattern159 (rtx x1)
     715              : {
     716        17442 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     717        17442 :   rtx x2, x3, x4, x5;
     718        17442 :   int res ATTRIBUTE_UNUSED;
     719        17442 :   x2 = XEXP (x1, 0);
     720        17442 :   operands[0] = x2;
     721        17442 :   x3 = XEXP (x1, 1);
     722        17442 :   x4 = XVECEXP (x3, 0, 0);
     723        17442 :   operands[1] = x4;
     724        17442 :   x5 = XVECEXP (x3, 0, 1);
     725        17442 :   operands[2] = x5;
     726        17442 :   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         5955 :     case E_V4SFmode:
     757         5955 :       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          152 :     case E_V4DFmode:
     769          152 :       if (pattern158 (x3, 
     770              : E_V4DFmode) != 0)
     771              :         return -1;
     772              :       return 7;
     773              : 
     774         3018 :     case E_V2DFmode:
     775         3018 :       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         5577 : pattern184 (rtx x1)
     823              : {
     824         5577 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     825         5577 :   rtx x2, x3, x4, x5, x6;
     826         5577 :   int res ATTRIBUTE_UNUSED;
     827         5577 :   x2 = XEXP (x1, 0);
     828         5577 :   operands[0] = x2;
     829         5577 :   x3 = XEXP (x1, 1);
     830         5577 :   x4 = XVECEXP (x3, 0, 0);
     831         5577 :   operands[1] = x4;
     832         5577 :   x5 = XVECEXP (x3, 0, 1);
     833         5577 :   operands[2] = x5;
     834         5577 :   x6 = XVECEXP (x3, 0, 2);
     835         5577 :   operands[3] = x6;
     836         5577 :   switch (GET_MODE (operands[0]))
     837              :     {
     838         2132 :     case E_V8SImode:
     839         2132 :       return pattern178 (x3, 
     840         2132 : E_V8SImode); /* [-1, 0] */
     841              : 
     842         1813 :     case E_V4SImode:
     843         1813 :       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       415156 : pattern190 (rtx x1, machine_mode i1)
     861              : {
     862       415156 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     863       415156 :   int res ATTRIBUTE_UNUSED;
     864       415156 :   if (!register_operand (operands[0], i1)
     865       397518 :       || GET_MODE (x1) != i1
     866       397518 :       || !nonimmediate_operand (operands[1], i1)
     867       796089 :       || !const1_operand (operands[2], i1))
     868       407906 :     return -1;
     869              :   return 0;
     870              : }
     871              : 
     872              : int
     873        20473 : pattern194 (rtx x1)
     874              : {
     875        20473 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
     876        20473 :   rtx x2, x3, x4, x5, x6;
     877        20473 :   int res ATTRIBUTE_UNUSED;
     878        20473 :   x2 = XEXP (x1, 0);
     879        20473 :   switch (XVECLEN (x2, 0))
     880              :     {
     881        11971 :     case 2:
     882        11971 :       x3 = XVECEXP (x2, 0, 0);
     883        11971 :       operands[1] = x3;
     884        11971 :       x4 = XVECEXP (x2, 0, 1);
     885        11971 :       operands[2] = x4;
     886        11971 :       x5 = XEXP (x1, 1);
     887        11971 :       operands[3] = x5;
     888        11971 :       switch (XINT (x2, 1))
     889              :         {
     890            7 :         case 222:
     891            7 :           switch (GET_MODE (operands[0]))
     892              :             {
     893            7 :             case E_V32HFmode:
     894            7 :               return pattern192 (x1, 
     895            7 : E_V32HFmode); /* [-1, 0] */
     896              : 
     897            0 :             case E_V16HFmode:
     898            0 :               if (pattern192 (x1, 
     899              : E_V16HFmode) != 0)
     900              :                 return -1;
     901              :               return 1;
     902              : 
     903            0 :             case E_V8HFmode:
     904            0 :               if (pattern192 (x1, 
     905              : E_V8HFmode) != 0)
     906              :                 return -1;
     907              :               return 2;
     908              : 
     909              :             default:
     910              :               return -1;
     911              :             }
     912              : 
     913            7 :         case 223:
     914            7 :           switch (GET_MODE (operands[0]))
     915              :             {
     916            7 :             case E_V32HFmode:
     917            7 :               if (pattern192 (x1, 
     918              : E_V32HFmode) != 0)
     919              :                 return -1;
     920              :               return 3;
     921              : 
     922            0 :             case E_V16HFmode:
     923            0 :               if (pattern192 (x1, 
     924              : E_V16HFmode) != 0)
     925              :                 return -1;
     926              :               return 4;
     927              : 
     928            0 :             case E_V8HFmode:
     929            0 :               if (pattern192 (x1, 
     930              : E_V8HFmode) != 0)
     931              :                 return -1;
     932              :               return 5;
     933              : 
     934              :             default:
     935              :               return -1;
     936              :             }
     937              : 
     938              :         default:
     939              :           return -1;
     940              :         }
     941              : 
     942         1591 :     case 3:
     943         1591 :       x3 = XVECEXP (x2, 0, 0);
     944         1591 :       operands[1] = x3;
     945         1591 :       x4 = XVECEXP (x2, 0, 1);
     946         1591 :       operands[2] = x4;
     947         1591 :       x6 = XVECEXP (x2, 0, 2);
     948         1591 :       operands[3] = x6;
     949         1591 :       x5 = XEXP (x1, 1);
     950         1591 :       operands[4] = x5;
     951         1591 :       switch (XINT (x2, 1))
     952              :         {
     953            8 :         case 218:
     954            8 :           switch (GET_MODE (operands[0]))
     955              :             {
     956            8 :             case E_V32HFmode:
     957            8 :               if (pattern193 (x1, 
     958              : E_V32HFmode) != 0)
     959              :                 return -1;
     960              :               return 6;
     961              : 
     962            0 :             case E_V16HFmode:
     963            0 :               if (pattern193 (x1, 
     964              : E_V16HFmode) != 0)
     965              :                 return -1;
     966              :               return 7;
     967              : 
     968            0 :             case E_V8HFmode:
     969            0 :               if (pattern193 (x1, 
     970              : E_V8HFmode) != 0)
     971              :                 return -1;
     972              :               return 8;
     973              : 
     974              :             default:
     975              :               return -1;
     976              :             }
     977              : 
     978            8 :         case 220:
     979            8 :           switch (GET_MODE (operands[0]))
     980              :             {
     981            8 :             case E_V32HFmode:
     982            8 :               if (pattern193 (x1, 
     983              : E_V32HFmode) != 0)
     984              :                 return -1;
     985              :               return 9;
     986              : 
     987            0 :             case E_V16HFmode:
     988            0 :               if (pattern193 (x1, 
     989              : E_V16HFmode) != 0)
     990              :                 return -1;
     991              :               return 10;
     992              : 
     993            0 :             case E_V8HFmode:
     994            0 :               if (pattern193 (x1, 
     995              : E_V8HFmode) != 0)
     996              :                 return -1;
     997              :               return 11;
     998              : 
     999              :             default:
    1000              :               return -1;
    1001              :             }
    1002              : 
    1003              :         default:
    1004              :           return -1;
    1005              :         }
    1006              : 
    1007              :     default:
    1008              :       return -1;
    1009              :     }
    1010              : }
    1011              : 
    1012              : int
    1013           30 : pattern211 (rtx x1)
    1014              : {
    1015           30 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1016           30 :   rtx x2, x3, x4;
    1017           30 :   int res ATTRIBUTE_UNUSED;
    1018           30 :   x2 = XEXP (x1, 1);
    1019           30 :   x3 = XEXP (x2, 0);
    1020           30 :   operands[3] = x3;
    1021           30 :   if (!const_int_operand (operands[3], E_QImode))
    1022              :     return -1;
    1023           17 :   x4 = XEXP (x2, 1);
    1024           17 :   operands[2] = x4;
    1025           17 :   if (!nonimmediate_operand (operands[2], E_QImode))
    1026              :     return -1;
    1027           17 :   return pattern207 (x1); /* [-1, 3] */
    1028              : }
    1029              : 
    1030              : int
    1031        43709 : pattern214 (rtx x1, machine_mode i1)
    1032              : {
    1033        43709 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1034        43709 :   int res ATTRIBUTE_UNUSED;
    1035        43709 :   if (!register_operand (operands[0], i1)
    1036        43601 :       || GET_MODE (x1) != i1
    1037        43601 :       || !nonimmediate_operand (operands[1], i1)
    1038        86904 :       || !nonimmediate_operand (operands[2], i1))
    1039         4110 :     return -1;
    1040              :   return 0;
    1041              : }
    1042              : 
    1043              : int
    1044       657146 : pattern217 (rtx x1)
    1045              : {
    1046       657146 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1047       657146 :   rtx x2, x3;
    1048       657146 :   int res ATTRIBUTE_UNUSED;
    1049       657146 :   x2 = XEXP (x1, 0);
    1050       657146 :   operands[1] = x2;
    1051       657146 :   x3 = XEXP (x1, 1);
    1052       657146 :   operands[2] = x3;
    1053       657146 :   switch (GET_MODE (operands[0]))
    1054              :     {
    1055       572658 :     case E_DImode:
    1056       572658 :       return pattern213 (x1, 
    1057       572658 : E_DImode); /* [-1, 0] */
    1058              : 
    1059          164 :     case E_TImode:
    1060          164 :       if (pattern213 (x1, 
    1061              : E_TImode) != 0)
    1062              :         return -1;
    1063              :       return 1;
    1064              : 
    1065         9578 :     case E_QImode:
    1066         9578 :       if (pattern213 (x1, 
    1067              : E_QImode) != 0)
    1068              :         return -1;
    1069              :       return 2;
    1070              : 
    1071         1283 :     case E_HImode:
    1072         1283 :       if (pattern213 (x1, 
    1073              : E_HImode) != 0)
    1074              :         return -1;
    1075              :       return 3;
    1076              : 
    1077        73463 :     case E_SImode:
    1078        73463 :       if (pattern213 (x1, 
    1079              : E_SImode) != 0)
    1080              :         return -1;
    1081              :       return 4;
    1082              : 
    1083              :     default:
    1084              :       return -1;
    1085              :     }
    1086              : }
    1087              : 
    1088              : int
    1089        84303 : pattern222 (rtx x1)
    1090              : {
    1091        84303 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1092        84303 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1093        84303 :   rtx x10, x11;
    1094        84303 :   int res ATTRIBUTE_UNUSED;
    1095        84303 :   x2 = XVECEXP (x1, 0, 0);
    1096        84303 :   x3 = XEXP (x2, 1);
    1097        84303 :   if (GET_MODE (x3) != E_V4SFmode)
    1098              :     return -1;
    1099         5788 :   x4 = XEXP (x3, 0);
    1100         5788 :   if (GET_CODE (x4) != VEC_DUPLICATE
    1101         1556 :       || GET_MODE (x4) != E_V4SFmode)
    1102              :     return -1;
    1103         1556 :   x5 = XEXP (x4, 0);
    1104         1556 :   if (GET_CODE (x5) != FLOAT
    1105         1395 :       || GET_MODE (x5) != E_V2SFmode)
    1106              :     return -1;
    1107         1293 :   x6 = XEXP (x3, 2);
    1108         1293 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    1109              :     return -1;
    1110         1293 :   x7 = XVECEXP (x1, 0, 1);
    1111         1293 :   if (GET_CODE (x7) != CLOBBER)
    1112              :     return -1;
    1113         1195 :   x8 = XEXP (x2, 0);
    1114         1195 :   operands[0] = x8;
    1115         1195 :   if (!register_operand (operands[0], E_V4SFmode))
    1116              :     return -1;
    1117         1192 :   x9 = XEXP (x5, 0);
    1118         1192 :   operands[2] = x9;
    1119         1192 :   if (!register_mmxmem_operand (operands[2], E_V2SImode))
    1120              :     return -1;
    1121          969 :   x10 = XEXP (x3, 1);
    1122          969 :   operands[1] = x10;
    1123          969 :   if (!register_operand (operands[1], E_V4SFmode))
    1124              :     return -1;
    1125          798 :   x11 = XEXP (x7, 0);
    1126          798 :   operands[3] = x11;
    1127          798 :   if (!scratch_operand (operands[3], E_V4SFmode))
    1128              :     return -1;
    1129              :   return 0;
    1130              : }
    1131              : 
    1132              : int
    1133       335759 : pattern239 (rtx x1)
    1134              : {
    1135       335759 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1136       335759 :   rtx x2, x3;
    1137       335759 :   int res ATTRIBUTE_UNUSED;
    1138       335759 :   x2 = XEXP (x1, 0);
    1139       335759 :   operands[1] = x2;
    1140       335759 :   x3 = XEXP (x1, 1);
    1141       335759 :   operands[2] = x3;
    1142       335759 :   if (!register_operand (operands[2], E_QImode))
    1143              :     return -1;
    1144         1610 :   return pattern132 (x1); /* [-1, 1] */
    1145              : }
    1146              : 
    1147              : int
    1148      8066139 : pattern244 (rtx x1)
    1149              : {
    1150      8066139 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1151      8066139 :   rtx x2, x3;
    1152      8066139 :   int res ATTRIBUTE_UNUSED;
    1153      8066139 :   x2 = XEXP (x1, 0);
    1154      8066139 :   operands[1] = x2;
    1155      8066139 :   x3 = XEXP (x1, 1);
    1156      8066139 :   operands[2] = x3;
    1157      8066139 :   switch (GET_MODE (operands[0]))
    1158              :     {
    1159          254 :     case E_V64QImode:
    1160          254 :       return pattern190 (x1, 
    1161          254 : E_V64QImode); /* [-1, 0] */
    1162              : 
    1163          727 :     case E_V32QImode:
    1164          727 :       if (pattern190 (x1, 
    1165              : E_V32QImode) != 0)
    1166              :         return -1;
    1167              :       return 1;
    1168              : 
    1169        13537 :     case E_V16QImode:
    1170        13537 :       if (pattern190 (x1, 
    1171              : E_V16QImode) != 0)
    1172              :         return -1;
    1173              :       return 2;
    1174              : 
    1175          304 :     case E_V32HImode:
    1176          304 :       if (pattern190 (x1, 
    1177              : E_V32HImode) != 0)
    1178              :         return -1;
    1179              :       return 3;
    1180              : 
    1181         2977 :     case E_V16HImode:
    1182         2977 :       if (pattern190 (x1, 
    1183              : E_V16HImode) != 0)
    1184              :         return -1;
    1185              :       return 4;
    1186              : 
    1187        24270 :     case E_V8HImode:
    1188        24270 :       if (pattern190 (x1, 
    1189              : E_V8HImode) != 0)
    1190              :         return -1;
    1191              :       return 5;
    1192              : 
    1193         3322 :     case E_V16SImode:
    1194         3322 :       if (pattern190 (x1, 
    1195              : E_V16SImode) != 0)
    1196              :         return -1;
    1197              :       return 6;
    1198              : 
    1199         8412 :     case E_V8SImode:
    1200         8412 :       if (pattern190 (x1, 
    1201              : E_V8SImode) != 0)
    1202              :         return -1;
    1203              :       return 7;
    1204              : 
    1205       196955 :     case E_V4SImode:
    1206       196955 :       if (pattern190 (x1, 
    1207              : E_V4SImode) != 0)
    1208              :         return -1;
    1209              :       return 8;
    1210              : 
    1211         1585 :     case E_V8DImode:
    1212         1585 :       if (pattern190 (x1, 
    1213              : E_V8DImode) != 0)
    1214              :         return -1;
    1215              :       return 9;
    1216              : 
    1217         3452 :     case E_V4DImode:
    1218         3452 :       if (pattern190 (x1, 
    1219              : E_V4DImode) != 0)
    1220              :         return -1;
    1221              :       return 10;
    1222              : 
    1223        94217 :     case E_V2DImode:
    1224        94217 :       if (pattern190 (x1, 
    1225              : E_V2DImode) != 0)
    1226              :         return -1;
    1227              :       return 11;
    1228              : 
    1229              :     default:
    1230              :       return -1;
    1231              :     }
    1232              : }
    1233              : 
    1234              : int
    1235            5 : pattern267 (rtx x1, int *pnum_clobbers)
    1236              : {
    1237            5 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1238            5 :   rtx x2, x3, x4;
    1239            5 :   int res ATTRIBUTE_UNUSED;
    1240            5 :   if (pnum_clobbers == NULL)
    1241              :     return -1;
    1242            5 :   x2 = XEXP (x1, 0);
    1243            5 :   x3 = XEXP (x2, 0);
    1244            5 :   operands[0] = x3;
    1245            5 :   x4 = XEXP (x1, 1);
    1246            5 :   return pattern41 (x4); /* [-1, 1] */
    1247              : }
    1248              : 
    1249              : int
    1250        79185 : pattern275 (rtx x1, machine_mode i1, machine_mode i2)
    1251              : {
    1252        79185 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1253        79185 :   rtx x2;
    1254        79185 :   int res ATTRIBUTE_UNUSED;
    1255        79185 :   if (!register_operand (operands[0], i1)
    1256        79185 :       || GET_MODE (x1) != i1)
    1257              :     return -1;
    1258        78087 :   x2 = XEXP (x1, 0);
    1259        78087 :   if (GET_MODE (x2) != i2
    1260        78087 :       || !register_operand (operands[1], i1)
    1261       148786 :       || !register_mmxmem_operand (operands[2], i1))
    1262        20150 :     return -1;
    1263              :   return 0;
    1264              : }
    1265              : 
    1266              : int
    1267        51697 : pattern281 (rtx x1)
    1268              : {
    1269        51697 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1270        51697 :   rtx x2;
    1271        51697 :   int res ATTRIBUTE_UNUSED;
    1272        51697 :   switch (GET_MODE (operands[0]))
    1273              :     {
    1274         9722 :     case E_SImode:
    1275         9722 :       if (!register_operand (operands[0], E_SImode)
    1276         9722 :           || GET_MODE (x1) != E_SImode)
    1277              :         return -1;
    1278         9492 :       x2 = XEXP (x1, 0);
    1279         9492 :       switch (GET_MODE (x2))
    1280              :         {
    1281              :         case E_QImode:
    1282              :           return 0;
    1283              : 
    1284         3793 :         case E_HImode:
    1285         3793 :           return 1;
    1286              : 
    1287              :         default:
    1288              :           return -1;
    1289              :         }
    1290              : 
    1291        18674 :     case E_DImode:
    1292        18674 :       if (!register_operand (operands[0], E_DImode)
    1293        18674 :           || GET_MODE (x1) != E_DImode)
    1294              :         return -1;
    1295        17267 :       x2 = XEXP (x1, 0);
    1296        17267 :       switch (GET_MODE (x2))
    1297              :         {
    1298              :         case E_QImode:
    1299              :           return 2;
    1300              : 
    1301              :         case E_HImode:
    1302              :           return 3;
    1303              : 
    1304              :         case E_SImode:
    1305              :           return 4;
    1306              : 
    1307              :         default:
    1308              :           return -1;
    1309              :         }
    1310              : 
    1311              :     default:
    1312              :       return -1;
    1313              :     }
    1314              : }
    1315              : 
    1316              : int
    1317        28346 : pattern295 (rtx x1, machine_mode i1)
    1318              : {
    1319        28346 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1320        28346 :   rtx x2, x3, x4, x5;
    1321        28346 :   int res ATTRIBUTE_UNUSED;
    1322        28346 :   x2 = XEXP (x1, 0);
    1323        28346 :   if (GET_MODE (x2) != i1
    1324        12406 :       || !register_operand (operands[0], i1)
    1325        40715 :       || GET_MODE (x1) != i1)
    1326        15977 :     return -1;
    1327        12369 :   x3 = XEXP (x2, 0);
    1328        12369 :   operands[1] = x3;
    1329        12369 :   if (!nonimmediate_operand (operands[1], i1))
    1330              :     return -1;
    1331        12356 :   x4 = XEXP (x2, 1);
    1332        12356 :   operands[2] = x4;
    1333        12356 :   if (!const_int_operand (operands[2], E_QImode))
    1334              :     return -1;
    1335        12153 :   x5 = XEXP (x1, 1);
    1336        12153 :   operands[3] = x5;
    1337        12153 :   if (!const_int_operand (operands[3], E_QImode))
    1338              :     return -1;
    1339              :   return 0;
    1340              : }
    1341              : 
    1342              : int
    1343         4592 : pattern303 (rtx x1)
    1344              : {
    1345         4592 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1346         4592 :   int res ATTRIBUTE_UNUSED;
    1347         4592 :   switch (GET_MODE (operands[0]))
    1348              :     {
    1349         1134 :     case E_DImode:
    1350         1134 :       return pattern169 (x1, 
    1351              : E_DImode, 
    1352         1134 : E_V64QImode); /* [-1, 0] */
    1353              : 
    1354         2233 :     case E_SImode:
    1355         2233 :       if (!register_operand (operands[0], E_SImode)
    1356         2233 :           || GET_MODE (x1) != E_SImode)
    1357              :         return -1;
    1358         2197 :       switch (GET_MODE (operands[1]))
    1359              :         {
    1360          994 :         case E_V32QImode:
    1361          994 :           if (!register_operand (operands[1], E_V32QImode)
    1362          994 :               || !nonimmediate_operand (operands[2], E_V32QImode))
    1363           89 :             return -1;
    1364              :           return 1;
    1365              : 
    1366         1203 :         case E_V32HImode:
    1367         1203 :           if (!register_operand (operands[1], E_V32HImode)
    1368         1203 :               || !nonimmediate_operand (operands[2], E_V32HImode))
    1369          132 :             return -1;
    1370              :           return 2;
    1371              : 
    1372              :         default:
    1373              :           return -1;
    1374              :         }
    1375              : 
    1376              :     default:
    1377              :       return -1;
    1378              :     }
    1379              : }
    1380              : 
    1381              : int
    1382         3347 : pattern314 (rtx x1)
    1383              : {
    1384         3347 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1385         3347 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    1386         3347 :   rtx x10;
    1387         3347 :   int res ATTRIBUTE_UNUSED;
    1388         3347 :   x2 = XEXP (x1, 0);
    1389         3347 :   x3 = XEXP (x2, 0);
    1390         3347 :   x4 = XEXP (x3, 0);
    1391         3347 :   if (GET_CODE (x4) != VEC_SELECT)
    1392              :     return -1;
    1393          263 :   x5 = XEXP (x4, 1);
    1394          263 :   if (GET_CODE (x5) != PARALLEL
    1395          263 :       || XVECLEN (x5, 0) != 1)
    1396              :     return -1;
    1397          263 :   x6 = XVECEXP (x5, 0, 0);
    1398          263 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1399              :     return -1;
    1400          263 :   x7 = XEXP (x1, 2);
    1401          263 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    1402              :     return -1;
    1403          262 :   x8 = XEXP (x4, 0);
    1404          262 :   operands[1] = x8;
    1405          262 :   x9 = XEXP (x3, 1);
    1406          262 :   operands[2] = x9;
    1407          262 :   x10 = XEXP (x1, 1);
    1408          262 :   if (!rtx_equal_p (x10, operands[1]))
    1409              :     return -1;
    1410          261 :   switch (GET_MODE (operands[0]))
    1411              :     {
    1412          197 :     case E_V8HFmode:
    1413          197 :       return pattern313 (x1, 
    1414              : E_HFmode, 
    1415          197 : E_V8HFmode); /* [-1, 0] */
    1416              : 
    1417            8 :     case E_V4SFmode:
    1418            8 :       if (pattern313 (x1, 
    1419              : E_SFmode, 
    1420              : E_V4SFmode) != 0)
    1421              :         return -1;
    1422              :       return 1;
    1423              : 
    1424           56 :     case E_V2DFmode:
    1425           56 :       if (pattern313 (x1, 
    1426              : E_DFmode, 
    1427              : E_V2DFmode) != 0)
    1428              :         return -1;
    1429              :       return 2;
    1430              : 
    1431              :     default:
    1432              :       return -1;
    1433              :     }
    1434              : }
    1435              : 
    1436              : int
    1437         2383 : pattern328 (rtx x1)
    1438              : {
    1439         2383 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1440         2383 :   rtx x2, x3, x4, x5, x6;
    1441         2383 :   int res ATTRIBUTE_UNUSED;
    1442         2383 :   x2 = XVECEXP (x1, 0, 0);
    1443         2383 :   switch (GET_CODE (x2))
    1444              :     {
    1445         2109 :     case REG:
    1446         2109 :     case SUBREG:
    1447         2109 :     case MEM:
    1448         2109 :       operands[1] = x2;
    1449         2109 :       switch (GET_MODE (operands[0]))
    1450              :         {
    1451              :         case E_V32HImode:
    1452              :           return 0;
    1453              : 
    1454          114 :         case E_V16SImode:
    1455          114 :           return 1;
    1456              : 
    1457          160 :         case E_V8DImode:
    1458          160 :           return 2;
    1459              : 
    1460          114 :         case E_V16HImode:
    1461          114 :           return 3;
    1462              : 
    1463          365 :         case E_V8SImode:
    1464          365 :           return 4;
    1465              : 
    1466          374 :         case E_V4DImode:
    1467          374 :           return 5;
    1468              : 
    1469          114 :         case E_V8HImode:
    1470          114 :           return 6;
    1471              : 
    1472          553 :         case E_V4SImode:
    1473          553 :           return 7;
    1474              : 
    1475          244 :         case E_V2DImode:
    1476          244 :           return 8;
    1477              : 
    1478              :         default:
    1479              :           return -1;
    1480              :         }
    1481              : 
    1482          186 :     case VEC_SELECT:
    1483          186 :       if (GET_MODE (x2) != E_V2SFmode)
    1484              :         return -1;
    1485          126 :       x3 = XEXP (x2, 1);
    1486          126 :       if (GET_CODE (x3) != PARALLEL
    1487          126 :           || XVECLEN (x3, 0) != 2)
    1488              :         return -1;
    1489          126 :       x4 = XVECEXP (x3, 0, 0);
    1490          126 :       if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1491              :         return -1;
    1492          126 :       x5 = XVECEXP (x3, 0, 1);
    1493          126 :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
    1494          126 :           || !register_operand (operands[0], E_V2DImode)
    1495          240 :           || GET_MODE (x1) != E_V2DImode)
    1496           12 :         return -1;
    1497          114 :       x6 = XEXP (x2, 0);
    1498          114 :       operands[1] = x6;
    1499          114 :       if (!nonimmediate_operand (operands[1], E_V4SFmode))
    1500              :         return -1;
    1501              :       return 9;
    1502              : 
    1503              :     default:
    1504              :       return -1;
    1505              :     }
    1506              : }
    1507              : 
    1508              : int
    1509          398 : pattern338 (rtx x1, machine_mode i1, machine_mode i2)
    1510              : {
    1511          398 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1512          398 :   rtx x2, x3, x4, x5;
    1513          398 :   int res ATTRIBUTE_UNUSED;
    1514          398 :   if (GET_MODE (x1) != i2)
    1515              :     return -1;
    1516          398 :   x2 = XEXP (x1, 0);
    1517          398 :   if (GET_MODE (x2) != i2)
    1518              :     return -1;
    1519          398 :   x3 = XEXP (x2, 0);
    1520          398 :   if (GET_MODE (x3) != i1)
    1521              :     return -1;
    1522          398 :   x4 = XEXP (x1, 1);
    1523          398 :   if (GET_MODE (x4) != i2)
    1524              :     return -1;
    1525          398 :   x5 = XEXP (x4, 0);
    1526          398 :   if (GET_MODE (x5) != i1)
    1527            0 :     return -1;
    1528              :   return 0;
    1529              : }
    1530              : 
    1531              : int
    1532         5661 : pattern341 (rtx x1)
    1533              : {
    1534         5661 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1535         5661 :   rtx x2, x3, x4, x5, x6;
    1536         5661 :   int res ATTRIBUTE_UNUSED;
    1537         5661 :   x2 = XEXP (x1, 0);
    1538         5661 :   operands[0] = x2;
    1539         5661 :   x3 = XEXP (x1, 1);
    1540         5661 :   x4 = XEXP (x3, 1);
    1541         5661 :   x5 = XEXP (x4, 0);
    1542         5661 :   operands[2] = x5;
    1543         5661 :   if (!register_operand (operands[2], E_QImode))
    1544              :     return -1;
    1545         4591 :   x6 = XEXP (x4, 1);
    1546         4591 :   operands[3] = x6;
    1547         4591 :   if (!const_int_operand (operands[3], E_QImode))
    1548              :     return -1;
    1549         4591 :   switch (GET_MODE (operands[0]))
    1550              :     {
    1551         3450 :     case E_DImode:
    1552         3450 :       if (GET_MODE (x3) != E_DImode)
    1553              :         return -1;
    1554              :       return 0;
    1555              : 
    1556            6 :     case E_TImode:
    1557            6 :       if (!register_operand (operands[0], E_TImode)
    1558            6 :           || GET_MODE (x3) != E_TImode
    1559           12 :           || !register_operand (operands[1], E_TImode))
    1560            0 :         return -1;
    1561              :       return 1;
    1562              : 
    1563         1005 :     case E_SImode:
    1564         1005 :       if (!nonimmediate_operand (operands[0], E_SImode)
    1565         1005 :           || GET_MODE (x3) != E_SImode
    1566         2010 :           || !nonimmediate_operand (operands[1], E_SImode))
    1567          264 :         return -1;
    1568              :       return 2;
    1569              : 
    1570              :     default:
    1571              :       return -1;
    1572              :     }
    1573              : }
    1574              : 
    1575              : int
    1576          618 : pattern348 (rtx x1, int *pnum_clobbers, rtx_code i1)
    1577              : {
    1578          618 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1579          618 :   rtx x2, x3, x4, x5, x6, x7;
    1580          618 :   int res ATTRIBUTE_UNUSED;
    1581          618 :   if (pnum_clobbers == NULL)
    1582              :     return -1;
    1583          617 :   x2 = XVECEXP (x1, 0, 0);
    1584          617 :   x3 = XEXP (x2, 1);
    1585          617 :   x4 = XEXP (x3, 0);
    1586          617 :   if (GET_MODE (x4) != E_SImode)
    1587              :     return -1;
    1588          427 :   x5 = XVECEXP (x1, 0, 1);
    1589          427 :   if (GET_CODE (x5) != SET)
    1590              :     return -1;
    1591          427 :   x6 = XEXP (x5, 1);
    1592          427 :   if (GET_CODE (x6) != i1
    1593          413 :       || GET_MODE (x6) != E_SImode)
    1594              :     return -1;
    1595          413 :   x7 = XEXP (x2, 0);
    1596          413 :   operands[0] = x7;
    1597          413 :   if (!register_operand (operands[0], E_DImode)
    1598          413 :       || GET_MODE (x3) != E_DImode)
    1599              :     return -1;
    1600              :   return 0;
    1601              : }
    1602              : 
    1603              : int
    1604          113 : pattern352 (rtx x1, machine_mode i1, machine_mode i2)
    1605              : {
    1606          113 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1607          113 :   rtx x2;
    1608          113 :   int res ATTRIBUTE_UNUSED;
    1609          113 :   if (!register_operand (operands[0], i2)
    1610          113 :       || GET_MODE (x1) != i2)
    1611              :     return -1;
    1612          113 :   x2 = XEXP (x1, 0);
    1613          113 :   if (GET_MODE (x2) != i1
    1614          113 :       || !nonimmediate_operand (operands[1], i1))
    1615           28 :     return -1;
    1616              :   return 0;
    1617              : }
    1618              : 
    1619              : int
    1620       789759 : pattern357 (rtx x1)
    1621              : {
    1622       789759 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1623       789759 :   rtx x2;
    1624       789759 :   int res ATTRIBUTE_UNUSED;
    1625       789759 :   if (GET_CODE (x1) != CLOBBER)
    1626              :     return -1;
    1627       669404 :   x2 = XEXP (x1, 0);
    1628       669404 :   if (GET_CODE (x2) != REG
    1629       669403 :       || REGNO (x2) != 17
    1630      1303292 :       || GET_MODE (x2) != E_CCmode)
    1631        35516 :     return -1;
    1632              :   return 0;
    1633              : }
    1634              : 
    1635              : int
    1636           39 : pattern359 (rtx x1, machine_mode i1, machine_mode i2)
    1637              : {
    1638           39 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1639           39 :   rtx x2, x3, x4, x5, x6;
    1640           39 :   int res ATTRIBUTE_UNUSED;
    1641           39 :   if (!register_operand (operands[0], i2)
    1642           39 :       || GET_MODE (x1) != i2)
    1643              :     return -1;
    1644           36 :   x2 = XEXP (x1, 0);
    1645           36 :   if (GET_MODE (x2) != i2)
    1646              :     return -1;
    1647           36 :   x3 = XEXP (x2, 0);
    1648           36 :   if (GET_MODE (x3) != i2)
    1649              :     return -1;
    1650           36 :   x4 = XEXP (x3, 0);
    1651           36 :   if (GET_MODE (x4) != i2
    1652           36 :       || !nonimmediate_operand (operands[2], i1))
    1653            0 :     return -1;
    1654           36 :   x5 = XEXP (x2, 1);
    1655           36 :   if (GET_MODE (x5) != i2
    1656           36 :       || !nonimmediate_operand (operands[4], i1))
    1657            0 :     return -1;
    1658           36 :   x6 = XEXP (x1, 1);
    1659           36 :   if (GET_MODE (x6) != i2
    1660           36 :       || !nonimmediate_operand (operands[1], i1))
    1661           10 :     return -1;
    1662              :   return 0;
    1663              : }
    1664              : 
    1665              : int
    1666         4719 : pattern364 (rtx x1, machine_mode i1)
    1667              : {
    1668         4719 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1669         4719 :   rtx x2;
    1670         4719 :   int res ATTRIBUTE_UNUSED;
    1671         4719 :   if (!nonimmediate_operand (operands[0], i1)
    1672         4719 :       || GET_MODE (x1) != i1)
    1673              :     return -1;
    1674         4719 :   x2 = XEXP (x1, 0);
    1675         4719 :   if (GET_MODE (x2) != i1
    1676         4719 :       || !x86_64_general_operand (operands[1], i1))
    1677          196 :     return -1;
    1678              :   return 0;
    1679              : }
    1680              : 
    1681              : int
    1682       267737 : pattern370 (rtx x1, rtx_code i1)
    1683              : {
    1684       267737 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1685       267737 :   rtx x2, x3, x4, x5, x6, x7;
    1686       267737 :   int res ATTRIBUTE_UNUSED;
    1687       267737 :   x2 = XVECEXP (x1, 0, 0);
    1688       267737 :   x3 = XEXP (x2, 1);
    1689       267737 :   x4 = XEXP (x3, 1);
    1690       267737 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1691              :     return -1;
    1692       255493 :   x5 = XEXP (x3, 0);
    1693       255493 :   x6 = XEXP (x5, 0);
    1694       255493 :   switch (GET_CODE (x6))
    1695              :     {
    1696       146569 :     case REG:
    1697       146569 :     case SUBREG:
    1698       146569 :     case MEM:
    1699       146569 :       x7 = XEXP (x5, 1);
    1700       146569 :       operands[2] = x7;
    1701       146569 :       return 0;
    1702              : 
    1703         2704 :     case UNSPEC_VOLATILE:
    1704         2704 :       res = pattern369 (x1, 
    1705              : i1);
    1706         2704 :       if (res >= 0)
    1707         2480 :         return res + 1; /* [1, 4] */
    1708              :       return -1;
    1709              : 
    1710              :     default:
    1711              :       return -1;
    1712              :     }
    1713              : }
    1714              : 
    1715              : int
    1716        12341 : pattern376 (rtx x1, int i1)
    1717              : {
    1718        12341 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1719        12341 :   rtx x2, x3, x4, x5, x6, x7, x8;
    1720        12341 :   int res ATTRIBUTE_UNUSED;
    1721        12341 :   x2 = XVECEXP (x1, 0, 0);
    1722        12341 :   x3 = XEXP (x2, 1);
    1723        12341 :   x4 = XEXP (x3, 0);
    1724        12341 :   x5 = XEXP (x4, 0);
    1725        12341 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    1726              :     return -1;
    1727          657 :   x6 = XVECEXP (x1, 0, 1);
    1728          657 :   if (GET_CODE (x6) != CLOBBER)
    1729              :     return -1;
    1730          496 :   x7 = XEXP (x6, 0);
    1731          496 :   if (GET_CODE (x7) != REG
    1732          496 :       || REGNO (x7) != 17
    1733          992 :       || GET_MODE (x7) != E_CCmode)
    1734              :     return -1;
    1735          496 :   x8 = XEXP (x2, 0);
    1736          496 :   operands[0] = x8;
    1737          496 :   return pattern375 (x3); /* [-1, 2] */
    1738              : }
    1739              : 
    1740              : int
    1741       146109 : pattern383 (rtx x1, machine_mode i1, machine_mode i2)
    1742              : {
    1743       146109 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1744       146109 :   rtx x2;
    1745       146109 :   int res ATTRIBUTE_UNUSED;
    1746       146109 :   if (!register_operand (operands[0], i2)
    1747       146109 :       || GET_MODE (x1) != i2)
    1748              :     return -1;
    1749       146109 :   x2 = XEXP (x1, 0);
    1750       146109 :   if (GET_MODE (x2) != i2
    1751       146109 :       || !nonimmediate_operand (operands[1], i1))
    1752        27477 :     return -1;
    1753              :   return 0;
    1754              : }
    1755              : 
    1756              : int
    1757            0 : pattern389 (machine_mode i1, machine_mode i2)
    1758              : {
    1759            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1760            0 :   int res ATTRIBUTE_UNUSED;
    1761            0 :   if (!nonimmediate_operand (operands[3], i2)
    1762            0 :       || !nonimmediate_operand (operands[4], i1)
    1763            0 :       || !scratch_operand (operands[1], i1)
    1764            0 :       || !scratch_operand (operands[2], i1))
    1765            0 :     return -1;
    1766              :   return 0;
    1767              : }
    1768              : 
    1769              : int
    1770       106593 : pattern396 (rtx x1)
    1771              : {
    1772       106593 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1773       106593 :   rtx x2, x3;
    1774       106593 :   int res ATTRIBUTE_UNUSED;
    1775       106593 :   x2 = XVECEXP (x1, 0, 2);
    1776       106593 :   x3 = XEXP (x2, 0);
    1777       106593 :   operands[4] = x3;
    1778       106593 :   switch (GET_MODE (operands[0]))
    1779              :     {
    1780          806 :     case E_HImode:
    1781          806 :       return pattern395 (x1, 
    1782          806 : E_HImode); /* [-1, 0] */
    1783              : 
    1784        27729 :     case E_SImode:
    1785        27729 :       if (pattern395 (x1, 
    1786              : E_SImode) != 0)
    1787              :         return -1;
    1788              :       return 1;
    1789              : 
    1790        78058 :     case E_DImode:
    1791        78058 :       if (pattern395 (x1, 
    1792              : E_DImode) != 0)
    1793              :         return -1;
    1794              :       return 2;
    1795              : 
    1796              :     default:
    1797              :       return -1;
    1798              :     }
    1799              : }
    1800              : 
    1801              : int
    1802       849405 : pattern402 (rtx x1)
    1803              : {
    1804       849405 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1805       849405 :   rtx x2, x3, x4, x5;
    1806       849405 :   int res ATTRIBUTE_UNUSED;
    1807       849405 :   x2 = XEXP (x1, 0);
    1808       849405 :   x3 = XEXP (x2, 0);
    1809       849405 :   operands[1] = x3;
    1810       849405 :   x4 = XEXP (x2, 1);
    1811       849405 :   operands[2] = x4;
    1812       849405 :   if (!const248_operand (operands[2], E_VOIDmode))
    1813              :     return -1;
    1814        14241 :   x5 = XEXP (x1, 1);
    1815        14241 :   operands[3] = x5;
    1816        14241 :   switch (GET_MODE (operands[0]))
    1817              :     {
    1818          765 :     case E_QImode:
    1819          765 :       return pattern401 (x1, 
    1820          765 : E_QImode); /* [-1, 0] */
    1821              : 
    1822            0 :     case E_HImode:
    1823            0 :       if (pattern401 (x1, 
    1824              : E_HImode) != 0)
    1825              :         return -1;
    1826              :       return 1;
    1827              : 
    1828              :     default:
    1829              :       return -1;
    1830              :     }
    1831              : }
    1832              : 
    1833              : int
    1834         3110 : pattern411 (rtx x1)
    1835              : {
    1836         3110 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1837         3110 :   rtx x2, x3, x4, x5, x6, x7;
    1838         3110 :   int res ATTRIBUTE_UNUSED;
    1839         3110 :   x2 = XVECEXP (x1, 0, 1);
    1840         3110 :   if (GET_CODE (x2) != CLOBBER)
    1841              :     return -1;
    1842         3109 :   x3 = XEXP (x2, 0);
    1843         3109 :   if (GET_CODE (x3) != REG
    1844         3109 :       || REGNO (x3) != 17
    1845         6145 :       || GET_MODE (x3) != E_CCmode)
    1846              :     return -1;
    1847         3036 :   x4 = XVECEXP (x1, 0, 0);
    1848         3036 :   x5 = XEXP (x4, 0);
    1849         3036 :   operands[0] = x5;
    1850         3036 :   x6 = XEXP (x4, 1);
    1851         3036 :   x7 = XEXP (x6, 0);
    1852         3036 :   operands[1] = x7;
    1853         3036 :   return pattern410 (x6); /* [-1, 1] */
    1854              : }
    1855              : 
    1856              : int
    1857        77952 : pattern418 (rtx x1)
    1858              : {
    1859        77952 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1860        77952 :   rtx x2, x3, x4, x5, x6;
    1861        77952 :   int res ATTRIBUTE_UNUSED;
    1862        77952 :   x2 = XEXP (x1, 0);
    1863        77952 :   x3 = XEXP (x2, 1);
    1864        77952 :   if (GET_CODE (x3) != UNSPEC
    1865          303 :       || XVECLEN (x3, 0) != 1
    1866          303 :       || XINT (x3, 1) != 148)
    1867              :     return -1;
    1868          295 :   x4 = XVECEXP (x3, 0, 0);
    1869          295 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1870              :     return -1;
    1871          295 :   x5 = XEXP (x1, 1);
    1872          295 :   if (GET_CODE (x5) != UNSPEC
    1873          295 :       || XVECLEN (x5, 0) != 1
    1874          295 :       || XINT (x5, 1) != 148)
    1875              :     return -1;
    1876          295 :   x6 = XVECEXP (x5, 0, 0);
    1877          295 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1878            0 :     return -1;
    1879              :   return 0;
    1880              : }
    1881              : 
    1882              : int
    1883      3939881 : pattern423 (rtx x1, rtx_code i1, int i2)
    1884              : {
    1885      3939881 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1886      3939881 :   rtx x2, x3;
    1887      3939881 :   int res ATTRIBUTE_UNUSED;
    1888      3939881 :   if (GET_CODE (x1) != PARALLEL
    1889       493275 :       || XVECLEN (x1, 0) != i2)
    1890              :     return -1;
    1891       297223 :   x2 = XVECEXP (x1, 0, 0);
    1892       297223 :   if (GET_CODE (x2) != SET)
    1893              :     return -1;
    1894       295037 :   x3 = XEXP (x2, 1);
    1895       295037 :   if (GET_CODE (x3) != i1)
    1896       266495 :     return -1;
    1897              :   return 0;
    1898              : }
    1899              : 
    1900              : int
    1901      4195758 : pattern428 (rtx x1, int *pnum_clobbers)
    1902              : {
    1903      4195758 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1904      4195758 :   rtx x2, x3, x4;
    1905      4195758 :   int res ATTRIBUTE_UNUSED;
    1906      4195758 :   x2 = XEXP (x1, 0);
    1907      4195758 :   switch (GET_CODE (x2))
    1908              :     {
    1909      4192746 :     case REG:
    1910      4192746 :     case SUBREG:
    1911      4192746 :     case MEM:
    1912      4192746 :       operands[0] = x2;
    1913      4192746 :       return 0;
    1914              : 
    1915          166 :     case STRICT_LOW_PART:
    1916          166 :       if (pnum_clobbers == NULL)
    1917              :         return -1;
    1918          166 :       x3 = XEXP (x2, 0);
    1919          166 :       operands[0] = x3;
    1920          166 :       if (!nonmemory_operand (operands[2], E_QImode))
    1921              :         return -1;
    1922          145 :       x4 = XEXP (x1, 1);
    1923          145 :       res = pattern41 (x4);
    1924          145 :       if (res >= 0)
    1925          101 :         return res + 1; /* [1, 2] */
    1926              :       return -1;
    1927              : 
    1928              :     default:
    1929              :       return -1;
    1930              :     }
    1931              : }
    1932              : 
    1933              : int
    1934         1508 : pattern437 (rtx x1, int *pnum_clobbers)
    1935              : {
    1936         1508 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1937         1508 :   rtx x2, x3, x4, x5, x6, x7;
    1938         1508 :   int res ATTRIBUTE_UNUSED;
    1939         1508 :   if (pnum_clobbers == NULL)
    1940              :     return -1;
    1941         1508 :   x2 = XEXP (x1, 0);
    1942         1508 :   x3 = XEXP (x2, 0);
    1943         1508 :   x4 = XEXP (x3, 1);
    1944         1508 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    1945              :     return -1;
    1946         1390 :   x5 = XEXP (x3, 0);
    1947         1390 :   operands[3] = x5;
    1948         1390 :   if (!int_nonimmediate_operand (operands[3], E_VOIDmode))
    1949              :     return -1;
    1950          813 :   x6 = XEXP (x2, 1);
    1951          813 :   operands[1] = x6;
    1952          813 :   x7 = XEXP (x1, 1);
    1953          813 :   operands[2] = x7;
    1954          813 :   switch (GET_MODE (operands[0]))
    1955              :     {
    1956              :     case E_QImode:
    1957              :       return 0;
    1958              : 
    1959            0 :     case E_HImode:
    1960            0 :       return 1;
    1961              : 
    1962              :     default:
    1963              :       return -1;
    1964              :     }
    1965              : }
    1966              : 
    1967              : int
    1968          113 : pattern448 (rtx x1, machine_mode i1)
    1969              : {
    1970          113 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1971          113 :   rtx x2, x3, x4;
    1972          113 :   int res ATTRIBUTE_UNUSED;
    1973          113 :   if (GET_MODE (x1) != i1)
    1974              :     return -1;
    1975          113 :   x2 = XEXP (x1, 0);
    1976          113 :   if (GET_MODE (x2) != i1)
    1977              :     return -1;
    1978          113 :   x3 = XEXP (x1, 1);
    1979          113 :   if (GET_MODE (x3) != i1)
    1980              :     return -1;
    1981          113 :   x4 = XEXP (x3, 0);
    1982          113 :   if (!register_operand (x4, i1))
    1983              :     return -1;
    1984              :   return 0;
    1985              : }
    1986              : 
    1987              : int
    1988        15522 : pattern454 (rtx x1)
    1989              : {
    1990        15522 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    1991        15522 :   rtx x2, x3, x4;
    1992        15522 :   int res ATTRIBUTE_UNUSED;
    1993        15522 :   x2 = XEXP (x1, 1);
    1994        15522 :   x3 = XEXP (x2, 0);
    1995        15522 :   x4 = XEXP (x3, 1);
    1996        15522 :   operands[3] = x4;
    1997        15522 :   if (!const_int_operand (operands[3], E_VOIDmode))
    1998              :     return -1;
    1999        15506 :   return pattern14 (x1); /* [-1, 1] */
    2000              : }
    2001              : 
    2002              : int
    2003            0 : pattern458 (rtx x1)
    2004              : {
    2005            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2006            0 :   rtx x2, x3, x4, x5, x6, x7;
    2007            0 :   int res ATTRIBUTE_UNUSED;
    2008            0 :   x2 = XVECEXP (x1, 0, 0);
    2009            0 :   x3 = XEXP (x2, 0);
    2010            0 :   if (GET_CODE (x3) != VEC_SELECT)
    2011              :     return -1;
    2012            0 :   x4 = XEXP (x3, 1);
    2013            0 :   if (GET_CODE (x4) != PARALLEL
    2014            0 :       || XVECLEN (x4, 0) != 1)
    2015              :     return -1;
    2016            0 :   x5 = XVECEXP (x4, 0, 0);
    2017            0 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2018              :     return -1;
    2019            0 :   x6 = XEXP (x3, 0);
    2020            0 :   operands[1] = x6;
    2021            0 :   x7 = XVECEXP (x1, 0, 1);
    2022            0 :   operands[2] = x7;
    2023            0 :   if (!const48_operand (operands[2], E_SImode))
    2024              :     return -1;
    2025            0 :   switch (GET_MODE (operands[0]))
    2026              :     {
    2027            0 :     case E_SImode:
    2028            0 :       return pattern457 (x1, 
    2029            0 : E_SImode); /* [-1, 2] */
    2030              : 
    2031            0 :     case E_DImode:
    2032            0 :       res = pattern457 (x1, 
    2033              : E_DImode);
    2034            0 :       if (res >= 0)
    2035            0 :         return res + 3; /* [3, 5] */
    2036              :       return -1;
    2037              : 
    2038              :     default:
    2039              :       return -1;
    2040              :     }
    2041              : }
    2042              : 
    2043              : int
    2044         2956 : pattern469 (rtx x1)
    2045              : {
    2046         2956 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2047         2956 :   rtx x2, x3, x4, x5, x6;
    2048         2956 :   int res ATTRIBUTE_UNUSED;
    2049         2956 :   x2 = XEXP (x1, 0);
    2050         2956 :   x3 = XVECEXP (x2, 0, 0);
    2051         2956 :   operands[1] = x3;
    2052         2956 :   x4 = XVECEXP (x2, 0, 1);
    2053         2956 :   operands[2] = x4;
    2054         2956 :   x5 = XEXP (x1, 1);
    2055         2956 :   operands[3] = x5;
    2056         2956 :   x6 = XEXP (x1, 2);
    2057         2956 :   operands[4] = x6;
    2058         2956 :   switch (GET_MODE (operands[0]))
    2059              :     {
    2060         1008 :     case E_V64QImode:
    2061         1008 :       return pattern468 (x1, 
    2062              : E_DImode, 
    2063              : E_V64QImode, 
    2064         1008 : E_V32HFmode); /* [-1, 0] */
    2065              : 
    2066          992 :     case E_V32QImode:
    2067          992 :       if (pattern468 (x1, 
    2068              : E_SImode, 
    2069              : E_V32QImode, 
    2070              : E_V16HFmode) != 0)
    2071              :         return -1;
    2072              :       return 1;
    2073              : 
    2074          956 :     case E_V16QImode:
    2075          956 :       if (pattern468 (x1, 
    2076              : E_HImode, 
    2077              : E_V16QImode, 
    2078              : E_V8HFmode) != 0)
    2079              :         return -1;
    2080              :       return 2;
    2081              : 
    2082              :     default:
    2083              :       return -1;
    2084              :     }
    2085              : }
    2086              : 
    2087              : int
    2088          761 : pattern480 (rtx x1, machine_mode i1)
    2089              : {
    2090          761 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2091          761 :   rtx x2;
    2092          761 :   int res ATTRIBUTE_UNUSED;
    2093          761 :   if (!register_operand (operands[0], i1)
    2094          761 :       || GET_MODE (x1) != i1)
    2095              :     return -1;
    2096          711 :   x2 = XEXP (x1, 0);
    2097          711 :   if (GET_MODE (x2) != i1
    2098          711 :       || !register_operand (operands[1], i1)
    2099          711 :       || !register_operand (operands[2], i1)
    2100         1396 :       || !nonimmediate_operand (operands[3], i1))
    2101           26 :     return -1;
    2102              :   return 0;
    2103              : }
    2104              : 
    2105              : int
    2106         5220 : pattern485 (machine_mode i1, machine_mode i2)
    2107              : {
    2108         5220 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2109         5220 :   int res ATTRIBUTE_UNUSED;
    2110         5220 :   if (!register_operand (operands[2], i1)
    2111         5197 :       || !nonimmediate_operand (operands[3], i1)
    2112         5179 :       || !const0_operand (operands[4], i1)
    2113        10399 :       || !register_operand (operands[5], i2))
    2114          293 :     return -1;
    2115              :   return 0;
    2116              : }
    2117              : 
    2118              : int
    2119         7736 : pattern490 (rtx x1)
    2120              : {
    2121         7736 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2122         7736 :   rtx x2, x3, x4, x5, x6, x7;
    2123         7736 :   int res ATTRIBUTE_UNUSED;
    2124         7736 :   x2 = XEXP (x1, 0);
    2125         7736 :   x3 = XVECEXP (x2, 0, 0);
    2126         7736 :   operands[1] = x3;
    2127         7736 :   x4 = XVECEXP (x2, 0, 1);
    2128         7736 :   operands[2] = x4;
    2129         7736 :   x5 = XVECEXP (x2, 0, 2);
    2130         7736 :   operands[3] = x5;
    2131         7736 :   x6 = XEXP (x1, 2);
    2132         7736 :   operands[4] = x6;
    2133         7736 :   x7 = XEXP (x1, 1);
    2134         7736 :   switch (GET_CODE (x7))
    2135              :     {
    2136         3796 :     case REG:
    2137         3796 :     case SUBREG:
    2138         3796 :       if (!rtx_equal_p (x7, operands[1]))
    2139              :         return -1;
    2140         3796 :       switch (GET_MODE (operands[0]))
    2141              :         {
    2142         1288 :         case E_V16SImode:
    2143         1288 :           return pattern484 (x1, 
    2144              : E_V16SImode, 
    2145         1288 : E_HImode); /* [-1, 0] */
    2146              : 
    2147         1284 :         case E_V8SImode:
    2148         1284 :           if (pattern484 (x1, 
    2149              : E_V8SImode, 
    2150              : E_QImode) != 0)
    2151              :             return -1;
    2152              :           return 1;
    2153              : 
    2154         1224 :         case E_V4SImode:
    2155         1224 :           if (pattern484 (x1, 
    2156              : E_V4SImode, 
    2157              : E_QImode) != 0)
    2158              :             return -1;
    2159              :           return 2;
    2160              : 
    2161              :         default:
    2162              :           return -1;
    2163              :         }
    2164              : 
    2165         3880 :     case CONST_INT:
    2166         3880 :     case CONST_DOUBLE:
    2167         3880 :     case CONST_VECTOR:
    2168         3880 :       operands[5] = x7;
    2169         3880 :       switch (GET_MODE (operands[0]))
    2170              :         {
    2171         1324 :         case E_V16SImode:
    2172         1324 :           if (pattern489 (x1, 
    2173              : E_V16SImode, 
    2174              : E_HImode) != 0)
    2175              :             return -1;
    2176              :           return 3;
    2177              : 
    2178         1320 :         case E_V8SImode:
    2179         1320 :           if (pattern489 (x1, 
    2180              : E_V8SImode, 
    2181              : E_QImode) != 0)
    2182              :             return -1;
    2183              :           return 4;
    2184              : 
    2185         1236 :         case E_V4SImode:
    2186         1236 :           if (pattern489 (x1, 
    2187              : E_V4SImode, 
    2188              : E_QImode) != 0)
    2189              :             return -1;
    2190              :           return 5;
    2191              : 
    2192              :         default:
    2193              :           return -1;
    2194              :         }
    2195              : 
    2196              :     default:
    2197              :       return -1;
    2198              :     }
    2199              : }
    2200              : 
    2201              : int
    2202          971 : pattern502 (rtx x1, machine_mode i1)
    2203              : {
    2204          971 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2205          971 :   rtx x2, x3, x4, x5, x6, x7;
    2206          971 :   int res ATTRIBUTE_UNUSED;
    2207          971 :   x2 = XEXP (x1, 0);
    2208          971 :   x3 = XEXP (x2, 1);
    2209          971 :   x4 = XEXP (x3, 1);
    2210          971 :   x5 = XVECEXP (x4, 0, 0);
    2211          971 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2212              :     return -1;
    2213          971 :   x6 = XVECEXP (x4, 0, 1);
    2214          971 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    2215              :     return -1;
    2216          971 :   switch (GET_MODE (operands[0]))
    2217              :     {
    2218          495 :     case E_V8HFmode:
    2219          495 :       if (!register_operand (operands[0], E_V8HFmode)
    2220          483 :           || GET_MODE (x1) != E_V8HFmode
    2221          978 :           || GET_MODE (x2) != E_V2HFmode)
    2222              :         return -1;
    2223          483 :       x7 = XEXP (x2, 0);
    2224          483 :       if (GET_MODE (x7) != E_V2HFmode
    2225          483 :           || !vector_operand (operands[1], i1)
    2226          483 :           || GET_MODE (x3) != E_V2HFmode
    2227          483 :           || !nonimm_or_0_operand (operands[2], E_V8HFmode)
    2228          963 :           || !const0_operand (operands[4], E_V6HFmode))
    2229            3 :         return -1;
    2230              :       return 0;
    2231              : 
    2232          476 :     case E_V4SFmode:
    2233          476 :       if (pattern501 (x1, 
    2234              : E_V2SFmode, 
    2235              : E_V4SFmode, 
    2236              : i1) != 0)
    2237              :         return -1;
    2238              :       return 1;
    2239              : 
    2240              :     default:
    2241              :       return -1;
    2242              :     }
    2243              : }
    2244              : 
    2245              : int
    2246         1746 : pattern510 ()
    2247              : {
    2248         1746 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2249         1746 :   int res ATTRIBUTE_UNUSED;
    2250         1746 :   switch (GET_MODE (operands[1]))
    2251              :     {
    2252          576 :     case E_V8HImode:
    2253          576 :       if (!register_operand (operands[1], E_V8HImode))
    2254              :         return -1;
    2255              :       return 0;
    2256              : 
    2257          588 :     case E_V8SImode:
    2258          588 :       if (!register_operand (operands[1], E_V8SImode))
    2259              :         return -1;
    2260              :       return 1;
    2261              : 
    2262          582 :     case E_V8DImode:
    2263          582 :       if (!register_operand (operands[1], E_V8DImode))
    2264              :         return -1;
    2265              :       return 2;
    2266              : 
    2267              :     default:
    2268              :       return -1;
    2269              :     }
    2270              : }
    2271              : 
    2272              : int
    2273          755 : pattern515 (machine_mode i1)
    2274              : {
    2275          755 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2276          755 :   int res ATTRIBUTE_UNUSED;
    2277          755 :   if (!const0_operand (operands[2], i1))
    2278              :     return -1;
    2279          753 :   switch (GET_MODE (operands[1]))
    2280              :     {
    2281          357 :     case E_V4DImode:
    2282          357 :       if (!register_operand (operands[1], E_V4DImode))
    2283              :         return -1;
    2284              :       return 0;
    2285              : 
    2286          396 :     case E_V4SImode:
    2287          396 :       if (!register_operand (operands[1], E_V4SImode))
    2288              :         return -1;
    2289              :       return 1;
    2290              : 
    2291              :     default:
    2292              :       return -1;
    2293              :     }
    2294              : }
    2295              : 
    2296              : int
    2297         1263 : pattern521 (rtx x1)
    2298              : {
    2299         1263 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2300         1263 :   int res ATTRIBUTE_UNUSED;
    2301         1263 :   if (!register_operand (operands[0], E_V2DFmode)
    2302         1263 :       || GET_MODE (x1) != E_V2DFmode)
    2303              :     return -1;
    2304         1088 :   switch (GET_MODE (operands[1]))
    2305              :     {
    2306          880 :     case E_V2SImode:
    2307          880 :       if (!nonimmediate_operand (operands[1], E_V2SImode))
    2308              :         return -1;
    2309              :       return 0;
    2310              : 
    2311          200 :     case E_V2DImode:
    2312          200 :       if (!nonimmediate_operand (operands[1], E_V2DImode))
    2313              :         return -1;
    2314              :       return 1;
    2315              : 
    2316              :     default:
    2317              :       return -1;
    2318              :     }
    2319              : }
    2320              : 
    2321              : int
    2322            6 : pattern526 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    2323              : {
    2324            6 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2325            6 :   rtx x2, x3;
    2326            6 :   int res ATTRIBUTE_UNUSED;
    2327            6 :   if (!nonimmediate_operand (operands[0], i3)
    2328            6 :       || GET_MODE (x1) != i3)
    2329              :     return -1;
    2330            6 :   x2 = XEXP (x1, 0);
    2331            6 :   if (GET_MODE (x2) != i2)
    2332              :     return -1;
    2333            6 :   x3 = XEXP (x2, 0);
    2334            6 :   if (GET_MODE (x3) != i1
    2335            6 :       || !register_operand (operands[1], i1)
    2336           12 :       || !permvar_truncate_operand (operands[2], i1))
    2337            2 :     return -1;
    2338              :   return 0;
    2339              : }
    2340              : 
    2341              : int
    2342        17076 : pattern534 (rtx x1, machine_mode i1)
    2343              : {
    2344        17076 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2345        17076 :   rtx x2, x3;
    2346        17076 :   int res ATTRIBUTE_UNUSED;
    2347        17076 :   if (!register_operand (operands[0], i1)
    2348        17076 :       || GET_MODE (x1) != i1)
    2349              :     return -1;
    2350        17067 :   x2 = XEXP (x1, 0);
    2351        17067 :   if (GET_MODE (x2) != i1
    2352        17067 :       || !regmem_or_bitnot_regmem_operand (operands[1], i1)
    2353        34087 :       || !regmem_or_bitnot_regmem_operand (operands[2], i1))
    2354           65 :     return -1;
    2355        17002 :   x3 = XEXP (x1, 1);
    2356        17002 :   if (GET_MODE (x3) != i1
    2357        17002 :       || !regmem_or_bitnot_regmem_operand (operands[3], i1)
    2358        34004 :       || !regmem_or_bitnot_regmem_operand (operands[4], i1))
    2359           12 :     return -1;
    2360              :   return 0;
    2361              : }
    2362              : 
    2363              : int
    2364       126425 : pattern539 (rtx x1)
    2365              : {
    2366       126425 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2367       126425 :   rtx x2, x3, x4, x5, x6, x7;
    2368       126425 :   int res ATTRIBUTE_UNUSED;
    2369       126425 :   x2 = XEXP (x1, 0);
    2370       126425 :   x3 = XEXP (x2, 0);
    2371       126425 :   x4 = XEXP (x3, 0);
    2372       126425 :   operands[1] = x4;
    2373       126425 :   x5 = XEXP (x3, 1);
    2374       126425 :   operands[2] = x5;
    2375       126425 :   x6 = XEXP (x2, 1);
    2376       126425 :   operands[3] = x6;
    2377       126425 :   x7 = XEXP (x1, 1);
    2378       126425 :   operands[4] = x7;
    2379       126425 :   switch (GET_MODE (operands[0]))
    2380              :     {
    2381            0 :     case E_V64QImode:
    2382            0 :       return pattern538 (x1, 
    2383            0 : E_V64QImode); /* [-1, 0] */
    2384              : 
    2385          224 :     case E_V32QImode:
    2386          224 :       if (pattern538 (x1, 
    2387              : E_V32QImode) != 0)
    2388              :         return -1;
    2389              :       return 1;
    2390              : 
    2391          874 :     case E_V16QImode:
    2392          874 :       if (pattern538 (x1, 
    2393              : E_V16QImode) != 0)
    2394              :         return -1;
    2395              :       return 2;
    2396              : 
    2397            0 :     case E_V32HImode:
    2398            0 :       if (pattern538 (x1, 
    2399              : E_V32HImode) != 0)
    2400              :         return -1;
    2401              :       return 3;
    2402              : 
    2403           12 :     case E_V16HImode:
    2404           12 :       if (pattern538 (x1, 
    2405              : E_V16HImode) != 0)
    2406              :         return -1;
    2407              :       return 4;
    2408              : 
    2409          809 :     case E_V8HImode:
    2410          809 :       if (pattern538 (x1, 
    2411              : E_V8HImode) != 0)
    2412              :         return -1;
    2413              :       return 5;
    2414              : 
    2415          125 :     case E_V16SImode:
    2416          125 :       if (pattern538 (x1, 
    2417              : E_V16SImode) != 0)
    2418              :         return -1;
    2419              :       return 6;
    2420              : 
    2421         1402 :     case E_V8SImode:
    2422         1402 :       if (pattern538 (x1, 
    2423              : E_V8SImode) != 0)
    2424              :         return -1;
    2425              :       return 7;
    2426              : 
    2427         5999 :     case E_V4SImode:
    2428         5999 :       if (pattern538 (x1, 
    2429              : E_V4SImode) != 0)
    2430              :         return -1;
    2431              :       return 8;
    2432              : 
    2433            0 :     case E_V8DImode:
    2434            0 :       if (pattern538 (x1, 
    2435              : E_V8DImode) != 0)
    2436              :         return -1;
    2437              :       return 9;
    2438              : 
    2439           14 :     case E_V4DImode:
    2440           14 :       if (pattern538 (x1, 
    2441              : E_V4DImode) != 0)
    2442              :         return -1;
    2443              :       return 10;
    2444              : 
    2445         1430 :     case E_V2DImode:
    2446         1430 :       if (pattern538 (x1, 
    2447              : E_V2DImode) != 0)
    2448              :         return -1;
    2449              :       return 11;
    2450              : 
    2451              :     default:
    2452              :       return -1;
    2453              :     }
    2454              : }
    2455              : 
    2456              : int
    2457        12068 : pattern546 (rtx x1, machine_mode i1)
    2458              : {
    2459        12068 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2460        12068 :   rtx x2;
    2461        12068 :   int res ATTRIBUTE_UNUSED;
    2462        12068 :   if (!register_operand (operands[0], i1)
    2463        12068 :       || GET_MODE (x1) != i1)
    2464              :     return -1;
    2465        11743 :   x2 = XEXP (x1, 0);
    2466        11743 :   switch (GET_MODE (x2))
    2467              :     {
    2468          551 :     case E_V4QImode:
    2469          551 :       if (!register_operand (operands[1], E_V16QImode))
    2470              :         return -1;
    2471              :       return 0;
    2472              : 
    2473        10263 :     case E_V4HImode:
    2474        10263 :       if (!register_operand (operands[1], E_V8HImode))
    2475              :         return -1;
    2476              :       return 1;
    2477              : 
    2478              :     default:
    2479              :       return -1;
    2480              :     }
    2481              : }
    2482              : 
    2483              : int
    2484           55 : pattern550 (rtx x1)
    2485              : {
    2486           55 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2487           55 :   rtx x2, x3, x4, x5;
    2488           55 :   int res ATTRIBUTE_UNUSED;
    2489           55 :   x2 = XVECEXP (x1, 0, 1);
    2490           55 :   x3 = XVECEXP (x2, 0, 0);
    2491           55 :   operands[2] = x3;
    2492           55 :   switch (GET_MODE (operands[0]))
    2493              :     {
    2494           28 :     case E_SImode:
    2495           28 :       x4 = XVECEXP (x1, 0, 0);
    2496           28 :       x5 = XEXP (x4, 1);
    2497           28 :       return pattern549 (x5, 
    2498           28 : E_SImode); /* [-1, 0] */
    2499              : 
    2500           27 :     case E_DImode:
    2501           27 :       x4 = XVECEXP (x1, 0, 0);
    2502           27 :       x5 = XEXP (x4, 1);
    2503           27 :       if (pattern549 (x5, 
    2504              : E_DImode) != 0)
    2505              :         return -1;
    2506              :       return 1;
    2507              : 
    2508              :     default:
    2509              :       return -1;
    2510              :     }
    2511              : }
    2512              : 
    2513              : int
    2514         1174 : pattern557 (rtx x1)
    2515              : {
    2516         1174 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2517         1174 :   rtx x2, x3, x4, x5, x6, x7, x8;
    2518         1174 :   int res ATTRIBUTE_UNUSED;
    2519         1174 :   x2 = XVECEXP (x1, 0, 0);
    2520         1174 :   x3 = XEXP (x2, 1);
    2521         1174 :   if (GET_MODE (x3) != E_V2SFmode)
    2522              :     return -1;
    2523          140 :   x4 = XVECEXP (x1, 0, 1);
    2524          140 :   if (GET_CODE (x4) != UNSPEC
    2525          140 :       || XVECLEN (x4, 0) != 1
    2526          140 :       || XINT (x4, 1) != 111)
    2527              :     return -1;
    2528          140 :   x5 = XVECEXP (x4, 0, 0);
    2529          140 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    2530              :     return -1;
    2531          140 :   x6 = XEXP (x2, 0);
    2532          140 :   operands[0] = x6;
    2533          140 :   if (!register_operand (operands[0], E_V2SFmode))
    2534              :     return -1;
    2535          140 :   x7 = XVECEXP (x3, 0, 0);
    2536          140 :   operands[1] = x7;
    2537          140 :   if (!register_operand (operands[1], E_V2SFmode))
    2538              :     return -1;
    2539          126 :   x8 = XVECEXP (x3, 0, 1);
    2540          126 :   operands[2] = x8;
    2541          126 :   if (!nonimmediate_operand (operands[2], E_V2SFmode))
    2542              :     return -1;
    2543              :   return 0;
    2544              : }
    2545              : 
    2546              : int
    2547       305307 : pattern565 (rtx x1, machine_mode i1, machine_mode i2)
    2548              : {
    2549       305307 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2550       305307 :   rtx x2, x3;
    2551       305307 :   int res ATTRIBUTE_UNUSED;
    2552       305307 :   x2 = XEXP (x1, 0);
    2553       305307 :   if (GET_MODE (x2) != i2
    2554       305307 :       || !register_operand (operands[1], i1))
    2555        12796 :     return -1;
    2556       292511 :   x3 = XEXP (x1, 1);
    2557       292511 :   if (GET_MODE (x3) != i2
    2558       292511 :       || !nonimmediate_operand (operands[2], i1))
    2559          978 :     return -1;
    2560              :   return 0;
    2561              : }
    2562              : 
    2563              : int
    2564         3595 : pattern571 (rtx x1, machine_mode i1)
    2565              : {
    2566         3595 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2567         3595 :   int res ATTRIBUTE_UNUSED;
    2568         3595 :   if (!nonimmediate_operand (operands[0], i1)
    2569         3595 :       || GET_MODE (x1) != i1
    2570         3595 :       || !nonimmediate_operand (operands[1], i1)
    2571         7187 :       || !nonimmediate_or_x86_64_const_vector_operand (operands[2], i1))
    2572            3 :     return -1;
    2573              :   return 0;
    2574              : }
    2575              : 
    2576              : int
    2577        49649 : pattern576 (rtx x1)
    2578              : {
    2579        49649 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2580        49649 :   rtx x2, x3, x4, x5, x6;
    2581        49649 :   int res ATTRIBUTE_UNUSED;
    2582        49649 :   x2 = XVECEXP (x1, 0, 1);
    2583        49649 :   if (GET_CODE (x2) != CLOBBER)
    2584              :     return -1;
    2585        47560 :   x3 = XEXP (x2, 0);
    2586        47560 :   if (GET_CODE (x3) != REG
    2587        47560 :       || REGNO (x3) != 17
    2588        95120 :       || GET_MODE (x3) != E_CCmode)
    2589              :     return -1;
    2590        47560 :   x4 = XVECEXP (x1, 0, 0);
    2591        47560 :   x5 = XEXP (x4, 0);
    2592        47560 :   operands[0] = x5;
    2593        47560 :   if (!register_operand (operands[0], E_DImode))
    2594              :     return -1;
    2595        47558 :   x6 = XEXP (x4, 1);
    2596        47558 :   if (GET_MODE (x6) != E_DImode)
    2597              :     return -1;
    2598              :   return 0;
    2599              : }
    2600              : 
    2601              : int
    2602          119 : pattern583 (rtx x1)
    2603              : {
    2604          119 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2605          119 :   int res ATTRIBUTE_UNUSED;
    2606          119 :   switch (GET_MODE (operands[0]))
    2607              :     {
    2608           24 :     case E_QImode:
    2609           24 :       if (!register_operand (operands[0], E_QImode)
    2610           24 :           || GET_MODE (x1) != E_QImode
    2611           48 :           || !const_int_operand (operands[1], E_QImode))
    2612            0 :         return -1;
    2613              :       return 0;
    2614              : 
    2615            0 :     case E_HImode:
    2616            0 :       if (!register_operand (operands[0], E_HImode)
    2617            0 :           || GET_MODE (x1) != E_HImode
    2618            0 :           || !const_int_operand (operands[1], E_HImode))
    2619            0 :         return -1;
    2620              :       return 1;
    2621              : 
    2622           42 :     case E_SImode:
    2623           42 :       if (!register_operand (operands[0], E_SImode)
    2624           39 :           || GET_MODE (x1) != E_SImode
    2625           81 :           || !const_int_operand (operands[1], E_SImode))
    2626            3 :         return -1;
    2627              :       return 2;
    2628              : 
    2629           53 :     case E_DImode:
    2630           53 :       if (!register_operand (operands[0], E_DImode)
    2631           53 :           || GET_MODE (x1) != E_DImode
    2632          106 :           || !const_int_operand (operands[1], E_DImode))
    2633            0 :         return -1;
    2634              :       return 3;
    2635              : 
    2636              :     default:
    2637              :       return -1;
    2638              :     }
    2639              : }
    2640              : 
    2641              : int
    2642        60874 : pattern594 (rtx x1)
    2643              : {
    2644        60874 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2645        60874 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    2646        60874 :   int res ATTRIBUTE_UNUSED;
    2647        60874 :   x2 = XVECEXP (x1, 0, 1);
    2648        60874 :   if (GET_CODE (x2) != USE)
    2649              :     return -1;
    2650        60872 :   x3 = XVECEXP (x1, 0, 2);
    2651        60872 :   x4 = XEXP (x3, 0);
    2652        60872 :   if (GET_CODE (x4) != REG
    2653        60872 :       || REGNO (x4) != 17
    2654       121744 :       || GET_MODE (x4) != E_CCmode)
    2655              :     return -1;
    2656        60872 :   x5 = XVECEXP (x1, 0, 0);
    2657        60872 :   x6 = XEXP (x5, 0);
    2658        60872 :   operands[0] = x6;
    2659        60872 :   x7 = XEXP (x5, 1);
    2660        60872 :   x8 = XEXP (x7, 0);
    2661        60872 :   operands[1] = x8;
    2662        60872 :   x9 = XEXP (x2, 0);
    2663        60872 :   operands[2] = x9;
    2664        60872 :   switch (GET_MODE (operands[0]))
    2665              :     {
    2666          258 :     case E_HFmode:
    2667          258 :       return pattern227 (x7, 
    2668              : E_V8HFmode, 
    2669          258 : E_HFmode); /* [-1, 0] */
    2670              : 
    2671        23832 :     case E_SFmode:
    2672        23832 :       if (GET_MODE (x7) != E_SFmode)
    2673              :         return -1;
    2674              :       return 1;
    2675              : 
    2676        36782 :     case E_DFmode:
    2677        36782 :       if (GET_MODE (x7) != E_DFmode)
    2678              :         return -1;
    2679              :       return 2;
    2680              : 
    2681              :     default:
    2682              :       return -1;
    2683              :     }
    2684              : }
    2685              : 
    2686              : int
    2687        32585 : pattern602 (rtx x1)
    2688              : {
    2689        32585 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2690        32585 :   rtx x2, x3, x4, x5, x6;
    2691        32585 :   int res ATTRIBUTE_UNUSED;
    2692        32585 :   x2 = XVECEXP (x1, 0, 2);
    2693        32585 :   if (!const_0_to_7_operand (x2, E_SImode))
    2694              :     return -1;
    2695        30809 :   x3 = XVECEXP (x1, 0, 0);
    2696        30809 :   switch (GET_CODE (x3))
    2697              :     {
    2698        28835 :     case CONST_INT:
    2699        28835 :     case CONST_WIDE_INT:
    2700        28835 :     case CONST_POLY_INT:
    2701        28835 :     case CONST_FIXED:
    2702        28835 :     case CONST_DOUBLE:
    2703        28835 :     case CONST_VECTOR:
    2704        28835 :     case CONST:
    2705        28835 :     case REG:
    2706        28835 :     case SUBREG:
    2707        28835 :     case MEM:
    2708        28835 :     case LABEL_REF:
    2709        28835 :     case SYMBOL_REF:
    2710        28835 :     case HIGH:
    2711        28835 :       operands[1] = x3;
    2712        28835 :       x4 = XVECEXP (x1, 0, 1);
    2713        28835 :       operands[2] = x4;
    2714        28835 :       operands[3] = x2;
    2715        28835 :       switch (GET_MODE (operands[0]))
    2716              :         {
    2717         1105 :         case E_DImode:
    2718         1105 :           return pattern598 (x1); /* [-1, 0] */
    2719              : 
    2720         2324 :         case E_SImode:
    2721         2324 :           res = pattern599 (x1);
    2722         2324 :           if (res >= 0)
    2723         2115 :             return res + 1; /* [1, 2] */
    2724              :           return -1;
    2725              : 
    2726        12726 :         case E_HImode:
    2727        12726 :           res = pattern600 (x1);
    2728        12726 :           if (res >= 0)
    2729        11787 :             return res + 3; /* [3, 5] */
    2730              :           return -1;
    2731              : 
    2732        12285 :         case E_QImode:
    2733        12285 :           res = pattern601 (x1);
    2734        12285 :           if (res >= 0)
    2735        10359 :             return res + 6; /* [6, 11] */
    2736              :           return -1;
    2737              : 
    2738              :         default:
    2739              :           return -1;
    2740              :         }
    2741              : 
    2742           36 :     case US_MINUS:
    2743           36 :       x5 = XEXP (x3, 0);
    2744           36 :       operands[1] = x5;
    2745           36 :       x6 = XEXP (x3, 1);
    2746           36 :       operands[2] = x6;
    2747           36 :       x4 = XVECEXP (x1, 0, 1);
    2748           36 :       operands[3] = x4;
    2749           36 :       operands[4] = x2;
    2750           36 :       switch (GET_MODE (operands[0]))
    2751              :         {
    2752            6 :         case E_DImode:
    2753            6 :           if (pattern73 (x1, 
    2754              : E_V64QImode, 
    2755              : E_DImode) != 0)
    2756              :             return -1;
    2757              :           return 12;
    2758              : 
    2759           12 :         case E_HImode:
    2760           12 :           res = pattern72 (x1);
    2761           12 :           if (res >= 0)
    2762           12 :             return res + 13; /* [13, 14] */
    2763              :           return -1;
    2764              : 
    2765           12 :         case E_SImode:
    2766           12 :           res = pattern306 (x1);
    2767           12 :           if (res >= 0)
    2768           12 :             return res + 15; /* [15, 16] */
    2769              :           return -1;
    2770              : 
    2771            6 :         case E_QImode:
    2772            6 :           if (pattern73 (x1, 
    2773              : E_V8HImode, 
    2774              : E_QImode) != 0)
    2775              :             return -1;
    2776              :           return 17;
    2777              : 
    2778              :         default:
    2779              :           return -1;
    2780              :         }
    2781              : 
    2782              :     default:
    2783              :       return -1;
    2784              :     }
    2785              : }
    2786              : 
    2787              : int
    2788         1769 : pattern626 (rtx x1, int *pnum_clobbers, machine_mode i1)
    2789              : {
    2790         1769 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2791         1769 :   int res ATTRIBUTE_UNUSED;
    2792         1769 :   if (pnum_clobbers == NULL
    2793         1747 :       || !register_operand (operands[0], i1)
    2794         1478 :       || GET_MODE (x1) != i1
    2795         3247 :       || !register_operand (operands[1], i1))
    2796         1189 :     return -1;
    2797              :   return 0;
    2798              : }
    2799              : 
    2800              : int
    2801       629581 : pattern632 (rtx x1, machine_mode i1)
    2802              : {
    2803       629581 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2804       629581 :   int res ATTRIBUTE_UNUSED;
    2805       629581 :   if (!register_operand (operands[0], i1)
    2806       592078 :       || GET_MODE (x1) != i1
    2807       592078 :       || !nonimmediate_operand (operands[1], i1)
    2808      1191635 :       || !x86_64_general_operand (operands[2], i1))
    2809       194943 :     return -1;
    2810              :   return 0;
    2811              : }
    2812              : 
    2813              : int
    2814       697757 : pattern636 (rtx x1)
    2815              : {
    2816       697757 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2817       697757 :   rtx x2, x3, x4, x5;
    2818       697757 :   int res ATTRIBUTE_UNUSED;
    2819       697757 :   x2 = XEXP (x1, 1);
    2820       697757 :   if (GET_CODE (x2) != SUBREG
    2821       265778 :       || maybe_ne (SUBREG_BYTE (x2), 0)
    2822       963535 :       || GET_MODE (x2) != E_QImode)
    2823              :     return -1;
    2824       263841 :   x3 = XEXP (x2, 0);
    2825       263841 :   switch (GET_CODE (x3))
    2826              :     {
    2827        18111 :     case AND:
    2828        18111 :       return pattern455 (x1); /* [-1, 1] */
    2829              : 
    2830            0 :     case PLUS:
    2831            0 :       res = pattern455 (x1);
    2832            0 :       if (res >= 0)
    2833            0 :         return res + 2; /* [2, 3] */
    2834              :       return -1;
    2835              : 
    2836            0 :     case MINUS:
    2837            0 :       x4 = XEXP (x3, 0);
    2838            0 :       operands[3] = x4;
    2839            0 :       if (!const_int_operand (operands[3], E_VOIDmode))
    2840              :         return -1;
    2841            0 :       x5 = XEXP (x3, 1);
    2842            0 :       operands[2] = x5;
    2843            0 :       if (!int248_register_operand (operands[2], E_VOIDmode))
    2844              :         return -1;
    2845            0 :       res = pattern14 (x1);
    2846            0 :       if (res >= 0)
    2847            0 :         return res + 4; /* [4, 5] */
    2848              :       return -1;
    2849              : 
    2850              :     default:
    2851              :       return -1;
    2852              :     }
    2853              : }
    2854              : 
    2855              : int
    2856        13576 : pattern650 (rtx x1)
    2857              : {
    2858        13576 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2859        13576 :   rtx x2, x3;
    2860        13576 :   int res ATTRIBUTE_UNUSED;
    2861        13576 :   x2 = XEXP (x1, 2);
    2862        13576 :   switch (GET_CODE (x2))
    2863              :     {
    2864        11184 :     case REG:
    2865        11184 :     case SUBREG:
    2866        11184 :       operands[4] = x2;
    2867        11184 :       switch (GET_MODE (operands[0]))
    2868              :         {
    2869              :         case E_V32HFmode:
    2870              :           return 0;
    2871              : 
    2872         1524 :         case E_V16HFmode:
    2873         1524 :           return 1;
    2874              : 
    2875          996 :         case E_V8HFmode:
    2876          996 :           return 2;
    2877              : 
    2878          671 :         case E_V16SFmode:
    2879          671 :           return 3;
    2880              : 
    2881         1086 :         case E_V8SFmode:
    2882         1086 :           return 4;
    2883              : 
    2884          868 :         case E_V4SFmode:
    2885          868 :           return 5;
    2886              : 
    2887          473 :         case E_V8DFmode:
    2888          473 :           return 6;
    2889              : 
    2890         1146 :         case E_V4DFmode:
    2891         1146 :           return 7;
    2892              : 
    2893          868 :         case E_V2DFmode:
    2894          868 :           return 8;
    2895              : 
    2896         1044 :         case E_V32BFmode:
    2897         1044 :           return 9;
    2898              : 
    2899         1060 :         case E_V16BFmode:
    2900         1060 :           return 10;
    2901              : 
    2902         1044 :         case E_V8BFmode:
    2903         1044 :           return 11;
    2904              : 
    2905              :         default:
    2906              :           return -1;
    2907              :         }
    2908              : 
    2909         1894 :     case CONST_INT:
    2910         1894 :       if (XWINT (x2, 0) != 1L)
    2911              :         return -1;
    2912         1362 :       x3 = XEXP (x1, 1);
    2913         1362 :       if (!rtx_equal_p (x3, operands[1]))
    2914              :         return -1;
    2915         1270 :       switch (GET_MODE (operands[0]))
    2916              :         {
    2917              :         case E_V8HFmode:
    2918              :           return 12;
    2919              : 
    2920              :         case E_V4SFmode:
    2921              :           return 13;
    2922              : 
    2923              :         case E_V2DFmode:
    2924              :           return 14;
    2925              : 
    2926              :         default:
    2927              :           return -1;
    2928              :         }
    2929              : 
    2930              :     default:
    2931              :       return -1;
    2932              :     }
    2933              : }
    2934              : 
    2935              : int
    2936         4811 : pattern662 (rtx x1)
    2937              : {
    2938         4811 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    2939         4811 :   rtx x2, x3, x4, x5, x6, x7, x8;
    2940         4811 :   int res ATTRIBUTE_UNUSED;
    2941         4811 :   x2 = XVECEXP (x1, 0, 0);
    2942         4811 :   x3 = XEXP (x2, 0);
    2943         4811 :   x4 = XEXP (x3, 0);
    2944         4811 :   operands[1] = x4;
    2945         4811 :   x5 = XEXP (x3, 1);
    2946         4811 :   operands[2] = x5;
    2947         4811 :   x6 = XVECEXP (x1, 0, 1);
    2948         4811 :   if (!const_4_or_8_to_11_operand (x6, E_SImode))
    2949              :     return -1;
    2950         4811 :   x7 = XEXP (x2, 2);
    2951         4811 :   switch (GET_CODE (x7))
    2952              :     {
    2953         3023 :     case REG:
    2954         3023 :     case SUBREG:
    2955         3023 :       operands[4] = x7;
    2956         3023 :       x8 = XEXP (x2, 1);
    2957         3023 :       operands[3] = x8;
    2958         3023 :       operands[5] = x6;
    2959         3023 :       switch (GET_MODE (operands[0]))
    2960              :         {
    2961          881 :         case E_V32HFmode:
    2962          881 :           return pattern659 (x1, 
    2963              : E_V32HFmode, 
    2964          881 : E_SImode); /* [-1, 0] */
    2965              : 
    2966            0 :         case E_V16HFmode:
    2967            0 :           if (pattern659 (x1, 
    2968              : E_V16HFmode, 
    2969              : E_HImode) != 0)
    2970              :             return -1;
    2971              :           return 1;
    2972              : 
    2973            0 :         case E_V8HFmode:
    2974            0 :           if (pattern659 (x1, 
    2975              : E_V8HFmode, 
    2976              : E_QImode) != 0)
    2977              :             return -1;
    2978              :           return 2;
    2979              : 
    2980         1074 :         case E_V16SFmode:
    2981         1074 :           if (pattern659 (x1, 
    2982              : E_V16SFmode, 
    2983              : E_HImode) != 0)
    2984              :             return -1;
    2985              :           return 3;
    2986              : 
    2987            0 :         case E_V8SFmode:
    2988            0 :           if (pattern659 (x1, 
    2989              : E_V8SFmode, 
    2990              : E_QImode) != 0)
    2991              :             return -1;
    2992              :           return 4;
    2993              : 
    2994            0 :         case E_V4SFmode:
    2995            0 :           if (pattern659 (x1, 
    2996              : E_V4SFmode, 
    2997              : E_QImode) != 0)
    2998              :             return -1;
    2999              :           return 5;
    3000              : 
    3001         1068 :         case E_V8DFmode:
    3002         1068 :           if (pattern659 (x1, 
    3003              : E_V8DFmode, 
    3004              : E_QImode) != 0)
    3005              :             return -1;
    3006              :           return 6;
    3007              : 
    3008            0 :         case E_V4DFmode:
    3009            0 :           if (pattern659 (x1, 
    3010              : E_V4DFmode, 
    3011              : E_QImode) != 0)
    3012              :             return -1;
    3013              :           return 7;
    3014              : 
    3015            0 :         case E_V2DFmode:
    3016            0 :           if (pattern659 (x1, 
    3017              : E_V2DFmode, 
    3018              : E_QImode) != 0)
    3019              :             return -1;
    3020              :           return 8;
    3021              : 
    3022              :         default:
    3023              :           return -1;
    3024              :         }
    3025              : 
    3026         1760 :     case CONST_INT:
    3027         1760 :       res = pattern661 (x1);
    3028         1760 :       if (res >= 0)
    3029         1603 :         return res + 9; /* [9, 11] */
    3030              :       return -1;
    3031              : 
    3032              :     default:
    3033              :       return -1;
    3034              :     }
    3035              : }
    3036              : 
    3037              : int
    3038       187372 : pattern682 (rtx x1, machine_mode i1)
    3039              : {
    3040       187372 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3041       187372 :   int res ATTRIBUTE_UNUSED;
    3042       187372 :   if (!register_operand (operands[0], i1)
    3043       185972 :       || GET_MODE (x1) != i1
    3044       185966 :       || !register_operand (operands[1], i1)
    3045       328339 :       || !vector_operand (operands[2], i1))
    3046        76727 :     return -1;
    3047              :   return 0;
    3048              : }
    3049              : 
    3050              : int
    3051          305 : pattern687 (rtx x1, machine_mode i1)
    3052              : {
    3053          305 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3054          305 :   rtx x2;
    3055          305 :   int res ATTRIBUTE_UNUSED;
    3056          305 :   if (!register_operand (operands[0], i1)
    3057          305 :       || GET_MODE (x1) != i1)
    3058              :     return -1;
    3059          287 :   x2 = XEXP (x1, 0);
    3060          287 :   if (GET_MODE (x2) != i1
    3061          287 :       || !ieee_maxmin_comparison_operator (operands[1], i1)
    3062          287 :       || !nonimmediate_operand (operands[2], i1)
    3063          270 :       || !const0_operand (operands[3], i1)
    3064          329 :       || !nonimmediate_operand (operands[4], i1))
    3065          245 :     return -1;
    3066              :   return 0;
    3067              : }
    3068              : 
    3069              : int
    3070         5280 : pattern693 (rtx x1)
    3071              : {
    3072         5280 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3073         5280 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3074         5280 :   rtx x10, x11;
    3075         5280 :   int res ATTRIBUTE_UNUSED;
    3076         5280 :   x2 = XEXP (x1, 0);
    3077         5280 :   x3 = XEXP (x2, 0);
    3078         5280 :   x4 = XEXP (x3, 0);
    3079         5280 :   switch (GET_CODE (x4))
    3080              :     {
    3081           20 :     case VEC_CONCAT:
    3082           20 :       return pattern691 (x1); /* [-1, 5] */
    3083              : 
    3084            0 :     case VEC_MERGE:
    3085            0 :       if (GET_MODE (x4) != E_V4SImode)
    3086              :         return -1;
    3087            0 :       x5 = XEXP (x4, 0);
    3088            0 :       if (GET_CODE (x5) != VEC_DUPLICATE
    3089            0 :           || GET_MODE (x5) != E_V4SImode)
    3090              :         return -1;
    3091            0 :       x6 = XEXP (x4, 1);
    3092            0 :       if (GET_CODE (x6) != CONST_VECTOR
    3093            0 :           || XVECLEN (x6, 0) != 4
    3094            0 :           || GET_MODE (x6) != E_V4SImode)
    3095              :         return -1;
    3096            0 :       x7 = XVECEXP (x6, 0, 0);
    3097            0 :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3098              :         return -1;
    3099            0 :       x8 = XVECEXP (x6, 0, 1);
    3100            0 :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3101              :         return -1;
    3102            0 :       x9 = XVECEXP (x6, 0, 2);
    3103            0 :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3104              :         return -1;
    3105            0 :       x10 = XVECEXP (x6, 0, 3);
    3106            0 :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3107              :         return -1;
    3108            0 :       x11 = XEXP (x4, 2);
    3109            0 :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    3110              :         return -1;
    3111            0 :       res = pattern692 (x1);
    3112            0 :       if (res >= 0)
    3113            0 :         return res + 6; /* [6, 8] */
    3114              :       return -1;
    3115              : 
    3116              :     default:
    3117              :       return -1;
    3118              :     }
    3119              : }
    3120              : 
    3121              : int
    3122       102606 : pattern707 (rtx x1)
    3123              : {
    3124       102606 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3125       102606 :   int res ATTRIBUTE_UNUSED;
    3126       102606 :   if (GET_CODE (x1) != REG
    3127       102606 :       || REGNO (x1) != 17
    3128       203862 :       || GET_MODE (x1) != E_CCmode)
    3129              :     return -1;
    3130       101256 :   switch (GET_MODE (operands[0]))
    3131              :     {
    3132              :     case E_DImode:
    3133              :       return 0;
    3134              : 
    3135         1052 :     case E_TImode:
    3136         1052 :       return 1;
    3137              : 
    3138          490 :     case E_QImode:
    3139          490 :       return 2;
    3140              : 
    3141         3214 :     case E_HImode:
    3142         3214 :       return 3;
    3143              : 
    3144        18166 :     case E_SImode:
    3145        18166 :       return 4;
    3146              : 
    3147         2113 :     case E_SFmode:
    3148         2113 :       return 5;
    3149              : 
    3150         4670 :     case E_DFmode:
    3151         4670 :       return 6;
    3152              : 
    3153        44017 :     case E_XFmode:
    3154        44017 :       return 7;
    3155              : 
    3156              :     default:
    3157              :       return -1;
    3158              :     }
    3159              : }
    3160              : 
    3161              : int
    3162          801 : pattern716 (rtx x1, int i1)
    3163              : {
    3164          801 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3165          801 :   rtx x2, x3, x4, x5, x6, x7, x8;
    3166          801 :   int res ATTRIBUTE_UNUSED;
    3167          801 :   x2 = XVECEXP (x1, 0, 0);
    3168          801 :   x3 = XEXP (x2, 1);
    3169          801 :   x4 = XVECEXP (x3, 0, 0);
    3170          801 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3171              :     return -1;
    3172          801 :   x5 = XVECEXP (x1, 0, 1);
    3173          801 :   if (GET_CODE (x5) != SET)
    3174              :     return -1;
    3175          801 :   x6 = XEXP (x5, 1);
    3176          801 :   if (GET_CODE (x6) != UNSPEC_VOLATILE
    3177          801 :       || XVECLEN (x6, 0) != 1
    3178          801 :       || XINT (x6, 1) != i1
    3179          801 :       || GET_MODE (x6) != E_CCCmode)
    3180              :     return -1;
    3181          801 :   x7 = XVECEXP (x6, 0, 0);
    3182          801 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3183              :     return -1;
    3184          801 :   x8 = XEXP (x5, 0);
    3185          801 :   if (GET_CODE (x8) != REG
    3186          801 :       || REGNO (x8) != 17
    3187         1602 :       || GET_MODE (x8) != E_CCCmode)
    3188              :     return -1;
    3189          801 :   switch (GET_MODE (operands[0]))
    3190              :     {
    3191          180 :     case E_HImode:
    3192          180 :       if (!register_operand (operands[0], E_HImode)
    3193          180 :           || GET_MODE (x3) != E_HImode)
    3194              :         return -1;
    3195              :       return 0;
    3196              : 
    3197          442 :     case E_SImode:
    3198          442 :       if (!register_operand (operands[0], E_SImode)
    3199          442 :           || GET_MODE (x3) != E_SImode)
    3200              :         return -1;
    3201              :       return 1;
    3202              : 
    3203          179 :     case E_DImode:
    3204          179 :       if (!register_operand (operands[0], E_DImode)
    3205          179 :           || GET_MODE (x3) != E_DImode)
    3206              :         return -1;
    3207              :       return 2;
    3208              : 
    3209              :     default:
    3210              :       return -1;
    3211              :     }
    3212              : }
    3213              : 
    3214              : int
    3215          552 : pattern731 (rtx x1, machine_mode i1, unsigned int i2)
    3216              : {
    3217          552 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3218          552 :   rtx x2, x3;
    3219          552 :   int res ATTRIBUTE_UNUSED;
    3220          552 :   x2 = XEXP (x1, 1);
    3221          552 :   if (GET_MODE (x2) != i1)
    3222              :     return -1;
    3223          552 :   x3 = XEXP (x1, 0);
    3224          552 :   if (GET_CODE (x3) != REG
    3225          552 :       || REGNO (x3) != i2
    3226         1104 :       || GET_MODE (x3) != i1)
    3227            0 :     return -1;
    3228              :   return 0;
    3229              : }
    3230              : 
    3231              : int
    3232      2465813 : pattern736 (rtx x1, machine_mode i1)
    3233              : {
    3234      2465813 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3235      2465813 :   rtx x2, x3;
    3236      2465813 :   int res ATTRIBUTE_UNUSED;
    3237      2465813 :   if (!register_operand (operands[0], i1)
    3238      2445602 :       || GET_CODE (x1) != PARALLEL
    3239      2717477 :       || XVECLEN (x1, 0) != 2)
    3240              :     return -1;
    3241       250270 :   x2 = XVECEXP (x1, 0, 0);
    3242       250270 :   if (GET_CODE (x2) != SET)
    3243              :     return -1;
    3244       250220 :   x3 = XEXP (x2, 1);
    3245       250220 :   switch (GET_CODE (x3))
    3246              :     {
    3247              :     case PLUS:
    3248              :     case MINUS:
    3249              :     case AND:
    3250              :     case IOR:
    3251              :     case XOR:
    3252              :       return 0;
    3253              : 
    3254              :     default:
    3255              :       return -1;
    3256              :     }
    3257              : }
    3258              : 
    3259              : int
    3260           43 : pattern742 (rtx x1, machine_mode i1)
    3261              : {
    3262           43 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3263           43 :   rtx x2;
    3264           43 :   int res ATTRIBUTE_UNUSED;
    3265           43 :   if (!register_operand (operands[0], i1)
    3266           39 :       || GET_MODE (x1) != i1
    3267           39 :       || !register_operand (operands[1], i1)
    3268           75 :       || !register_operand (operands[2], i1))
    3269           15 :     return -1;
    3270           28 :   x2 = XVECEXP (x1, 0, 2);
    3271           28 :   if (GET_MODE (x2) != i1
    3272           28 :       || !register_operand (operands[3], i1)
    3273           56 :       || !register_operand (operands[4], i1))
    3274            2 :     return -1;
    3275              :   return 0;
    3276              : }
    3277              : 
    3278              : int
    3279         3374 : pattern748 ()
    3280              : {
    3281         3374 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3282         3374 :   int res ATTRIBUTE_UNUSED;
    3283         3374 :   switch (GET_MODE (operands[1]))
    3284              :     {
    3285         1116 :     case E_V16QImode:
    3286         1116 :       if (!register_operand (operands[1], E_V16QImode)
    3287         1116 :           || !nonimmediate_operand (operands[2], E_V16QImode))
    3288            0 :         return -1;
    3289              :       return 0;
    3290              : 
    3291         1130 :     case E_V16HImode:
    3292         1130 :       if (!register_operand (operands[1], E_V16HImode)
    3293         1130 :           || !nonimmediate_operand (operands[2], E_V16HImode))
    3294            0 :         return -1;
    3295              :       return 1;
    3296              : 
    3297         1128 :     case E_V16SImode:
    3298         1128 :       if (!register_operand (operands[1], E_V16SImode)
    3299         1128 :           || !nonimmediate_operand (operands[2], E_V16SImode))
    3300            0 :         return -1;
    3301              :       return 2;
    3302              : 
    3303              :     default:
    3304              :       return -1;
    3305              :     }
    3306              : }
    3307              : 
    3308              : int
    3309          469 : pattern758 (rtx x1, machine_mode i1)
    3310              : {
    3311          469 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3312          469 :   rtx x2, x3;
    3313          469 :   int res ATTRIBUTE_UNUSED;
    3314          469 :   if (!nonimmediate_operand (operands[0], i1)
    3315          469 :       || GET_MODE (x1) != i1)
    3316              :     return -1;
    3317          469 :   x2 = XEXP (x1, 0);
    3318          469 :   if (GET_MODE (x2) != i1
    3319          469 :       || !nonimmediate_operand (operands[1], i1))
    3320          279 :     return -1;
    3321          190 :   x3 = XEXP (x2, 1);
    3322          190 :   if (GET_MODE (x3) != i1
    3323          190 :       || !x86_64_immediate_operand (operands[2], i1))
    3324           58 :     return -1;
    3325              :   return 0;
    3326              : }
    3327              : 
    3328              : int
    3329        56254 : pattern766 (rtx x1)
    3330              : {
    3331        56254 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3332        56254 :   rtx x2, x3;
    3333        56254 :   int res ATTRIBUTE_UNUSED;
    3334        56254 :   x2 = XEXP (x1, 1);
    3335        56254 :   switch (GET_CODE (x2))
    3336              :     {
    3337        12356 :     case REG:
    3338        12356 :     case SUBREG:
    3339        12356 :     case MEM:
    3340        12356 :       if (!rtx_equal_p (x2, operands[1]))
    3341              :         return -1;
    3342         4051 :       switch (GET_MODE (operands[0]))
    3343              :         {
    3344         1529 :         case E_SImode:
    3345         1529 :           return pattern764 (x1, 
    3346         1529 : E_SImode); /* [-1, 0] */
    3347              : 
    3348         2001 :         case E_DImode:
    3349         2001 :           if (pattern764 (x1, 
    3350              : E_DImode) != 0)
    3351              :             return -1;
    3352              :           return 1;
    3353              : 
    3354              :         default:
    3355              :           return -1;
    3356              :         }
    3357              : 
    3358           99 :     case NOT:
    3359           99 :       x3 = XEXP (x2, 0);
    3360           99 :       if (!rtx_equal_p (x3, operands[1]))
    3361              :         return -1;
    3362           84 :       switch (GET_MODE (operands[0]))
    3363              :         {
    3364            0 :         case E_SImode:
    3365            0 :           if (pattern765 (x1, 
    3366              : E_SImode) != 0)
    3367              :             return -1;
    3368              :           return 2;
    3369              : 
    3370           84 :         case E_DImode:
    3371           84 :           if (pattern765 (x1, 
    3372              : E_DImode) != 0)
    3373              :             return -1;
    3374              :           return 3;
    3375              : 
    3376              :         default:
    3377              :           return -1;
    3378              :         }
    3379              : 
    3380              :     default:
    3381              :       return -1;
    3382              :     }
    3383              : }
    3384              : 
    3385              : int
    3386          360 : pattern782 (rtx x1, machine_mode i1)
    3387              : {
    3388          360 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3389          360 :   int res ATTRIBUTE_UNUSED;
    3390          360 :   if (!register_operand (operands[0], i1)
    3391          360 :       || GET_MODE (x1) != i1)
    3392              :     return -1;
    3393          338 :   switch (GET_MODE (operands[1]))
    3394              :     {
    3395          108 :     case E_V8HFmode:
    3396          108 :       if (!vector_operand (operands[1], E_V8HFmode))
    3397              :         return -1;
    3398              :       return 0;
    3399              : 
    3400          115 :     case E_V4SFmode:
    3401          115 :       if (!nonimmediate_operand (operands[1], E_V4SFmode))
    3402              :         return -1;
    3403              :       return 1;
    3404              : 
    3405          115 :     case E_V4DFmode:
    3406          115 :       if (!nonimmediate_operand (operands[1], E_V4DFmode))
    3407              :         return -1;
    3408              :       return 2;
    3409              : 
    3410              :     default:
    3411              :       return -1;
    3412              :     }
    3413              : }
    3414              : 
    3415              : int
    3416          800 : pattern790 (rtx x1, machine_mode i1, machine_mode i2)
    3417              : {
    3418          800 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3419          800 :   int res ATTRIBUTE_UNUSED;
    3420          800 :   if (!register_operand (operands[0], i2)
    3421          769 :       || GET_MODE (x1) != i2
    3422          769 :       || !nonimmediate_operand (operands[1], i2)
    3423         1515 :       || !register_operand (operands[2], i1))
    3424          221 :     return -1;
    3425              :   return 0;
    3426              : }
    3427              : 
    3428              : int
    3429          232 : pattern797 (rtx x1, int i1, int i2, int i3)
    3430              : {
    3431          232 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3432          232 :   rtx x2, x3, x4, x5, x6, x7, x8;
    3433          232 :   int res ATTRIBUTE_UNUSED;
    3434          232 :   x2 = XVECEXP (x1, 0, 0);
    3435          232 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3436              :     return -1;
    3437          232 :   x3 = XVECEXP (x1, 0, 1);
    3438          232 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    3439              :     return -1;
    3440          232 :   x4 = XVECEXP (x1, 0, 2);
    3441          232 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    3442              :     return -1;
    3443          232 :   x5 = XVECEXP (x1, 0, 3);
    3444          232 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    3445              :     return -1;
    3446          232 :   x6 = XVECEXP (x1, 0, 4);
    3447          232 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + i3])
    3448              :     return -1;
    3449          232 :   x7 = XVECEXP (x1, 0, 5);
    3450          232 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + i2])
    3451              :     return -1;
    3452          232 :   x8 = XVECEXP (x1, 0, 6);
    3453          232 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    3454            0 :     return -1;
    3455              :   return 0;
    3456              : }
    3457              : 
    3458              : int
    3459           87 : pattern814 (rtx x1, machine_mode i1, machine_mode i2)
    3460              : {
    3461           87 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3462           87 :   rtx x2;
    3463           87 :   int res ATTRIBUTE_UNUSED;
    3464           87 :   if (!register_operand (operands[0], i2)
    3465           87 :       || GET_MODE (x1) != i2)
    3466              :     return -1;
    3467           87 :   x2 = XEXP (x1, 0);
    3468           87 :   if (GET_MODE (x2) != i2
    3469           45 :       || !memory_operand (operands[1], i1)
    3470          125 :       || !general_operand (operands[2], i1))
    3471           49 :     return -1;
    3472              :   return 0;
    3473              : }
    3474              : 
    3475              : int
    3476        40537 : pattern822 (rtx x1)
    3477              : {
    3478        40537 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3479        40537 :   rtx x2, x3, x4, x5;
    3480        40537 :   int res ATTRIBUTE_UNUSED;
    3481        40537 :   x2 = XEXP (x1, 1);
    3482        40537 :   x3 = XEXP (x2, 0);
    3483        40537 :   x4 = XEXP (x3, 0);
    3484        40537 :   operands[2] = x4;
    3485        40537 :   if (!int248_register_operand (operands[2], E_VOIDmode))
    3486              :     return -1;
    3487        35855 :   x5 = XEXP (x3, 1);
    3488        35855 :   operands[3] = x5;
    3489        35855 :   if (!const_int_operand (operands[3], E_VOIDmode))
    3490              :     return -1;
    3491        35841 :   return pattern251 (x1); /* [-1, 1] */
    3492              : }
    3493              : 
    3494              : int
    3495        41066 : pattern826 (rtx x1, machine_mode i1)
    3496              : {
    3497        41066 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3498        41066 :   rtx x2, x3, x4, x5;
    3499        41066 :   int res ATTRIBUTE_UNUSED;
    3500        41066 :   x2 = XVECEXP (x1, 0, 1);
    3501        41066 :   x3 = XEXP (x2, 0);
    3502        41066 :   if (GET_CODE (x3) != REG
    3503        41066 :       || REGNO (x3) != 17
    3504        82132 :       || GET_MODE (x3) != E_CCmode)
    3505              :     return -1;
    3506        41066 :   x4 = XVECEXP (x1, 0, 0);
    3507        41066 :   x5 = XEXP (x4, 0);
    3508        41066 :   operands[0] = x5;
    3509        41066 :   if (!register_operand (operands[0], i1))
    3510              :     return -1;
    3511              :   return 0;
    3512              : }
    3513              : 
    3514              : int
    3515       337325 : pattern830 (rtx x1, machine_mode i1)
    3516              : {
    3517       337325 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3518       337325 :   rtx x2, x3;
    3519       337325 :   int res ATTRIBUTE_UNUSED;
    3520       337325 :   x2 = XEXP (x1, 0);
    3521       337325 :   if (GET_CODE (x2) != REG
    3522       337325 :       || REGNO (x2) != 17
    3523       674650 :       || GET_MODE (x2) != i1)
    3524              :     return -1;
    3525       337294 :   x3 = XEXP (x1, 1);
    3526       337294 :   if (GET_MODE (x3) != i1)
    3527            0 :     return -1;
    3528              :   return 0;
    3529              : }
    3530              : 
    3531              : int
    3532           57 : pattern835 (rtx x1)
    3533              : {
    3534           57 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3535           57 :   rtx x2, x3, x4;
    3536           57 :   int res ATTRIBUTE_UNUSED;
    3537           57 :   x2 = XVECEXP (x1, 0, 1);
    3538           57 :   if (GET_CODE (x2) != UNSPEC
    3539           55 :       || XVECLEN (x2, 0) != 1
    3540           55 :       || XINT (x2, 1) != 39)
    3541              :     return -1;
    3542           55 :   x3 = XVECEXP (x1, 0, 2);
    3543           55 :   if (GET_CODE (x3) != CLOBBER)
    3544              :     return -1;
    3545           55 :   x4 = XEXP (x3, 0);
    3546           55 :   if (GET_CODE (x4) != REG
    3547           55 :       || REGNO (x4) != 17
    3548          110 :       || GET_MODE (x4) != E_CCmode)
    3549              :     return -1;
    3550           55 :   return pattern550 (x1); /* [-1, 1] */
    3551              : }
    3552              : 
    3553              : int
    3554          161 : pattern840 (rtx x1)
    3555              : {
    3556          161 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3557          161 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3558          161 :   rtx x10;
    3559          161 :   int res ATTRIBUTE_UNUSED;
    3560          161 :   x2 = XVECEXP (x1, 0, 1);
    3561          161 :   if (GET_CODE (x2) != UNSPEC
    3562          148 :       || XVECLEN (x2, 0) != 1
    3563          148 :       || XINT (x2, 1) != 39)
    3564              :     return -1;
    3565          148 :   x3 = XVECEXP (x1, 0, 2);
    3566          148 :   if (GET_CODE (x3) != CLOBBER)
    3567              :     return -1;
    3568          148 :   x4 = XEXP (x3, 0);
    3569          148 :   if (GET_CODE (x4) != REG
    3570          148 :       || REGNO (x4) != 17
    3571          296 :       || GET_MODE (x4) != E_CCmode)
    3572              :     return -1;
    3573          148 :   x5 = XVECEXP (x1, 0, 0);
    3574          148 :   x6 = XEXP (x5, 0);
    3575          148 :   operands[0] = x6;
    3576          148 :   x7 = XEXP (x5, 1);
    3577          148 :   x8 = XEXP (x7, 0);
    3578          148 :   x9 = XEXP (x8, 0);
    3579          148 :   operands[1] = x9;
    3580          148 :   if (!nonimmediate_operand (operands[1], E_SImode))
    3581              :     return -1;
    3582          148 :   x10 = XVECEXP (x2, 0, 0);
    3583          148 :   operands[2] = x10;
    3584          148 :   if (!register_operand (operands[2], E_DImode))
    3585              :     return -1;
    3586              :   return 0;
    3587              : }
    3588              : 
    3589              : int
    3590         1891 : pattern849 (rtx x1, int i1, int i2, int i3)
    3591              : {
    3592         1891 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3593         1891 :   rtx x2, x3, x4, x5, x6, x7, x8;
    3594         1891 :   int res ATTRIBUTE_UNUSED;
    3595         1891 :   x2 = XVECEXP (x1, 0, 0);
    3596         1891 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3597              :     return -1;
    3598          815 :   x3 = XVECEXP (x1, 0, 1);
    3599          815 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    3600              :     return -1;
    3601          779 :   x4 = XVECEXP (x1, 0, 2);
    3602          779 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
    3603              :     return -1;
    3604          779 :   x5 = XVECEXP (x1, 0, 3);
    3605          779 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    3606              :     return -1;
    3607          779 :   x6 = XVECEXP (x1, 0, 4);
    3608          779 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + i3])
    3609              :     return -1;
    3610          751 :   x7 = XVECEXP (x1, 0, 5);
    3611          751 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + i2])
    3612              :     return -1;
    3613          742 :   x8 = XVECEXP (x1, 0, 6);
    3614          742 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    3615            0 :     return -1;
    3616              :   return 0;
    3617              : }
    3618              : 
    3619              : int
    3620          114 : pattern859 (rtx x1, machine_mode i1)
    3621              : {
    3622          114 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3623          114 :   int res ATTRIBUTE_UNUSED;
    3624          114 :   if (GET_MODE (x1) != i1
    3625          114 :       || !register_operand (operands[3], i1)
    3626           90 :       || !nonmemory_operand (operands[4], i1)
    3627          204 :       || !const0_operand (operands[5], i1))
    3628           60 :     return -1;
    3629              :   return 0;
    3630              : }
    3631              : 
    3632              : int
    3633        19088 : pattern862 (rtx x1, machine_mode i1)
    3634              : {
    3635        19088 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3636        19088 :   int res ATTRIBUTE_UNUSED;
    3637        19088 :   if (!register_operand (operands[0], i1)
    3638        19062 :       || GET_MODE (x1) != i1
    3639        19052 :       || !register_operand (operands[1], i1)
    3640        31832 :       || !register_mmxmem_operand (operands[2], i1))
    3641         8093 :     return -1;
    3642              :   return 0;
    3643              : }
    3644              : 
    3645              : int
    3646         1051 : pattern866 (rtx x1, machine_mode i1, machine_mode i2)
    3647              : {
    3648         1051 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3649         1051 :   rtx x2, x3, x4, x5;
    3650         1051 :   int res ATTRIBUTE_UNUSED;
    3651         1051 :   if (!register_operand (operands[0], i2)
    3652         1051 :       || GET_MODE (x1) != i2)
    3653              :     return -1;
    3654          674 :   x2 = XEXP (x1, 0);
    3655          674 :   if (GET_MODE (x2) != i2)
    3656              :     return -1;
    3657          674 :   x3 = XEXP (x2, 0);
    3658          674 :   if (GET_MODE (x3) != i1
    3659          674 :       || !register_operand (operands[1], i2)
    3660         1300 :       || !register_mmxmem_operand (operands[2], i2))
    3661           80 :     return -1;
    3662          594 :   x4 = XEXP (x1, 1);
    3663          594 :   if (GET_MODE (x4) != i2)
    3664              :     return -1;
    3665          594 :   x5 = XEXP (x4, 0);
    3666          594 :   if (GET_MODE (x5) != i1)
    3667              :     return -1;
    3668              :   return 0;
    3669              : }
    3670              : 
    3671              : int
    3672         5531 : pattern872 (rtx x1)
    3673              : {
    3674         5531 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3675         5531 :   rtx x2, x3, x4;
    3676         5531 :   int res ATTRIBUTE_UNUSED;
    3677         5531 :   x2 = XVECEXP (x1, 0, 0);
    3678         5531 :   x3 = XEXP (x2, 1);
    3679         5531 :   operands[1] = x3;
    3680         5531 :   x4 = XEXP (x2, 0);
    3681         5531 :   if (!rtx_equal_p (x4, operands[0]))
    3682              :     return -1;
    3683         3410 :   switch (GET_MODE (operands[0]))
    3684              :     {
    3685          405 :     case E_QImode:
    3686          405 :       return pattern871 (x1, 
    3687          405 : E_QImode); /* [-1, 0] */
    3688              : 
    3689          139 :     case E_HImode:
    3690          139 :       if (pattern871 (x1, 
    3691              : E_HImode) != 0)
    3692              :         return -1;
    3693              :       return 1;
    3694              : 
    3695              :     default:
    3696              :       return -1;
    3697              :     }
    3698              : }
    3699              : 
    3700              : int
    3701         5643 : pattern879 (rtx x1, machine_mode i1)
    3702              : {
    3703         5643 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3704         5643 :   rtx x2;
    3705         5643 :   int res ATTRIBUTE_UNUSED;
    3706         5643 :   if (!register_operand (operands[0], i1)
    3707         5643 :       || GET_MODE (x1) != i1)
    3708              :     return -1;
    3709         5473 :   x2 = XEXP (x1, 0);
    3710         5473 :   if (GET_MODE (x2) != i1
    3711         5473 :       || !bcst_vector_operand (operands[1], i1)
    3712         4842 :       || !bcst_vector_operand (operands[2], i1)
    3713         9781 :       || !bcst_vector_operand (operands[3], i1))
    3714         1183 :     return -1;
    3715              :   return 0;
    3716              : }
    3717              : 
    3718              : int
    3719         2300 : pattern888 (rtx x1)
    3720              : {
    3721         2300 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3722         2300 :   rtx x2, x3, x4, x5, x6;
    3723         2300 :   int res ATTRIBUTE_UNUSED;
    3724         2300 :   x2 = XVECEXP (x1, 0, 0);
    3725         2300 :   x3 = XVECEXP (x2, 0, 0);
    3726         2300 :   if (GET_CODE (x3) != VEC_SELECT)
    3727              :     return -1;
    3728         1392 :   x4 = XEXP (x3, 1);
    3729         1392 :   if (GET_CODE (x4) != PARALLEL
    3730         1392 :       || XVECLEN (x4, 0) != 1)
    3731              :     return -1;
    3732         1392 :   x5 = XVECEXP (x4, 0, 0);
    3733         1392 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3734              :     return -1;
    3735         1392 :   x6 = XEXP (x3, 0);
    3736         1392 :   operands[1] = x6;
    3737         1392 :   if (!const_4_or_8_to_11_operand (operands[2], E_SImode))
    3738              :     return -1;
    3739         1392 :   switch (GET_MODE (operands[0]))
    3740              :     {
    3741          702 :     case E_SImode:
    3742          702 :       return pattern887 (x1, 
    3743          702 : E_SImode); /* [-1, 2] */
    3744              : 
    3745          690 :     case E_DImode:
    3746          690 :       res = pattern887 (x1, 
    3747              : E_DImode);
    3748          690 :       if (res >= 0)
    3749          642 :         return res + 3; /* [3, 5] */
    3750              :       return -1;
    3751              : 
    3752              :     default:
    3753              :       return -1;
    3754              :     }
    3755              : }
    3756              : 
    3757              : int
    3758          264 : pattern902 (rtx x1, machine_mode i1)
    3759              : {
    3760          264 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3761          264 :   rtx x2;
    3762          264 :   int res ATTRIBUTE_UNUSED;
    3763          264 :   if (!register_operand (operands[0], i1)
    3764          264 :       || GET_MODE (x1) != i1)
    3765              :     return -1;
    3766          258 :   x2 = XEXP (x1, 0);
    3767          258 :   if (GET_MODE (x2) != i1
    3768          258 :       || !nonimmediate_operand (operands[1], i1)
    3769          490 :       || !register_operand (operands[2], i1))
    3770           46 :     return -1;
    3771              :   return 0;
    3772              : }
    3773              : 
    3774              : int
    3775         1358 : pattern908 (rtx x1)
    3776              : {
    3777         1358 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3778         1358 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    3779         1358 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    3780         1358 :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
    3781         1358 :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
    3782         1358 :   int res ATTRIBUTE_UNUSED;
    3783         1358 :   x2 = XVECEXP (x1, 0, 0);
    3784         1358 :   if (GET_CODE (x2) != CONST_INT)
    3785              :     return -1;
    3786         1358 :   x3 = XVECEXP (x1, 0, 1);
    3787         1358 :   if (GET_CODE (x3) != CONST_INT)
    3788              :     return -1;
    3789         1358 :   x4 = XVECEXP (x1, 0, 2);
    3790         1358 :   if (GET_CODE (x4) != CONST_INT)
    3791              :     return -1;
    3792         1358 :   x5 = XVECEXP (x1, 0, 3);
    3793         1358 :   if (GET_CODE (x5) != CONST_INT)
    3794              :     return -1;
    3795         1358 :   x6 = XVECEXP (x1, 0, 4);
    3796         1358 :   if (GET_CODE (x6) != CONST_INT)
    3797              :     return -1;
    3798         1358 :   x7 = XVECEXP (x1, 0, 5);
    3799         1358 :   if (GET_CODE (x7) != CONST_INT)
    3800              :     return -1;
    3801         1358 :   x8 = XVECEXP (x1, 0, 6);
    3802         1358 :   if (GET_CODE (x8) != CONST_INT)
    3803              :     return -1;
    3804         1358 :   x9 = XVECEXP (x1, 0, 7);
    3805         1358 :   if (GET_CODE (x9) != CONST_INT)
    3806              :     return -1;
    3807         1358 :   x10 = XVECEXP (x1, 0, 8);
    3808         1358 :   if (GET_CODE (x10) != CONST_INT)
    3809              :     return -1;
    3810         1358 :   x11 = XVECEXP (x1, 0, 9);
    3811         1358 :   if (GET_CODE (x11) != CONST_INT)
    3812              :     return -1;
    3813         1358 :   x12 = XVECEXP (x1, 0, 10);
    3814         1358 :   if (GET_CODE (x12) != CONST_INT)
    3815              :     return -1;
    3816         1358 :   x13 = XVECEXP (x1, 0, 11);
    3817         1358 :   if (GET_CODE (x13) != CONST_INT)
    3818              :     return -1;
    3819         1358 :   x14 = XVECEXP (x1, 0, 12);
    3820         1358 :   if (GET_CODE (x14) != CONST_INT)
    3821              :     return -1;
    3822         1358 :   x15 = XVECEXP (x1, 0, 13);
    3823         1358 :   if (GET_CODE (x15) != CONST_INT)
    3824              :     return -1;
    3825         1358 :   x16 = XVECEXP (x1, 0, 14);
    3826         1358 :   if (GET_CODE (x16) != CONST_INT)
    3827              :     return -1;
    3828         1358 :   x17 = XVECEXP (x1, 0, 15);
    3829         1358 :   if (GET_CODE (x17) != CONST_INT)
    3830              :     return -1;
    3831         1358 :   x18 = XVECEXP (x1, 0, 16);
    3832         1358 :   if (GET_CODE (x18) != CONST_INT)
    3833              :     return -1;
    3834         1358 :   x19 = XVECEXP (x1, 0, 17);
    3835         1358 :   if (GET_CODE (x19) != CONST_INT)
    3836              :     return -1;
    3837         1358 :   x20 = XVECEXP (x1, 0, 18);
    3838         1358 :   if (GET_CODE (x20) != CONST_INT)
    3839              :     return -1;
    3840         1358 :   x21 = XVECEXP (x1, 0, 19);
    3841         1358 :   if (GET_CODE (x21) != CONST_INT)
    3842              :     return -1;
    3843         1358 :   x22 = XVECEXP (x1, 0, 20);
    3844         1358 :   if (GET_CODE (x22) != CONST_INT)
    3845              :     return -1;
    3846         1358 :   x23 = XVECEXP (x1, 0, 21);
    3847         1358 :   if (GET_CODE (x23) != CONST_INT)
    3848              :     return -1;
    3849         1358 :   x24 = XVECEXP (x1, 0, 22);
    3850         1358 :   if (GET_CODE (x24) != CONST_INT)
    3851              :     return -1;
    3852         1358 :   x25 = XVECEXP (x1, 0, 23);
    3853         1358 :   if (GET_CODE (x25) != CONST_INT)
    3854              :     return -1;
    3855         1358 :   x26 = XVECEXP (x1, 0, 24);
    3856         1358 :   if (GET_CODE (x26) != CONST_INT)
    3857              :     return -1;
    3858         1358 :   x27 = XVECEXP (x1, 0, 25);
    3859         1358 :   if (GET_CODE (x27) != CONST_INT)
    3860              :     return -1;
    3861         1358 :   x28 = XVECEXP (x1, 0, 26);
    3862         1358 :   if (GET_CODE (x28) != CONST_INT)
    3863              :     return -1;
    3864         1358 :   x29 = XVECEXP (x1, 0, 27);
    3865         1358 :   if (GET_CODE (x29) != CONST_INT)
    3866              :     return -1;
    3867         1358 :   x30 = XVECEXP (x1, 0, 28);
    3868         1358 :   if (GET_CODE (x30) != CONST_INT)
    3869              :     return -1;
    3870         1358 :   x31 = XVECEXP (x1, 0, 29);
    3871         1358 :   if (GET_CODE (x31) != CONST_INT)
    3872              :     return -1;
    3873         1358 :   x32 = XVECEXP (x1, 0, 30);
    3874         1358 :   if (GET_CODE (x32) != CONST_INT)
    3875              :     return -1;
    3876         1358 :   x33 = XVECEXP (x1, 0, 31);
    3877         1358 :   if (GET_CODE (x33) != CONST_INT)
    3878            0 :     return -1;
    3879              :   return 0;
    3880              : }
    3881              : 
    3882              : int
    3883           66 : pattern942 (rtx x1, int *pnum_clobbers)
    3884              : {
    3885           66 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3886           66 :   rtx x2, x3, x4, x5, x6;
    3887           66 :   int res ATTRIBUTE_UNUSED;
    3888           66 :   x2 = XVECEXP (x1, 0, 0);
    3889           66 :   x3 = XEXP (x2, 1);
    3890           66 :   x4 = XEXP (x3, 0);
    3891           66 :   x5 = XEXP (x4, 0);
    3892           66 :   operands[1] = x5;
    3893           66 :   if (!nonimmediate_operand (operands[1], E_SImode))
    3894              :     return -1;
    3895           24 :   x6 = XVECEXP (x1, 0, 1);
    3896           24 :   return pattern832 (x6, pnum_clobbers); /* [-1, 1] */
    3897              : }
    3898              : 
    3899              : int
    3900          283 : pattern948 (rtx x1)
    3901              : {
    3902          283 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3903          283 :   rtx x2, x3, x4, x5;
    3904          283 :   int res ATTRIBUTE_UNUSED;
    3905          283 :   x2 = XEXP (x1, 0);
    3906          283 :   x3 = XEXP (x2, 1);
    3907          283 :   x4 = XEXP (x3, 1);
    3908          283 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    3909              :     return -1;
    3910          277 :   x5 = XEXP (x3, 0);
    3911          277 :   operands[3] = x5;
    3912          277 :   if (!int_nonimmediate_operand (operands[3], E_VOIDmode))
    3913              :     return -1;
    3914          271 :   switch (GET_MODE (operands[0]))
    3915              :     {
    3916            0 :     case E_QImode:
    3917            0 :       return pattern946 (x1, 
    3918            0 : E_QImode); /* [-1, 0] */
    3919              : 
    3920            0 :     case E_HImode:
    3921            0 :       if (pattern946 (x1, 
    3922              : E_HImode) != 0)
    3923              :         return -1;
    3924              :       return 1;
    3925              : 
    3926          189 :     case E_SImode:
    3927          189 :       if (pattern947 (x1, 
    3928              : E_SImode) != 0)
    3929              :         return -1;
    3930              :       return 2;
    3931              : 
    3932           82 :     case E_DImode:
    3933           82 :       if (pattern947 (x1, 
    3934              : E_DImode) != 0)
    3935              :         return -1;
    3936              :       return 3;
    3937              : 
    3938              :     default:
    3939              :       return -1;
    3940              :     }
    3941              : }
    3942              : 
    3943              : int
    3944      4850374 : pattern962 (rtx x1, machine_mode i1)
    3945              : {
    3946      4850374 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3947      4850374 :   rtx x2, x3;
    3948      4850374 :   int res ATTRIBUTE_UNUSED;
    3949      4850374 :   if (!immediate_operand (operands[1], i1)
    3950      4850374 :       || GET_CODE (x1) != SET)
    3951              :     return -1;
    3952      3814279 :   x2 = XEXP (x1, 0);
    3953      3814279 :   operands[2] = x2;
    3954      3814279 :   if (!mask_reg_operand (operands[2], i1))
    3955              :     return -1;
    3956         2947 :   x3 = XEXP (x1, 1);
    3957         2947 :   if (!rtx_equal_p (x3, operands[0]))
    3958              :     return -1;
    3959              :   return 0;
    3960              : }
    3961              : 
    3962              : int
    3963        10318 : pattern969 ()
    3964              : {
    3965        10318 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    3966        10318 :   int res ATTRIBUTE_UNUSED;
    3967        10318 :   switch (GET_MODE (operands[0]))
    3968              :     {
    3969          202 :     case E_QImode:
    3970          202 :       if (!register_operand (operands[0], E_QImode)
    3971          202 :           || !register_operand (operands[1], E_QImode))
    3972            1 :         return -1;
    3973              :       return 0;
    3974              : 
    3975         9674 :     case E_HImode:
    3976         9674 :       if (!register_operand (operands[0], E_HImode)
    3977         9674 :           || !register_operand (operands[1], E_HImode))
    3978         9473 :         return -1;
    3979              :       return 1;
    3980              : 
    3981          202 :     case E_SImode:
    3982          202 :       if (!register_operand (operands[0], E_SImode)
    3983          202 :           || !register_operand (operands[1], E_SImode))
    3984            1 :         return -1;
    3985              :       return 2;
    3986              : 
    3987          215 :     case E_DImode:
    3988          215 :       if (!register_operand (operands[0], E_DImode)
    3989          215 :           || !register_operand (operands[1], E_DImode))
    3990           12 :         return -1;
    3991              :       return 3;
    3992              : 
    3993              :     default:
    3994              :       return -1;
    3995              :     }
    3996              : }
    3997              : 
    3998              : int
    3999            0 : pattern975 (rtx x1)
    4000              : {
    4001            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4002            0 :   rtx x2, x3;
    4003            0 :   int res ATTRIBUTE_UNUSED;
    4004            0 :   x2 = XEXP (x1, 0);
    4005            0 :   switch (GET_MODE (x2))
    4006              :     {
    4007            0 :     case E_HImode:
    4008            0 :       x3 = XEXP (x1, 1);
    4009            0 :       if (GET_MODE (x3) != E_HImode
    4010            0 :           || !register_operand (operands[1], E_HImode))
    4011            0 :         return -1;
    4012              :       return 0;
    4013              : 
    4014            0 :     case E_SImode:
    4015            0 :       x3 = XEXP (x1, 1);
    4016            0 :       if (GET_MODE (x3) != E_SImode
    4017            0 :           || !register_operand (operands[1], E_SImode))
    4018            0 :         return -1;
    4019              :       return 1;
    4020              : 
    4021            0 :     case E_DImode:
    4022            0 :       x3 = XEXP (x1, 1);
    4023            0 :       if (GET_MODE (x3) != E_DImode
    4024            0 :           || !register_operand (operands[1], E_DImode))
    4025            0 :         return -1;
    4026              :       return 2;
    4027              : 
    4028              :     default:
    4029              :       return -1;
    4030              :     }
    4031              : }
    4032              : 
    4033              : int
    4034       114269 : pattern980 (rtx x1)
    4035              : {
    4036       114269 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4037       114269 :   int res ATTRIBUTE_UNUSED;
    4038       114269 :   if (!nonimmediate_operand (operands[0], E_SFmode)
    4039       114269 :       || GET_MODE (x1) != E_SFmode)
    4040              :     return -1;
    4041       114087 :   switch (GET_MODE (operands[1]))
    4042              :     {
    4043        17041 :     case E_V2SFmode:
    4044        17041 :       if (!nonimmediate_operand (operands[1], E_V2SFmode))
    4045              :         return -1;
    4046              :       return 0;
    4047              : 
    4048        96602 :     case E_V4SFmode:
    4049        96602 :       if (!nonimmediate_operand (operands[1], E_V4SFmode))
    4050              :         return -1;
    4051              :       return 1;
    4052              : 
    4053              :     default:
    4054              :       return -1;
    4055              :     }
    4056              : }
    4057              : 
    4058              : int
    4059       300199 : pattern983 (rtx x1)
    4060              : {
    4061       300199 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4062       300199 :   rtx x2, x3, x4;
    4063       300199 :   int res ATTRIBUTE_UNUSED;
    4064       300199 :   x2 = XEXP (x1, 1);
    4065       300199 :   x3 = XVECEXP (x2, 0, 0);
    4066       300199 :   switch (XWINT (x3, 0))
    4067              :     {
    4068       146112 :     case 0L:
    4069       146112 :       x4 = XVECEXP (x2, 0, 1);
    4070       146112 :       if (XWINT (x4, 0) != 2L)
    4071              :         return -1;
    4072       145458 :       switch (GET_MODE (operands[0]))
    4073              :         {
    4074         8335 :         case E_V2SFmode:
    4075         8335 :           return pattern274 (x1, 
    4076              : E_V2SFmode, 
    4077         8335 : E_V4SFmode); /* [-1, 0] */
    4078              : 
    4079        17121 :         case E_V2SImode:
    4080        17121 :           if (pattern275 (x1, 
    4081              : E_V2SImode, 
    4082              : E_V4SImode) != 0)
    4083              :             return -1;
    4084              :           return 1;
    4085              : 
    4086              :         default:
    4087              :           return -1;
    4088              :         }
    4089              : 
    4090       149588 :     case 1L:
    4091       149588 :       x4 = XVECEXP (x2, 0, 1);
    4092       149588 :       if (XWINT (x4, 0) != 3L)
    4093              :         return -1;
    4094       104428 :       switch (GET_MODE (operands[0]))
    4095              :         {
    4096         2917 :         case E_V2SFmode:
    4097         2917 :           if (pattern274 (x1, 
    4098              : E_V2SFmode, 
    4099              : E_V4SFmode) != 0)
    4100              :             return -1;
    4101              :           return 2;
    4102              : 
    4103         8919 :         case E_V2SImode:
    4104         8919 :           if (pattern275 (x1, 
    4105              : E_V2SImode, 
    4106              : E_V4SImode) != 0)
    4107              :             return -1;
    4108              :           return 3;
    4109              : 
    4110              :         default:
    4111              :           return -1;
    4112              :         }
    4113              : 
    4114              :     default:
    4115              :       return -1;
    4116              :     }
    4117              : }
    4118              : 
    4119              : int
    4120         1726 : pattern994 (rtx x1)
    4121              : {
    4122         1726 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4123         1726 :   rtx x2, x3;
    4124         1726 :   int res ATTRIBUTE_UNUSED;
    4125         1726 :   x2 = XEXP (x1, 1);
    4126         1726 :   operands[3] = x2;
    4127         1726 :   switch (GET_MODE (operands[0]))
    4128              :     {
    4129          177 :     case E_DImode:
    4130          177 :       if (!register_operand (operands[0], E_DImode)
    4131          177 :           || GET_MODE (x1) != E_DImode)
    4132              :         return -1;
    4133          169 :       x3 = XEXP (x1, 0);
    4134          169 :       if (GET_MODE (x3) != E_DImode
    4135          169 :           || !nonimm_or_0_operand (operands[1], E_V64QImode)
    4136          169 :           || !nonimm_or_0_operand (operands[2], E_V64QImode)
    4137          338 :           || !register_operand (operands[3], E_DImode))
    4138           73 :         return -1;
    4139              :       return 0;
    4140              : 
    4141          388 :     case E_SImode:
    4142          388 :       if (!register_operand (operands[0], E_SImode)
    4143          388 :           || GET_MODE (x1) != E_SImode)
    4144              :         return -1;
    4145          368 :       x3 = XEXP (x1, 0);
    4146          368 :       if (GET_MODE (x3) != E_SImode
    4147          368 :           || !register_operand (operands[3], E_SImode))
    4148          230 :         return -1;
    4149          138 :       switch (GET_MODE (operands[1]))
    4150              :         {
    4151           67 :         case E_V32QImode:
    4152           67 :           if (!nonimm_or_0_operand (operands[1], E_V32QImode)
    4153           67 :               || !nonimm_or_0_operand (operands[2], E_V32QImode))
    4154            0 :             return -1;
    4155              :           return 1;
    4156              : 
    4157           67 :         case E_V32HImode:
    4158           67 :           if (!nonimm_or_0_operand (operands[1], E_V32HImode)
    4159           67 :               || !nonimm_or_0_operand (operands[2], E_V32HImode))
    4160            0 :             return -1;
    4161              :           return 2;
    4162              : 
    4163              :         default:
    4164              :           return -1;
    4165              :         }
    4166              : 
    4167              :     default:
    4168              :       return -1;
    4169              :     }
    4170              : }
    4171              : 
    4172              : int
    4173         2661 : pattern1004 (rtx x1, machine_mode i1, machine_mode i2)
    4174              : {
    4175         2661 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4176         2661 :   rtx x2;
    4177         2661 :   int res ATTRIBUTE_UNUSED;
    4178         2661 :   if (!register_operand (operands[0], i1)
    4179         2661 :       || GET_MODE (x1) != i1)
    4180              :     return -1;
    4181         2494 :   x2 = XEXP (x1, 0);
    4182         2494 :   if (GET_MODE (x2) != i1
    4183         2494 :       || !vector_operand (operands[1], i1)
    4184         2494 :       || !nonimm_or_0_operand (operands[2], i1)
    4185         4955 :       || !register_operand (operands[3], i2))
    4186          146 :     return -1;
    4187              :   return 0;
    4188              : }
    4189              : 
    4190              : int
    4191          180 : pattern1011 (rtx x1, machine_mode i1)
    4192              : {
    4193          180 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4194          180 :   rtx x2, x3, x4, x5, x6;
    4195          180 :   int res ATTRIBUTE_UNUSED;
    4196          180 :   if (!register_operand (operands[0], i1)
    4197          180 :       || GET_MODE (x1) != i1)
    4198              :     return -1;
    4199          142 :   x2 = XEXP (x1, 0);
    4200          142 :   if (GET_MODE (x2) != i1)
    4201              :     return -1;
    4202          142 :   x3 = XEXP (x2, 0);
    4203          142 :   if (GET_MODE (x3) != i1)
    4204              :     return -1;
    4205          142 :   x4 = XEXP (x3, 0);
    4206          142 :   if (GET_MODE (x4) != i1)
    4207              :     return -1;
    4208          142 :   x5 = XEXP (x4, 0);
    4209          142 :   if (!nonimmediate_operand (x5, i1))
    4210              :     return -1;
    4211          142 :   x6 = XEXP (x3, 1);
    4212          142 :   if (!nonimmediate_operand (x6, i1))
    4213              :     return -1;
    4214              :   return 0;
    4215              : }
    4216              : 
    4217              : int
    4218          839 : pattern1022 (rtx x1, machine_mode i1)
    4219              : {
    4220          839 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4221          839 :   rtx x2, x3;
    4222          839 :   int res ATTRIBUTE_UNUSED;
    4223          839 :   if (!register_operand (operands[0], i1)
    4224          839 :       || GET_MODE (x1) != i1)
    4225              :     return -1;
    4226          805 :   x2 = XEXP (x1, 0);
    4227          805 :   if (GET_MODE (x2) != i1)
    4228              :     return -1;
    4229          805 :   x3 = XEXP (x2, 0);
    4230          805 :   if (GET_MODE (x3) != i1
    4231          805 :       || !register_operand (operands[1], i1)
    4232          805 :       || !vector_operand (operands[2], i1)
    4233          781 :       || !nonimm_or_0_operand (operands[3], i1)
    4234         1574 :       || !register_operand (operands[4], E_QImode))
    4235           81 :     return -1;
    4236              :   return 0;
    4237              : }
    4238              : 
    4239              : int
    4240          195 : pattern1029 (rtx x1)
    4241              : {
    4242          195 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4243          195 :   rtx x2;
    4244          195 :   int res ATTRIBUTE_UNUSED;
    4245          195 :   if (!register_operand (operands[0], E_V8SImode)
    4246          195 :       || GET_MODE (x1) != E_V8SImode)
    4247              :     return -1;
    4248          195 :   x2 = XVECEXP (x1, 0, 0);
    4249          195 :   if (GET_MODE (x2) != E_V8SImode)
    4250              :     return -1;
    4251          195 :   switch (GET_MODE (operands[1]))
    4252              :     {
    4253            0 :     case E_V8HFmode:
    4254            0 :       if (!register_operand (operands[1], E_V8HFmode))
    4255              :         return -1;
    4256              :       return 0;
    4257              : 
    4258          195 :     case E_V8DFmode:
    4259          195 :       if (!register_operand (operands[1], E_V8DFmode))
    4260              :         return -1;
    4261              :       return 1;
    4262              : 
    4263              :     default:
    4264              :       return -1;
    4265              :     }
    4266              : }
    4267              : 
    4268              : int
    4269        13943 : pattern1040 (rtx x1, machine_mode i1, machine_mode i2)
    4270              : {
    4271        13943 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4272        13943 :   int res ATTRIBUTE_UNUSED;
    4273        13943 :   if (!register_operand (operands[0], i1)
    4274        13888 :       || GET_MODE (x1) != i1
    4275        13888 :       || !register_operand (operands[1], i2)
    4276        13888 :       || !register_operand (operands[2], i1)
    4277        27742 :       || !nonimmediate_operand (operands[3], i1))
    4278          238 :     return -1;
    4279              :   return 0;
    4280              : }
    4281              : 
    4282              : int
    4283          111 : pattern1046 (rtx x1)
    4284              : {
    4285          111 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4286          111 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    4287          111 :   rtx x10;
    4288          111 :   int res ATTRIBUTE_UNUSED;
    4289          111 :   x2 = XEXP (x1, 0);
    4290          111 :   x3 = XEXP (x2, 1);
    4291          111 :   if (XVECLEN (x3, 0) != 2)
    4292              :     return -1;
    4293           16 :   x4 = XVECEXP (x3, 0, 0);
    4294           16 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4295              :     return -1;
    4296           16 :   x5 = XVECEXP (x3, 0, 1);
    4297           16 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
    4298           16 :       || !register_operand (operands[0], E_V2DImode)
    4299           15 :       || GET_MODE (x1) != E_V2DImode
    4300           31 :       || GET_MODE (x2) != E_V2QImode)
    4301            5 :     return -1;
    4302           11 :   x6 = XEXP (x2, 0);
    4303           11 :   if (GET_MODE (x6) != E_V16QImode)
    4304              :     return -1;
    4305           11 :   x7 = XEXP (x6, 0);
    4306           11 :   x8 = XEXP (x7, 0);
    4307           11 :   x9 = XEXP (x8, 0);
    4308           11 :   operands[1] = x9;
    4309           11 :   x10 = XEXP (x7, 1);
    4310           11 :   operands[2] = x10;
    4311           11 :   switch (GET_MODE (x7))
    4312              :     {
    4313            6 :     case E_V8HImode:
    4314            6 :       if (GET_MODE (x8) != E_V8HImode
    4315            6 :           || !nonimmediate_operand (operands[1], E_HImode)
    4316           12 :           || !const0_operand (operands[2], E_V8HImode))
    4317            0 :         return -1;
    4318              :       return 0;
    4319              : 
    4320            5 :     case E_V8HFmode:
    4321            5 :       if (GET_MODE (x8) != E_V8HFmode
    4322            5 :           || !nonimmediate_operand (operands[1], E_HFmode)
    4323           10 :           || !const0_operand (operands[2], E_V8HFmode))
    4324            0 :         return -1;
    4325              :       return 1;
    4326              : 
    4327            0 :     case E_V8BFmode:
    4328            0 :       if (GET_MODE (x8) != E_V8BFmode
    4329            0 :           || !nonimmediate_operand (operands[1], E_BFmode)
    4330            0 :           || !const0_operand (operands[2], E_V8BFmode))
    4331            0 :         return -1;
    4332              :       return 2;
    4333              : 
    4334              :     default:
    4335              :       return -1;
    4336              :     }
    4337              : }
    4338              : 
    4339              : int
    4340        57056 : pattern1059 (rtx x1)
    4341              : {
    4342        57056 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4343        57056 :   rtx x2, x3, x4, x5, x6;
    4344        57056 :   int res ATTRIBUTE_UNUSED;
    4345        57056 :   x2 = XEXP (x1, 1);
    4346        57056 :   x3 = XEXP (x2, 0);
    4347        57056 :   if (maybe_ne (SUBREG_BYTE (x3), 0)
    4348        57056 :       || GET_MODE (x3) != E_QImode)
    4349              :     return -1;
    4350         1223 :   x4 = XEXP (x3, 0);
    4351         1223 :   switch (GET_CODE (x4))
    4352              :     {
    4353          394 :     case ASHIFTRT:
    4354          394 :     case LSHIFTRT:
    4355          394 :     case SIGN_EXTRACT:
    4356          394 :     case ZERO_EXTRACT:
    4357          394 :       operands[3] = x4;
    4358          394 :       x5 = XEXP (x2, 1);
    4359          394 :       if (GET_CODE (x5) != SUBREG
    4360          135 :           || maybe_ne (SUBREG_BYTE (x5), 0)
    4361          529 :           || GET_MODE (x5) != E_QImode)
    4362              :         return -1;
    4363          135 :       x6 = XEXP (x5, 0);
    4364          135 :       switch (GET_CODE (x6))
    4365              :         {
    4366           60 :         case ASHIFTRT:
    4367           60 :         case LSHIFTRT:
    4368           60 :         case SIGN_EXTRACT:
    4369           60 :         case ZERO_EXTRACT:
    4370           60 :           operands[4] = x6;
    4371           60 :           if (GET_MODE (x2) != E_QImode)
    4372              :             return -1;
    4373           60 :           return pattern1058 (x1); /* [-1, 5] */
    4374              : 
    4375              :         default:
    4376              :           return -1;
    4377              :         }
    4378              : 
    4379              :     default:
    4380              :       return -1;
    4381              :     }
    4382              : }
    4383              : 
    4384              : int
    4385            0 : pattern1067 (rtx x1, machine_mode i1)
    4386              : {
    4387            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4388            0 :   rtx x2;
    4389            0 :   int res ATTRIBUTE_UNUSED;
    4390            0 :   if (!register_operand (operands[0], i1)
    4391            0 :       || GET_MODE (x1) != i1)
    4392              :     return -1;
    4393            0 :   x2 = XEXP (x1, 0);
    4394            0 :   if (GET_MODE (x2) != i1
    4395            0 :       || !register_operand (operands[1], i1)
    4396            0 :       || !register_operand (operands[2], i1))
    4397            0 :     return -1;
    4398              :   return 0;
    4399              : }
    4400              : 
    4401              : int
    4402          267 : pattern1073 (rtx x1)
    4403              : {
    4404          267 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4405          267 :   rtx x2, x3, x4, x5;
    4406          267 :   int res ATTRIBUTE_UNUSED;
    4407          267 :   x2 = XVECEXP (x1, 0, 0);
    4408          267 :   x3 = XEXP (x2, 1);
    4409          267 :   if (GET_MODE (x3) != E_XFmode)
    4410              :     return -1;
    4411          267 :   x4 = XVECEXP (x1, 0, 1);
    4412          267 :   x5 = XEXP (x4, 0);
    4413          267 :   if (GET_CODE (x5) != REG
    4414          267 :       || REGNO (x5) != 17
    4415          208 :       || GET_MODE (x5) != E_CCmode
    4416          208 :       || !register_operand (operands[0], E_XFmode)
    4417          475 :       || !register_operand (operands[1], E_XFmode))
    4418          115 :     return -1;
    4419              :   return 0;
    4420              : }
    4421              : 
    4422              : int
    4423         2764 : pattern1079 (rtx x1)
    4424              : {
    4425         2764 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4426         2764 :   rtx x2, x3, x4;
    4427         2764 :   int res ATTRIBUTE_UNUSED;
    4428         2764 :   if (GET_MODE (x1) != E_DImode)
    4429              :     return -1;
    4430         2764 :   x2 = XEXP (x1, 1);
    4431         2764 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    4432              :     return -1;
    4433         2764 :   x3 = XEXP (x1, 0);
    4434         2764 :   operands[0] = x3;
    4435         2764 :   if (!nonimmediate_operand (operands[0], E_DImode))
    4436              :     return -1;
    4437         2764 :   x4 = XEXP (x1, 2);
    4438         2764 :   operands[1] = x4;
    4439         2764 :   if (!const_0_to_63_operand (operands[1], E_QImode))
    4440              :     return -1;
    4441              :   return 0;
    4442              : }
    4443              : 
    4444              : int
    4445          344 : pattern1084 ()
    4446              : {
    4447          344 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4448          344 :   int res ATTRIBUTE_UNUSED;
    4449          344 :   switch (GET_MODE (operands[3]))
    4450              :     {
    4451           33 :     case E_HImode:
    4452           33 :       if (!extract_high_operator (operands[3], E_HImode)
    4453           33 :           || !extract_high_operator (operands[4], E_HImode))
    4454            2 :         return -1;
    4455              :       return 0;
    4456              : 
    4457          255 :     case E_SImode:
    4458          255 :       if (!extract_high_operator (operands[3], E_SImode)
    4459          255 :           || !extract_high_operator (operands[4], E_SImode))
    4460          210 :         return -1;
    4461              :       return 1;
    4462              : 
    4463           56 :     case E_DImode:
    4464           56 :       if (!extract_high_operator (operands[3], E_DImode)
    4465           56 :           || !extract_high_operator (operands[4], E_DImode))
    4466           36 :         return -1;
    4467              :       return 2;
    4468              : 
    4469              :     default:
    4470              :       return -1;
    4471              :     }
    4472              : }
    4473              : 
    4474              : int
    4475           17 : pattern1094 (rtx x1, machine_mode i1)
    4476              : {
    4477           17 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4478           17 :   int res ATTRIBUTE_UNUSED;
    4479           17 :   if (!register_operand (operands[0], i1)
    4480           17 :       || GET_MODE (x1) != i1
    4481           17 :       || !register_operand (operands[1], i1)
    4482           28 :       || !general_operand (operands[2], i1))
    4483           12 :     return -1;
    4484              :   return 0;
    4485              : }
    4486              : 
    4487              : int
    4488          189 : pattern1102 (rtx x1)
    4489              : {
    4490          189 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4491          189 :   int res ATTRIBUTE_UNUSED;
    4492          189 :   switch (GET_MODE (x1))
    4493              :     {
    4494            0 :     case E_DImode:
    4495            0 :       if (!nonimmediate_operand (operands[1], E_V64QImode)
    4496            0 :           || !nonimmediate_operand (operands[2], E_V64QImode))
    4497            0 :         return -1;
    4498              :       return 0;
    4499              : 
    4500           46 :     case E_HImode:
    4501           46 :       switch (GET_MODE (operands[1]))
    4502              :         {
    4503           14 :         case E_V16QImode:
    4504           14 :           if (!nonimmediate_operand (operands[1], E_V16QImode)
    4505           14 :               || !nonimmediate_operand (operands[2], E_V16QImode))
    4506            2 :             return -1;
    4507              :           return 1;
    4508              : 
    4509           16 :         case E_V16HImode:
    4510           16 :           if (!nonimmediate_operand (operands[1], E_V16HImode)
    4511           16 :               || !nonimmediate_operand (operands[2], E_V16HImode))
    4512            2 :             return -1;
    4513              :           return 2;
    4514              : 
    4515           16 :         case E_V16SImode:
    4516           16 :           if (!nonimmediate_operand (operands[1], E_V16SImode)
    4517           16 :               || !nonimmediate_operand (operands[2], E_V16SImode))
    4518            2 :             return -1;
    4519              :           return 3;
    4520              : 
    4521              :         default:
    4522              :           return -1;
    4523              :         }
    4524              : 
    4525           14 :     case E_SImode:
    4526           14 :       switch (GET_MODE (operands[1]))
    4527              :         {
    4528            7 :         case E_V32QImode:
    4529            7 :           if (!nonimmediate_operand (operands[1], E_V32QImode)
    4530            7 :               || !nonimmediate_operand (operands[2], E_V32QImode))
    4531            1 :             return -1;
    4532              :           return 4;
    4533              : 
    4534            7 :         case E_V32HImode:
    4535            7 :           if (!nonimmediate_operand (operands[1], E_V32HImode)
    4536            7 :               || !nonimmediate_operand (operands[2], E_V32HImode))
    4537            1 :             return -1;
    4538              :           return 5;
    4539              : 
    4540              :         default:
    4541              :           return -1;
    4542              :         }
    4543              : 
    4544          129 :     case E_QImode:
    4545          129 :       switch (GET_MODE (operands[1]))
    4546              :         {
    4547           24 :         case E_V8HImode:
    4548           24 :           if (!nonimmediate_operand (operands[1], E_V8HImode)
    4549           24 :               || !nonimmediate_operand (operands[2], E_V8HImode))
    4550            0 :             return -1;
    4551              :           return 6;
    4552              : 
    4553           21 :         case E_V8SImode:
    4554           21 :           if (!nonimmediate_operand (operands[1], E_V8SImode)
    4555           21 :               || !nonimmediate_operand (operands[2], E_V8SImode))
    4556            3 :             return -1;
    4557              :           return 7;
    4558              : 
    4559           21 :         case E_V4SImode:
    4560           21 :           if (!nonimmediate_operand (operands[1], E_V4SImode)
    4561           21 :               || !nonimmediate_operand (operands[2], E_V4SImode))
    4562            3 :             return -1;
    4563              :           return 8;
    4564              : 
    4565           21 :         case E_V8DImode:
    4566           21 :           if (!nonimmediate_operand (operands[1], E_V8DImode)
    4567           21 :               || !nonimmediate_operand (operands[2], E_V8DImode))
    4568            3 :             return -1;
    4569              :           return 9;
    4570              : 
    4571           21 :         case E_V4DImode:
    4572           21 :           if (!nonimmediate_operand (operands[1], E_V4DImode)
    4573           21 :               || !nonimmediate_operand (operands[2], E_V4DImode))
    4574            3 :             return -1;
    4575              :           return 10;
    4576              : 
    4577           21 :         case E_V2DImode:
    4578           21 :           if (!nonimmediate_operand (operands[1], E_V2DImode)
    4579           21 :               || !nonimmediate_operand (operands[2], E_V2DImode))
    4580            3 :             return -1;
    4581              :           return 11;
    4582              : 
    4583              :         default:
    4584              :           return -1;
    4585              :         }
    4586              : 
    4587              :     default:
    4588              :       return -1;
    4589              :     }
    4590              : }
    4591              : 
    4592              : int
    4593         1278 : pattern1135 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    4594              : {
    4595         1278 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4596         1278 :   rtx x2, x3, x4, x5, x6;
    4597         1278 :   int res ATTRIBUTE_UNUSED;
    4598         1278 :   if (!register_operand (operands[0], i2)
    4599         1278 :       || GET_MODE (x1) != i2)
    4600              :     return -1;
    4601         1246 :   x2 = XEXP (x1, 0);
    4602         1246 :   if (GET_MODE (x2) != i2)
    4603              :     return -1;
    4604         1246 :   x3 = XEXP (x2, 0);
    4605         1246 :   if (GET_MODE (x3) != i3)
    4606              :     return -1;
    4607         1246 :   x4 = XEXP (x3, 0);
    4608         1246 :   if (GET_MODE (x4) != i3)
    4609              :     return -1;
    4610         1246 :   x5 = XEXP (x4, 0);
    4611         1246 :   if (GET_MODE (x5) != i3
    4612         1246 :       || !vector_operand (operands[1], i2))
    4613            0 :     return -1;
    4614         1246 :   x6 = XEXP (x4, 1);
    4615         1246 :   if (GET_MODE (x6) != i3
    4616         1246 :       || !vector_operand (operands[2], i2)
    4617         1246 :       || !nonimm_or_0_operand (operands[3], i2)
    4618         2462 :       || !register_operand (operands[4], i1))
    4619          118 :     return -1;
    4620              :   return 0;
    4621              : }
    4622              : 
    4623              : int
    4624         6293 : pattern1149 (rtx x1, machine_mode i1)
    4625              : {
    4626         6293 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4627         6293 :   int res ATTRIBUTE_UNUSED;
    4628         6293 :   if (!register_operand (operands[0], i1)
    4629         6279 :       || GET_MODE (x1) != i1
    4630         6279 :       || !register_operand (operands[1], i1)
    4631         6137 :       || !register_operand (operands[2], i1)
    4632        12285 :       || !bcst_vector_operand (operands[3], i1))
    4633          324 :     return -1;
    4634              :   return 0;
    4635              : }
    4636              : 
    4637              : int
    4638         8255 : pattern1153 (rtx x1, machine_mode i1, machine_mode i2)
    4639              : {
    4640         8255 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4641         8255 :   rtx x2;
    4642         8255 :   int res ATTRIBUTE_UNUSED;
    4643         8255 :   if (!nonimmediate_operand (operands[0], i1)
    4644         8255 :       || GET_MODE (x1) != i1)
    4645              :     return -1;
    4646         8254 :   x2 = XEXP (x1, 0);
    4647         8254 :   if (GET_MODE (x2) != i2
    4648         8254 :       || !nonimmediate_operand (operands[1], i1))
    4649         3054 :     return -1;
    4650              :   return 0;
    4651              : }
    4652              : 
    4653              : int
    4654         3636 : pattern1161 (rtx x1)
    4655              : {
    4656         3636 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4657         3636 :   rtx x2, x3, x4, x5;
    4658         3636 :   int res ATTRIBUTE_UNUSED;
    4659         3636 :   x2 = XVECEXP (x1, 0, 1);
    4660         3636 :   x3 = XEXP (x2, 0);
    4661         3636 :   operands[2] = x3;
    4662         3636 :   switch (GET_MODE (operands[0]))
    4663              :     {
    4664           16 :     case E_SImode:
    4665           16 :       x4 = XVECEXP (x1, 0, 0);
    4666           16 :       x5 = XEXP (x4, 1);
    4667           16 :       return pattern1160 (x5, 
    4668           16 : E_SImode); /* [-1, 1] */
    4669              : 
    4670         3620 :     case E_DImode:
    4671         3620 :       x4 = XVECEXP (x1, 0, 0);
    4672         3620 :       x5 = XEXP (x4, 1);
    4673         3620 :       res = pattern1160 (x5, 
    4674              : E_DImode);
    4675         3620 :       if (res >= 0)
    4676         3620 :         return res + 2; /* [2, 3] */
    4677              :       return -1;
    4678              : 
    4679              :     default:
    4680              :       return -1;
    4681              :     }
    4682              : }
    4683              : 
    4684              : int
    4685            6 : pattern1170 (rtx x1, machine_mode i1)
    4686              : {
    4687            6 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4688            6 :   rtx x2, x3;
    4689            6 :   int res ATTRIBUTE_UNUSED;
    4690            6 :   if (!nonimmediate_operand (operands[0], i1)
    4691            6 :       || GET_MODE (x1) != i1)
    4692              :     return -1;
    4693            6 :   x2 = XEXP (x1, 0);
    4694            6 :   if (GET_MODE (x2) != i1)
    4695              :     return -1;
    4696            6 :   x3 = XEXP (x2, 0);
    4697            6 :   if (GET_MODE (x3) != i1
    4698            6 :       || !nonimmediate_operand (operands[1], i1)
    4699           12 :       || !general_operand (operands[2], i1))
    4700            0 :     return -1;
    4701              :   return 0;
    4702              : }
    4703              : 
    4704              : int
    4705         5083 : pattern1178 (rtx x1)
    4706              : {
    4707         5083 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4708         5083 :   rtx x2, x3, x4;
    4709         5083 :   int res ATTRIBUTE_UNUSED;
    4710         5083 :   x2 = XEXP (x1, 1);
    4711         5083 :   x3 = XEXP (x2, 0);
    4712         5083 :   x4 = XEXP (x3, 1);
    4713         5083 :   operands[3] = x4;
    4714         5083 :   if (!const_int_operand (operands[3], E_VOIDmode))
    4715              :     return -1;
    4716         5082 :   return pattern207 (x1); /* [-1, 3] */
    4717              : }
    4718              : 
    4719              : int
    4720        23298 : pattern1184 (rtx x1, machine_mode i1, int i2)
    4721              : {
    4722        23298 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4723        23298 :   rtx x2, x3, x4, x5, x6;
    4724        23298 :   int res ATTRIBUTE_UNUSED;
    4725        23298 :   x2 = XVECEXP (x1, 0, 1);
    4726        23298 :   x3 = XEXP (x2, 1);
    4727        23298 :   x4 = XVECEXP (x3, 0, 0);
    4728        23298 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    4729              :     return -1;
    4730        23298 :   x5 = XVECEXP (x1, 0, 2);
    4731        23298 :   if (GET_CODE (x5) != SET)
    4732              :     return -1;
    4733        23298 :   x6 = XEXP (x5, 1);
    4734        23298 :   return pattern1183 (x6, 
    4735              : i1, 
    4736        23298 : i2); /* [-1, 0] */
    4737              : }
    4738              : 
    4739              : int
    4740        26886 : pattern1191 (rtx x1)
    4741              : {
    4742        26886 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4743        26886 :   rtx x2, x3;
    4744        26886 :   int res ATTRIBUTE_UNUSED;
    4745        26886 :   x2 = XEXP (x1, 1);
    4746        26886 :   switch (GET_CODE (x2))
    4747              :     {
    4748         4974 :     case SUBREG:
    4749         4974 :       if (maybe_ne (SUBREG_BYTE (x2), 0)
    4750         4974 :           || GET_MODE (x2) != E_QImode)
    4751              :         return -1;
    4752         4974 :       x3 = XEXP (x1, 0);
    4753         4974 :       operands[1] = x3;
    4754         4974 :       return pattern1179 (x1); /* [-1, 11] */
    4755              : 
    4756              :     case CONST_INT:
    4757              :       return 12;
    4758              : 
    4759              :     default:
    4760              :       return -1;
    4761              :     }
    4762              : }
    4763              : 
    4764              : int
    4765            6 : pattern1198 (rtx x1, machine_mode i1, machine_mode i2)
    4766              : {
    4767            6 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4768            6 :   rtx x2;
    4769            6 :   int res ATTRIBUTE_UNUSED;
    4770            6 :   if (!memory_operand (operands[0], i2)
    4771            6 :       || GET_MODE (x1) != i2)
    4772              :     return -1;
    4773            6 :   x2 = XEXP (x1, 0);
    4774            6 :   if (GET_MODE (x2) != i2
    4775            6 :       || !nonmemory_operand (operands[1], i1))
    4776            0 :     return -1;
    4777              :   return 0;
    4778              : }
    4779              : 
    4780              : int
    4781           14 : pattern1204 (rtx x1, machine_mode i1)
    4782              : {
    4783           14 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4784           14 :   rtx x2, x3, x4, x5, x6;
    4785           14 :   int res ATTRIBUTE_UNUSED;
    4786           14 :   if (!rtx_equal_p (x1, operands[0]))
    4787              :     return -1;
    4788           14 :   x2 = PATTERN (peep2_next_insn (2));
    4789           14 :   x3 = XEXP (x2, 0);
    4790           14 :   switch (GET_CODE (x3))
    4791              :     {
    4792           12 :     case SUBREG:
    4793           12 :     case MEM:
    4794           12 :       if (!rtx_equal_p (x3, operands[1]))
    4795              :         return -1;
    4796              :       return 0;
    4797              : 
    4798            2 :     case REG:
    4799            2 :       if (peep2_current_count < 4)
    4800              :         return -1;
    4801            2 :       operands[5] = x3;
    4802            2 :       if (!general_reg_operand (operands[5], i1))
    4803              :         return -1;
    4804            2 :       x4 = PATTERN (peep2_next_insn (3));
    4805            2 :       if (GET_CODE (x4) != SET)
    4806              :         return -1;
    4807            0 :       x5 = XEXP (x4, 1);
    4808            0 :       if (!rtx_equal_p (x5, operands[5]))
    4809              :         return -1;
    4810            0 :       x6 = XEXP (x4, 0);
    4811            0 :       if (!rtx_equal_p (x6, operands[1]))
    4812              :         return -1;
    4813              :       return 1;
    4814              : 
    4815              :     default:
    4816              :       return -1;
    4817              :     }
    4818              : }
    4819              : 
    4820              : int
    4821        47475 : pattern1212 ()
    4822              : {
    4823        47475 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4824        47475 :   int res ATTRIBUTE_UNUSED;
    4825        47475 :   switch (GET_MODE (operands[2]))
    4826              :     {
    4827         5160 :     case E_HImode:
    4828         5160 :       if (!extract_high_operator (operands[2], E_HImode))
    4829              :         return -1;
    4830              :       return 0;
    4831              : 
    4832        25008 :     case E_SImode:
    4833        25008 :       if (!extract_high_operator (operands[2], E_SImode))
    4834              :         return -1;
    4835              :       return 1;
    4836              : 
    4837        17307 :     case E_DImode:
    4838        17307 :       if (!extract_high_operator (operands[2], E_DImode))
    4839              :         return -1;
    4840              :       return 2;
    4841              : 
    4842              :     default:
    4843              :       return -1;
    4844              :     }
    4845              : }
    4846              : 
    4847              : int
    4848           12 : pattern1220 (rtx x1, machine_mode i1)
    4849              : {
    4850           12 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4851           12 :   rtx x2, x3;
    4852           12 :   int res ATTRIBUTE_UNUSED;
    4853           12 :   if (!nonimmediate_operand (operands[0], i1)
    4854           12 :       || GET_MODE (x1) != i1)
    4855              :     return -1;
    4856           12 :   x2 = XEXP (x1, 0);
    4857           12 :   if (GET_MODE (x2) != i1
    4858           12 :       || !nonimmediate_operand (operands[1], i1))
    4859            0 :     return -1;
    4860           12 :   x3 = XEXP (x2, 1);
    4861           12 :   if (GET_MODE (x3) != i1
    4862           12 :       || !x86_64_general_operand (operands[2], i1))
    4863            0 :     return -1;
    4864              :   return 0;
    4865              : }
    4866              : 
    4867              : int
    4868          715 : pattern1228 (rtx x1, machine_mode i1, machine_mode i2)
    4869              : {
    4870          715 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4871          715 :   rtx x2, x3, x4;
    4872          715 :   int res ATTRIBUTE_UNUSED;
    4873          715 :   if (!register_operand (operands[0], i1)
    4874          715 :       || GET_MODE (x1) != i1)
    4875              :     return -1;
    4876          623 :   x2 = XEXP (x1, 0);
    4877          623 :   if (GET_MODE (x2) != i1)
    4878              :     return -1;
    4879          623 :   x3 = XEXP (x2, 0);
    4880          623 :   if (GET_MODE (x3) != i2
    4881          623 :       || !register_operand (operands[1], i1))
    4882            0 :     return -1;
    4883          623 :   x4 = XEXP (x3, 1);
    4884          623 :   operands[2] = x4;
    4885          623 :   if (!nonimmediate_operand (operands[2], i1))
    4886              :     return -1;
    4887              :   return 0;
    4888              : }
    4889              : 
    4890              : int
    4891          575 : pattern1235 (rtx x1)
    4892              : {
    4893          575 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4894          575 :   rtx x2, x3, x4;
    4895          575 :   int res ATTRIBUTE_UNUSED;
    4896          575 :   x2 = XVECEXP (x1, 0, 2);
    4897          575 :   x3 = XEXP (x2, 0);
    4898          575 :   x4 = XEXP (x3, 1);
    4899          575 :   operands[4] = x4;
    4900          575 :   switch (GET_MODE (operands[0]))
    4901              :     {
    4902          451 :     case E_V16QImode:
    4903          451 :       if (!register_operand (operands[0], E_V16QImode)
    4904          451 :           || GET_MODE (x1) != E_V16QImode
    4905          451 :           || !register_operand (operands[1], E_V16QImode)
    4906          442 :           || !vector_operand (operands[2], E_V16QImode)
    4907          889 :           || GET_MODE (x2) != E_V16QImode)
    4908           13 :         return -1;
    4909          438 :       switch (GET_MODE (x3))
    4910              :         {
    4911          323 :         case E_V4SImode:
    4912          323 :           if (!register_operand (operands[3], E_V4SImode)
    4913          323 :               || !const0_operand (operands[4], E_V4SImode))
    4914          212 :             return -1;
    4915              :           return 0;
    4916              : 
    4917          111 :         case E_V2DImode:
    4918          111 :           if (!register_operand (operands[3], E_V2DImode)
    4919          111 :               || !const0_operand (operands[4], E_V2DImode))
    4920           45 :             return -1;
    4921              :           return 1;
    4922              : 
    4923              :         default:
    4924              :           return -1;
    4925              :         }
    4926              : 
    4927          119 :     case E_V32QImode:
    4928          119 :       if (!register_operand (operands[0], E_V32QImode)
    4929          119 :           || GET_MODE (x1) != E_V32QImode
    4930          119 :           || !register_operand (operands[1], E_V32QImode)
    4931          117 :           || !vector_operand (operands[2], E_V32QImode)
    4932          232 :           || GET_MODE (x2) != E_V32QImode)
    4933            6 :         return -1;
    4934          113 :       switch (GET_MODE (x3))
    4935              :         {
    4936           67 :         case E_V8SImode:
    4937           67 :           if (!register_operand (operands[3], E_V8SImode)
    4938           67 :               || !const0_operand (operands[4], E_V8SImode))
    4939           32 :             return -1;
    4940              :           return 2;
    4941              : 
    4942           43 :         case E_V4DImode:
    4943           43 :           if (!register_operand (operands[3], E_V4DImode)
    4944           43 :               || !const0_operand (operands[4], E_V4DImode))
    4945            1 :             return -1;
    4946              :           return 3;
    4947              : 
    4948              :         default:
    4949              :           return -1;
    4950              :         }
    4951              : 
    4952              :     default:
    4953              :       return -1;
    4954              :     }
    4955              : }
    4956              : 
    4957              : int
    4958         5860 : pattern1253 (rtx x1, rtx_code i1)
    4959              : {
    4960         5860 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    4961         5860 :   rtx x2, x3, x4, x5, x6;
    4962         5860 :   int res ATTRIBUTE_UNUSED;
    4963         5860 :   x2 = XEXP (x1, 1);
    4964         5860 :   if (maybe_ne (SUBREG_BYTE (x2), 0))
    4965              :     return -1;
    4966         5860 :   x3 = XEXP (x2, 0);
    4967         5860 :   if (GET_CODE (x3) != i1)
    4968              :     return -1;
    4969         1792 :   x4 = XEXP (x3, 0);
    4970         1792 :   if (GET_CODE (x4) != ZERO_EXTEND)
    4971              :     return -1;
    4972         1765 :   switch (GET_MODE (operands[0]))
    4973              :     {
    4974         1502 :     case E_DImode:
    4975         1502 :       if (GET_MODE (x1) != E_DImode)
    4976              :         return -1;
    4977         1502 :       x5 = XEXP (x1, 0);
    4978         1502 :       if (GET_MODE (x5) != E_DImode)
    4979              :         return -1;
    4980         1502 :       x6 = XEXP (x5, 1);
    4981         1502 :       if (!const_0_to_63_operand (x6, E_QImode))
    4982              :         return -1;
    4983              :       return 0;
    4984              : 
    4985          263 :     case E_SImode:
    4986          263 :       if (GET_MODE (x1) != E_SImode)
    4987              :         return -1;
    4988          263 :       x5 = XEXP (x1, 0);
    4989          263 :       if (GET_MODE (x5) != E_SImode)
    4990              :         return -1;
    4991          263 :       x6 = XEXP (x5, 1);
    4992          263 :       if (!const_0_to_31_operand (x6, E_QImode))
    4993              :         return -1;
    4994              :       return 1;
    4995              : 
    4996              :     default:
    4997              :       return -1;
    4998              :     }
    4999              : }
    5000              : 
    5001              : int
    5002           30 : pattern1266 (rtx x1, machine_mode i1)
    5003              : {
    5004           30 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5005           30 :   rtx x2, x3;
    5006           30 :   int res ATTRIBUTE_UNUSED;
    5007           30 :   if (!register_operand (operands[0], i1)
    5008           30 :       || GET_MODE (x1) != i1)
    5009              :     return -1;
    5010           30 :   x2 = XEXP (x1, 0);
    5011           30 :   if (GET_MODE (x2) != i1)
    5012              :     return -1;
    5013           30 :   x3 = XEXP (x2, 0);
    5014           30 :   if (GET_MODE (x3) != i1
    5015           30 :       || !register_operand (operands[1], i1)
    5016           30 :       || !const0_operand (operands[3], i1)
    5017           33 :       || !const0_operand (operands[4], i1))
    5018           27 :     return -1;
    5019              :   return 0;
    5020              : }
    5021              : 
    5022              : int
    5023            0 : pattern1274 (rtx x1, machine_mode i1)
    5024              : {
    5025            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5026            0 :   int res ATTRIBUTE_UNUSED;
    5027            0 :   if (!register_operand (operands[1], i1)
    5028            0 :       || GET_MODE (x1) != i1)
    5029              :     return -1;
    5030            0 :   switch (GET_MODE (operands[2]))
    5031              :     {
    5032            0 :     case E_HImode:
    5033            0 :       if (!nonimmediate_operand (operands[2], E_HImode))
    5034              :         return -1;
    5035              :       return 0;
    5036              : 
    5037            0 :     case E_SImode:
    5038            0 :       if (!nonimmediate_operand (operands[2], E_SImode))
    5039              :         return -1;
    5040              :       return 1;
    5041              : 
    5042              :     default:
    5043              :       return -1;
    5044              :     }
    5045              : }
    5046              : 
    5047              : int
    5048      1813031 : pattern1281 (rtx x1, machine_mode i1)
    5049              : {
    5050      1813031 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5051      1813031 :   int res ATTRIBUTE_UNUSED;
    5052      1813031 :   if (!register_operand (operands[0], i1)
    5053      1782089 :       || GET_MODE (x1) != i1
    5054      1782089 :       || !nonimmediate_operand (operands[2], i1)
    5055      3594070 :       || !nonimmediate_operand (operands[3], i1))
    5056       715298 :     return -1;
    5057              :   return 0;
    5058              : }
    5059              : 
    5060              : int
    5061         1105 : pattern1289 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    5062              : {
    5063         1105 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5064         1105 :   rtx x2, x3;
    5065         1105 :   int res ATTRIBUTE_UNUSED;
    5066         1105 :   if (!register_operand (operands[0], i1)
    5067         1105 :       || GET_MODE (x1) != i1)
    5068              :     return -1;
    5069         1075 :   x2 = XEXP (x1, 0);
    5070         1075 :   if (GET_MODE (x2) != i1
    5071         1075 :       || !register_operand (operands[1], i1))
    5072            0 :     return -1;
    5073         1075 :   x3 = XEXP (x2, 1);
    5074         1075 :   if (GET_MODE (x3) != i1
    5075         1075 :       || !nonimmediate_operand (operands[2], i2)
    5076         1075 :       || !nonimm_or_0_operand (operands[4], i1)
    5077         2136 :       || !register_operand (operands[5], i3))
    5078           74 :     return -1;
    5079              :   return 0;
    5080              : }
    5081              : 
    5082              : int
    5083         3440 : pattern1297 (rtx x1)
    5084              : {
    5085         3440 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5086         3440 :   rtx x2;
    5087         3440 :   int res ATTRIBUTE_UNUSED;
    5088         3440 :   if (!const_0_to_7_operand (operands[5], E_SImode))
    5089              :     return -1;
    5090         3285 :   switch (GET_MODE (operands[0]))
    5091              :     {
    5092           94 :     case E_V16QImode:
    5093           94 :       if (!register_operand (operands[0], E_V16QImode)
    5094           94 :           || GET_MODE (x1) != E_V16QImode)
    5095              :         return -1;
    5096           94 :       x2 = XEXP (x1, 2);
    5097           94 :       if (GET_MODE (x2) != E_HImode)
    5098              :         return -1;
    5099              :       return 0;
    5100              : 
    5101          119 :     case E_V8HImode:
    5102          119 :       if (!register_operand (operands[0], E_V8HImode)
    5103          119 :           || GET_MODE (x1) != E_V8HImode)
    5104              :         return -1;
    5105          119 :       x2 = XEXP (x1, 2);
    5106          119 :       if (GET_MODE (x2) != E_QImode)
    5107              :         return -1;
    5108              :       return 1;
    5109              : 
    5110          805 :     case E_V4SImode:
    5111          805 :       if (!register_operand (operands[0], E_V4SImode)
    5112          805 :           || GET_MODE (x1) != E_V4SImode)
    5113              :         return -1;
    5114          797 :       x2 = XEXP (x1, 2);
    5115          797 :       if (GET_MODE (x2) != E_QImode)
    5116              :         return -1;
    5117              :       return 2;
    5118              : 
    5119           73 :     case E_V2DImode:
    5120           73 :       if (!register_operand (operands[0], E_V2DImode)
    5121           73 :           || GET_MODE (x1) != E_V2DImode)
    5122              :         return -1;
    5123           73 :       x2 = XEXP (x1, 2);
    5124           73 :       if (GET_MODE (x2) != E_QImode)
    5125              :         return -1;
    5126              :       return 3;
    5127              : 
    5128           88 :     case E_V32QImode:
    5129           88 :       if (!register_operand (operands[0], E_V32QImode)
    5130           88 :           || GET_MODE (x1) != E_V32QImode)
    5131              :         return -1;
    5132           88 :       x2 = XEXP (x1, 2);
    5133           88 :       if (GET_MODE (x2) != E_SImode)
    5134              :         return -1;
    5135              :       return 4;
    5136              : 
    5137          105 :     case E_V16HImode:
    5138          105 :       if (!register_operand (operands[0], E_V16HImode)
    5139          105 :           || GET_MODE (x1) != E_V16HImode)
    5140              :         return -1;
    5141          105 :       x2 = XEXP (x1, 2);
    5142          105 :       if (GET_MODE (x2) != E_HImode)
    5143              :         return -1;
    5144              :       return 5;
    5145              : 
    5146          741 :     case E_V8SImode:
    5147          741 :       if (!register_operand (operands[0], E_V8SImode)
    5148          741 :           || GET_MODE (x1) != E_V8SImode)
    5149              :         return -1;
    5150          741 :       x2 = XEXP (x1, 2);
    5151          741 :       if (GET_MODE (x2) != E_QImode)
    5152              :         return -1;
    5153              :       return 6;
    5154              : 
    5155           75 :     case E_V4DImode:
    5156           75 :       if (!register_operand (operands[0], E_V4DImode)
    5157           75 :           || GET_MODE (x1) != E_V4DImode)
    5158              :         return -1;
    5159           75 :       x2 = XEXP (x1, 2);
    5160           75 :       if (GET_MODE (x2) != E_QImode)
    5161              :         return -1;
    5162              :       return 7;
    5163              : 
    5164              :     default:
    5165              :       return -1;
    5166              :     }
    5167              : }
    5168              : 
    5169              : int
    5170        16402 : pattern1326 (rtx x1)
    5171              : {
    5172        16402 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5173        16402 :   rtx x2, x3, x4, x5;
    5174        16402 :   int res ATTRIBUTE_UNUSED;
    5175        16402 :   x2 = XEXP (x1, 0);
    5176        16402 :   if (maybe_ne (SUBREG_BYTE (x2), 0))
    5177              :     return -1;
    5178        16402 :   x3 = XEXP (x2, 0);
    5179        16402 :   operands[0] = x3;
    5180        16402 :   if (!register_operand (operands[0], E_QImode))
    5181              :     return -1;
    5182        16180 :   x4 = XEXP (x1, 1);
    5183        16180 :   x5 = XEXP (x4, 2);
    5184        16180 :   operands[2] = x5;
    5185        16180 :   if (!register_operand (operands[2], E_QImode))
    5186              :     return -1;
    5187         5471 :   switch (GET_MODE (x2))
    5188              :     {
    5189         2585 :     case E_SImode:
    5190         2585 :       if (GET_MODE (x4) != E_SImode
    5191         2585 :           || !nonimmediate_operand (operands[1], E_SImode))
    5192         1054 :         return -1;
    5193              :       return 0;
    5194              : 
    5195         2674 :     case E_DImode:
    5196         2674 :       if (GET_MODE (x4) != E_DImode
    5197         2674 :           || !nonimmediate_operand (operands[1], E_DImode))
    5198         1143 :         return -1;
    5199              :       return 1;
    5200              : 
    5201              :     default:
    5202              :       return -1;
    5203              :     }
    5204              : }
    5205              : 
    5206              : int
    5207        33434 : pattern1338 (rtx x1)
    5208              : {
    5209        33434 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5210        33434 :   rtx x2, x3;
    5211        33434 :   int res ATTRIBUTE_UNUSED;
    5212        33434 :   x2 = XEXP (x1, 1);
    5213        33434 :   switch (GET_CODE (x2))
    5214              :     {
    5215         9389 :     case REG:
    5216         9389 :     case SUBREG:
    5217         9389 :     case MEM:
    5218         9389 :       if (!rtx_equal_p (x2, operands[1]))
    5219              :         return -1;
    5220         3175 :       switch (GET_MODE (operands[0]))
    5221              :         {
    5222         1277 :         case E_SImode:
    5223         1277 :           return pattern939 (x1, 
    5224         1277 : E_SImode); /* [-1, 0] */
    5225              : 
    5226         1525 :         case E_DImode:
    5227         1525 :           if (pattern939 (x1, 
    5228              : E_DImode) != 0)
    5229              :             return -1;
    5230              :           return 1;
    5231              : 
    5232              :         default:
    5233              :           return -1;
    5234              :         }
    5235              : 
    5236          232 :     case NOT:
    5237          232 :       x3 = XEXP (x2, 0);
    5238          232 :       if (!rtx_equal_p (x3, operands[1]))
    5239              :         return -1;
    5240          224 :       switch (GET_MODE (operands[0]))
    5241              :         {
    5242           80 :         case E_SImode:
    5243           80 :           if (pattern1337 (x1, 
    5244              : E_SImode) != 0)
    5245              :             return -1;
    5246              :           return 2;
    5247              : 
    5248          144 :         case E_DImode:
    5249          144 :           if (pattern1337 (x1, 
    5250              : E_DImode) != 0)
    5251              :             return -1;
    5252              :           return 3;
    5253              : 
    5254              :         default:
    5255              :           return -1;
    5256              :         }
    5257              : 
    5258              :     default:
    5259              :       return -1;
    5260              :     }
    5261              : }
    5262              : 
    5263              : int
    5264         5212 : pattern1355 (rtx x1, machine_mode i1)
    5265              : {
    5266         5212 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5267         5212 :   rtx x2, x3, x4, x5, x6, x7, x8;
    5268         5212 :   int res ATTRIBUTE_UNUSED;
    5269         5212 :   x2 = XVECEXP (x1, 0, 0);
    5270         5212 :   x3 = XEXP (x2, 1);
    5271         5212 :   if (GET_MODE (x3) != i1)
    5272              :     return -1;
    5273         4631 :   x4 = XVECEXP (x1, 0, 1);
    5274         4631 :   if (GET_CODE (x4) != CLOBBER)
    5275              :     return -1;
    5276         4631 :   x5 = XEXP (x4, 0);
    5277         4631 :   if (GET_CODE (x5) != REG
    5278         4631 :       || REGNO (x5) != 17
    5279         9262 :       || GET_MODE (x5) != E_CCmode)
    5280              :     return -1;
    5281         4631 :   x6 = XEXP (x3, 0);
    5282         4631 :   if (!rtx_equal_p (x6, operands[0]))
    5283              :     return -1;
    5284         4573 :   x7 = XEXP (x2, 0);
    5285         4573 :   if (!rtx_equal_p (x7, operands[0]))
    5286              :     return -1;
    5287         4573 :   x8 = PATTERN (peep2_next_insn (2));
    5288         4573 :   return pattern1354 (x8); /* [-1, 0] */
    5289              : }
    5290              : 
    5291              : int
    5292            0 : pattern1365 (rtx x1, machine_mode i1)
    5293              : {
    5294            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5295            0 :   rtx x2, x3, x4, x5, x6, x7;
    5296            0 :   int res ATTRIBUTE_UNUSED;
    5297            0 :   if (!general_reg_operand (operands[0], i1)
    5298            0 :       || GET_CODE (x1) != PARALLEL
    5299            0 :       || XVECLEN (x1, 0) != 2)
    5300              :     return -1;
    5301            0 :   x2 = XVECEXP (x1, 0, 0);
    5302            0 :   if (GET_CODE (x2) != SET)
    5303              :     return -1;
    5304            0 :   x3 = XVECEXP (x1, 0, 1);
    5305            0 :   if (GET_CODE (x3) != CLOBBER)
    5306              :     return -1;
    5307            0 :   x4 = XEXP (x3, 0);
    5308            0 :   if (GET_CODE (x4) != REG
    5309            0 :       || REGNO (x4) != 17
    5310            0 :       || GET_MODE (x4) != E_CCmode)
    5311              :     return -1;
    5312            0 :   x5 = XEXP (x2, 1);
    5313            0 :   if (GET_MODE (x5) != i1)
    5314              :     return -1;
    5315            0 :   x6 = XEXP (x2, 0);
    5316            0 :   if (!rtx_equal_p (x6, operands[0]))
    5317              :     return -1;
    5318            0 :   switch (GET_CODE (x5))
    5319              :     {
    5320            0 :     case PLUS:
    5321            0 :       x7 = XEXP (x5, 0);
    5322            0 :       if (!rtx_equal_p (x7, operands[0]))
    5323              :         return -1;
    5324              :       return 0;
    5325              : 
    5326            0 :     case IOR:
    5327            0 :       x7 = XEXP (x5, 0);
    5328            0 :       if (!rtx_equal_p (x7, operands[0]))
    5329              :         return -1;
    5330              :       return 1;
    5331              : 
    5332            0 :     case XOR:
    5333            0 :       x7 = XEXP (x5, 0);
    5334            0 :       if (!rtx_equal_p (x7, operands[0]))
    5335              :         return -1;
    5336              :       return 2;
    5337              : 
    5338              :     default:
    5339              :       return -1;
    5340              :     }
    5341              : }
    5342              : 
    5343              : int
    5344          258 : pattern1378 (rtx x1, machine_mode i1, machine_mode i2)
    5345              : {
    5346          258 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5347          258 :   rtx x2;
    5348          258 :   int res ATTRIBUTE_UNUSED;
    5349          258 :   if (!register_operand (operands[0], i1)
    5350          258 :       || GET_MODE (x1) != i1)
    5351              :     return -1;
    5352          249 :   x2 = XEXP (x1, 0);
    5353          249 :   if (GET_MODE (x2) != i1
    5354          249 :       || !register_operand (operands[1], i1)
    5355          249 :       || !register_operand (operands[2], i2)
    5356          249 :       || !nonimmediate_operand (operands[3], i2)
    5357          498 :       || !const0_operand (operands[4], i1))
    5358            0 :     return -1;
    5359              :   return 0;
    5360              : }
    5361              : 
    5362              : int
    5363          499 : pattern1387 (rtx x1, machine_mode i1)
    5364              : {
    5365          499 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5366          499 :   rtx x2;
    5367          499 :   int res ATTRIBUTE_UNUSED;
    5368          499 :   if (!register_operand (operands[0], i1)
    5369          499 :       || GET_MODE (x1) != i1)
    5370              :     return -1;
    5371          479 :   x2 = XEXP (x1, 0);
    5372          479 :   if (GET_MODE (x2) != i1
    5373          479 :       || !nonimmediate_operand (operands[1], i1)
    5374          479 :       || !nonimmediate_operand (operands[2], i1)
    5375          950 :       || !nonimmediate_operand (operands[3], i1))
    5376            8 :     return -1;
    5377              :   return 0;
    5378              : }
    5379              : 
    5380              : int
    5381           40 : pattern1397 (rtx x1, machine_mode i1)
    5382              : {
    5383           40 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5384           40 :   rtx x2, x3;
    5385           40 :   int res ATTRIBUTE_UNUSED;
    5386           40 :   if (!register_operand (operands[0], i1)
    5387           40 :       || GET_MODE (x1) != i1)
    5388              :     return -1;
    5389           40 :   x2 = XEXP (x1, 0);
    5390           40 :   if (GET_MODE (x2) != i1)
    5391              :     return -1;
    5392           40 :   x3 = XEXP (x2, 0);
    5393           40 :   if (GET_MODE (x3) != i1
    5394           40 :       || !nonimmediate_operand (operands[1], i1)
    5395           40 :       || !nonimmediate_operand (operands[2], i1)
    5396           40 :       || !nonimmediate_operand (operands[3], i1)
    5397           80 :       || !const0_operand (operands[4], i1))
    5398            0 :     return -1;
    5399              :   return 0;
    5400              : }
    5401              : 
    5402              : int
    5403         1188 : pattern1406 (rtx x1)
    5404              : {
    5405         1188 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5406         1188 :   rtx x2, x3, x4, x5, x6, x7;
    5407         1188 :   int res ATTRIBUTE_UNUSED;
    5408         1188 :   x2 = XVECEXP (x1, 0, 0);
    5409         1188 :   x3 = XEXP (x2, 0);
    5410         1188 :   x4 = XEXP (x3, 1);
    5411         1188 :   operands[4] = x4;
    5412         1188 :   x5 = XEXP (x3, 2);
    5413         1188 :   operands[5] = x5;
    5414         1188 :   if (!register_operand (operands[5], E_QImode))
    5415              :     return -1;
    5416         1141 :   x6 = XVECEXP (x1, 0, 1);
    5417         1141 :   operands[6] = x6;
    5418         1141 :   if (!const48_operand (operands[6], E_SImode))
    5419              :     return -1;
    5420         1141 :   x7 = XEXP (x2, 1);
    5421         1141 :   if (!rtx_equal_p (x7, operands[1]))
    5422              :     return -1;
    5423         1141 :   switch (GET_MODE (operands[0]))
    5424              :     {
    5425          519 :     case E_V8HFmode:
    5426          519 :       return pattern1405 (x1, 
    5427          519 : E_V8HFmode); /* [-1, 0] */
    5428              : 
    5429          311 :     case E_V4SFmode:
    5430          311 :       if (pattern1405 (x1, 
    5431              : E_V4SFmode) != 0)
    5432              :         return -1;
    5433              :       return 1;
    5434              : 
    5435          311 :     case E_V2DFmode:
    5436          311 :       if (pattern1405 (x1, 
    5437              : E_V2DFmode) != 0)
    5438              :         return -1;
    5439              :       return 2;
    5440              : 
    5441              :     default:
    5442              :       return -1;
    5443              :     }
    5444              : }
    5445              : 
    5446              : int
    5447          333 : pattern1421 (rtx x1, machine_mode i1)
    5448              : {
    5449          333 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5450          333 :   rtx x2, x3;
    5451          333 :   int res ATTRIBUTE_UNUSED;
    5452          333 :   if (!register_operand (operands[0], i1)
    5453          333 :       || GET_MODE (x1) != i1)
    5454              :     return -1;
    5455          320 :   x2 = XVECEXP (x1, 0, 0);
    5456          320 :   if (GET_MODE (x2) != i1)
    5457              :     return -1;
    5458          320 :   x3 = XEXP (x2, 0);
    5459          320 :   if (GET_MODE (x3) != i1
    5460          320 :       || !register_operand (operands[1], i1)
    5461          312 :       || !register_operand (operands[2], i1)
    5462          627 :       || !register_operand (operands[3], i1))
    5463           13 :     return -1;
    5464              :   return 0;
    5465              : }
    5466              : 
    5467              : int
    5468          612 : pattern1429 (rtx x1, machine_mode i1)
    5469              : {
    5470          612 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5471          612 :   int res ATTRIBUTE_UNUSED;
    5472          612 :   if (!register_operand (operands[0], i1)
    5473          612 :       || GET_MODE (x1) != i1
    5474          612 :       || !nonimmediate_operand (operands[1], i1)
    5475         1224 :       || !register_operand (operands[2], i1))
    5476          108 :     return -1;
    5477              :   return 0;
    5478              : }
    5479              : 
    5480              : int
    5481          614 : pattern1435 (rtx x1, rtx_code i1)
    5482              : {
    5483          614 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5484          614 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5485          614 :   int res ATTRIBUTE_UNUSED;
    5486          614 :   x2 = XVECEXP (x1, 0, 1);
    5487          614 :   x3 = XEXP (x2, 1);
    5488          614 :   if (GET_MODE (x3) != E_DImode)
    5489              :     return -1;
    5490          541 :   x4 = XEXP (x3, 0);
    5491          541 :   if (GET_CODE (x4) != i1
    5492           92 :       || GET_MODE (x4) != E_SImode)
    5493              :     return -1;
    5494           68 :   x5 = XVECEXP (x1, 0, 0);
    5495           68 :   x6 = XEXP (x5, 1);
    5496           68 :   x7 = XEXP (x6, 0);
    5497           68 :   if (GET_MODE (x7) != E_SImode
    5498           68 :       || !nonimmediate_operand (operands[1], E_SImode)
    5499           68 :       || !x86_64_general_operand (operands[2], E_SImode)
    5500          136 :       || !register_operand (operands[0], E_DImode))
    5501            0 :     return -1;
    5502           68 :   x8 = XEXP (x4, 0);
    5503           68 :   if (!rtx_equal_p (x8, operands[1]))
    5504              :     return -1;
    5505           68 :   x9 = XEXP (x4, 1);
    5506           68 :   if (!rtx_equal_p (x9, operands[2]))
    5507              :     return -1;
    5508              :   return 0;
    5509              : }
    5510              : 
    5511              : int
    5512        54563 : pattern1450 (rtx x1, machine_mode i1, machine_mode i2)
    5513              : {
    5514        54563 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5515        54563 :   int res ATTRIBUTE_UNUSED;
    5516        54563 :   if (!nonimmediate_operand (operands[0], i2)
    5517        54472 :       || GET_MODE (x1) != i2
    5518        54472 :       || !register_operand (operands[1], i1)
    5519       108538 :       || !scratch_operand (operands[2], i1))
    5520          588 :     return -1;
    5521              :   return 0;
    5522              : }
    5523              : 
    5524              : int
    5525         1192 : pattern1457 (rtx x1, int i1)
    5526              : {
    5527         1192 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5528         1192 :   rtx x2, x3, x4;
    5529         1192 :   int res ATTRIBUTE_UNUSED;
    5530         1192 :   x2 = XEXP (x1, 1);
    5531         1192 :   x3 = XEXP (x2, 1);
    5532         1192 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    5533              :     return -1;
    5534          726 :   x4 = XEXP (x1, 0);
    5535          726 :   if (GET_CODE (x4) != REG
    5536          726 :       || REGNO (x4) != 17
    5537         1452 :       || GET_MODE (x4) != E_CCZmode)
    5538            0 :     return -1;
    5539              :   return 0;
    5540              : }
    5541              : 
    5542              : int
    5543            0 : pattern1462 (rtx x1)
    5544              : {
    5545            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5546            0 :   rtx x2, x3, x4, x5;
    5547            0 :   int res ATTRIBUTE_UNUSED;
    5548            0 :   x2 = XEXP (x1, 2);
    5549            0 :   x3 = XEXP (x2, 0);
    5550            0 :   x4 = XEXP (x3, 0);
    5551            0 :   operands[1] = x4;
    5552            0 :   if (!int248_register_operand (operands[1], E_VOIDmode))
    5553              :     return -1;
    5554            0 :   x5 = XEXP (x3, 1);
    5555            0 :   operands[2] = x5;
    5556            0 :   if (!const_int_operand (operands[2], E_VOIDmode))
    5557              :     return -1;
    5558            0 :   switch (GET_MODE (x1))
    5559              :     {
    5560            0 :     case E_SImode:
    5561            0 :       if (!nonimmediate_operand (operands[0], E_SImode))
    5562              :         return -1;
    5563              :       return 0;
    5564              : 
    5565            0 :     case E_DImode:
    5566            0 :       if (!nonimmediate_operand (operands[0], E_DImode))
    5567              :         return -1;
    5568              :       return 1;
    5569              : 
    5570              :     default:
    5571              :       return -1;
    5572              :     }
    5573              : }
    5574              : 
    5575              : int
    5576         1942 : pattern1474 (rtx x1, machine_mode i1, machine_mode i2)
    5577              : {
    5578         1942 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5579         1942 :   rtx x2;
    5580         1942 :   int res ATTRIBUTE_UNUSED;
    5581         1942 :   if (!register_operand (operands[0], i1)
    5582         1761 :       || GET_MODE (x1) != i1
    5583         1761 :       || !vector_operand (operands[1], i1)
    5584         3701 :       || !vector_operand (operands[2], i1))
    5585         1088 :     return -1;
    5586          854 :   x2 = XEXP (x1, 2);
    5587          854 :   if (GET_MODE (x2) != i2
    5588          854 :       || !register_operand (operands[3], i1)
    5589          589 :       || !const0_operand (operands[4], i1)
    5590          981 :       || !const_0_to_7_operand (operands[5], E_SImode))
    5591          727 :     return -1;
    5592              :   return 0;
    5593              : }
    5594              : 
    5595              : int
    5596         1094 : pattern1483 (rtx x1, machine_mode i1, machine_mode i2)
    5597              : {
    5598         1094 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5599         1094 :   rtx x2, x3, x4, x5;
    5600         1094 :   int res ATTRIBUTE_UNUSED;
    5601         1094 :   if (!register_operand (operands[0], i2)
    5602         1094 :       || GET_MODE (x1) != i2)
    5603              :     return -1;
    5604         1067 :   x2 = XVECEXP (x1, 0, 0);
    5605         1067 :   if (GET_MODE (x2) != i2)
    5606              :     return -1;
    5607         1067 :   x3 = XEXP (x2, 0);
    5608         1067 :   if (GET_MODE (x3) != i2)
    5609              :     return -1;
    5610         1067 :   x4 = XEXP (x3, 0);
    5611         1067 :   if (GET_MODE (x4) != i2)
    5612              :     return -1;
    5613         1067 :   x5 = XEXP (x4, 0);
    5614         1067 :   if (GET_MODE (x5) != i1)
    5615            0 :     return -1;
    5616              :   return 0;
    5617              : }
    5618              : 
    5619              : int
    5620          295 : pattern1490 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    5621              : {
    5622          295 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5623          295 :   rtx x2, x3, x4;
    5624          295 :   int res ATTRIBUTE_UNUSED;
    5625          295 :   if (!nonimmediate_operand (operands[0], i3)
    5626          295 :       || GET_MODE (x1) != i3)
    5627              :     return -1;
    5628          295 :   x2 = XEXP (x1, 0);
    5629          295 :   if (GET_MODE (x2) != i1
    5630          295 :       || !nonimmediate_operand (operands[1], i2))
    5631            0 :     return -1;
    5632          295 :   x3 = XEXP (x2, 1);
    5633          295 :   if (GET_MODE (x3) != i2)
    5634              :     return -1;
    5635          295 :   x4 = XEXP (x1, 1);
    5636          295 :   if (GET_MODE (x4) != i1)
    5637              :     return -1;
    5638              :   return 0;
    5639              : }
    5640              : 
    5641              : int
    5642       190780 : pattern1497 (rtx x1)
    5643              : {
    5644       190780 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5645       190780 :   rtx x2, x3, x4, x5, x6, x7, x8;
    5646       190780 :   int res ATTRIBUTE_UNUSED;
    5647       190780 :   x2 = XVECEXP (x1, 0, 1);
    5648       190780 :   x3 = XEXP (x2, 1);
    5649       190780 :   x4 = XEXP (x3, 0);
    5650       190780 :   if (!rtx_equal_p (x4, operands[1]))
    5651              :     return -1;
    5652       189347 :   x5 = XEXP (x3, 1);
    5653       189347 :   if (!rtx_equal_p (x5, operands[2]))
    5654              :     return -1;
    5655       189347 :   x6 = XVECEXP (x1, 0, 0);
    5656       189347 :   x7 = XEXP (x6, 1);
    5657       189347 :   x8 = XEXP (x7, 0);
    5658       189347 :   switch (GET_MODE (x8))
    5659              :     {
    5660          716 :     case E_QImode:
    5661          716 :       return pattern1437 (x3, 
    5662          716 : E_QImode); /* [-1, 0] */
    5663              : 
    5664         6065 :     case E_HImode:
    5665         6065 :       if (pattern1437 (x3, 
    5666              : E_HImode) != 0)
    5667              :         return -1;
    5668              :       return 1;
    5669              : 
    5670        42321 :     case E_SImode:
    5671        42321 :       if (pattern1438 (x3, 
    5672              : E_SImode) != 0)
    5673              :         return -1;
    5674              :       return 2;
    5675              : 
    5676       140215 :     case E_DImode:
    5677       140215 :       if (pattern1438 (x3, 
    5678              : E_DImode) != 0)
    5679              :         return -1;
    5680              :       return 3;
    5681              : 
    5682              :     default:
    5683              :       return -1;
    5684              :     }
    5685              : }
    5686              : 
    5687              : int
    5688           30 : pattern1512 (rtx x1, machine_mode i1)
    5689              : {
    5690           30 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5691           30 :   rtx x2, x3;
    5692           30 :   int res ATTRIBUTE_UNUSED;
    5693           30 :   if (!register_operand (operands[0], i1)
    5694           30 :       || GET_MODE (x1) != i1)
    5695              :     return -1;
    5696           30 :   x2 = XEXP (x1, 0);
    5697           30 :   if (GET_MODE (x2) != i1)
    5698              :     return -1;
    5699           30 :   x3 = XEXP (x2, 0);
    5700           30 :   if (GET_MODE (x3) != i1
    5701           30 :       || !register_operand (operands[1], i1))
    5702            0 :     return -1;
    5703              :   return 0;
    5704              : }
    5705              : 
    5706              : int
    5707       403746 : pattern1519 (rtx x1, machine_mode i1)
    5708              : {
    5709       403746 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5710       403746 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    5711       403746 :   rtx x10, x11;
    5712       403746 :   int res ATTRIBUTE_UNUSED;
    5713       403746 :   if (!register_operand (operands[0], i1)
    5714       403746 :       || GET_MODE (x1) != i1)
    5715              :     return -1;
    5716       380926 :   x2 = PATTERN (peep2_next_insn (1));
    5717       380926 :   switch (GET_CODE (x2))
    5718              :     {
    5719       128100 :     case PARALLEL:
    5720       128100 :       if (XVECLEN (x2, 0) != 2)
    5721              :         return -1;
    5722       128079 :       x3 = XVECEXP (x2, 0, 0);
    5723       128079 :       if (GET_CODE (x3) != SET)
    5724              :         return -1;
    5725       128060 :       x4 = XEXP (x3, 1);
    5726       128060 :       if (GET_CODE (x4) != PLUS
    5727        86657 :           || GET_MODE (x4) != i1)
    5728              :         return -1;
    5729        82765 :       x5 = XVECEXP (x2, 0, 1);
    5730        82765 :       if (GET_CODE (x5) != CLOBBER)
    5731              :         return -1;
    5732        82765 :       x6 = XEXP (x5, 0);
    5733        82765 :       if (GET_CODE (x6) != REG
    5734        82765 :           || REGNO (x6) != 17
    5735       165530 :           || GET_MODE (x6) != E_CCmode)
    5736              :         return -1;
    5737        82765 :       x7 = XEXP (x4, 1);
    5738        82765 :       operands[2] = x7;
    5739        82765 :       if (!x86_64_immediate_operand (operands[2], E_VOIDmode))
    5740              :         return -1;
    5741        13928 :       x8 = XEXP (x4, 0);
    5742        13928 :       if (!rtx_equal_p (x8, operands[0]))
    5743              :         return -1;
    5744              :       return 0;
    5745              : 
    5746       246882 :     case SET:
    5747       246882 :       x9 = XEXP (x2, 1);
    5748       246882 :       if (GET_CODE (x9) != PLUS
    5749        23731 :           || GET_MODE (x9) != i1)
    5750              :         return -1;
    5751        22148 :       x10 = XEXP (x9, 1);
    5752        22148 :       operands[2] = x10;
    5753        22148 :       if (!x86_64_immediate_operand (operands[2], E_VOIDmode))
    5754              :         return -1;
    5755        11237 :       x11 = XEXP (x9, 0);
    5756        11237 :       if (!rtx_equal_p (x11, operands[0]))
    5757              :         return -1;
    5758              :       return 1;
    5759              : 
    5760              :     default:
    5761              :       return -1;
    5762              :     }
    5763              : }
    5764              : 
    5765              : int
    5766        15505 : pattern1542 (rtx x1)
    5767              : {
    5768        15505 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5769        15505 :   rtx x2, x3, x4, x5, x6, x7, x8;
    5770        15505 :   int res ATTRIBUTE_UNUSED;
    5771        15505 :   x2 = XEXP (x1, 1);
    5772        15505 :   x3 = XEXP (x2, 1);
    5773        15505 :   switch (GET_CODE (x3))
    5774              :     {
    5775        11524 :     case LABEL_REF:
    5776        11524 :       x4 = XEXP (x2, 2);
    5777        11524 :       if (GET_CODE (x4) != PC)
    5778              :         return -1;
    5779        11524 :       x5 = XEXP (x1, 0);
    5780        11524 :       if (GET_CODE (x5) != PC)
    5781              :         return -1;
    5782        11524 :       x6 = XEXP (x2, 0);
    5783        11524 :       operands[0] = x6;
    5784        11524 :       if (!nonmemory_operand (operands[2], E_QImode))
    5785              :         return -1;
    5786        11050 :       x7 = XEXP (x3, 0);
    5787        11050 :       operands[3] = x7;
    5788        11050 :       x8 = XEXP (x6, 0);
    5789        11050 :       switch (GET_MODE (x8))
    5790              :         {
    5791         4998 :         case E_SImode:
    5792         4998 :           if (!nonimmediate_operand (operands[1], E_SImode))
    5793              :             return -1;
    5794              :           return 0;
    5795              : 
    5796         6052 :         case E_DImode:
    5797         6052 :           if (!nonimmediate_operand (operands[1], E_DImode))
    5798              :             return -1;
    5799              :           return 1;
    5800              : 
    5801              :         default:
    5802              :           return -1;
    5803              :         }
    5804              : 
    5805           12 :     case REG:
    5806           12 :     case SUBREG:
    5807           12 :     case MEM:
    5808           12 :       operands[3] = x3;
    5809           12 :       x5 = XEXP (x1, 0);
    5810           12 :       operands[0] = x5;
    5811           12 :       x6 = XEXP (x2, 0);
    5812           12 :       operands[5] = x6;
    5813           12 :       if (!register_operand (operands[2], E_QImode))
    5814              :         return -1;
    5815           12 :       x4 = XEXP (x2, 2);
    5816           12 :       operands[4] = x4;
    5817           12 :       switch (GET_MODE (operands[0]))
    5818              :         {
    5819            0 :         case E_HImode:
    5820            0 :           res = pattern1541 (x2, 
    5821              : E_HImode);
    5822            0 :           if (res >= 0)
    5823            0 :             return res + 2; /* [2, 3] */
    5824              :           return -1;
    5825              : 
    5826           12 :         case E_SImode:
    5827           12 :           res = pattern1541 (x2, 
    5828              : E_SImode);
    5829           12 :           if (res >= 0)
    5830            8 :             return res + 4; /* [4, 5] */
    5831              :           return -1;
    5832              : 
    5833            0 :         case E_DImode:
    5834            0 :           res = pattern1541 (x2, 
    5835              : E_DImode);
    5836            0 :           if (res >= 0)
    5837            0 :             return res + 6; /* [6, 7] */
    5838              :           return -1;
    5839              : 
    5840              :         default:
    5841              :           return -1;
    5842              :         }
    5843              : 
    5844              :     default:
    5845              :       return -1;
    5846              :     }
    5847              : }
    5848              : 
    5849              : int
    5850          498 : pattern1569 (rtx x1)
    5851              : {
    5852          498 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5853          498 :   rtx x2, x3, x4, x5, x6, x7;
    5854          498 :   int res ATTRIBUTE_UNUSED;
    5855          498 :   x2 = XVECEXP (x1, 0, 2);
    5856          498 :   if (XWINT (x2, 0) != 2L)
    5857              :     return -1;
    5858          498 :   x3 = XVECEXP (x1, 0, 3);
    5859          498 :   if (XWINT (x3, 0) != 3L)
    5860              :     return -1;
    5861          498 :   x4 = XVECEXP (x1, 0, 4);
    5862          498 :   if (XWINT (x4, 0) != 4L)
    5863              :     return -1;
    5864          345 :   x5 = XVECEXP (x1, 0, 5);
    5865          345 :   if (XWINT (x5, 0) != 5L)
    5866              :     return -1;
    5867          334 :   x6 = XVECEXP (x1, 0, 6);
    5868          334 :   if (XWINT (x6, 0) != 6L)
    5869              :     return -1;
    5870          334 :   x7 = XVECEXP (x1, 0, 7);
    5871          334 :   if (XWINT (x7, 0) != 7L)
    5872            0 :     return -1;
    5873              :   return 0;
    5874              : }
    5875              : 
    5876              : int
    5877           34 : pattern1580 (rtx x1, machine_mode i1)
    5878              : {
    5879           34 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5880           34 :   rtx x2, x3;
    5881           34 :   int res ATTRIBUTE_UNUSED;
    5882           34 :   if (!nonimmediate_operand (operands[0], i1)
    5883           34 :       || GET_MODE (x1) != i1)
    5884              :     return -1;
    5885           34 :   x2 = XEXP (x1, 0);
    5886           34 :   if (GET_MODE (x2) != i1
    5887           34 :       || !nonimmediate_operand (operands[1], i1))
    5888            0 :     return -1;
    5889           34 :   x3 = XEXP (x2, 1);
    5890           34 :   if (GET_MODE (x3) != i1
    5891           34 :       || !x86_64_general_operand (operands[2], i1))
    5892            0 :     return -1;
    5893              :   return 0;
    5894              : }
    5895              : 
    5896              : int
    5897            0 : pattern1588 (rtx x1, machine_mode i1)
    5898              : {
    5899            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5900            0 :   rtx x2, x3, x4, x5;
    5901            0 :   int res ATTRIBUTE_UNUSED;
    5902            0 :   x2 = XVECEXP (x1, 0, 0);
    5903            0 :   x3 = XEXP (x2, 0);
    5904            0 :   if (GET_MODE (x3) != i1
    5905            0 :       || !register_operand (operands[2], i1))
    5906            0 :     return -1;
    5907            0 :   switch (GET_MODE (operands[1]))
    5908              :     {
    5909            0 :     case E_SImode:
    5910            0 :       if (!register_operand (operands[1], E_SImode)
    5911            0 :           || !register_operand (operands[0], E_SImode))
    5912            0 :         return -1;
    5913            0 :       x4 = XVECEXP (x1, 0, 1);
    5914            0 :       x5 = XEXP (x4, 1);
    5915            0 :       if (GET_MODE (x5) != E_SImode)
    5916              :         return -1;
    5917              :       return 0;
    5918              : 
    5919            0 :     case E_DImode:
    5920            0 :       if (!register_operand (operands[1], E_DImode)
    5921            0 :           || !register_operand (operands[0], E_DImode))
    5922            0 :         return -1;
    5923            0 :       x4 = XVECEXP (x1, 0, 1);
    5924            0 :       x5 = XEXP (x4, 1);
    5925            0 :       if (GET_MODE (x5) != E_DImode)
    5926              :         return -1;
    5927              :       return 1;
    5928              : 
    5929              :     default:
    5930              :       return -1;
    5931              :     }
    5932              : }
    5933              : 
    5934              : int
    5935          148 : pattern1602 (rtx x1, machine_mode i1)
    5936              : {
    5937          148 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5938          148 :   rtx x2, x3;
    5939          148 :   int res ATTRIBUTE_UNUSED;
    5940          148 :   if (!register_operand (operands[0], i1)
    5941          148 :       || GET_MODE (x1) != i1)
    5942              :     return -1;
    5943          127 :   x2 = XVECEXP (x1, 0, 0);
    5944          127 :   if (GET_MODE (x2) != i1)
    5945              :     return -1;
    5946          127 :   x3 = XEXP (x2, 0);
    5947          127 :   if (GET_MODE (x3) != i1
    5948          127 :       || !register_operand (operands[2], i1)
    5949          238 :       || !register_operand (operands[1], i1))
    5950           20 :     return -1;
    5951              :   return 0;
    5952              : }
    5953              : 
    5954              : int
    5955          976 : pattern1609 (rtx x1, machine_mode i1, machine_mode i2)
    5956              : {
    5957          976 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5958          976 :   int res ATTRIBUTE_UNUSED;
    5959          976 :   if (!register_operand (operands[2], i2)
    5960          968 :       || GET_MODE (x1) != i2
    5961          968 :       || !register_operand (operands[3], i2)
    5962          968 :       || !const0_operand (operands[4], i2)
    5963         1944 :       || !register_operand (operands[5], i1))
    5964           24 :     return -1;
    5965              :   return 0;
    5966              : }
    5967              : 
    5968              : int
    5969          507 : pattern1616 (rtx x1, machine_mode i1, machine_mode i2)
    5970              : {
    5971          507 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5972          507 :   rtx x2, x3, x4, x5;
    5973          507 :   int res ATTRIBUTE_UNUSED;
    5974          507 :   if (!register_operand (operands[0], i2)
    5975          507 :       || GET_MODE (x1) != i2)
    5976              :     return -1;
    5977          493 :   x2 = XVECEXP (x1, 0, 0);
    5978          493 :   if (GET_MODE (x2) != i2)
    5979              :     return -1;
    5980          493 :   x3 = XEXP (x2, 0);
    5981          493 :   if (GET_MODE (x3) != i2)
    5982              :     return -1;
    5983          493 :   x4 = XEXP (x3, 0);
    5984          493 :   if (GET_MODE (x4) != i2
    5985          493 :       || !register_operand (operands[1], i2))
    5986            5 :     return -1;
    5987          488 :   x5 = XEXP (x3, 2);
    5988          488 :   return pattern1609 (x5, 
    5989              : i1, 
    5990          488 : i2); /* [-1, 0] */
    5991              : }
    5992              : 
    5993              : int
    5994          638 : pattern1625 (rtx x1, machine_mode i1)
    5995              : {
    5996          638 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    5997          638 :   rtx x2, x3, x4;
    5998          638 :   int res ATTRIBUTE_UNUSED;
    5999          638 :   if (!vsib_mem_operator (operands[5], i1)
    6000          638 :       || !register_operand (operands[6], E_QImode))
    6001          220 :     return -1;
    6002          418 :   x2 = XEXP (x1, 1);
    6003          418 :   if (GET_MODE (x2) != i1
    6004          418 :       || !register_operand (operands[3], i1))
    6005           74 :     return -1;
    6006          344 :   x3 = XEXP (x1, 0);
    6007          344 :   x4 = XEXP (x3, 0);
    6008          344 :   switch (GET_MODE (x4))
    6009              :     {
    6010            0 :     case E_SImode:
    6011            0 :       return pattern1624 (
    6012            0 : E_SImode); /* [-1, 1] */
    6013              : 
    6014          344 :     case E_DImode:
    6015          344 :       res = pattern1624 (
    6016              : E_DImode);
    6017          344 :       if (res >= 0)
    6018          204 :         return res + 2; /* [2, 3] */
    6019              :       return -1;
    6020              : 
    6021              :     default:
    6022              :       return -1;
    6023              :     }
    6024              : }
    6025              : 
    6026              : int
    6027         1436 : pattern1637 (rtx x1, machine_mode i1)
    6028              : {
    6029         1436 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6030         1436 :   int res ATTRIBUTE_UNUSED;
    6031         1436 :   if (!register_operand (operands[0], i1)
    6032         1423 :       || GET_MODE (x1) != i1
    6033         1423 :       || !register_operand (operands[1], i1)
    6034         1405 :       || !const_0_to_7_operand (operands[2], E_VOIDmode)
    6035         1405 :       || !const_0_to_7_operand (operands[3], E_VOIDmode)
    6036         1405 :       || !const_0_to_7_operand (operands[4], E_VOIDmode)
    6037         1405 :       || !const_0_to_7_operand (operands[5], E_VOIDmode)
    6038         1405 :       || !const_0_to_7_operand (operands[6], E_VOIDmode)
    6039         1405 :       || !const_0_to_7_operand (operands[7], E_VOIDmode)
    6040         1405 :       || !const_0_to_7_operand (operands[8], E_VOIDmode)
    6041         2841 :       || !const_0_to_7_operand (operands[9], E_VOIDmode))
    6042           31 :     return -1;
    6043              :   return 0;
    6044              : }
    6045              : 
    6046              : int
    6047            1 : pattern1648 (rtx x1, machine_mode i1)
    6048              : {
    6049            1 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6050            1 :   rtx x2;
    6051            1 :   int res ATTRIBUTE_UNUSED;
    6052            1 :   if (!register_operand (operands[0], i1)
    6053            1 :       || GET_MODE (x1) != i1)
    6054              :     return -1;
    6055            1 :   x2 = XEXP (x1, 0);
    6056            1 :   if (GET_MODE (x2) != i1
    6057            1 :       || !nonimmediate_operand (operands[1], i1)
    6058            2 :       || !register_operand (operands[2], i1))
    6059            0 :     return -1;
    6060              :   return 0;
    6061              : }
    6062              : 
    6063              : int
    6064            8 : pattern1658 (rtx x1, machine_mode i1)
    6065              : {
    6066            8 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6067            8 :   rtx x2, x3, x4, x5;
    6068            8 :   int res ATTRIBUTE_UNUSED;
    6069            8 :   if (!register_operand (operands[0], i1)
    6070            8 :       || GET_MODE (x1) != i1)
    6071              :     return -1;
    6072            8 :   x2 = XEXP (x1, 0);
    6073            8 :   if (GET_MODE (x2) != i1)
    6074              :     return -1;
    6075            8 :   x3 = XVECEXP (x2, 0, 2);
    6076            8 :   if (GET_MODE (x3) != i1)
    6077              :     return -1;
    6078            8 :   x4 = XEXP (x1, 1);
    6079            8 :   if (GET_MODE (x4) != i1)
    6080              :     return -1;
    6081            8 :   x5 = XEXP (x4, 0);
    6082            8 :   if (GET_MODE (x5) != i1)
    6083            0 :     return -1;
    6084              :   return 0;
    6085              : }
    6086              : 
    6087              : int
    6088          453 : pattern1665 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    6089              : {
    6090          453 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6091          453 :   rtx x2, x3, x4, x5, x6, x7, x8;
    6092          453 :   int res ATTRIBUTE_UNUSED;
    6093          453 :   if (!register_operand (operands[0], i2)
    6094          453 :       || GET_MODE (x1) != i2)
    6095              :     return -1;
    6096          437 :   x2 = XEXP (x1, 0);
    6097          437 :   if (GET_MODE (x2) != i2)
    6098              :     return -1;
    6099          437 :   x3 = XEXP (x2, 0);
    6100          437 :   if (GET_MODE (x3) != i3)
    6101              :     return -1;
    6102          437 :   x4 = XEXP (x3, 0);
    6103          437 :   if (GET_MODE (x4) != i3)
    6104              :     return -1;
    6105          437 :   x5 = XEXP (x4, 0);
    6106          437 :   if (GET_MODE (x5) != i3)
    6107              :     return -1;
    6108          437 :   x6 = XEXP (x5, 0);
    6109          437 :   if (GET_MODE (x6) != i3)
    6110              :     return -1;
    6111          437 :   x7 = XEXP (x6, 0);
    6112          437 :   if (GET_MODE (x7) != i3
    6113          437 :       || !vector_operand (operands[1], i2))
    6114            0 :     return -1;
    6115          437 :   x8 = XEXP (x6, 1);
    6116          437 :   if (GET_MODE (x8) != i3
    6117          437 :       || !vector_operand (operands[2], i2)
    6118          437 :       || !const1_operand (operands[3], i2)
    6119          437 :       || !nonimm_or_0_operand (operands[4], i2)
    6120          859 :       || !register_operand (operands[5], i1))
    6121           61 :     return -1;
    6122              :   return 0;
    6123              : }
    6124              : 
    6125              : int
    6126          326 : pattern1680 (machine_mode i1)
    6127              : {
    6128          326 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6129          326 :   int res ATTRIBUTE_UNUSED;
    6130          326 :   if (!vsib_address_operand (operands[4], i1))
    6131              :     return -1;
    6132          326 :   switch (GET_MODE (operands[3]))
    6133              :     {
    6134          154 :     case E_V4SImode:
    6135          154 :       if (!register_operand (operands[3], E_V4SImode))
    6136              :         return -1;
    6137              :       return 0;
    6138              : 
    6139          172 :     case E_V2DImode:
    6140          172 :       if (!register_operand (operands[3], E_V2DImode))
    6141              :         return -1;
    6142              :       return 1;
    6143              : 
    6144              :     default:
    6145              :       return -1;
    6146              :     }
    6147              : }
    6148              : 
    6149              : int
    6150            0 : pattern1688 (rtx x1, machine_mode i1, machine_mode i2)
    6151              : {
    6152            0 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6153            0 :   rtx x2, x3;
    6154            0 :   int res ATTRIBUTE_UNUSED;
    6155            0 :   if (!register_operand (operands[0], i1)
    6156            0 :       || !addsub_vs_operator (operands[7], i1)
    6157            0 :       || GET_MODE (x1) != i2)
    6158            0 :     return -1;
    6159            0 :   x2 = XEXP (x1, 0);
    6160            0 :   if (GET_MODE (x2) != i1
    6161            0 :       || !register_operand (operands[1], i1)
    6162            0 :       || !vector_operand (operands[2], i1))
    6163            0 :     return -1;
    6164            0 :   x3 = XEXP (x1, 1);
    6165            0 :   if (GET_MODE (x3) != i1
    6166            0 :       || !vector_operand (operands[3], i1)
    6167            0 :       || !vector_operand (operands[4], i1))
    6168            0 :     return -1;
    6169              :   return 0;
    6170              : }
    6171              : 
    6172              : int
    6173        25423 : pattern1700 ()
    6174              : {
    6175        25423 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6176        25423 :   int res ATTRIBUTE_UNUSED;
    6177        25423 :   if (!const_0_to_7_operand (operands[4], E_VOIDmode)
    6178        18379 :       || !const_0_to_7_operand (operands[5], E_VOIDmode)
    6179        13275 :       || !const_0_to_7_operand (operands[6], E_VOIDmode)
    6180        13233 :       || !const_8_to_15_operand (operands[7], E_VOIDmode)
    6181         7471 :       || !const_8_to_15_operand (operands[8], E_VOIDmode)
    6182         7471 :       || !const_8_to_15_operand (operands[9], E_VOIDmode)
    6183        32894 :       || !const_8_to_15_operand (operands[10], E_VOIDmode))
    6184        17952 :     return -1;
    6185              :   return 0;
    6186              : }
    6187              : 
    6188              : int
    6189           11 : pattern1710 (rtx x1, machine_mode i1)
    6190              : {
    6191           11 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6192           11 :   int res ATTRIBUTE_UNUSED;
    6193           11 :   if (!nonimmediate_operand (operands[1], i1)
    6194           11 :       || !register_operand (operands[0], i1)
    6195           11 :       || GET_MODE (x1) != i1
    6196           22 :       || !register_operand (operands[2], i1))
    6197            0 :     return -1;
    6198              :   return 0;
    6199              : }
    6200              : 
    6201              : int
    6202         9936 : pattern1715 (rtx x1)
    6203              : {
    6204         9936 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6205         9936 :   rtx x2, x3, x4, x5, x6, x7, x8;
    6206         9936 :   int res ATTRIBUTE_UNUSED;
    6207         9936 :   x2 = XVECEXP (x1, 0, 0);
    6208         9936 :   x3 = XEXP (x2, 1);
    6209         9936 :   x4 = XVECEXP (x3, 0, 3);
    6210         9936 :   operands[4] = x4;
    6211         9936 :   if (!const_int_operand (operands[4], E_SImode))
    6212              :     return -1;
    6213         9936 :   x5 = XVECEXP (x3, 0, 1);
    6214         9936 :   if (!rtx_equal_p (x5, operands[0]))
    6215              :     return -1;
    6216         7067 :   x6 = XEXP (x2, 0);
    6217         7067 :   if (!rtx_equal_p (x6, operands[0]))
    6218              :     return -1;
    6219         7067 :   x7 = XVECEXP (x1, 0, 1);
    6220         7067 :   x8 = XEXP (x7, 0);
    6221         7067 :   if (!rtx_equal_p (x8, operands[2]))
    6222              :     return -1;
    6223              :   return 0;
    6224              : }
    6225              : 
    6226              : int
    6227          432 : pattern1723 (machine_mode i1)
    6228              : {
    6229          432 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6230          432 :   int res ATTRIBUTE_UNUSED;
    6231          432 :   if (!vsib_address_operand (operands[0], i1))
    6232              :     return -1;
    6233          409 :   switch (GET_MODE (operands[2]))
    6234              :     {
    6235          208 :     case E_V16SImode:
    6236          208 :       if (!register_operand (operands[2], E_V16SImode)
    6237          151 :           || !register_operand (operands[6], E_HImode)
    6238          270 :           || !register_operand (operands[3], E_V16SFmode))
    6239          167 :         return -1;
    6240              :       return 0;
    6241              : 
    6242          201 :     case E_V8DImode:
    6243          201 :       if (!register_operand (operands[2], E_V8DImode)
    6244          184 :           || !register_operand (operands[6], E_QImode)
    6245          291 :           || !register_operand (operands[3], E_V8SFmode))
    6246          165 :         return -1;
    6247              :       return 1;
    6248              : 
    6249              :     default:
    6250              :       return -1;
    6251              :     }
    6252              : }
    6253              : 
    6254              : int
    6255          688 : pattern1734 (machine_mode i1)
    6256              : {
    6257          688 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6258          688 :   int res ATTRIBUTE_UNUSED;
    6259          688 :   if (!vsib_address_operand (operands[0], i1))
    6260              :     return -1;
    6261          662 :   switch (GET_MODE (operands[2]))
    6262              :     {
    6263          358 :     case E_V4SImode:
    6264          358 :       if (!register_operand (operands[2], E_V4SImode))
    6265              :         return -1;
    6266              :       return 0;
    6267              : 
    6268          304 :     case E_V4DImode:
    6269          304 :       if (!register_operand (operands[2], E_V4DImode))
    6270              :         return -1;
    6271              :       return 1;
    6272              : 
    6273              :     default:
    6274              :       return -1;
    6275              :     }
    6276              : }
    6277              : 
    6278              : int
    6279          124 : pattern1742 (machine_mode i1)
    6280              : {
    6281          124 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6282          124 :   int res ATTRIBUTE_UNUSED;
    6283          124 :   if (!vsib_address_operand (operands[3], i1))
    6284              :     return -1;
    6285          120 :   switch (GET_MODE (operands[2]))
    6286              :     {
    6287           34 :     case E_V8SImode:
    6288           34 :       if (!register_operand (operands[2], E_V8SImode))
    6289              :         return -1;
    6290              :       return 0;
    6291              : 
    6292           86 :     case E_V4DImode:
    6293           86 :       if (!register_operand (operands[2], E_V4DImode))
    6294              :         return -1;
    6295              :       return 1;
    6296              : 
    6297              :     default:
    6298              :       return -1;
    6299              :     }
    6300              : }
    6301              : 
    6302              : int
    6303         3444 : pattern1751 (rtx x1)
    6304              : {
    6305         3444 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6306         3444 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6307         3444 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    6308         3444 :   int res ATTRIBUTE_UNUSED;
    6309         3444 :   if (!register_operand (operands[0], E_SImode))
    6310              :     return -1;
    6311         3436 :   x2 = XVECEXP (x1, 0, 0);
    6312         3436 :   x3 = XEXP (x2, 1);
    6313         3436 :   x4 = XVECEXP (x3, 0, 0);
    6314         3436 :   operands[2] = x4;
    6315         3436 :   if (!register_operand (operands[2], E_V16QImode))
    6316              :     return -1;
    6317         3344 :   x5 = XVECEXP (x3, 0, 1);
    6318         3344 :   operands[3] = x5;
    6319         3344 :   if (!nonimmediate_operand (operands[3], E_V16QImode))
    6320              :     return -1;
    6321         3324 :   x6 = XVECEXP (x3, 0, 2);
    6322         3324 :   operands[4] = x6;
    6323         3324 :   if (!const_0_to_255_operand (operands[4], E_SImode))
    6324              :     return -1;
    6325         3324 :   x7 = XVECEXP (x1, 0, 1);
    6326         3324 :   x8 = XEXP (x7, 0);
    6327         3324 :   operands[1] = x8;
    6328         3324 :   if (!register_operand (operands[1], E_V16QImode))
    6329              :     return -1;
    6330         3284 :   x9 = XEXP (x7, 1);
    6331         3284 :   x10 = XVECEXP (x9, 0, 0);
    6332         3284 :   if (!rtx_equal_p (x10, operands[2]))
    6333              :     return -1;
    6334         3284 :   x11 = XVECEXP (x9, 0, 1);
    6335         3284 :   if (!rtx_equal_p (x11, operands[3]))
    6336              :     return -1;
    6337         3284 :   x12 = XVECEXP (x9, 0, 2);
    6338         3284 :   if (!rtx_equal_p (x12, operands[4]))
    6339              :     return -1;
    6340         3284 :   x13 = XVECEXP (x1, 0, 2);
    6341         3284 :   x14 = XEXP (x13, 1);
    6342         3284 :   x15 = XVECEXP (x14, 0, 0);
    6343         3284 :   if (!rtx_equal_p (x15, operands[2]))
    6344              :     return -1;
    6345         3174 :   x16 = XVECEXP (x14, 0, 1);
    6346         3174 :   if (!rtx_equal_p (x16, operands[3]))
    6347              :     return -1;
    6348         3064 :   x17 = XVECEXP (x14, 0, 2);
    6349         3064 :   if (!rtx_equal_p (x17, operands[4]))
    6350              :     return -1;
    6351              :   return 0;
    6352              : }
    6353              : 
    6354              : int
    6355          526 : pattern1771 (rtx x1, machine_mode i1, machine_mode i2)
    6356              : {
    6357          526 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6358          526 :   rtx x2, x3;
    6359          526 :   int res ATTRIBUTE_UNUSED;
    6360          526 :   if (!register_operand (operands[0], i2)
    6361          526 :       || GET_MODE (x1) != i2
    6362          526 :       || !register_operand (operands[1], i2)
    6363          526 :       || !register_operand (operands[7], E_QImode)
    6364          519 :       || !vsib_mem_operator (operands[6], i1)
    6365         1045 :       || !scratch_operand (operands[2], E_QImode))
    6366            7 :     return -1;
    6367          519 :   x2 = XVECEXP (x1, 0, 2);
    6368          519 :   x3 = XEXP (x2, 0);
    6369          519 :   switch (GET_MODE (x3))
    6370              :     {
    6371            0 :     case E_SImode:
    6372            0 :       return pattern1770 (
    6373            0 : E_SImode); /* [-1, 1] */
    6374              : 
    6375          519 :     case E_DImode:
    6376          519 :       res = pattern1770 (
    6377              : E_DImode);
    6378          519 :       if (res >= 0)
    6379          488 :         return res + 2; /* [2, 3] */
    6380              :       return -1;
    6381              : 
    6382              :     default:
    6383              :       return -1;
    6384              :     }
    6385              : }
    6386              : 
    6387              : int
    6388         2614 : pattern1785 (rtx x1)
    6389              : {
    6390         2614 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6391         2614 :   rtx x2, x3, x4, x5, x6;
    6392         2614 :   int res ATTRIBUTE_UNUSED;
    6393         2614 :   x2 = XVECEXP (x1, 0, 0);
    6394         2614 :   x3 = XEXP (x2, 1);
    6395         2614 :   x4 = XEXP (x3, 0);
    6396         2614 :   switch (GET_MODE (x4))
    6397              :     {
    6398          354 :     case E_HImode:
    6399          354 :       if (!memory_operand (operands[0], E_HImode))
    6400              :         return -1;
    6401          354 :       x5 = XVECEXP (x1, 0, 1);
    6402          354 :       x6 = XEXP (x5, 0);
    6403          354 :       if (GET_MODE (x6) != E_HImode
    6404          354 :           || !nonmemory_operand (operands[1], E_HImode))
    6405            0 :         return -1;
    6406              :       return 0;
    6407              : 
    6408         1709 :     case E_SImode:
    6409         1709 :       if (!memory_operand (operands[0], E_SImode))
    6410              :         return -1;
    6411         1709 :       x5 = XVECEXP (x1, 0, 1);
    6412         1709 :       x6 = XEXP (x5, 0);
    6413         1709 :       if (GET_MODE (x6) != E_SImode
    6414         1709 :           || !nonmemory_operand (operands[1], E_SImode))
    6415            0 :         return -1;
    6416              :       return 1;
    6417              : 
    6418          551 :     case E_DImode:
    6419          551 :       if (!memory_operand (operands[0], E_DImode))
    6420              :         return -1;
    6421          551 :       x5 = XVECEXP (x1, 0, 1);
    6422          551 :       x6 = XEXP (x5, 0);
    6423          551 :       if (GET_MODE (x6) != E_DImode
    6424          551 :           || !nonmemory_operand (operands[1], E_DImode))
    6425           31 :         return -1;
    6426              :       return 2;
    6427              : 
    6428              :     default:
    6429              :       return -1;
    6430              :     }
    6431              : }
    6432              : 
    6433              : int
    6434          952 : pattern1802 (rtx x1, machine_mode i1, machine_mode i2)
    6435              : {
    6436          952 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6437          952 :   rtx x2, x3;
    6438          952 :   int res ATTRIBUTE_UNUSED;
    6439          952 :   if (!register_operand (operands[0], i1)
    6440          945 :       || GET_MODE (x1) != i1
    6441          945 :       || !vsib_mem_operator (operands[6], i2)
    6442         1897 :       || !scratch_operand (operands[1], i1))
    6443            7 :     return -1;
    6444          945 :   x2 = XVECEXP (x1, 0, 1);
    6445          945 :   x3 = XEXP (x2, 0);
    6446          945 :   switch (GET_MODE (x3))
    6447              :     {
    6448              :     case E_SImode:
    6449              :       return 0;
    6450              : 
    6451          754 :     case E_DImode:
    6452          754 :       return 1;
    6453              : 
    6454              :     default:
    6455              :       return -1;
    6456              :     }
    6457              : }
    6458              : 
    6459              : int
    6460         5087 : pattern1809 (rtx x1, machine_mode i1, machine_mode i2, rtx_code i3)
    6461              : {
    6462         5087 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6463         5087 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6464         5087 :   rtx x10, x11, x12, x13, x14, x15;
    6465         5087 :   int res ATTRIBUTE_UNUSED;
    6466         5087 :   if (GET_CODE (x1) != MULT
    6467         5087 :       || GET_MODE (x1) != i2)
    6468              :     return -1;
    6469         5087 :   x2 = XEXP (x1, 0);
    6470         5087 :   if (GET_CODE (x2) != i3
    6471         5087 :       || GET_MODE (x2) != i2)
    6472              :     return -1;
    6473         5087 :   x3 = XEXP (x2, 0);
    6474         5087 :   if (GET_CODE (x3) != VEC_SELECT
    6475         5087 :       || GET_MODE (x3) != i1)
    6476              :     return -1;
    6477         5087 :   x4 = XEXP (x3, 1);
    6478         5087 :   if (GET_CODE (x4) != PARALLEL
    6479         5087 :       || XVECLEN (x4, 0) != 4)
    6480              :     return -1;
    6481         5087 :   x5 = XVECEXP (x4, 0, 0);
    6482         5087 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    6483              :     return -1;
    6484         5087 :   x6 = XVECEXP (x4, 0, 1);
    6485         5087 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    6486              :     return -1;
    6487         5087 :   x7 = XVECEXP (x4, 0, 2);
    6488         5087 :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    6489              :     return -1;
    6490         5087 :   x8 = XVECEXP (x4, 0, 3);
    6491         5087 :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
    6492              :     return -1;
    6493         5087 :   x9 = XEXP (x1, 1);
    6494         5087 :   if (GET_CODE (x9) != SIGN_EXTEND
    6495         5087 :       || GET_MODE (x9) != i2)
    6496              :     return -1;
    6497         5087 :   x10 = XEXP (x9, 0);
    6498         5087 :   if (GET_CODE (x10) != VEC_SELECT
    6499         5087 :       || GET_MODE (x10) != i1)
    6500              :     return -1;
    6501         5087 :   x11 = XEXP (x10, 1);
    6502         5087 :   if (GET_CODE (x11) != PARALLEL
    6503         5087 :       || XVECLEN (x11, 0) != 4)
    6504              :     return -1;
    6505         5087 :   x12 = XVECEXP (x11, 0, 0);
    6506         5087 :   if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
    6507              :     return -1;
    6508         5087 :   x13 = XVECEXP (x11, 0, 1);
    6509         5087 :   if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
    6510              :     return -1;
    6511         5087 :   x14 = XVECEXP (x11, 0, 2);
    6512         5087 :   if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
    6513              :     return -1;
    6514         5087 :   x15 = XVECEXP (x11, 0, 3);
    6515         5087 :   if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
    6516            0 :     return -1;
    6517              :   return 0;
    6518              : }
    6519              : 
    6520              : int
    6521           63 : pattern1836 (rtx x1, machine_mode i1)
    6522              : {
    6523           63 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6524           63 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6525           63 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    6526           63 :   rtx x18, x19, x20;
    6527           63 :   int res ATTRIBUTE_UNUSED;
    6528           63 :   if (!const_int_operand (operands[1], i1))
    6529              :     return -1;
    6530           63 :   x2 = XVECEXP (x1, 0, 0);
    6531           63 :   x3 = XEXP (x2, 1);
    6532           63 :   if (XVECLEN (x3, 0) != 4
    6533           10 :       || XINT (x3, 1) != 109)
    6534              :     return -1;
    6535           10 :   x4 = XVECEXP (x1, 0, 1);
    6536           10 :   x5 = XEXP (x4, 1);
    6537           10 :   if (GET_CODE (x5) != UNSPEC_VOLATILE
    6538           10 :       || XVECLEN (x5, 0) != 1
    6539           10 :       || XINT (x5, 1) != 109)
    6540              :     return -1;
    6541           10 :   x6 = XVECEXP (x5, 0, 0);
    6542           10 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6543              :     return -1;
    6544           10 :   x7 = XVECEXP (x1, 0, 2);
    6545           10 :   if (GET_CODE (x7) != SET)
    6546              :     return -1;
    6547           10 :   x8 = XEXP (x7, 1);
    6548           10 :   if (GET_CODE (x8) != UNSPEC_VOLATILE
    6549           10 :       || XVECLEN (x8, 0) != 1
    6550           10 :       || XINT (x8, 1) != 109
    6551           10 :       || GET_MODE (x8) != E_CCZmode)
    6552              :     return -1;
    6553           10 :   x9 = XVECEXP (x8, 0, 0);
    6554           10 :   if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6555              :     return -1;
    6556           10 :   x10 = XEXP (x7, 0);
    6557           10 :   if (GET_CODE (x10) != REG
    6558           10 :       || REGNO (x10) != 17
    6559           20 :       || GET_MODE (x10) != E_CCZmode)
    6560              :     return -1;
    6561           10 :   x11 = XEXP (x2, 0);
    6562           10 :   operands[2] = x11;
    6563           10 :   x12 = XVECEXP (x3, 0, 0);
    6564           10 :   operands[3] = x12;
    6565           10 :   x13 = XVECEXP (x3, 0, 2);
    6566           10 :   operands[4] = x13;
    6567           10 :   x14 = XVECEXP (x3, 0, 3);
    6568           10 :   operands[5] = x14;
    6569           10 :   if (!const_int_operand (operands[5], E_SImode))
    6570              :     return -1;
    6571           10 :   x15 = XVECEXP (x3, 0, 1);
    6572           10 :   if (!rtx_equal_p (x15, operands[2]))
    6573              :     return -1;
    6574           10 :   x16 = XEXP (x4, 0);
    6575           10 :   if (!rtx_equal_p (x16, operands[3]))
    6576              :     return -1;
    6577           10 :   x17 = PATTERN (peep2_next_insn (2));
    6578           10 :   x18 = XEXP (x17, 1);
    6579           10 :   x19 = XEXP (x18, 0);
    6580           10 :   if (!rtx_equal_p (x19, operands[2]))
    6581              :     return -1;
    6582           10 :   x20 = XEXP (x18, 1);
    6583           10 :   if (!rtx_equal_p (x20, operands[1]))
    6584              :     return -1;
    6585           10 :   switch (GET_MODE (operands[2]))
    6586              :     {
    6587            0 :     case E_QImode:
    6588            0 :       return pattern1835 (x1, 
    6589            0 : E_QImode); /* [-1, 0] */
    6590              : 
    6591            2 :     case E_HImode:
    6592            2 :       if (pattern1835 (x1, 
    6593              : E_HImode) != 0)
    6594              :         return -1;
    6595              :       return 1;
    6596              : 
    6597            4 :     case E_SImode:
    6598            4 :       if (pattern1835 (x1, 
    6599              : E_SImode) != 0)
    6600              :         return -1;
    6601              :       return 2;
    6602              : 
    6603            4 :     case E_DImode:
    6604            4 :       if (pattern1835 (x1, 
    6605              : E_DImode) != 0)
    6606              :         return -1;
    6607              :       return 3;
    6608              : 
    6609              :     default:
    6610              :       return -1;
    6611              :     }
    6612              : }
    6613              : 
    6614              : int
    6615          751 : pattern1866 (machine_mode i1)
    6616              : {
    6617          751 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6618          751 :   int res ATTRIBUTE_UNUSED;
    6619          751 :   if (!vsib_address_operand (operands[2], i1))
    6620              :     return -1;
    6621          739 :   switch (GET_MODE (operands[3]))
    6622              :     {
    6623          500 :     case E_V8SImode:
    6624          500 :       if (!register_operand (operands[3], E_V8SImode)
    6625          500 :           || !register_operand (operands[4], E_V8SFmode))
    6626          121 :         return -1;
    6627              :       return 0;
    6628              : 
    6629          239 :     case E_V4DImode:
    6630          239 :       if (!register_operand (operands[3], E_V4DImode)
    6631          239 :           || !register_operand (operands[4], E_V4SFmode))
    6632           58 :         return -1;
    6633              :       return 1;
    6634              : 
    6635              :     default:
    6636              :       return -1;
    6637              :     }
    6638              : }
    6639              : 
    6640              : int
    6641          208 : pattern1874 (rtx x1, int i1, int i2, int i3, int i4, int i5)
    6642              : {
    6643          208 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6644          208 :   rtx x2, x3, x4, x5, x6;
    6645          208 :   int res ATTRIBUTE_UNUSED;
    6646          208 :   x2 = XVECEXP (x1, 0, 22);
    6647          208 :   if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + i5])
    6648              :     return -1;
    6649          208 :   x3 = XVECEXP (x1, 0, 23);
    6650          208 :   if (x3 != const_int_rtx[MAX_SAVED_CONST_INT + i4])
    6651              :     return -1;
    6652          208 :   x4 = XVECEXP (x1, 0, 24);
    6653          208 :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + i3])
    6654              :     return -1;
    6655          208 :   x5 = XVECEXP (x1, 0, 25);
    6656          208 :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + i2])
    6657              :     return -1;
    6658          208 :   x6 = XVECEXP (x1, 0, 26);
    6659          208 :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + i1])
    6660            0 :     return -1;
    6661              :   return 0;
    6662              : }
    6663              : 
    6664              : int
    6665          400 : pattern1883 (rtx x1)
    6666              : {
    6667          400 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6668          400 :   rtx x2, x3, x4, x5;
    6669          400 :   int res ATTRIBUTE_UNUSED;
    6670          400 :   x2 = XVECEXP (x1, 0, 8);
    6671          400 :   if (XWINT (x2, 0) != 12L)
    6672              :     return -1;
    6673          400 :   x3 = XVECEXP (x1, 0, 9);
    6674          400 :   if (XWINT (x3, 0) != 28L)
    6675              :     return -1;
    6676          400 :   x4 = XVECEXP (x1, 0, 10);
    6677          400 :   if (XWINT (x4, 0) != 13L)
    6678              :     return -1;
    6679          400 :   x5 = XVECEXP (x1, 0, 11);
    6680          400 :   if (XWINT (x5, 0) != 29L)
    6681            0 :     return -1;
    6682              :   return 0;
    6683              : }
    6684              : 
    6685              : int
    6686        59917 : pattern1889 (rtx x1, machine_mode i1, machine_mode i2)
    6687              : {
    6688        59917 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6689        59917 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6690        59917 :   rtx x10, x11;
    6691        59917 :   int res ATTRIBUTE_UNUSED;
    6692        59917 :   x2 = XVECEXP (x1, 0, 0);
    6693        59917 :   x3 = XEXP (x2, 1);
    6694        59917 :   x4 = XEXP (x3, 0);
    6695        59917 :   x5 = XEXP (x4, 0);
    6696        59917 :   if (GET_MODE (x5) != i1)
    6697              :     return -1;
    6698        59917 :   x6 = XEXP (x5, 0);
    6699        59917 :   if (GET_MODE (x6) != i1
    6700        59917 :       || !ix86_carry_flag_operator (operands[5], i1)
    6701        59917 :       || !nonimmediate_operand (operands[1], i1)
    6702       119250 :       || !nonimmediate_operand (operands[2], i1))
    6703          584 :     return -1;
    6704        59333 :   x7 = XEXP (x3, 1);
    6705        59333 :   if (GET_MODE (x7) != i2
    6706        59333 :       || !ix86_carry_flag_operator (operands[4], i2))
    6707            0 :     return -1;
    6708        59333 :   x8 = XEXP (x7, 1);
    6709        59333 :   if (GET_MODE (x8) != i2
    6710        59333 :       || !nonimmediate_operand (operands[0], i1))
    6711            0 :     return -1;
    6712        59333 :   x9 = XVECEXP (x1, 0, 1);
    6713        59333 :   x10 = XEXP (x9, 1);
    6714        59333 :   if (GET_MODE (x10) != i1)
    6715              :     return -1;
    6716        59333 :   x11 = XEXP (x10, 0);
    6717        59333 :   if (GET_MODE (x11) != i1)
    6718              :     return -1;
    6719              :   return 0;
    6720              : }
    6721              : 
    6722              : int
    6723          351 : pattern1896 (rtx x1)
    6724              : {
    6725          351 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6726          351 :   rtx x2, x3, x4, x5, x6, x7, x8;
    6727          351 :   int res ATTRIBUTE_UNUSED;
    6728          351 :   x2 = XEXP (x1, 1);
    6729          351 :   x3 = XVECEXP (x2, 0, 12);
    6730          351 :   if (XWINT (x3, 0) != 14L)
    6731              :     return -1;
    6732          351 :   x4 = XVECEXP (x2, 0, 13);
    6733          351 :   if (XWINT (x4, 0) != 30L)
    6734              :     return -1;
    6735          351 :   x5 = XVECEXP (x2, 0, 14);
    6736          351 :   if (XWINT (x5, 0) != 15L)
    6737              :     return -1;
    6738          351 :   x6 = XVECEXP (x2, 0, 15);
    6739          351 :   if (XWINT (x6, 0) != 31L)
    6740              :     return -1;
    6741          351 :   x7 = XEXP (x1, 0);
    6742          351 :   x8 = XEXP (x7, 1);
    6743          351 :   operands[2] = x8;
    6744          351 :   return 0;
    6745              : }
    6746              : 
    6747              : int
    6748          666 : pattern1900 (rtx x1)
    6749              : {
    6750          666 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6751          666 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6752          666 :   rtx x10, x11;
    6753          666 :   int res ATTRIBUTE_UNUSED;
    6754          666 :   x2 = XEXP (x1, 0);
    6755          666 :   x3 = XEXP (x2, 1);
    6756          666 :   x4 = XVECEXP (x3, 0, 12);
    6757          666 :   if (XWINT (x4, 0) != 14L)
    6758              :     return -1;
    6759          666 :   x5 = XVECEXP (x3, 0, 13);
    6760          666 :   if (XWINT (x5, 0) != 30L)
    6761              :     return -1;
    6762          666 :   x6 = XVECEXP (x3, 0, 14);
    6763          666 :   if (XWINT (x6, 0) != 15L)
    6764              :     return -1;
    6765          666 :   x7 = XVECEXP (x3, 0, 15);
    6766          666 :   if (XWINT (x7, 0) != 31L)
    6767              :     return -1;
    6768          666 :   x8 = XEXP (x2, 0);
    6769          666 :   x9 = XEXP (x8, 1);
    6770          666 :   operands[2] = x9;
    6771          666 :   x10 = XEXP (x1, 1);
    6772          666 :   operands[3] = x10;
    6773          666 :   x11 = XEXP (x1, 2);
    6774          666 :   operands[4] = x11;
    6775          666 :   return 0;
    6776              : }
    6777              : 
    6778              : int
    6779          968 : pattern1909 (rtx x1, machine_mode i1, machine_mode i2)
    6780              : {
    6781          968 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6782          968 :   rtx x2, x3, x4, x5, x6, x7;
    6783          968 :   int res ATTRIBUTE_UNUSED;
    6784          968 :   x2 = XVECEXP (x1, 0, 0);
    6785          968 :   x3 = XEXP (x2, 1);
    6786          968 :   x4 = XEXP (x3, 0);
    6787          968 :   x5 = XEXP (x4, 0);
    6788          968 :   if (GET_MODE (x5) != i2)
    6789              :     return -1;
    6790          968 :   x6 = XEXP (x5, 0);
    6791          968 :   if (GET_MODE (x6) != i2
    6792          968 :       || !nonimmediate_operand (operands[1], i1)
    6793         1936 :       || !ix86_carry_flag_operator (operands[4], i2))
    6794            0 :     return -1;
    6795          968 :   x7 = XEXP (x4, 1);
    6796          968 :   if (GET_MODE (x7) != i2
    6797          968 :       || !x86_64_sext_operand (operands[2], i1)
    6798         1936 :       || pattern1907 (x1, 
    6799              : i1, 
    6800              : i2) != 0)
    6801            0 :     return -1;
    6802              :   return 0;
    6803              : }
    6804              : 
    6805              : int
    6806         1597 : pattern1917 (rtx x1)
    6807              : {
    6808         1597 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6809         1597 :   rtx x2, x3, x4, x5;
    6810         1597 :   int res ATTRIBUTE_UNUSED;
    6811         1597 :   x2 = XVECEXP (x1, 0, 24);
    6812         1597 :   if (XWINT (x2, 0) != 24L)
    6813              :     return -1;
    6814         1597 :   x3 = XVECEXP (x1, 0, 25);
    6815         1597 :   if (XWINT (x3, 0) != 25L)
    6816              :     return -1;
    6817         1597 :   x4 = XVECEXP (x1, 0, 26);
    6818         1597 :   if (XWINT (x4, 0) != 26L)
    6819              :     return -1;
    6820         1597 :   x5 = XVECEXP (x1, 0, 27);
    6821         1597 :   if (XWINT (x5, 0) != 27L)
    6822            0 :     return -1;
    6823              :   return 0;
    6824              : }
    6825              : 
    6826              : int
    6827          429 : pattern1919 (rtx x1, machine_mode i1, machine_mode i2, machine_mode i3)
    6828              : {
    6829          429 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6830          429 :   rtx x2, x3, x4, x5;
    6831          429 :   int res ATTRIBUTE_UNUSED;
    6832          429 :   if (!register_operand (operands[0], i1)
    6833          429 :       || GET_MODE (x1) != i1)
    6834              :     return -1;
    6835          411 :   x2 = XEXP (x1, 0);
    6836          411 :   if (GET_MODE (x2) != i1)
    6837              :     return -1;
    6838          411 :   x3 = XEXP (x2, 0);
    6839          411 :   if (GET_MODE (x3) != i1)
    6840              :     return -1;
    6841          411 :   x4 = XEXP (x3, 0);
    6842          411 :   if (GET_MODE (x4) != i3
    6843          411 :       || !register_operand (operands[1], i2))
    6844            0 :     return -1;
    6845          411 :   x5 = XEXP (x3, 1);
    6846          411 :   if (GET_MODE (x5) != i3
    6847          411 :       || !vector_operand (operands[2], i2)
    6848          822 :       || !nonimm_or_0_operand (operands[3], i1))
    6849           12 :     return -1;
    6850              :   return 0;
    6851              : }
    6852              : 
    6853              :  int
    6854     59351798 : recog_6 (rtx x1 ATTRIBUTE_UNUSED,
    6855              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    6856              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    6857              : {
    6858     59351798 :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    6859     59351798 :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    6860     59351798 :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    6861     59351798 :   rtx x18, x19, x20, x21, x22, x23;
    6862     59351798 :   int res ATTRIBUTE_UNUSED;
    6863     59351798 :   x2 = XEXP (x1, 0);
    6864     59351798 :   if (GET_CODE (x2) != REG
    6865     59351798 :       || REGNO (x2) != 17)
    6866              :     return -1;
    6867     59233300 :   x3 = XEXP (x1, 1);
    6868     59233300 :   x4 = XEXP (x3, 0);
    6869     59233300 :   switch (GET_CODE (x4))
    6870              :     {
    6871     55359592 :     case REG:
    6872     55359592 :     case SUBREG:
    6873     55359592 :     case MEM:
    6874     55359592 :       return recog_5 (x1, insn, pnum_clobbers);
    6875              : 
    6876       229506 :     case MINUS:
    6877       229506 :       x5 = XEXP (x3, 1);
    6878       229506 :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    6879              :         return -1;
    6880        39004 :       x6 = XEXP (x4, 0);
    6881        39004 :       operands[0] = x6;
    6882        39004 :       x7 = XEXP (x4, 1);
    6883        39004 :       operands[1] = x7;
    6884        39004 :       switch (GET_MODE (x4))
    6885              :         {
    6886           98 :         case E_QImode:
    6887           98 :           if (!nonimmediate_operand (operands[0], E_QImode)
    6888           87 :               || !general_operand (operands[1], E_QImode)
    6889          159 :               || !
    6890              : #line 1633 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6891              : (ix86_match_ccmode (insn, CCGOCmode)))
    6892              :             return -1;
    6893              :           return 17; /* *cmpqi_minus_1 */
    6894              : 
    6895              :         case E_HImode:
    6896              :           if (!nonimmediate_operand (operands[0], E_HImode)
    6897              :               || !general_operand (operands[1], E_HImode)
    6898              :               || !
    6899              : #line 1633 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6900              : (ix86_match_ccmode (insn, CCGOCmode)))
    6901              :             return -1;
    6902              :           return 18; /* *cmphi_minus_1 */
    6903              : 
    6904              :         case E_SImode:
    6905              :           if (!nonimmediate_operand (operands[0], E_SImode)
    6906              :               || !x86_64_general_operand (operands[1], E_SImode)
    6907              :               || !
    6908              : #line 1633 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6909              : (ix86_match_ccmode (insn, CCGOCmode)))
    6910              :             return -1;
    6911              :           return 19; /* *cmpsi_minus_1 */
    6912              : 
    6913              :         case E_DImode:
    6914              :           if (!nonimmediate_operand (operands[0], E_DImode)
    6915              :               || !x86_64_general_operand (operands[1], E_DImode)
    6916              :               || !(
    6917              : #line 1633 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6918              : (ix86_match_ccmode (insn, CCGOCmode)) && 
    6919              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6920              : (TARGET_64BIT)))
    6921              :             return -1;
    6922              :           return 20; /* *cmpdi_minus_1 */
    6923              : 
    6924              :         default:
    6925              :           return -1;
    6926              :         }
    6927              : 
    6928              :     case PLUS:
    6929              :       x5 = XEXP (x3, 1);
    6930              :       switch (GET_CODE (x5))
    6931              :         {
    6932              :         case CONST_INT:
    6933              :           if (XWINT (x5, 0) != 0L)
    6934              :             return -1;
    6935              :           x6 = XEXP (x4, 0);
    6936              :           operands[0] = x6;
    6937              :           x7 = XEXP (x4, 1);
    6938              :           operands[1] = x7;
    6939              :           switch (GET_MODE (x4))
    6940              :             {
    6941              :             case E_QImode:
    6942              :               if (!nonimmediate_operand (operands[0], E_QImode)
    6943              :                   || !x86_64_neg_const_int_operand (operands[1], E_QImode)
    6944              :                   || !
    6945              : #line 1644 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6946              : (ix86_match_ccmode (insn, CCGOCmode)))
    6947              :                 return -1;
    6948              :               return 21; /* *cmpqi_plus_1 */
    6949              : 
    6950              :             case E_HImode:
    6951              :               if (!nonimmediate_operand (operands[0], E_HImode)
    6952              :                   || !x86_64_neg_const_int_operand (operands[1], E_HImode)
    6953              :                   || !
    6954              : #line 1644 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6955              : (ix86_match_ccmode (insn, CCGOCmode)))
    6956              :                 return -1;
    6957              :               return 22; /* *cmphi_plus_1 */
    6958              : 
    6959              :             case E_SImode:
    6960              :               if (!nonimmediate_operand (operands[0], E_SImode)
    6961              :                   || !x86_64_neg_const_int_operand (operands[1], E_SImode)
    6962              :                   || !
    6963              : #line 1644 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6964              : (ix86_match_ccmode (insn, CCGOCmode)))
    6965              :                 return -1;
    6966              :               return 23; /* *cmpsi_plus_1 */
    6967              : 
    6968              :             case E_DImode:
    6969              :               if (!nonimmediate_operand (operands[0], E_DImode)
    6970              :                   || !x86_64_neg_const_int_operand (operands[1], E_DImode)
    6971              :                   || !(
    6972              : #line 1644 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6973              : (ix86_match_ccmode (insn, CCGOCmode)) && 
    6974              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    6975              : (TARGET_64BIT)))
    6976              :                 return -1;
    6977              :               return 24; /* *cmpdi_plus_1 */
    6978              : 
    6979              :             default:
    6980              :               return -1;
    6981              :             }
    6982              : 
    6983              :         case REG:
    6984              :         case SUBREG:
    6985              :         case MEM:
    6986              :           if (pnum_clobbers == NULL
    6987              :               || GET_MODE (x2) != E_CCCmode
    6988              :               || GET_MODE (x3) != E_CCCmode)
    6989              :             return -1;
    6990              :           x6 = XEXP (x4, 0);
    6991              :           operands[1] = x6;
    6992              :           x7 = XEXP (x4, 1);
    6993              :           operands[2] = x7;
    6994              :           if (!rtx_equal_p (x5, operands[1]))
    6995              :             return -1;
    6996              :           switch (pattern49 (x4))
    6997              :             {
    6998              :             case 0:
    6999              :               if (!
    7000              : #line 10651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7001              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7002              :                 return -1;
    7003              :               *pnum_clobbers = 1;
    7004              :               return 562; /* *addqi3_cconly_overflow_1 */
    7005              : 
    7006              :             case 1:
    7007              :               if (!
    7008              : #line 10651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7009              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7010              :                 return -1;
    7011              :               *pnum_clobbers = 1;
    7012              :               return 563; /* *addhi3_cconly_overflow_1 */
    7013              : 
    7014              :             case 2:
    7015              :               if (!
    7016              : #line 10651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7017              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7018              :                 return -1;
    7019              :               *pnum_clobbers = 1;
    7020              :               return 564; /* *addsi3_cconly_overflow_1 */
    7021              : 
    7022              :             case 3:
    7023              :               if (!(
    7024              : #line 10651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7025              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7026              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7027              : (TARGET_64BIT)))
    7028              :                 return -1;
    7029              :               *pnum_clobbers = 1;
    7030              :               return 565; /* *adddi3_cconly_overflow_1 */
    7031              : 
    7032              :             default:
    7033              :               return -1;
    7034              :             }
    7035              : 
    7036              :         default:
    7037              :           return -1;
    7038              :         }
    7039              : 
    7040              :     case NEG:
    7041              :       if (GET_MODE (x4) != E_QImode
    7042              :           || GET_MODE (x2) != E_CCCmode
    7043              :           || GET_MODE (x3) != E_CCCmode)
    7044              :         return -1;
    7045              :       x6 = XEXP (x4, 0);
    7046              :       if (GET_MODE (x6) != E_QImode)
    7047              :         return -1;
    7048              :       x5 = XEXP (x3, 1);
    7049              :       if (GET_MODE (x5) != E_QImode)
    7050              :         return -1;
    7051              :       switch (GET_CODE (x6))
    7052              :         {
    7053              :         case LTU:
    7054              :           x8 = XEXP (x6, 0);
    7055              :           if (GET_CODE (x8) != REG
    7056              :               || REGNO (x8) != 17
    7057              :               || GET_MODE (x8) != E_CCCmode)
    7058              :             return -1;
    7059              :           x9 = XEXP (x6, 1);
    7060              :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    7061              :               || GET_CODE (x5) != GEU)
    7062              :             return -1;
    7063              :           x10 = XEXP (x5, 0);
    7064              :           if (GET_CODE (x10) != REG
    7065              :               || REGNO (x10) != 17
    7066              :               || GET_MODE (x10) != E_CCCmode)
    7067              :             return -1;
    7068              :           x11 = XEXP (x5, 1);
    7069              :           if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    7070              :             return -1;
    7071              :           return 68; /* *x86_cmc */
    7072              : 
    7073              :         case GEU:
    7074              :           x8 = XEXP (x6, 0);
    7075              :           if (GET_CODE (x8) != REG
    7076              :               || REGNO (x8) != 17)
    7077              :             return -1;
    7078              :           x9 = XEXP (x6, 1);
    7079              :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    7080              :               || GET_CODE (x5) != LTU)
    7081              :             return -1;
    7082              :           x10 = XEXP (x5, 0);
    7083              :           if (GET_CODE (x10) != REG
    7084              :               || REGNO (x10) != 17)
    7085              :             return -1;
    7086              :           x11 = XEXP (x5, 1);
    7087              :           if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    7088              :             return -1;
    7089              :           switch (GET_MODE (x8))
    7090              :             {
    7091              :             case E_CCmode:
    7092              :               if (GET_MODE (x10) != E_CCmode
    7093              :                   || !
    7094              : #line 10593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7095              : (ix86_pre_reload_split ()))
    7096              :                 return -1;
    7097              :               return 555; /* *setcc_qi_addqi3_cconly_overflow_1_cc */
    7098              : 
    7099              :             case E_CCCmode:
    7100              :               if (GET_MODE (x10) != E_CCCmode
    7101              :                   || !
    7102              : #line 10593 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7103              : (ix86_pre_reload_split ()))
    7104              :                 return -1;
    7105              :               return 556; /* *setcc_qi_addqi3_cconly_overflow_1_ccc */
    7106              : 
    7107              :             default:
    7108              :               return -1;
    7109              :             }
    7110              : 
    7111              :         default:
    7112              :           return -1;
    7113              :         }
    7114              : 
    7115              :     case ZERO_EXTEND:
    7116              :       if (pnum_clobbers == NULL)
    7117              :         return -1;
    7118              :       x5 = XEXP (x3, 1);
    7119              :       if (pattern425 (x5, 
    7120              : E_CCmode, 
    7121              : PLUS) != 0
    7122              :           || GET_MODE (x2) != E_CCCmode
    7123              :           || GET_MODE (x3) != E_CCCmode)
    7124              :         return -1;
    7125              :       x6 = XEXP (x4, 0);
    7126              :       operands[1] = x6;
    7127              :       x11 = XEXP (x5, 1);
    7128              :       switch (GET_CODE (x11))
    7129              :         {
    7130              :         case ZERO_EXTEND:
    7131              :           x12 = XEXP (x11, 0);
    7132              :           operands[2] = x12;
    7133              :           switch (GET_MODE (x4))
    7134              :             {
    7135              :             case E_DImode:
    7136              :               if (pattern1592 (x5, 
    7137              : E_SImode, 
    7138              : E_DImode) != 0
    7139              :                   || !
    7140              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7141              : (!TARGET_64BIT))
    7142              :                 return -1;
    7143              :               *pnum_clobbers = 1;
    7144              :               return 545; /* subsi3_carry_ccc */
    7145              : 
    7146              :             case E_TImode:
    7147              :               if (pattern1592 (x5, 
    7148              : E_DImode, 
    7149              : E_TImode) != 0
    7150              :                   || !
    7151              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7152              : (TARGET_64BIT))
    7153              :                 return -1;
    7154              :               *pnum_clobbers = 1;
    7155              :               return 546; /* subdi3_carry_ccc */
    7156              : 
    7157              :             default:
    7158              :               return -1;
    7159              :             }
    7160              : 
    7161              :         case CONST_INT:
    7162              :         case CONST_WIDE_INT:
    7163              :           operands[2] = x11;
    7164              :           switch (GET_MODE (x4))
    7165              :             {
    7166              :             case E_DImode:
    7167              :               if (pattern1593 (x5, 
    7168              : E_DImode, 
    7169              : E_SImode) != 0
    7170              :                   || !
    7171              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7172              : (!TARGET_64BIT))
    7173              :                 return -1;
    7174              :               *pnum_clobbers = 1;
    7175              :               return 547; /* *subsi3_carry_ccc_1 */
    7176              : 
    7177              :             case E_TImode:
    7178              :               if (pattern1593 (x5, 
    7179              : E_TImode, 
    7180              : E_DImode) != 0
    7181              :                   || !
    7182              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7183              : (TARGET_64BIT))
    7184              :                 return -1;
    7185              :               *pnum_clobbers = 1;
    7186              :               return 548; /* *subdi3_carry_ccc_1 */
    7187              : 
    7188              :             default:
    7189              :               return -1;
    7190              :             }
    7191              : 
    7192              :         default:
    7193              :           return -1;
    7194              :         }
    7195              : 
    7196              :     case AND:
    7197              :       x5 = XEXP (x3, 1);
    7198              :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    7199              :           || GET_MODE (x2) != E_CCZmode
    7200              :           || GET_MODE (x3) != E_CCZmode)
    7201              :         return -1;
    7202              :       x6 = XEXP (x4, 0);
    7203              :       switch (GET_CODE (x6))
    7204              :         {
    7205              :         case REG:
    7206              :         case SUBREG:
    7207              :           operands[0] = x6;
    7208              :           if (!register_operand (operands[0], E_TImode)
    7209              :               || GET_MODE (x4) != E_TImode)
    7210              :             return -1;
    7211              :           x7 = XEXP (x4, 1);
    7212              :           operands[1] = x7;
    7213              :           if (!general_operand (operands[1], E_TImode)
    7214              :               || !
    7215              : #line 12963 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7216              : (TARGET_64BIT
    7217              :    && ix86_pre_reload_split ()))
    7218              :             return -1;
    7219              :           return 721; /* *testti_doubleword */
    7220              : 
    7221              :         case NOT:
    7222              :           switch (pattern857 (x4))
    7223              :             {
    7224              :             case 0:
    7225              :               if (!
    7226              : #line 13093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7227              : (ix86_pre_reload_split ()
    7228              :    && (!TARGET_BMI || !REG_P (operands[1]))))
    7229              :                 return -1;
    7230              :               return 725; /* *testqi_not */
    7231              : 
    7232              :             case 1:
    7233              :               if (!
    7234              : #line 13093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7235              : (ix86_pre_reload_split ()
    7236              :    && (!TARGET_BMI || !REG_P (operands[1]))))
    7237              :                 return -1;
    7238              :               return 726; /* *testhi_not */
    7239              : 
    7240              :             case 2:
    7241              :               if (!
    7242              : #line 13093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7243              : (ix86_pre_reload_split ()
    7244              :    && (!TARGET_BMI || !REG_P (operands[1]))))
    7245              :                 return -1;
    7246              :               return 727; /* *testsi_not */
    7247              : 
    7248              :             case 3:
    7249              :               if (register_operand (operands[0], E_DImode)
    7250              :                   && x86_64_szext_nonmemory_operand (operands[1], E_DImode)
    7251              :                   && (
    7252              : #line 13093 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7253              : (ix86_pre_reload_split ()
    7254              :    && (!TARGET_BMI || !REG_P (operands[1]))) && 
    7255              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7256              : (TARGET_64BIT)))
    7257              :                 return 728; /* *testdi_not */
    7258              :               if (!nonimmediate_operand (operands[0], E_DImode)
    7259              :                   || !nonimmediate_operand (operands[1], E_DImode)
    7260              :                   || !(
    7261              : #line 13111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7262              : (ix86_pre_reload_split ()) && 
    7263              : #line 1226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7264              : (!TARGET_64BIT)))
    7265              :                 return -1;
    7266              :               return 729; /* *testdi_not_doubleword */
    7267              : 
    7268              :             case 4:
    7269              :               if (!(
    7270              : #line 13111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7271              : (ix86_pre_reload_split ()) && 
    7272              : #line 1227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7273              : (TARGET_64BIT)))
    7274              :                 return -1;
    7275              :               return 730; /* *testti_not_doubleword */
    7276              : 
    7277              :             default:
    7278              :               return -1;
    7279              :             }
    7280              : 
    7281              :         case PLUS:
    7282              :           if (pnum_clobbers == NULL)
    7283              :             return -1;
    7284              :           x9 = XEXP (x6, 1);
    7285              :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
    7286              :             return -1;
    7287              :           switch (pattern763 (x4))
    7288              :             {
    7289              :             case 0:
    7290              :               if (!
    7291              : #line 23025 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7292              : (TARGET_BMI))
    7293              :                 return -1;
    7294              :               *pnum_clobbers = 1;
    7295              :               return 1620; /* *bmi_blsr_si_ccz */
    7296              : 
    7297              :             case 1:
    7298              :               if (!(
    7299              : #line 23025 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7300              : (TARGET_BMI) && 
    7301              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7302              : (TARGET_64BIT)))
    7303              :                 return -1;
    7304              :               *pnum_clobbers = 1;
    7305              :               return 1621; /* *bmi_blsr_di_ccz */
    7306              : 
    7307              :             default:
    7308              :               return -1;
    7309              :             }
    7310              : 
    7311              :         default:
    7312              :           return -1;
    7313              :         }
    7314              : 
    7315              :     case IOR:
    7316              :       if (pnum_clobbers == NULL)
    7317              :         return -1;
    7318              :       x5 = XEXP (x3, 1);
    7319              :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    7320              :           || GET_MODE (x2) != E_CCZmode
    7321              :           || GET_MODE (x3) != E_CCZmode)
    7322              :         return -1;
    7323              :       switch (pattern50 (x4))
    7324              :         {
    7325              :         case 0:
    7326              :           if (!(
    7327              : #line 14805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7328              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7329              : #line 1588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7330              : (TARGET_AVX512DQ)))
    7331              :             return -1;
    7332              :           *pnum_clobbers = 1;
    7333              :           return 912; /* *iorqi_ccz_1 */
    7334              : 
    7335              :         case 1:
    7336              :           if (!
    7337              : #line 14805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7338              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7339              :             return -1;
    7340              :           *pnum_clobbers = 1;
    7341              :           return 913; /* *iorhi_ccz_1 */
    7342              : 
    7343              :         case 2:
    7344              :           if (!(
    7345              : #line 14805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7346              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7347              : #line 1589 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7348              : (TARGET_AVX512BW)))
    7349              :             return -1;
    7350              :           *pnum_clobbers = 1;
    7351              :           return 914; /* *iorsi_ccz_1 */
    7352              : 
    7353              :         case 3:
    7354              :           if (!(
    7355              : #line 14805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7356              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
    7357              : #line 1589 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7358              : (TARGET_AVX512BW && TARGET_64BIT)))
    7359              :             return -1;
    7360              :           *pnum_clobbers = 1;
    7361              :           return 915; /* *iordi_ccz_1 */
    7362              : 
    7363              :         default:
    7364              :           return -1;
    7365              :         }
    7366              : 
    7367              :     case CONST_INT:
    7368              :       if (XWINT (x4, 0) != 0L)
    7369              :         return -1;
    7370              :       x5 = XEXP (x3, 1);
    7371              :       if (GET_CODE (x5) != ZERO_EXTRACT)
    7372              :         return -1;
    7373              :       x11 = XEXP (x5, 1);
    7374              :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
    7375              :           || GET_MODE (x2) != E_CCCmode
    7376              :           || GET_MODE (x3) != E_CCCmode)
    7377              :         return -1;
    7378              :       x10 = XEXP (x5, 0);
    7379              :       operands[0] = x10;
    7380              :       x13 = XEXP (x5, 2);
    7381              :       operands[1] = x13;
    7382              :       if (nonmemory_operand (operands[1], E_QImode))
    7383              :         {
    7384              :           switch (GET_MODE (x5))
    7385              :             {
    7386              :             case E_SImode:
    7387              :               if (nonimmediate_operand (operands[0], E_SImode))
    7388              :                 return 1448; /* *btsi */
    7389              :               break;
    7390              : 
    7391              :             case E_DImode:
    7392              :               if (nonimmediate_operand (operands[0], E_DImode)
    7393              :                   && 
    7394              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7395              : (TARGET_64BIT))
    7396              :                 return 1449; /* *btdi */
    7397              :               break;
    7398              : 
    7399              :             default:
    7400              :               break;
    7401              :             }
    7402              :         }
    7403              :       if (GET_CODE (x13) != SUBREG
    7404              :           || maybe_ne (SUBREG_BYTE (x13), 0)
    7405              :           || GET_MODE (x13) != E_QImode)
    7406              :         return -1;
    7407              :       x14 = XEXP (x13, 0);
    7408              :       if (GET_CODE (x14) != AND)
    7409              :         return -1;
    7410              :       switch (pattern1462 (x5))
    7411              :         {
    7412              :         case 0:
    7413              :           if (!
    7414              : #line 20129 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7415              : (TARGET_USE_BT
    7416              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
    7417              :       == GET_MODE_BITSIZE (SImode)-1
    7418              :    && ix86_pre_reload_split ()))
    7419              :             return -1;
    7420              :           return 1450; /* *btsi_mask */
    7421              : 
    7422              :         case 1:
    7423              :           if (!(
    7424              : #line 20129 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7425              : (TARGET_USE_BT
    7426              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
    7427              :       == GET_MODE_BITSIZE (DImode)-1
    7428              :    && ix86_pre_reload_split ()) && 
    7429              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7430              : (TARGET_64BIT)))
    7431              :             return -1;
    7432              :           return 1451; /* *btdi_mask */
    7433              : 
    7434              :         default:
    7435              :           return -1;
    7436              :         }
    7437              : 
    7438              :     case UNSPEC:
    7439              :       if (GET_MODE (x2) != E_CCZmode
    7440              :           || GET_MODE (x3) != E_CCZmode)
    7441              :         return -1;
    7442              :       switch (XVECLEN (x4, 0))
    7443              :         {
    7444              :         case 2:
    7445              :           if (pnum_clobbers == NULL
    7446              :               || XINT (x4, 1) != 99)
    7447              :             return -1;
    7448              :           x5 = XEXP (x3, 1);
    7449              :           if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    7450              :             return -1;
    7451              :           x15 = XVECEXP (x4, 0, 0);
    7452              :           operands[1] = x15;
    7453              :           x16 = XVECEXP (x4, 0, 1);
    7454              :           operands[2] = x16;
    7455              :           switch (GET_MODE (x4))
    7456              :             {
    7457              :             case E_SImode:
    7458              :               if (!nonimmediate_operand (operands[1], E_SImode)
    7459              :                   || !register_operand (operands[2], E_SImode)
    7460              :                   || !
    7461              : #line 22774 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7462              : (TARGET_BMI))
    7463              :                 return -1;
    7464              :               *pnum_clobbers = 1;
    7465              :               return 1600; /* *bmi_bextr_si_ccz */
    7466              : 
    7467              :             case E_DImode:
    7468              :               if (!nonimmediate_operand (operands[1], E_DImode)
    7469              :                   || !register_operand (operands[2], E_DImode)
    7470              :                   || !(
    7471              : #line 22774 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7472              : (TARGET_BMI) && 
    7473              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7474              : (TARGET_64BIT)))
    7475              :                 return -1;
    7476              :               *pnum_clobbers = 1;
    7477              :               return 1601; /* *bmi_bextr_di_ccz */
    7478              : 
    7479              :             default:
    7480              :               return -1;
    7481              :             }
    7482              : 
    7483              :         case 1:
    7484              :           if (XINT (x4, 1) != 50
    7485              :               || GET_MODE (x4) != E_SImode)
    7486              :             return -1;
    7487              :           x15 = XVECEXP (x4, 0, 0);
    7488              :           if (GET_CODE (x15) != VEC_MERGE)
    7489              :             return -1;
    7490              :           x5 = XEXP (x3, 1);
    7491              :           operands[2] = x5;
    7492              :           if (!const_int_operand (operands[2], E_VOIDmode))
    7493              :             return -1;
    7494              :           switch (pattern1273 (x15))
    7495              :             {
    7496              :             case 0:
    7497              :               if (!(
    7498              : #line 22936 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7499              : (TARGET_AVX512VL && UINTVAL (operands[2]) <= 0xffffffff) && 
    7500              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7501              : (TARGET_AVX2)))
    7502              :                 return -1;
    7503              :               return 8650; /* *pmovsk_mask_cmp_v32qi_avx512 */
    7504              : 
    7505              :             case 1:
    7506              :               if (!
    7507              : #line 22936 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7508              : (TARGET_AVX512VL && UINTVAL (operands[2]) <= 0xffff))
    7509              :                 return -1;
    7510              :               return 8651; /* *pmovsk_mask_cmp_v16qi_avx512 */
    7511              : 
    7512              :             case 2:
    7513              :               if (!(
    7514              : #line 22959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7515              : (TARGET_AVX512VL && (INTVAL (operands[2]) == (int) (0xffffffff))) && 
    7516              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7517              : (TARGET_AVX2)))
    7518              :                 return -1;
    7519              :               return 8652; /* *pmovsk_ptest_v32qi_avx512 */
    7520              : 
    7521              :             case 3:
    7522              :               if (!
    7523              : #line 22959 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7524              : (TARGET_AVX512VL && (INTVAL (operands[2]) == (int) (0xffff))))
    7525              :                 return -1;
    7526              :               return 8653; /* *pmovsk_ptest_v16qi_avx512 */
    7527              : 
    7528              :             default:
    7529              :               return -1;
    7530              :             }
    7531              : 
    7532              :         default:
    7533              :           return -1;
    7534              :         }
    7535              : 
    7536              :     case IF_THEN_ELSE:
    7537              :       if (pnum_clobbers == NULL)
    7538              :         return -1;
    7539              :       x6 = XEXP (x4, 0);
    7540              :       if (GET_CODE (x6) != NE
    7541              :           || GET_MODE (x6) != E_QImode)
    7542              :         return -1;
    7543              :       x9 = XEXP (x6, 1);
    7544              :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    7545              :         return -1;
    7546              :       x7 = XEXP (x4, 1);
    7547              :       if (GET_CODE (x7) != ZERO_EXTRACT)
    7548              :         return -1;
    7549              :       x17 = XEXP (x7, 1);
    7550              :       if (GET_CODE (x17) != UMIN
    7551              :           || GET_MODE (x17) != E_QImode)
    7552              :         return -1;
    7553              :       x18 = XEXP (x7, 2);
    7554              :       if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    7555              :         return -1;
    7556              :       x19 = XEXP (x4, 2);
    7557              :       if (x19 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    7558              :         return -1;
    7559              :       x5 = XEXP (x3, 1);
    7560              :       if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    7561              :           || GET_MODE (x2) != E_CCZmode
    7562              :           || GET_MODE (x3) != E_CCZmode)
    7563              :         return -1;
    7564              :       x8 = XEXP (x6, 0);
    7565              :       operands[2] = x8;
    7566              :       if (!register_operand (operands[2], E_QImode))
    7567              :         return -1;
    7568              :       x20 = XEXP (x7, 0);
    7569              :       operands[1] = x20;
    7570              :       x21 = XEXP (x17, 1);
    7571              :       operands[3] = x21;
    7572              :       if (!const_int_operand (operands[3], E_QImode))
    7573              :         return -1;
    7574              :       x22 = XEXP (x17, 0);
    7575              :       if (!rtx_equal_p (x22, operands[2]))
    7576              :         return -1;
    7577              :       switch (GET_MODE (x4))
    7578              :         {
    7579              :         case E_SImode:
    7580              :           if (GET_MODE (x7) != E_SImode
    7581              :               || !nonimmediate_operand (operands[1], E_SImode)
    7582              :               || !
    7583              : #line 23081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7584              : (TARGET_BMI2 && INTVAL (operands[3]) == 4 * BITS_PER_UNIT))
    7585              :             return -1;
    7586              :           *pnum_clobbers = 1;
    7587              :           return 1624; /* *bmi2_bzhi_si3_1_ccz */
    7588              : 
    7589              :         case E_DImode:
    7590              :           if (GET_MODE (x7) != E_DImode
    7591              :               || !nonimmediate_operand (operands[1], E_DImode)
    7592              :               || !(
    7593              : #line 23081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7594              : (TARGET_BMI2 && INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
    7595              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7596              : (TARGET_64BIT)))
    7597              :             return -1;
    7598              :           *pnum_clobbers = 1;
    7599              :           return 1625; /* *bmi2_bzhi_di3_1_ccz */
    7600              : 
    7601              :         default:
    7602              :           return -1;
    7603              :         }
    7604              : 
    7605              :     case VEC_SELECT:
    7606              :       x7 = XEXP (x4, 1);
    7607              :       if (GET_CODE (x7) != PARALLEL
    7608              :           || XVECLEN (x7, 0) != 1)
    7609              :         return -1;
    7610              :       x23 = XVECEXP (x7, 0, 0);
    7611              :       if (x23 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    7612              :         return -1;
    7613              :       x5 = XEXP (x3, 1);
    7614              :       if (pattern255 (x5) != 0
    7615              :           || GET_MODE (x2) != E_CCFPmode
    7616              :           || GET_MODE (x3) != E_CCFPmode)
    7617              :         return -1;
    7618              :       x6 = XEXP (x4, 0);
    7619              :       operands[0] = x6;
    7620              :       x10 = XEXP (x5, 0);
    7621              :       operands[1] = x10;
    7622              :       switch (GET_MODE (x4))
    7623              :         {
    7624              :         case E_HFmode:
    7625              :           if (!register_operand (operands[0], E_V8HFmode)
    7626              :               || GET_MODE (x5) != E_HFmode
    7627              :               || !nonimmediate_operand (operands[1], E_V8HFmode)
    7628              :               || !(
    7629              : #line 5273 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7630              : (SSE_FLOAT_MODE_P (HFmode) || HFmode == E_HFmode) && 
    7631              : #line 1386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7632              : (TARGET_AVX512FP16)))
    7633              :             return -1;
    7634              :           return 3758; /* avx512fp16_comi */
    7635              : 
    7636              :         case E_SFmode:
    7637              :           if (!register_operand (operands[0], E_V4SFmode)
    7638              :               || GET_MODE (x5) != E_SFmode
    7639              :               || !nonimmediate_operand (operands[1], E_V4SFmode)
    7640              :               || !
    7641              : #line 5273 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7642              : (SSE_FLOAT_MODE_P (SFmode) || SFmode == E_HFmode))
    7643              :             return -1;
    7644              :           return 3762; /* sse_comi */
    7645              : 
    7646              :         case E_DFmode:
    7647              :           if (!register_operand (operands[0], E_V2DFmode)
    7648              :               || GET_MODE (x5) != E_DFmode
    7649              :               || !nonimmediate_operand (operands[1], E_V2DFmode)
    7650              :               || !
    7651              : #line 5273 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7652              : (SSE_FLOAT_MODE_P (DFmode) || DFmode == E_HFmode))
    7653              :             return -1;
    7654              :           return 3766; /* sse2_comi */
    7655              : 
    7656              :         case E_BFmode:
    7657              :           if (!register_operand (operands[0], E_V8BFmode)
    7658              :               || GET_MODE (x5) != E_BFmode
    7659              :               || !nonimmediate_operand (operands[1], E_V8BFmode)
    7660              :               || !
    7661              : #line 5293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    7662              : (TARGET_AVX10_2))
    7663              :             return -1;
    7664              :           return 3770; /* avx10_2_comisbf16_v8bf */
    7665              : 
    7666              :         default:
    7667              :           return -1;
    7668              :         }
    7669              : 
    7670              :     default:
    7671              :       return -1;
    7672              :     }
    7673              : }
    7674              : 
    7675              :  int
    7676              : recog_30 (rtx x1 ATTRIBUTE_UNUSED,
    7677              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    7678              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    7679              : {
    7680              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    7681              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    7682              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
    7683              :   int res ATTRIBUTE_UNUSED;
    7684              :   x2 = XEXP (x1, 0);
    7685              :   operands[0] = x2;
    7686              :   x3 = XEXP (x1, 1);
    7687              :   x4 = XEXP (x3, 0);
    7688              :   switch (GET_CODE (x4))
    7689              :     {
    7690              :     case CONST_INT:
    7691              :     case CONST:
    7692              :     case REG:
    7693              :     case SUBREG:
    7694              :     case MEM:
    7695              :     case LABEL_REF:
    7696              :     case SYMBOL_REF:
    7697              :       operands[1] = x4;
    7698              :       switch (GET_MODE (operands[0]))
    7699              :         {
    7700              :         case E_TImode:
    7701              :           if (!nonimmediate_operand (operands[0], E_TImode)
    7702              :               || GET_MODE (x3) != E_TImode
    7703              :               || !nonimmediate_operand (operands[1], E_DImode)
    7704              :               || !
    7705              : #line 4734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7706              : (TARGET_64BIT))
    7707              :             return -1;
    7708              :           return 178; /* zero_extendditi2 */
    7709              : 
    7710              :         case E_DImode:
    7711              :           if (GET_MODE (x3) != E_DImode)
    7712              :             return -1;
    7713              :           if (nonimmediate_operand (operands[0], E_DImode)
    7714              :               && x86_64_zext_operand (operands[1], E_SImode))
    7715              :             return 179; /* *zero_extendsidi2 */
    7716              :           if (!register_operand (operands[0], E_DImode))
    7717              :             return -1;
    7718              :           switch (GET_MODE (operands[1]))
    7719              :             {
    7720              :             case E_QImode:
    7721              :               if (!nonimmediate_operand (operands[1], E_QImode)
    7722              :                   || !
    7723              : #line 4890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7724              : (TARGET_64BIT))
    7725              :                 return -1;
    7726              :               return 180; /* zero_extendqidi2 */
    7727              : 
    7728              :             case E_HImode:
    7729              :               if (!nonimmediate_operand (operands[1], E_HImode)
    7730              :                   || !
    7731              : #line 4890 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7732              : (TARGET_64BIT))
    7733              :                 return -1;
    7734              :               return 181; /* zero_extendhidi2 */
    7735              : 
    7736              :             default:
    7737              :               return -1;
    7738              :             }
    7739              : 
    7740              :         case E_SImode:
    7741              :           if (!register_operand (operands[0], E_SImode)
    7742              :               || GET_MODE (x3) != E_SImode)
    7743              :             return -1;
    7744              :           switch (GET_MODE (operands[1]))
    7745              :             {
    7746              :             case E_QImode:
    7747              :               if (!nonimmediate_operand (operands[1], E_QImode))
    7748              :                 return -1;
    7749              :               if (pnum_clobbers != NULL
    7750              :                   && 
    7751              : #line 4917 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7752              : (TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)))
    7753              :                 {
    7754              :                   *pnum_clobbers = 1;
    7755              :                   return 182; /* zero_extendqisi2_and */
    7756              :                 }
    7757              :               if (!
    7758              : #line 4945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7759              : (!(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun))))
    7760              :                 return -1;
    7761              :               return 184; /* *zero_extendqisi2 */
    7762              : 
    7763              :             case E_HImode:
    7764              :               if (!nonimmediate_operand (operands[1], E_HImode))
    7765              :                 return -1;
    7766              :               if (pnum_clobbers != NULL
    7767              :                   && 
    7768              : #line 4917 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7769              : (TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)))
    7770              :                 {
    7771              :                   *pnum_clobbers = 1;
    7772              :                   return 183; /* zero_extendhisi2_and */
    7773              :                 }
    7774              :               if (!
    7775              : #line 4945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7776              : (!(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun))))
    7777              :                 return -1;
    7778              :               return 185; /* *zero_extendhisi2 */
    7779              : 
    7780              :             default:
    7781              :               return -1;
    7782              :             }
    7783              : 
    7784              :         case E_HImode:
    7785              :           if (!register_operand (operands[0], E_HImode)
    7786              :               || GET_MODE (x3) != E_HImode
    7787              :               || !nonimmediate_operand (operands[1], E_QImode))
    7788              :             return -1;
    7789              :           if (pnum_clobbers != NULL
    7790              :               && 
    7791              : #line 4971 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7792              : (TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)))
    7793              :             {
    7794              :               *pnum_clobbers = 1;
    7795              :               return 186; /* zero_extendqihi2_and */
    7796              :             }
    7797              :           if (!
    7798              : #line 4999 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7799              : (!(TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun))))
    7800              :             return -1;
    7801              :           return 187; /* *zero_extendqihi2 */
    7802              : 
    7803              :         default:
    7804              :           return -1;
    7805              :         }
    7806              : 
    7807              :     case SIGN_EXTEND:
    7808              :       if (GET_MODE (x4) != E_SImode
    7809              :           || !register_operand (operands[0], E_DImode)
    7810              :           || GET_MODE (x3) != E_DImode)
    7811              :         return -1;
    7812              :       x5 = XEXP (x4, 0);
    7813              :       operands[1] = x5;
    7814              :       switch (GET_MODE (operands[1]))
    7815              :         {
    7816              :         case E_HImode:
    7817              :           if (!nonimmediate_operand (operands[1], E_HImode)
    7818              :               || !
    7819              : #line 5283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7820              : (TARGET_64BIT))
    7821              :             return -1;
    7822              :           return 194; /* *extendhisi2_zext */
    7823              : 
    7824              :         case E_QImode:
    7825              :           if (!nonimmediate_operand (operands[1], E_QImode)
    7826              :               || !
    7827              : #line 5318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7828              : (TARGET_64BIT))
    7829              :             return -1;
    7830              :           return 196; /* *extendqisi2_zext */
    7831              : 
    7832              :         default:
    7833              :           return -1;
    7834              :         }
    7835              : 
    7836              :     case UNSIGNED_FIX:
    7837              :       if (GET_MODE (x4) != E_SImode
    7838              :           || !register_operand (operands[0], E_DImode)
    7839              :           || GET_MODE (x3) != E_DImode)
    7840              :         return -1;
    7841              :       x5 = XEXP (x4, 0);
    7842              :       operands[1] = x5;
    7843              :       switch (GET_MODE (operands[1]))
    7844              :         {
    7845              :         case E_HFmode:
    7846              :           if (!nonimmediate_operand (operands[1], E_HFmode)
    7847              :               || !
    7848              : #line 5998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7849              : (TARGET_64BIT && TARGET_AVX512FP16))
    7850              :             return -1;
    7851              :           return 224; /* *fixuns_trunchfsi2zext */
    7852              : 
    7853              :         case E_SFmode:
    7854              :           if (!nonimmediate_operand (operands[1], E_SFmode)
    7855              :               || !
    7856              : #line 6009 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7857              : (TARGET_64BIT && TARGET_AVX512F && TARGET_SSE_MATH))
    7858              :             return -1;
    7859              :           return 225; /* *fixuns_truncsfsi2_avx512f_zext */
    7860              : 
    7861              :         case E_DFmode:
    7862              :           if (!nonimmediate_operand (operands[1], E_DFmode)
    7863              :               || !
    7864              : #line 6009 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7865              : (TARGET_64BIT && TARGET_AVX512F && TARGET_SSE_MATH))
    7866              :             return -1;
    7867              :           return 226; /* *fixuns_truncdfsi2_avx512f_zext */
    7868              : 
    7869              :         default:
    7870              :           return -1;
    7871              :         }
    7872              : 
    7873              :     case PLUS:
    7874              :       if (GET_MODE (x4) != E_QImode
    7875              :           || !register_operand (operands[0], E_HImode)
    7876              :           || GET_MODE (x3) != E_HImode)
    7877              :         return -1;
    7878              :       x5 = XEXP (x4, 0);
    7879              :       switch (GET_CODE (x5))
    7880              :         {
    7881              :         case REG:
    7882              :         case SUBREG:
    7883              :         case MEM:
    7884              :           operands[1] = x5;
    7885              :           if (!nonimmediate_operand (operands[1], E_QImode))
    7886              :             return -1;
    7887              :           x6 = XEXP (x4, 1);
    7888              :           operands[2] = x6;
    7889              :           if (!general_operand (operands[2], E_QImode))
    7890              :             return -1;
    7891              :           if (
    7892              : #line 6846 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7893              : (TARGET_APX_NDD && TARGET_APX_NF
    7894              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7895              :             return 290; /* *addqi_1_zexthi_nf */
    7896              :           if (pnum_clobbers == NULL
    7897              :               || !
    7898              : #line 6846 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7899              : (TARGET_APX_NDD && true
    7900              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7901              :             return -1;
    7902              :           *pnum_clobbers = 1;
    7903              :           return 291; /* *addqi_1_zexthi */
    7904              : 
    7905              :         case PLUS:
    7906              :           if (pnum_clobbers == NULL
    7907              :               || GET_MODE (x5) != E_QImode)
    7908              :             return -1;
    7909              :           x7 = XEXP (x5, 0);
    7910              :           if (!ix86_carry_flag_operator (x7, E_QImode))
    7911              :             return -1;
    7912              :           operands[3] = x7;
    7913              :           x8 = XEXP (x7, 0);
    7914              :           if (GET_CODE (x8) != REG
    7915              :               || REGNO (x8) != 17)
    7916              :             return -1;
    7917              :           x9 = XEXP (x7, 1);
    7918              :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    7919              :             return -1;
    7920              :           x10 = XEXP (x5, 1);
    7921              :           operands[1] = x10;
    7922              :           if (!nonimmediate_operand (operands[1], E_QImode))
    7923              :             return -1;
    7924              :           x6 = XEXP (x4, 1);
    7925              :           operands[2] = x6;
    7926              :           if (!x86_64_general_operand (operands[2], E_QImode)
    7927              :               || !
    7928              : #line 9283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7929              : (TARGET_APX_NDD
    7930              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    7931              :             return -1;
    7932              :           *pnum_clobbers = 1;
    7933              :           return 481; /* *addqi3_carry_zexthi */
    7934              : 
    7935              :         case LTU:
    7936              :         case UNLT:
    7937              :           if (pnum_clobbers == NULL)
    7938              :             return -1;
    7939              :           operands[2] = x5;
    7940              :           if (!ix86_carry_flag_operator (operands[2], E_QImode)
    7941              :               || pattern1087 (x4) != 0
    7942              :               || !
    7943              : #line 9355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7944              : (TARGET_APX_NDD))
    7945              :             return -1;
    7946              :           *pnum_clobbers = 1;
    7947              :           return 487; /* *addqi3_carry_zexthi_0 */
    7948              : 
    7949              :         case GE:
    7950              :         case GEU:
    7951              :           if (pnum_clobbers == NULL)
    7952              :             return -1;
    7953              :           operands[2] = x5;
    7954              :           if (!ix86_carry_flag_unset_operator (operands[2], E_QImode)
    7955              :               || pattern1087 (x4) != 0
    7956              :               || !
    7957              : #line 9413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    7958              : (TARGET_APX_NDD))
    7959              :             return -1;
    7960              :           *pnum_clobbers = 1;
    7961              :           return 493; /* *addqi3_carry_zexthi_0r */
    7962              : 
    7963              :         default:
    7964              :           return -1;
    7965              :         }
    7966              : 
    7967              :     case MINUS:
    7968              :       if (GET_MODE (x4) != E_QImode
    7969              :           || !register_operand (operands[0], E_HImode)
    7970              :           || GET_MODE (x3) != E_HImode)
    7971              :         return -1;
    7972              :       x6 = XEXP (x4, 1);
    7973              :       operands[2] = x6;
    7974              :       x5 = XEXP (x4, 0);
    7975              :       switch (GET_CODE (x5))
    7976              :         {
    7977              :         case REG:
    7978              :         case SUBREG:
    7979              :         case MEM:
    7980              :           operands[1] = x5;
    7981              :           if (!nonimmediate_operand (operands[1], E_QImode))
    7982              :             return -1;
    7983              :           switch (GET_CODE (operands[2]))
    7984              :             {
    7985              :             case CONST_INT:
    7986              :             case CONST_WIDE_INT:
    7987              :             case CONST_POLY_INT:
    7988              :             case CONST_FIXED:
    7989              :             case CONST_DOUBLE:
    7990              :             case CONST_VECTOR:
    7991              :             case CONST:
    7992              :             case REG:
    7993              :             case SUBREG:
    7994              :             case MEM:
    7995              :             case LABEL_REF:
    7996              :             case SYMBOL_REF:
    7997              :             case HIGH:
    7998              :               if (!x86_64_general_operand (operands[2], E_QImode))
    7999              :                 return -1;
    8000              :               if (
    8001              : #line 8381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8002              : (TARGET_APX_NDD && TARGET_APX_NF
    8003              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8004              :                 return 396; /* *subqi_1_zexthi_nf */
    8005              :               if (pnum_clobbers == NULL
    8006              :                   || !
    8007              : #line 8381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8008              : (TARGET_APX_NDD && true
    8009              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8010              :                 return -1;
    8011              :               *pnum_clobbers = 1;
    8012              :               return 397; /* *subqi_1_zexthi */
    8013              : 
    8014              :             case LTU:
    8015              :             case UNLT:
    8016              :               if (pnum_clobbers == NULL
    8017              :                   || !ix86_carry_flag_operator (operands[2], E_QImode))
    8018              :                 return -1;
    8019              :               x11 = XEXP (x6, 0);
    8020              :               if (GET_CODE (x11) != REG
    8021              :                   || REGNO (x11) != 17)
    8022              :                 return -1;
    8023              :               x12 = XEXP (x6, 1);
    8024              :               if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    8025              :                   || !
    8026              : #line 10080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8027              : (TARGET_APX_NDD))
    8028              :                 return -1;
    8029              :               *pnum_clobbers = 1;
    8030              :               return 533; /* *subqi3_carry_zexthi_0 */
    8031              : 
    8032              :             case GE:
    8033              :             case GEU:
    8034              :               if (pnum_clobbers == NULL
    8035              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode))
    8036              :                 return -1;
    8037              :               x11 = XEXP (x6, 0);
    8038              :               if (GET_CODE (x11) != REG
    8039              :                   || REGNO (x11) != 17)
    8040              :                 return -1;
    8041              :               x12 = XEXP (x6, 1);
    8042              :               if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
    8043              :                   || !
    8044              : #line 10141 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8045              : (TARGET_APX_NDD))
    8046              :                 return -1;
    8047              :               *pnum_clobbers = 1;
    8048              :               return 539; /* *subqi3_carry_zexthi_0r */
    8049              : 
    8050              :             default:
    8051              :               return -1;
    8052              :             }
    8053              : 
    8054              :         case MINUS:
    8055              :           if (pnum_clobbers == NULL
    8056              :               || GET_MODE (x5) != E_QImode)
    8057              :             return -1;
    8058              :           x10 = XEXP (x5, 1);
    8059              :           if (!ix86_carry_flag_operator (x10, E_QImode))
    8060              :             return -1;
    8061              :           operands[3] = x10;
    8062              :           x13 = XEXP (x10, 0);
    8063              :           if (GET_CODE (x13) != REG
    8064              :               || REGNO (x13) != 17)
    8065              :             return -1;
    8066              :           x14 = XEXP (x10, 1);
    8067              :           if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    8068              :             return -1;
    8069              :           x7 = XEXP (x5, 0);
    8070              :           operands[1] = x7;
    8071              :           if (!nonimmediate_operand (operands[1], E_QImode)
    8072              :               || !x86_64_general_operand (operands[2], E_QImode)
    8073              :               || !
    8074              : #line 10005 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8075              : (TARGET_APX_NDD
    8076              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8077              :             return -1;
    8078              :           *pnum_clobbers = 1;
    8079              :           return 527; /* *subqi3_carry_zexthi */
    8080              : 
    8081              :         default:
    8082              :           return -1;
    8083              :         }
    8084              : 
    8085              :     case AND:
    8086              :       if (!register_operand (operands[0], E_HImode)
    8087              :           || GET_MODE (x3) != E_HImode)
    8088              :         return -1;
    8089              :       x5 = XEXP (x4, 0);
    8090              :       switch (GET_CODE (x5))
    8091              :         {
    8092              :         case REG:
    8093              :         case SUBREG:
    8094              :         case MEM:
    8095              :           operands[1] = x5;
    8096              :           if (!nonimmediate_operand (operands[1], E_QImode)
    8097              :               || GET_MODE (x4) != E_QImode)
    8098              :             return -1;
    8099              :           x6 = XEXP (x4, 1);
    8100              :           operands[2] = x6;
    8101              :           if (!x86_64_general_operand (operands[2], E_QImode))
    8102              :             return -1;
    8103              :           if (
    8104              : #line 13412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8105              : (TARGET_APX_NDD && TARGET_APX_NF
    8106              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8107              :             return 736; /* *andqi_1_zexthi_nf */
    8108              :           if (pnum_clobbers == NULL
    8109              :               || !
    8110              : #line 13412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8111              : (TARGET_APX_NDD && true
    8112              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8113              :             return -1;
    8114              :           *pnum_clobbers = 1;
    8115              :           return 737; /* *andqi_1_zexthi */
    8116              : 
    8117              :         case UNSPEC:
    8118              :           if (XVECLEN (x5, 0) != 2)
    8119              :             return -1;
    8120              :           x15 = XVECEXP (x5, 0, 0);
    8121              :           operands[1] = x15;
    8122              :           x16 = XVECEXP (x5, 0, 1);
    8123              :           operands[2] = x16;
    8124              :           x6 = XEXP (x4, 1);
    8125              :           operands[3] = x6;
    8126              :           switch (XINT (x5, 1))
    8127              :             {
    8128              :             case 159:
    8129              :               switch (pattern1098 (x4))
    8130              :                 {
    8131              :                 case 0:
    8132              :                   if (!(
    8133              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8134              : (TARGET_AVX512BW
    8135              :    && (2
    8136              :        > GET_MODE_SIZE (DImode))) && 
    8137              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8138              : (TARGET_AVX512BW)))
    8139              :                     return -1;
    8140              :                   return 8270; /* *avx512bw_testmv64qi3_zext_mask */
    8141              : 
    8142              :                 case 1:
    8143              :                   if (!(
    8144              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8145              : (TARGET_AVX512BW
    8146              :    && (2
    8147              :        > GET_MODE_SIZE (SImode))) && 
    8148              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8149              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    8150              :                     return -1;
    8151              :                   return 8273; /* *avx512vl_testmv32qi3_zext_mask */
    8152              : 
    8153              :                 case 2:
    8154              :                   if (!(
    8155              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8156              : (TARGET_AVX512BW
    8157              :    && (2
    8158              :        > GET_MODE_SIZE (SImode))) && 
    8159              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8160              : (TARGET_AVX512BW)))
    8161              :                     return -1;
    8162              :                   return 8279; /* *avx512bw_testmv32hi3_zext_mask */
    8163              : 
    8164              :                 case 3:
    8165              :                   if (!(
    8166              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8167              : (TARGET_AVX512BW
    8168              :    && (2
    8169              :        > GET_MODE_SIZE (HImode))) && 
    8170              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8171              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    8172              :                     return -1;
    8173              :                   return 8276; /* *avx512vl_testmv16qi3_zext_mask */
    8174              : 
    8175              :                 case 4:
    8176              :                   if (!(
    8177              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8178              : (TARGET_AVX512BW
    8179              :    && (2
    8180              :        > GET_MODE_SIZE (HImode))) && 
    8181              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8182              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    8183              :                     return -1;
    8184              :                   return 8282; /* *avx512vl_testmv16hi3_zext_mask */
    8185              : 
    8186              :                 case 5:
    8187              :                   if (!
    8188              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8189              : (TARGET_AVX512BW
    8190              :    && (2
    8191              :        > GET_MODE_SIZE (HImode))))
    8192              :                     return -1;
    8193              :                   return 8288; /* *avx512f_testmv16si3_zext_mask */
    8194              : 
    8195              :                 case 6:
    8196              :                   if (!(
    8197              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8198              : (TARGET_AVX512BW
    8199              :    && (2
    8200              :        > GET_MODE_SIZE (QImode))) && 
    8201              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8202              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    8203              :                     return -1;
    8204              :                   return 8285; /* *avx512vl_testmv8hi3_zext_mask */
    8205              : 
    8206              :                 case 7:
    8207              :                   if (!(
    8208              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8209              : (TARGET_AVX512BW
    8210              :    && (2
    8211              :        > GET_MODE_SIZE (QImode))) && 
    8212              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8213              : (TARGET_AVX512VL)))
    8214              :                     return -1;
    8215              :                   return 8291; /* *avx512vl_testmv8si3_zext_mask */
    8216              : 
    8217              :                 case 8:
    8218              :                   if (!(
    8219              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8220              : (TARGET_AVX512BW
    8221              :    && (2
    8222              :        > GET_MODE_SIZE (QImode))) && 
    8223              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8224              : (TARGET_AVX512VL)))
    8225              :                     return -1;
    8226              :                   return 8294; /* *avx512vl_testmv4si3_zext_mask */
    8227              : 
    8228              :                 case 9:
    8229              :                   if (!
    8230              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8231              : (TARGET_AVX512BW
    8232              :    && (2
    8233              :        > GET_MODE_SIZE (QImode))))
    8234              :                     return -1;
    8235              :                   return 8297; /* *avx512f_testmv8di3_zext_mask */
    8236              : 
    8237              :                 case 10:
    8238              :                   if (!(
    8239              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8240              : (TARGET_AVX512BW
    8241              :    && (2
    8242              :        > GET_MODE_SIZE (QImode))) && 
    8243              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8244              : (TARGET_AVX512VL)))
    8245              :                     return -1;
    8246              :                   return 8300; /* *avx512vl_testmv4di3_zext_mask */
    8247              : 
    8248              :                 case 11:
    8249              :                   if (!(
    8250              : #line 19558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8251              : (TARGET_AVX512BW
    8252              :    && (2
    8253              :        > GET_MODE_SIZE (QImode))) && 
    8254              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8255              : (TARGET_AVX512VL)))
    8256              :                     return -1;
    8257              :                   return 8303; /* *avx512vl_testmv2di3_zext_mask */
    8258              : 
    8259              :                 default:
    8260              :                   return -1;
    8261              :                 }
    8262              : 
    8263              :             case 160:
    8264              :               switch (pattern1098 (x4))
    8265              :                 {
    8266              :                 case 0:
    8267              :                   if (!(
    8268              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8269              : (TARGET_AVX512BW
    8270              :    && (2
    8271              :        > GET_MODE_SIZE (DImode))) && 
    8272              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8273              : (TARGET_AVX512BW)))
    8274              :                     return -1;
    8275              :                   return 8342; /* *avx512bw_testnmv64qi3_zext_mask */
    8276              : 
    8277              :                 case 1:
    8278              :                   if (!(
    8279              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8280              : (TARGET_AVX512BW
    8281              :    && (2
    8282              :        > GET_MODE_SIZE (SImode))) && 
    8283              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8284              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    8285              :                     return -1;
    8286              :                   return 8345; /* *avx512vl_testnmv32qi3_zext_mask */
    8287              : 
    8288              :                 case 2:
    8289              :                   if (!(
    8290              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8291              : (TARGET_AVX512BW
    8292              :    && (2
    8293              :        > GET_MODE_SIZE (SImode))) && 
    8294              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8295              : (TARGET_AVX512BW)))
    8296              :                     return -1;
    8297              :                   return 8351; /* *avx512bw_testnmv32hi3_zext_mask */
    8298              : 
    8299              :                 case 3:
    8300              :                   if (!(
    8301              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8302              : (TARGET_AVX512BW
    8303              :    && (2
    8304              :        > GET_MODE_SIZE (HImode))) && 
    8305              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8306              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    8307              :                     return -1;
    8308              :                   return 8348; /* *avx512vl_testnmv16qi3_zext_mask */
    8309              : 
    8310              :                 case 4:
    8311              :                   if (!(
    8312              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8313              : (TARGET_AVX512BW
    8314              :    && (2
    8315              :        > GET_MODE_SIZE (HImode))) && 
    8316              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8317              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    8318              :                     return -1;
    8319              :                   return 8354; /* *avx512vl_testnmv16hi3_zext_mask */
    8320              : 
    8321              :                 case 5:
    8322              :                   if (!
    8323              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8324              : (TARGET_AVX512BW
    8325              :    && (2
    8326              :        > GET_MODE_SIZE (HImode))))
    8327              :                     return -1;
    8328              :                   return 8360; /* *avx512f_testnmv16si3_zext_mask */
    8329              : 
    8330              :                 case 6:
    8331              :                   if (!(
    8332              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8333              : (TARGET_AVX512BW
    8334              :    && (2
    8335              :        > GET_MODE_SIZE (QImode))) && 
    8336              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8337              : (TARGET_AVX512VL && TARGET_AVX512BW)))
    8338              :                     return -1;
    8339              :                   return 8357; /* *avx512vl_testnmv8hi3_zext_mask */
    8340              : 
    8341              :                 case 7:
    8342              :                   if (!(
    8343              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8344              : (TARGET_AVX512BW
    8345              :    && (2
    8346              :        > GET_MODE_SIZE (QImode))) && 
    8347              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8348              : (TARGET_AVX512VL)))
    8349              :                     return -1;
    8350              :                   return 8363; /* *avx512vl_testnmv8si3_zext_mask */
    8351              : 
    8352              :                 case 8:
    8353              :                   if (!(
    8354              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8355              : (TARGET_AVX512BW
    8356              :    && (2
    8357              :        > GET_MODE_SIZE (QImode))) && 
    8358              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8359              : (TARGET_AVX512VL)))
    8360              :                     return -1;
    8361              :                   return 8366; /* *avx512vl_testnmv4si3_zext_mask */
    8362              : 
    8363              :                 case 9:
    8364              :                   if (!
    8365              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8366              : (TARGET_AVX512BW
    8367              :    && (2
    8368              :        > GET_MODE_SIZE (QImode))))
    8369              :                     return -1;
    8370              :                   return 8369; /* *avx512f_testnmv8di3_zext_mask */
    8371              : 
    8372              :                 case 10:
    8373              :                   if (!(
    8374              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8375              : (TARGET_AVX512BW
    8376              :    && (2
    8377              :        > GET_MODE_SIZE (QImode))) && 
    8378              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8379              : (TARGET_AVX512VL)))
    8380              :                     return -1;
    8381              :                   return 8372; /* *avx512vl_testnmv4di3_zext_mask */
    8382              : 
    8383              :                 case 11:
    8384              :                   if (!(
    8385              : #line 19588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8386              : (TARGET_AVX512BW
    8387              :    && (2
    8388              :        > GET_MODE_SIZE (QImode))) && 
    8389              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8390              : (TARGET_AVX512VL)))
    8391              :                     return -1;
    8392              :                   return 8375; /* *avx512vl_testnmv2di3_zext_mask */
    8393              : 
    8394              :                 default:
    8395              :                   return -1;
    8396              :                 }
    8397              : 
    8398              :             default:
    8399              :               return -1;
    8400              :             }
    8401              : 
    8402              :         default:
    8403              :           return -1;
    8404              :         }
    8405              : 
    8406              :     case IOR:
    8407              :       if (pattern85 (x3) != 0)
    8408              :         return -1;
    8409              :       if (
    8410              : #line 14539 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8411              : (TARGET_APX_NDD && TARGET_APX_NF
    8412              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8413              :         return 871; /* *iorqi_1_zexthi_nf */
    8414              :       if (pnum_clobbers == NULL
    8415              :           || !
    8416              : #line 14539 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8417              : (TARGET_APX_NDD && true
    8418              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8419              :         return -1;
    8420              :       *pnum_clobbers = 1;
    8421              :       return 872; /* *iorqi_1_zexthi */
    8422              : 
    8423              :     case XOR:
    8424              :       if (pattern85 (x3) != 0)
    8425              :         return -1;
    8426              :       if (
    8427              : #line 14539 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8428              : (TARGET_APX_NDD && TARGET_APX_NF
    8429              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8430              :         return 873; /* *xorqi_1_zexthi_nf */
    8431              :       if (pnum_clobbers == NULL
    8432              :           || !
    8433              : #line 14539 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8434              : (TARGET_APX_NDD && true
    8435              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    8436              :         return -1;
    8437              :       *pnum_clobbers = 1;
    8438              :       return 874; /* *xorqi_1_zexthi */
    8439              : 
    8440              :     case NEG:
    8441              :       if (pattern86 (x3) != 0)
    8442              :         return -1;
    8443              :       if (
    8444              : #line 15253 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8445              : (TARGET_APX_NDD && TARGET_APX_NF))
    8446              :         return 994; /* *negqi_1_zexthi_nf */
    8447              :       if (pnum_clobbers == NULL
    8448              :           || !
    8449              : #line 15253 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8450              : (TARGET_APX_NDD && true))
    8451              :         return -1;
    8452              :       *pnum_clobbers = 1;
    8453              :       return 995; /* *negqi_1_zexthi */
    8454              : 
    8455              :     case NOT:
    8456              :       if (pattern86 (x3) != 0
    8457              :           || !
    8458              : #line 15946 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8459              : (TARGET_APX_NDD))
    8460              :         return -1;
    8461              :       return 1067; /* *one_cmplqi2_1_zexthi */
    8462              : 
    8463              :     case ASHIFT:
    8464              :       if (pattern87 (x3) != 0)
    8465              :         return -1;
    8466              :       if (
    8467              : #line 16986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8468              : (TARGET_APX_NDD && TARGET_APX_NF))
    8469              :         return 1125; /* *ashlqi3_1_zexthi_nf */
    8470              :       if (pnum_clobbers == NULL
    8471              :           || !
    8472              : #line 16986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8473              : (TARGET_APX_NDD && true))
    8474              :         return -1;
    8475              :       *pnum_clobbers = 1;
    8476              :       return 1126; /* *ashlqi3_1_zexthi */
    8477              : 
    8478              :     case LSHIFTRT:
    8479              :       if (pattern87 (x3) != 0)
    8480              :         return -1;
    8481              :       if (
    8482              : #line 18420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8483              : (TARGET_APX_NDD && TARGET_APX_NF))
    8484              :         return 1218; /* *lshrqi3_1_zexthi_nf */
    8485              :       if (pnum_clobbers == NULL
    8486              :           || !
    8487              : #line 18420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8488              : (TARGET_APX_NDD && true))
    8489              :         return -1;
    8490              :       *pnum_clobbers = 1;
    8491              :       return 1219; /* *lshrqi3_1_zexthi */
    8492              : 
    8493              :     case ASHIFTRT:
    8494              :       if (pattern87 (x3) != 0)
    8495              :         return -1;
    8496              :       if (
    8497              : #line 18420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8498              : (TARGET_APX_NDD && TARGET_APX_NF))
    8499              :         return 1220; /* *ashrqi3_1_zexthi_nf */
    8500              :       if (pnum_clobbers == NULL
    8501              :           || !
    8502              : #line 18420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8503              : (TARGET_APX_NDD && true))
    8504              :         return -1;
    8505              :       *pnum_clobbers = 1;
    8506              :       return 1221; /* *ashrqi3_1_zexthi */
    8507              : 
    8508              :     case ROTATE:
    8509              :       if (pattern87 (x3) != 0)
    8510              :         return -1;
    8511              :       if (
    8512              : #line 19526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8513              : (TARGET_APX_NDD && TARGET_APX_NF))
    8514              :         return 1383; /* *rotlqi3_1_zexthi_nf */
    8515              :       if (pnum_clobbers == NULL
    8516              :           || !
    8517              : #line 19526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8518              : (TARGET_APX_NDD && true))
    8519              :         return -1;
    8520              :       *pnum_clobbers = 1;
    8521              :       return 1384; /* *rotlqi3_1_zexthi */
    8522              : 
    8523              :     case ROTATERT:
    8524              :       if (pattern87 (x3) != 0)
    8525              :         return -1;
    8526              :       if (
    8527              : #line 19526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8528              : (TARGET_APX_NDD && TARGET_APX_NF))
    8529              :         return 1385; /* *rotrqi3_1_zexthi_nf */
    8530              :       if (pnum_clobbers == NULL
    8531              :           || !
    8532              : #line 19526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    8533              : (TARGET_APX_NDD && true))
    8534              :         return -1;
    8535              :       *pnum_clobbers = 1;
    8536              :       return 1386; /* *rotrqi3_1_zexthi */
    8537              : 
    8538              :     case VEC_SELECT:
    8539              :       x6 = XEXP (x4, 1);
    8540              :       if (GET_CODE (x6) != PARALLEL)
    8541              :         return -1;
    8542              :       x5 = XEXP (x4, 0);
    8543              :       operands[1] = x5;
    8544              :       switch (XVECLEN (x6, 0))
    8545              :         {
    8546              :         case 4:
    8547              :           if (pattern621 (x3) != 0
    8548              :               || !
    8549              : #line 5045 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8550              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8551              :             return -1;
    8552              :           return 2359; /* sse4_1_zero_extendv4qiv4hi2 */
    8553              : 
    8554              :         case 2:
    8555              :           switch (pattern622 (x3))
    8556              :             {
    8557              :             case 0:
    8558              :               if (!
    8559              : #line 5078 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8560              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8561              :                 return -1;
    8562              :               return 2361; /* sse4_1_zero_extendv2hiv2si2 */
    8563              : 
    8564              :             case 1:
    8565              :               if (!
    8566              : #line 5111 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8567              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8568              :                 return -1;
    8569              :               return 2363; /* sse4_1_zero_extendv2qiv2si2 */
    8570              : 
    8571              :             case 2:
    8572              :               if (!
    8573              : #line 5138 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8574              : (TARGET_SSE4_1))
    8575              :                 return -1;
    8576              :               return 2365; /* sse4_1_zero_extendv2qiv2hi2 */
    8577              : 
    8578              :             default:
    8579              :               return -1;
    8580              :             }
    8581              : 
    8582              :         case 1:
    8583              :           if (!register_operand (operands[0], E_HImode)
    8584              :               || GET_MODE (x3) != E_HImode
    8585              :               || GET_MODE (x4) != E_QImode)
    8586              :             return -1;
    8587              :           x17 = XVECEXP (x6, 0, 0);
    8588              :           operands[2] = x17;
    8589              :           switch (pattern991 ())
    8590              :             {
    8591              :             case 0:
    8592              :               if (!
    8593              : #line 5519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8594              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8595              :                 return -1;
    8596              :               return 2381; /* *mmx_pextrb_zext */
    8597              : 
    8598              :             case 1:
    8599              :               if (!
    8600              : #line 6186 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8601              : (TARGET_SSE4_1))
    8602              :                 return -1;
    8603              :               return 2419; /* *pextrb_zext */
    8604              : 
    8605              :             case 2:
    8606              :               if (!
    8607              : #line 21618 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8608              : (TARGET_SSE4_1))
    8609              :                 return -1;
    8610              :               return 8539; /* *vec_extractv16qi_zext */
    8611              : 
    8612              :             default:
    8613              :               return -1;
    8614              :             }
    8615              : 
    8616              :         default:
    8617              :           return -1;
    8618              :         }
    8619              : 
    8620              :     case UNSPEC:
    8621              :       return recog_29 (x1, insn, pnum_clobbers);
    8622              : 
    8623              :     default:
    8624              :       return -1;
    8625              :     }
    8626              : }
    8627              : 
    8628              :  int
    8629              : recog_65 (rtx x1 ATTRIBUTE_UNUSED,
    8630              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    8631              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    8632              : {
    8633              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    8634              :   rtx x2, x3, x4, x5, x6, x7;
    8635              :   int res ATTRIBUTE_UNUSED;
    8636              :   x2 = XEXP (x1, 0);
    8637              :   operands[0] = x2;
    8638              :   x3 = XEXP (x1, 1);
    8639              :   x4 = XEXP (x3, 0);
    8640              :   switch (GET_CODE (x4))
    8641              :     {
    8642              :     case REG:
    8643              :     case SUBREG:
    8644              :       operands[2] = x4;
    8645              :       x5 = XEXP (x3, 2);
    8646              :       if (GET_CODE (x5) != CONST_INT)
    8647              :         return -1;
    8648              :       operands[3] = x5;
    8649              :       x6 = XEXP (x3, 1);
    8650              :       operands[1] = x6;
    8651              :       switch (GET_MODE (operands[0]))
    8652              :         {
    8653              :         case E_V2SFmode:
    8654              :           if (register_operand (operands[0], E_V2SFmode)
    8655              :               && GET_MODE (x3) == E_V2SFmode
    8656              :               && register_operand (operands[2], E_V2SFmode)
    8657              :               && register_operand (operands[1], E_V2SFmode)
    8658              :               && const_0_to_3_operand (operands[3], E_SImode)
    8659              :               && 
    8660              : #line 1321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8661              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8662              :             return 2128; /* *mmx_blendps */
    8663              :           break;
    8664              : 
    8665              :         case E_V4HFmode:
    8666              :           if (pattern873 (x3, 
    8667              : E_V4HFmode) == 0
    8668              :               && 
    8669              : #line 5643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8670              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8671              :             return 2390; /* *mmx_pblendw64 */
    8672              :           break;
    8673              : 
    8674              :         case E_V4BFmode:
    8675              :           if (pattern873 (x3, 
    8676              : E_V4BFmode) == 0
    8677              :               && 
    8678              : #line 5643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8679              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8680              :             return 2391; /* *mmx_pblendw64 */
    8681              :           break;
    8682              : 
    8683              :         case E_V4HImode:
    8684              :           if (pattern873 (x3, 
    8685              : E_V4HImode) == 0
    8686              :               && 
    8687              : #line 5643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8688              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE))
    8689              :             return 2392; /* *mmx_pblendw64 */
    8690              :           break;
    8691              : 
    8692              :         case E_V2HFmode:
    8693              :           if (pattern874 (x3, 
    8694              : E_V2HFmode) == 0
    8695              :               && 
    8696              : #line 5662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8697              : (TARGET_SSE4_1))
    8698              :             return 2393; /* *mmx_pblendw32 */
    8699              :           break;
    8700              : 
    8701              :         case E_V2BFmode:
    8702              :           if (pattern874 (x3, 
    8703              : E_V2BFmode) == 0
    8704              :               && 
    8705              : #line 5662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8706              : (TARGET_SSE4_1))
    8707              :             return 2394; /* *mmx_pblendw32 */
    8708              :           break;
    8709              : 
    8710              :         case E_V2HImode:
    8711              :           if (pattern874 (x3, 
    8712              : E_V2HImode) == 0
    8713              :               && 
    8714              : #line 5662 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8715              : (TARGET_SSE4_1))
    8716              :             return 2395; /* *mmx_pblendw32 */
    8717              :           break;
    8718              : 
    8719              :         default:
    8720              :           break;
    8721              :         }
    8722              :       if (XWINT (x5, 0) != 1L)
    8723              :         return -1;
    8724              :       operands[1] = x6;
    8725              :       switch (GET_MODE (operands[0]))
    8726              :         {
    8727              :         case E_V2SFmode:
    8728              :           if (pattern875 (x3, 
    8729              : E_V2SFmode) != 0
    8730              :               || !
    8731              : #line 1767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8732              : (TARGET_MMX_WITH_SSE))
    8733              :             return -1;
    8734              :           return 2144; /* *mmx_movss_v2sf */
    8735              : 
    8736              :         case E_V2SImode:
    8737              :           if (pattern875 (x3, 
    8738              : E_V2SImode) != 0
    8739              :               || !
    8740              : #line 1767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8741              : (TARGET_MMX_WITH_SSE))
    8742              :             return -1;
    8743              :           return 2145; /* *mmx_movss_v2si */
    8744              : 
    8745              :         default:
    8746              :           return -1;
    8747              :         }
    8748              : 
    8749              :     case VEC_DUPLICATE:
    8750              :       x7 = XEXP (x4, 0);
    8751              :       operands[2] = x7;
    8752              :       x6 = XEXP (x3, 1);
    8753              :       operands[1] = x6;
    8754              :       x5 = XEXP (x3, 2);
    8755              :       operands[3] = x5;
    8756              :       if (!const_int_operand (operands[3], E_SImode))
    8757              :         return -1;
    8758              :       switch (GET_MODE (operands[0]))
    8759              :         {
    8760              :         case E_V2SImode:
    8761              :           if (pattern876 (x3, 
    8762              : E_V2SImode, 
    8763              : E_SImode) != 0
    8764              :               || !
    8765              : #line 5300 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8766              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE
    8767              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8768              :        < GET_MODE_NUNITS (V2SImode))))
    8769              :             return -1;
    8770              :           return 2370; /* *mmx_pinsrd */
    8771              : 
    8772              :         case E_V4HFmode:
    8773              :           if (pattern876 (x3, 
    8774              : E_V4HFmode, 
    8775              : E_HFmode) != 0
    8776              :               || !
    8777              : #line 5331 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8778              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8779              :    && (TARGET_SSE || TARGET_3DNOW_A)
    8780              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8781              :        < GET_MODE_NUNITS (V4HImode))))
    8782              :             return -1;
    8783              :           return 2371; /* *mmx_pinsrw */
    8784              : 
    8785              :         case E_V4BFmode:
    8786              :           if (pattern876 (x3, 
    8787              : E_V4BFmode, 
    8788              : E_BFmode) != 0
    8789              :               || !
    8790              : #line 5331 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8791              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8792              :    && (TARGET_SSE || TARGET_3DNOW_A)
    8793              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8794              :        < GET_MODE_NUNITS (V4HImode))))
    8795              :             return -1;
    8796              :           return 2372; /* *mmx_pinsrw */
    8797              : 
    8798              :         case E_V4HImode:
    8799              :           if (pattern876 (x3, 
    8800              : E_V4HImode, 
    8801              : E_HImode) != 0
    8802              :               || !
    8803              : #line 5331 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8804              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
    8805              :    && (TARGET_SSE || TARGET_3DNOW_A)
    8806              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8807              :        < GET_MODE_NUNITS (V4HImode))))
    8808              :             return -1;
    8809              :           return 2373; /* *mmx_pinsrw */
    8810              : 
    8811              :         case E_V8QImode:
    8812              :           if (pattern876 (x3, 
    8813              : E_V8QImode, 
    8814              : E_QImode) != 0
    8815              :               || !
    8816              : #line 5387 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8817              : (TARGET_SSE4_1 && TARGET_MMX_WITH_SSE
    8818              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8819              :        < GET_MODE_NUNITS (V8QImode))))
    8820              :             return -1;
    8821              :           return 2374; /* *mmx_pinsrb */
    8822              : 
    8823              :         case E_V2HFmode:
    8824              :           if (pattern876 (x3, 
    8825              : E_V2HFmode, 
    8826              : E_HFmode) != 0
    8827              :               || !
    8828              : #line 6010 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8829              : (TARGET_SSE2
    8830              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8831              :        < GET_MODE_NUNITS (V2HImode))))
    8832              :             return -1;
    8833              :           return 2409; /* *pinsrw */
    8834              : 
    8835              :         case E_V2BFmode:
    8836              :           if (pattern876 (x3, 
    8837              : E_V2BFmode, 
    8838              : E_BFmode) != 0
    8839              :               || !
    8840              : #line 6010 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8841              : (TARGET_SSE2
    8842              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8843              :        < GET_MODE_NUNITS (V2HImode))))
    8844              :             return -1;
    8845              :           return 2410; /* *pinsrw */
    8846              : 
    8847              :         case E_V2HImode:
    8848              :           if (pattern876 (x3, 
    8849              : E_V2HImode, 
    8850              : E_HImode) != 0
    8851              :               || !
    8852              : #line 6010 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8853              : (TARGET_SSE2
    8854              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8855              :        < GET_MODE_NUNITS (V2HImode))))
    8856              :             return -1;
    8857              :           return 2411; /* *pinsrw */
    8858              : 
    8859              :         case E_V4QImode:
    8860              :           if (pattern876 (x3, 
    8861              : E_V4QImode, 
    8862              : E_QImode) != 0
    8863              :               || !
    8864              : #line 6064 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
    8865              : (TARGET_SSE4_1
    8866              :    && ((unsigned) exact_log2 (INTVAL (operands[3]))
    8867              :        < GET_MODE_NUNITS (V4QImode))))
    8868              :             return -1;
    8869              :           return 2412; /* *pinsrb */
    8870              : 
    8871              :         default:
    8872              :           return -1;
    8873              :         }
    8874              : 
    8875              :     case SS_TRUNCATE:
    8876              :       switch (pattern107 (x3))
    8877              :         {
    8878              :         case 0:
    8879              :           if (!
    8880              : #line 15872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8881              : (TARGET_AVX512VL))
    8882              :             return -1;
    8883              :           return 7350; /* avx512vl_ss_truncatev2div2qi2_mask_store_1 */
    8884              : 
    8885              :         case 1:
    8886              :           if (!
    8887              : #line 15967 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8888              : (TARGET_AVX512VL))
    8889              :             return -1;
    8890              :           return 7377; /* avx512vl_ss_truncatev4siv4qi2_mask_store_1 */
    8891              : 
    8892              :         case 2:
    8893              :           if (!
    8894              : #line 15967 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8895              : (TARGET_AVX512VL))
    8896              :             return -1;
    8897              :           return 7380; /* avx512vl_ss_truncatev4div4qi2_mask_store_1 */
    8898              : 
    8899              :         case 3:
    8900              :           if (!(
    8901              : #line 16065 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8902              : (TARGET_AVX512VL) && 
    8903              : #line 15989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8904              : (TARGET_AVX512BW)))
    8905              :             return -1;
    8906              :           return 7407; /* avx512vl_ss_truncatev8hiv8qi2_mask_store_1 */
    8907              : 
    8908              :         case 4:
    8909              :           if (!
    8910              : #line 16065 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8911              : (TARGET_AVX512VL))
    8912              :             return -1;
    8913              :           return 7410; /* avx512vl_ss_truncatev8siv8qi2_mask_store_1 */
    8914              : 
    8915              :         case 5:
    8916              :           if (!
    8917              : #line 16577 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8918              : (TARGET_AVX512F))
    8919              :             return -1;
    8920              :           return 7502; /* avx512f_ss_truncatev8div16qi2_mask_store_1 */
    8921              : 
    8922              :         case 6:
    8923              :           if (!
    8924              : #line 16219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8925              : (TARGET_AVX512VL))
    8926              :             return -1;
    8927              :           return 7447; /* avx512vl_ss_truncatev4siv4hi2_mask_store_1 */
    8928              : 
    8929              :         case 7:
    8930              :           if (!
    8931              : #line 16219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8932              : (TARGET_AVX512VL))
    8933              :             return -1;
    8934              :           return 7450; /* avx512vl_ss_truncatev4div4hi2_mask_store_1 */
    8935              : 
    8936              :         case 8:
    8937              :           if (!
    8938              : #line 16306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8939              : (TARGET_AVX512VL))
    8940              :             return -1;
    8941              :           return 7465; /* avx512vl_ss_truncatev2div2hi2_mask_store_1 */
    8942              : 
    8943              :         case 9:
    8944              :           if (!
    8945              : #line 16452 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8946              : (TARGET_AVX512VL))
    8947              :             return -1;
    8948              :           return 7484; /* avx512vl_ss_truncatev2div2si2_mask_store_1 */
    8949              : 
    8950              :         default:
    8951              :           return -1;
    8952              :         }
    8953              : 
    8954              :     case TRUNCATE:
    8955              :       switch (pattern107 (x3))
    8956              :         {
    8957              :         case 0:
    8958              :           if (!
    8959              : #line 15872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8960              : (TARGET_AVX512VL))
    8961              :             return -1;
    8962              :           return 7351; /* avx512vl_truncatev2div2qi2_mask_store_1 */
    8963              : 
    8964              :         case 1:
    8965              :           if (!
    8966              : #line 15967 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8967              : (TARGET_AVX512VL))
    8968              :             return -1;
    8969              :           return 7378; /* avx512vl_truncatev4siv4qi2_mask_store_1 */
    8970              : 
    8971              :         case 2:
    8972              :           if (!
    8973              : #line 15967 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8974              : (TARGET_AVX512VL))
    8975              :             return -1;
    8976              :           return 7381; /* avx512vl_truncatev4div4qi2_mask_store_1 */
    8977              : 
    8978              :         case 3:
    8979              :           if (!(
    8980              : #line 16065 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8981              : (TARGET_AVX512VL) && 
    8982              : #line 15989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8983              : (TARGET_AVX512BW)))
    8984              :             return -1;
    8985              :           return 7408; /* avx512vl_truncatev8hiv8qi2_mask_store_1 */
    8986              : 
    8987              :         case 4:
    8988              :           if (!
    8989              : #line 16065 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8990              : (TARGET_AVX512VL))
    8991              :             return -1;
    8992              :           return 7411; /* avx512vl_truncatev8siv8qi2_mask_store_1 */
    8993              : 
    8994              :         case 5:
    8995              :           if (!
    8996              : #line 16577 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    8997              : (TARGET_AVX512F))
    8998              :             return -1;
    8999              :           return 7503; /* avx512f_truncatev8div16qi2_mask_store_1 */
    9000              : 
    9001              :         case 6:
    9002              :           if (!
    9003              : #line 16219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9004              : (TARGET_AVX512VL))
    9005              :             return -1;
    9006              :           return 7448; /* avx512vl_truncatev4siv4hi2_mask_store_1 */
    9007              : 
    9008              :         case 7:
    9009              :           if (!
    9010              : #line 16219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9011              : (TARGET_AVX512VL))
    9012              :             return -1;
    9013              :           return 7451; /* avx512vl_truncatev4div4hi2_mask_store_1 */
    9014              : 
    9015              :         case 8:
    9016              :           if (!
    9017              : #line 16306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9018              : (TARGET_AVX512VL))
    9019              :             return -1;
    9020              :           return 7466; /* avx512vl_truncatev2div2hi2_mask_store_1 */
    9021              : 
    9022              :         case 9:
    9023              :           if (!
    9024              : #line 16452 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9025              : (TARGET_AVX512VL))
    9026              :             return -1;
    9027              :           return 7485; /* avx512vl_truncatev2div2si2_mask_store_1 */
    9028              : 
    9029              :         default:
    9030              :           return -1;
    9031              :         }
    9032              : 
    9033              :     case US_TRUNCATE:
    9034              :       switch (pattern107 (x3))
    9035              :         {
    9036              :         case 0:
    9037              :           if (!
    9038              : #line 15872 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9039              : (TARGET_AVX512VL))
    9040              :             return -1;
    9041              :           return 7352; /* avx512vl_us_truncatev2div2qi2_mask_store_1 */
    9042              : 
    9043              :         case 1:
    9044              :           if (!
    9045              : #line 15967 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9046              : (TARGET_AVX512VL))
    9047              :             return -1;
    9048              :           return 7379; /* avx512vl_us_truncatev4siv4qi2_mask_store_1 */
    9049              : 
    9050              :         case 2:
    9051              :           if (!
    9052              : #line 15967 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9053              : (TARGET_AVX512VL))
    9054              :             return -1;
    9055              :           return 7382; /* avx512vl_us_truncatev4div4qi2_mask_store_1 */
    9056              : 
    9057              :         case 3:
    9058              :           if (!(
    9059              : #line 16065 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9060              : (TARGET_AVX512VL) && 
    9061              : #line 15989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9062              : (TARGET_AVX512BW)))
    9063              :             return -1;
    9064              :           return 7409; /* avx512vl_us_truncatev8hiv8qi2_mask_store_1 */
    9065              : 
    9066              :         case 4:
    9067              :           if (!
    9068              : #line 16065 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9069              : (TARGET_AVX512VL))
    9070              :             return -1;
    9071              :           return 7412; /* avx512vl_us_truncatev8siv8qi2_mask_store_1 */
    9072              : 
    9073              :         case 5:
    9074              :           if (!
    9075              : #line 16577 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9076              : (TARGET_AVX512F))
    9077              :             return -1;
    9078              :           return 7504; /* avx512f_us_truncatev8div16qi2_mask_store_1 */
    9079              : 
    9080              :         case 6:
    9081              :           if (!
    9082              : #line 16219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9083              : (TARGET_AVX512VL))
    9084              :             return -1;
    9085              :           return 7449; /* avx512vl_us_truncatev4siv4hi2_mask_store_1 */
    9086              : 
    9087              :         case 7:
    9088              :           if (!
    9089              : #line 16219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9090              : (TARGET_AVX512VL))
    9091              :             return -1;
    9092              :           return 7452; /* avx512vl_us_truncatev4div4hi2_mask_store_1 */
    9093              : 
    9094              :         case 8:
    9095              :           if (!
    9096              : #line 16306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9097              : (TARGET_AVX512VL))
    9098              :             return -1;
    9099              :           return 7467; /* avx512vl_us_truncatev2div2hi2_mask_store_1 */
    9100              : 
    9101              :         case 9:
    9102              :           if (!
    9103              : #line 16452 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
    9104              : (TARGET_AVX512VL))
    9105              :             return -1;
    9106              :           return 7486; /* avx512vl_us_truncatev2div2si2_mask_store_1 */
    9107              : 
    9108              :         default:
    9109              :           return -1;
    9110              :         }
    9111              : 
    9112              :     default:
    9113              :       return -1;
    9114              :     }
    9115              : }
    9116              : 
    9117              :  int
    9118              : recog_77 (rtx x1 ATTRIBUTE_UNUSED,
    9119              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9120              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9121              : {
    9122              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9123              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    9124              :   rtx x10, x11;
    9125              :   int res ATTRIBUTE_UNUSED;
    9126              :   x2 = XEXP (x1, 1);
    9127              :   x3 = XEXP (x2, 0);
    9128              :   x4 = XEXP (x3, 0);
    9129              :   switch (GET_CODE (x4))
    9130              :     {
    9131              :     case REG:
    9132              :     case SUBREG:
    9133              :     case MEM:
    9134              :       operands[1] = x4;
    9135              :       x5 = XEXP (x3, 1);
    9136              :       operands[2] = x5;
    9137              :       switch (GET_CODE (operands[2]))
    9138              :         {
    9139              :         case CONST_INT:
    9140              :         case CONST_WIDE_INT:
    9141              :         case CONST_POLY_INT:
    9142              :         case CONST_FIXED:
    9143              :         case CONST_DOUBLE:
    9144              :         case CONST_VECTOR:
    9145              :         case CONST:
    9146              :         case REG:
    9147              :         case SUBREG:
    9148              :         case MEM:
    9149              :         case LABEL_REF:
    9150              :         case SYMBOL_REF:
    9151              :         case HIGH:
    9152              :           switch (pattern114 (x2, pnum_clobbers))
    9153              :             {
    9154              :             case 0:
    9155              :               if (
    9156              : #line 8381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9157              : (TARGET_APX_NDD && TARGET_APX_NF
    9158              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9159              :                 return 398; /* *subqi_1_zextsi_nf */
    9160              :               if (pnum_clobbers == NULL
    9161              :                   || !
    9162              : #line 8381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9163              : (TARGET_APX_NDD && true
    9164              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9165              :                 return -1;
    9166              :               *pnum_clobbers = 1;
    9167              :               return 399; /* *subqi_1_zextsi */
    9168              : 
    9169              :             case 1:
    9170              :               if (
    9171              : #line 8400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9172              : (TARGET_APX_NDD && TARGET_APX_NF
    9173              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9174              :                 return 402; /* *subhi_1_zextsi_nf */
    9175              :               if (pnum_clobbers == NULL
    9176              :                   || !
    9177              : #line 8400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9178              : (TARGET_APX_NDD && true
    9179              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9180              :                 return -1;
    9181              :               *pnum_clobbers = 1;
    9182              :               return 403; /* *subhi_1_zextsi */
    9183              : 
    9184              :             case 2:
    9185              :               if (
    9186              : #line 8381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9187              : (TARGET_APX_NDD && TARGET_APX_NF
    9188              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9189              :                 return 400; /* *subqi_1_zextdi_nf */
    9190              :               if (pnum_clobbers == NULL
    9191              :                   || !
    9192              : #line 8381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9193              : (TARGET_APX_NDD && true
    9194              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9195              :                 return -1;
    9196              :               *pnum_clobbers = 1;
    9197              :               return 401; /* *subqi_1_zextdi */
    9198              : 
    9199              :             case 3:
    9200              :               if (
    9201              : #line 8400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9202              : (TARGET_APX_NDD && TARGET_APX_NF
    9203              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9204              :                 return 404; /* *subhi_1_zextdi_nf */
    9205              :               if (pnum_clobbers == NULL
    9206              :                   || !
    9207              : #line 8400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9208              : (TARGET_APX_NDD && true
    9209              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9210              :                 return -1;
    9211              :               *pnum_clobbers = 1;
    9212              :               return 405; /* *subhi_1_zextdi */
    9213              : 
    9214              :             case 4:
    9215              :               if (!
    9216              : #line 8420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9217              : (TARGET_64BIT
    9218              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
    9219              :                 return -1;
    9220              :               *pnum_clobbers = 1;
    9221              :               return 406; /* *subsi_1_zext */
    9222              : 
    9223              :             default:
    9224              :               return -1;
    9225              :             }
    9226              : 
    9227              :         case LTU:
    9228              :         case UNLT:
    9229              :           switch (pattern762 (x2, pnum_clobbers))
    9230              :             {
    9231              :             case 0:
    9232              :               if (!nonimmediate_operand (operands[1], E_QImode)
    9233              :                   || !ix86_carry_flag_operator (operands[2], E_QImode)
    9234              :                   || !
    9235              : #line 10080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9236              : (TARGET_APX_NDD))
    9237              :                 return -1;
    9238              :               *pnum_clobbers = 1;
    9239              :               return 534; /* *subqi3_carry_zextsi_0 */
    9240              : 
    9241              :             case 1:
    9242              :               if (!nonimmediate_operand (operands[1], E_HImode)
    9243              :                   || !ix86_carry_flag_operator (operands[2], E_HImode)
    9244              :                   || !
    9245              : #line 10099 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9246              : (TARGET_APX_NDD))
    9247              :                 return -1;
    9248              :               *pnum_clobbers = 1;
    9249              :               return 536; /* *subhi3_carry_zextsi_0 */
    9250              : 
    9251              :             case 2:
    9252              :               if (!nonimmediate_operand (operands[1], E_QImode)
    9253              :                   || !ix86_carry_flag_operator (operands[2], E_QImode)
    9254              :                   || !
    9255              : #line 10080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9256              : (TARGET_APX_NDD))
    9257              :                 return -1;
    9258              :               *pnum_clobbers = 1;
    9259              :               return 535; /* *subqi3_carry_zextdi_0 */
    9260              : 
    9261              :             case 3:
    9262              :               if (!nonimmediate_operand (operands[1], E_HImode)
    9263              :                   || !ix86_carry_flag_operator (operands[2], E_HImode)
    9264              :                   || !
    9265              : #line 10099 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9266              : (TARGET_APX_NDD))
    9267              :                 return -1;
    9268              :               *pnum_clobbers = 1;
    9269              :               return 537; /* *subhi3_carry_zextdi_0 */
    9270              : 
    9271              :             case 4:
    9272              :               if (!nonimmediate_operand (operands[1], E_SImode)
    9273              :                   || !ix86_carry_flag_operator (operands[2], E_SImode)
    9274              :                   || !
    9275              : #line 10118 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9276              : (TARGET_64BIT))
    9277              :                 return -1;
    9278              :               *pnum_clobbers = 1;
    9279              :               return 538; /* *subsi3_carry_zext_0 */
    9280              : 
    9281              :             default:
    9282              :               return -1;
    9283              :             }
    9284              : 
    9285              :         case GE:
    9286              :         case GEU:
    9287              :           switch (pattern762 (x2, pnum_clobbers))
    9288              :             {
    9289              :             case 0:
    9290              :               if (!nonimmediate_operand (operands[1], E_QImode)
    9291              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode)
    9292              :                   || !
    9293              : #line 10141 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9294              : (TARGET_APX_NDD))
    9295              :                 return -1;
    9296              :               *pnum_clobbers = 1;
    9297              :               return 540; /* *subqi3_carry_zextsi_0r */
    9298              : 
    9299              :             case 1:
    9300              :               if (!nonimmediate_operand (operands[1], E_HImode)
    9301              :                   || !ix86_carry_flag_unset_operator (operands[2], E_HImode)
    9302              :                   || !
    9303              : #line 10160 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9304              : (TARGET_APX_NDD))
    9305              :                 return -1;
    9306              :               *pnum_clobbers = 1;
    9307              :               return 542; /* *subhi3_carry_zextsi_0r */
    9308              : 
    9309              :             case 2:
    9310              :               if (!nonimmediate_operand (operands[1], E_QImode)
    9311              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode)
    9312              :                   || !
    9313              : #line 10141 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9314              : (TARGET_APX_NDD))
    9315              :                 return -1;
    9316              :               *pnum_clobbers = 1;
    9317              :               return 541; /* *subqi3_carry_zextdi_0r */
    9318              : 
    9319              :             case 3:
    9320              :               if (!nonimmediate_operand (operands[1], E_HImode)
    9321              :                   || !ix86_carry_flag_unset_operator (operands[2], E_HImode)
    9322              :                   || !
    9323              : #line 10160 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9324              : (TARGET_APX_NDD))
    9325              :                 return -1;
    9326              :               *pnum_clobbers = 1;
    9327              :               return 543; /* *subhi3_carry_zextdi_0r */
    9328              : 
    9329              :             case 4:
    9330              :               if (!nonimmediate_operand (operands[1], E_SImode)
    9331              :                   || !ix86_carry_flag_unset_operator (operands[2], E_SImode)
    9332              :                   || !
    9333              : #line 10179 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9334              : (TARGET_64BIT))
    9335              :                 return -1;
    9336              :               *pnum_clobbers = 1;
    9337              :               return 544; /* *subsi3_carry_zext_0r */
    9338              : 
    9339              :             default:
    9340              :               return -1;
    9341              :             }
    9342              : 
    9343              :         default:
    9344              :           return -1;
    9345              :         }
    9346              : 
    9347              :     case MINUS:
    9348              :       if (pnum_clobbers == NULL)
    9349              :         return -1;
    9350              :       x6 = XEXP (x4, 1);
    9351              :       switch (GET_CODE (x6))
    9352              :         {
    9353              :         case LTU:
    9354              :         case UNLT:
    9355              :           operands[3] = x6;
    9356              :           x7 = XEXP (x6, 0);
    9357              :           if (GET_CODE (x7) != REG
    9358              :               || REGNO (x7) != 17)
    9359              :             return -1;
    9360              :           x8 = XEXP (x6, 1);
    9361              :           if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    9362              :             return -1;
    9363              :           x9 = XEXP (x4, 0);
    9364              :           operands[1] = x9;
    9365              :           x5 = XEXP (x3, 1);
    9366              :           operands[2] = x5;
    9367              :           switch (pattern281 (x2))
    9368              :             {
    9369              :             case 0:
    9370              :               if (pattern1551 (x4, 
    9371              : E_QImode) != 0
    9372              :                   || !
    9373              : #line 10005 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9374              : (TARGET_APX_NDD
    9375              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9376              :                 return -1;
    9377              :               *pnum_clobbers = 1;
    9378              :               return 528; /* *subqi3_carry_zextsi */
    9379              : 
    9380              :             case 1:
    9381              :               if (pattern1551 (x4, 
    9382              : E_HImode) != 0
    9383              :                   || !
    9384              : #line 10030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9385              : (TARGET_APX_NDD
    9386              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9387              :                 return -1;
    9388              :               *pnum_clobbers = 1;
    9389              :               return 530; /* *subhi3_carry_zextsi */
    9390              : 
    9391              :             case 2:
    9392              :               if (pattern1551 (x4, 
    9393              : E_QImode) != 0
    9394              :                   || !
    9395              : #line 10005 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9396              : (TARGET_APX_NDD
    9397              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9398              :                 return -1;
    9399              :               *pnum_clobbers = 1;
    9400              :               return 529; /* *subqi3_carry_zextdi */
    9401              : 
    9402              :             case 3:
    9403              :               if (pattern1551 (x4, 
    9404              : E_HImode) != 0
    9405              :                   || !
    9406              : #line 10030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9407              : (TARGET_APX_NDD
    9408              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9409              :                 return -1;
    9410              :               *pnum_clobbers = 1;
    9411              :               return 531; /* *subhi3_carry_zextdi */
    9412              : 
    9413              :             case 4:
    9414              :               if (pattern1551 (x4, 
    9415              : E_SImode) != 0
    9416              :                   || !
    9417              : #line 10055 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9418              : (TARGET_64BIT
    9419              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
    9420              :                 return -1;
    9421              :               *pnum_clobbers = 1;
    9422              :               return 532; /* *subsi3_carry_zext */
    9423              : 
    9424              :             default:
    9425              :               return -1;
    9426              :             }
    9427              : 
    9428              :         default:
    9429              :           return -1;
    9430              :         }
    9431              : 
    9432              :     case CONST_INT:
    9433              :       if (pnum_clobbers == NULL
    9434              :           || !register_operand (operands[0], E_DImode)
    9435              :           || GET_MODE (x2) != E_DImode
    9436              :           || GET_MODE (x3) != E_SImode)
    9437              :         return -1;
    9438              :       x5 = XEXP (x3, 1);
    9439              :       if (GET_MODE (x5) != E_SImode)
    9440              :         return -1;
    9441              :       switch (XWINT (x4, 0))
    9442              :         {
    9443              :         case 63L:
    9444              :           if (GET_CODE (x5) != SUBREG
    9445              :               || maybe_ne (SUBREG_BYTE (x5), 0))
    9446              :             return -1;
    9447              :           x10 = XEXP (x5, 0);
    9448              :           if (GET_CODE (x10) != CLZ
    9449              :               || GET_MODE (x10) != E_DImode)
    9450              :             return -1;
    9451              :           x11 = XEXP (x10, 0);
    9452              :           operands[1] = x11;
    9453              :           if (!nonimmediate_operand (operands[1], E_DImode)
    9454              :               || !
    9455              : #line 22269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9456              : (!TARGET_LZCNT && TARGET_64BIT))
    9457              :             return -1;
    9458              :           *pnum_clobbers = 1;
    9459              :           return 1556; /* bsr_rex64_1_zext */
    9460              : 
    9461              :         case 31L:
    9462              :           if (GET_CODE (x5) != CLZ)
    9463              :             return -1;
    9464              :           x10 = XEXP (x5, 0);
    9465              :           operands[1] = x10;
    9466              :           if (!nonimmediate_operand (operands[1], E_SImode)
    9467              :               || !
    9468              : #line 22312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9469              : (!TARGET_LZCNT && TARGET_64BIT))
    9470              :             return -1;
    9471              :           *pnum_clobbers = 1;
    9472              :           return 1559; /* bsr_zext_1 */
    9473              : 
    9474              :         default:
    9475              :           return -1;
    9476              :         }
    9477              : 
    9478              :     default:
    9479              :       return -1;
    9480              :     }
    9481              : }
    9482              : 
    9483              :  int
    9484              : recog_87 (rtx x1 ATTRIBUTE_UNUSED,
    9485              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9486              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9487              : {
    9488              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9489              :   rtx x2, x3;
    9490              :   int res ATTRIBUTE_UNUSED;
    9491              :   x2 = XEXP (x1, 1);
    9492              :   x3 = XEXP (x2, 1);
    9493              :   switch (GET_CODE (x3))
    9494              :     {
    9495              :     case CONST_INT:
    9496              :     case CONST_WIDE_INT:
    9497              :     case CONST_POLY_INT:
    9498              :     case CONST_FIXED:
    9499              :     case CONST_DOUBLE:
    9500              :     case CONST_VECTOR:
    9501              :     case CONST:
    9502              :     case REG:
    9503              :     case SUBREG:
    9504              :     case MEM:
    9505              :     case LABEL_REF:
    9506              :     case SYMBOL_REF:
    9507              :     case HIGH:
    9508              :       operands[2] = x3;
    9509              :       switch (pattern441 (x2))
    9510              :         {
    9511              :         case 0:
    9512              :           if (pnum_clobbers != NULL
    9513              :               && x86_64_hilo_general_operand (operands[2], E_DImode)
    9514              :               && (
    9515              : #line 8293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9516              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)) && 
    9517              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9518              : (!TARGET_64BIT)))
    9519              :             {
    9520              :               *pnum_clobbers = 1;
    9521              :               return 384; /* *subdi3_doubleword */
    9522              :             }
    9523              :           if (!x86_64_general_operand (operands[2], E_DImode))
    9524              :             return -1;
    9525              :           if ((
    9526              : #line 8357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9527              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)
    9528              :   && TARGET_APX_NF) && 
    9529              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9530              : (TARGET_64BIT)))
    9531              :             return 394; /* *subdi_1_nf */
    9532              :           if (pnum_clobbers == NULL
    9533              :               || !(
    9534              : #line 8357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9535              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)
    9536              :   && true) && 
    9537              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9538              : (TARGET_64BIT)))
    9539              :             return -1;
    9540              :           *pnum_clobbers = 1;
    9541              :           return 395; /* *subdi_1 */
    9542              : 
    9543              :         case 1:
    9544              :           if (
    9545              : #line 8357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9546              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)
    9547              :   && TARGET_APX_NF))
    9548              :             return 392; /* *subsi_1_nf */
    9549              :           if (pnum_clobbers == NULL
    9550              :               || !
    9551              : #line 8357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9552              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)
    9553              :   && true))
    9554              :             return -1;
    9555              :           *pnum_clobbers = 1;
    9556              :           return 393; /* *subsi_1 */
    9557              : 
    9558              :         default:
    9559              :           return -1;
    9560              :         }
    9561              : 
    9562              :     case ZERO_EXTEND:
    9563              :       if (pnum_clobbers == NULL
    9564              :           || GET_MODE (x3) != E_DImode
    9565              :           || pattern767 (x2, 
    9566              : E_SImode, 
    9567              : E_DImode) != 0
    9568              :           || !(
    9569              : #line 8331 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9570              : (ix86_binary_operator_ok (UNKNOWN, DImode, operands, TARGET_APX_NDD)) && 
    9571              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9572              : (!TARGET_64BIT)))
    9573              :         return -1;
    9574              :       *pnum_clobbers = 1;
    9575              :       return 386; /* *subdi3_doubleword_zext */
    9576              : 
    9577              :     case LTU:
    9578              :     case UNLT:
    9579              :       switch (pattern450 (x3, pnum_clobbers))
    9580              :         {
    9581              :         case 0:
    9582              :           if (pattern1218 (x2, 
    9583              : E_SImode) != 0
    9584              :               || !
    9585              : #line 9934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9586              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])))
    9587              :             return -1;
    9588              :           *pnum_clobbers = 1;
    9589              :           return 513; /* *subsi3_carry_0 */
    9590              : 
    9591              :         case 1:
    9592              :           if (pattern1218 (x2, 
    9593              : E_DImode) != 0
    9594              :               || !(
    9595              : #line 9934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9596              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])) && 
    9597              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9598              : (TARGET_64BIT)))
    9599              :             return -1;
    9600              :           *pnum_clobbers = 1;
    9601              :           return 514; /* *subdi3_carry_0 */
    9602              : 
    9603              :         default:
    9604              :           return -1;
    9605              :         }
    9606              : 
    9607              :     case GE:
    9608              :     case GEU:
    9609              :       switch (pattern450 (x3, pnum_clobbers))
    9610              :         {
    9611              :         case 0:
    9612              :           if (pattern1219 (x2, 
    9613              : E_SImode) != 0
    9614              :               || !
    9615              : #line 9968 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9616              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])))
    9617              :             return -1;
    9618              :           *pnum_clobbers = 1;
    9619              :           return 521; /* *subsi3_carry_0r */
    9620              : 
    9621              :         case 1:
    9622              :           if (pattern1219 (x2, 
    9623              : E_DImode) != 0
    9624              :               || !(
    9625              : #line 9968 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9626              : (!MEM_P (operands[0]) || rtx_equal_p (operands[0], operands[1])) && 
    9627              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9628              : (TARGET_64BIT)))
    9629              :             return -1;
    9630              :           *pnum_clobbers = 1;
    9631              :           return 522; /* *subdi3_carry_0r */
    9632              : 
    9633              :         default:
    9634              :           return -1;
    9635              :         }
    9636              : 
    9637              :     case EQ:
    9638              :       switch (pattern452 (x2, pnum_clobbers))
    9639              :         {
    9640              :         case 0:
    9641              :           if (!
    9642              : #line 11063 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9643              : (ix86_unary_operator_ok (MINUS, SImode, operands)
    9644              :    && ix86_pre_reload_split ()))
    9645              :             return -1;
    9646              :           *pnum_clobbers = 1;
    9647              :           return 612; /* *subsi3_eq_0 */
    9648              : 
    9649              :         case 1:
    9650              :           if (!(
    9651              : #line 11063 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9652              : (ix86_unary_operator_ok (MINUS, DImode, operands)
    9653              :    && ix86_pre_reload_split ()) && 
    9654              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9655              : (TARGET_64BIT)))
    9656              :             return -1;
    9657              :           *pnum_clobbers = 1;
    9658              :           return 613; /* *subdi3_eq_0 */
    9659              : 
    9660              :         default:
    9661              :           return -1;
    9662              :         }
    9663              : 
    9664              :     case NE:
    9665              :       switch (pattern452 (x2, pnum_clobbers))
    9666              :         {
    9667              :         case 0:
    9668              :           if (!
    9669              : #line 11084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9670              : (ix86_unary_operator_ok (MINUS, SImode, operands)
    9671              :    && ix86_pre_reload_split ()))
    9672              :             return -1;
    9673              :           *pnum_clobbers = 1;
    9674              :           return 616; /* *subsi3_ne_0 */
    9675              : 
    9676              :         case 1:
    9677              :           if (!(
    9678              : #line 11084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9679              : (ix86_unary_operator_ok (MINUS, DImode, operands)
    9680              :    && ix86_pre_reload_split ()) && 
    9681              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9682              : (TARGET_64BIT)))
    9683              :             return -1;
    9684              :           *pnum_clobbers = 1;
    9685              :           return 617; /* *subdi3_ne_0 */
    9686              : 
    9687              :         default:
    9688              :           return -1;
    9689              :         }
    9690              : 
    9691              :     default:
    9692              :       return -1;
    9693              :     }
    9694              : }
    9695              : 
    9696              :  int
    9697              : recog_90 (rtx x1 ATTRIBUTE_UNUSED,
    9698              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9699              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9700              : {
    9701              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9702              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
    9703              :   rtx x10, x11, x12, x13;
    9704              :   int res ATTRIBUTE_UNUSED;
    9705              :   x2 = XEXP (x1, 1);
    9706              :   x3 = XEXP (x2, 0);
    9707              :   x4 = XEXP (x3, 1);
    9708              :   if (GET_CODE (x4) != CONST_INT)
    9709              :     return -1;
    9710              :   x5 = XEXP (x1, 0);
    9711              :   operands[0] = x5;
    9712              :   switch (GET_CODE (x3))
    9713              :     {
    9714              :     case NE:
    9715              :     case EQ:
    9716              :       if (bt_comparison_operator (x3, E_VOIDmode))
    9717              :         {
    9718              :           res = recog_89 (x1, insn, pnum_clobbers);
    9719              :           if (res >= 0)
    9720              :             return res;
    9721              :         }
    9722              :       if (GET_CODE (x3) != NE
    9723              :           || GET_MODE (x3) != E_QImode
    9724              :           || XWINT (x4, 0) != 0L)
    9725              :         return -1;
    9726              :       x6 = XEXP (x2, 1);
    9727              :       if (GET_CODE (x6) != ZERO_EXTRACT)
    9728              :         return -1;
    9729              :       x7 = XEXP (x6, 1);
    9730              :       if (GET_CODE (x7) != UMIN
    9731              :           || GET_MODE (x7) != E_QImode)
    9732              :         return -1;
    9733              :       x8 = XEXP (x6, 2);
    9734              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    9735              :         return -1;
    9736              :       x9 = XEXP (x2, 2);
    9737              :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    9738              :         return -1;
    9739              :       x10 = XEXP (x3, 0);
    9740              :       operands[2] = x10;
    9741              :       if (!register_operand (operands[2], E_QImode))
    9742              :         return -1;
    9743              :       x11 = XEXP (x6, 0);
    9744              :       operands[1] = x11;
    9745              :       x12 = XEXP (x7, 1);
    9746              :       operands[3] = x12;
    9747              :       if (!const_int_operand (operands[3], E_QImode))
    9748              :         return -1;
    9749              :       x13 = XEXP (x7, 0);
    9750              :       if (!rtx_equal_p (x13, operands[2]))
    9751              :         return -1;
    9752              :       switch (GET_MODE (operands[0]))
    9753              :         {
    9754              :         case E_SImode:
    9755              :           if (pattern884 (x2, 
    9756              : E_SImode) != 0
    9757              :               || !
    9758              : #line 23062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9759              : (TARGET_BMI2 && INTVAL (operands[3]) == 4 * BITS_PER_UNIT))
    9760              :             return -1;
    9761              :           *pnum_clobbers = 1;
    9762              :           return 1622; /* *bmi2_bzhi_si3 */
    9763              : 
    9764              :         case E_DImode:
    9765              :           if (pattern884 (x2, 
    9766              : E_DImode) != 0
    9767              :               || !(
    9768              : #line 23062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9769              : (TARGET_BMI2 && INTVAL (operands[3]) == 8 * BITS_PER_UNIT) && 
    9770              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9771              : (TARGET_64BIT)))
    9772              :             return -1;
    9773              :           *pnum_clobbers = 1;
    9774              :           return 1623; /* *bmi2_bzhi_di3 */
    9775              : 
    9776              :         default:
    9777              :           return -1;
    9778              :         }
    9779              : 
    9780              :     case LTU:
    9781              :     case UNLT:
    9782              :       operands[1] = x3;
    9783              :       if (!ix86_carry_flag_operator (operands[1], E_VOIDmode))
    9784              :         return -1;
    9785              :       x10 = XEXP (x3, 0);
    9786              :       if (GET_CODE (x10) != REG
    9787              :           || REGNO (x10) != 17
    9788              :           || XWINT (x4, 0) != 0L)
    9789              :         return -1;
    9790              :       x6 = XEXP (x2, 1);
    9791              :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + -1])
    9792              :         return -1;
    9793              :       x9 = XEXP (x2, 2);
    9794              :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
    9795              :         return -1;
    9796              :       switch (pattern24 (x2))
    9797              :         {
    9798              :         case 0:
    9799              :           *pnum_clobbers = 1;
    9800              :           return 1827; /* *x86_movsicc_0_m1 */
    9801              : 
    9802              :         case 1:
    9803              :           if (!
    9804              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9805              : (TARGET_64BIT))
    9806              :             return -1;
    9807              :           *pnum_clobbers = 1;
    9808              :           return 1828; /* *x86_movdicc_0_m1 */
    9809              : 
    9810              :         default:
    9811              :           return -1;
    9812              :         }
    9813              : 
    9814              :     default:
    9815              :       return -1;
    9816              :     }
    9817              : }
    9818              : 
    9819              :  int
    9820              : recog_91 (rtx x1 ATTRIBUTE_UNUSED,
    9821              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9822              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9823              : {
    9824              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9825              :   rtx x2, x3, x4, x5, x6, x7;
    9826              :   int res ATTRIBUTE_UNUSED;
    9827              :   x2 = XEXP (x1, 1);
    9828              :   x3 = XEXP (x2, 0);
    9829              :   switch (GET_CODE (x3))
    9830              :     {
    9831              :     case NE:
    9832              :     case EQ:
    9833              :     case GE:
    9834              :     case GT:
    9835              :     case LE:
    9836              :     case LT:
    9837              :     case LTGT:
    9838              :     case GEU:
    9839              :     case GTU:
    9840              :     case LEU:
    9841              :     case LTU:
    9842              :     case UNORDERED:
    9843              :     case ORDERED:
    9844              :     case UNEQ:
    9845              :     case UNGE:
    9846              :     case UNGT:
    9847              :     case UNLE:
    9848              :     case UNLT:
    9849              :       if (pnum_clobbers != NULL)
    9850              :         {
    9851              :           res = recog_90 (x1, insn, pnum_clobbers);
    9852              :           if (res >= 0)
    9853              :             return res;
    9854              :         }
    9855              :       operands[1] = x3;
    9856              :       if (!ix86_comparison_operator (operands[1], E_VOIDmode))
    9857              :         return -1;
    9858              :       switch (pattern249 (x1))
    9859              :         {
    9860              :         case 0:
    9861              :           switch (GET_MODE (operands[0]))
    9862              :             {
    9863              :             case E_SImode:
    9864              :               if (pattern1281 (x2, 
    9865              : E_SImode) != 0
    9866              :                   || !
    9867              : #line 27458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9868              : (TARGET_CMOVE && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
    9869              :                 return -1;
    9870              :               return 1836; /* *movsicc_noc */
    9871              : 
    9872              :             case E_DImode:
    9873              :               if (pattern1281 (x2, 
    9874              : E_DImode) != 0
    9875              :                   || !(
    9876              : #line 27458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9877              : (TARGET_CMOVE && !(MEM_P (operands[2]) && MEM_P (operands[3]))) && 
    9878              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9879              : (TARGET_64BIT)))
    9880              :                 return -1;
    9881              :               return 1837; /* *movdicc_noc */
    9882              : 
    9883              :             default:
    9884              :               return -1;
    9885              :             }
    9886              : 
    9887              :         case 1:
    9888              :           if (!register_operand (operands[0], E_DImode)
    9889              :               || GET_MODE (x2) != E_DImode)
    9890              :             return -1;
    9891              :           x4 = XEXP (x2, 1);
    9892              :           x5 = XEXP (x4, 0);
    9893              :           operands[2] = x5;
    9894              :           if (!nonimmediate_operand (operands[2], E_SImode))
    9895              :             return -1;
    9896              :           x6 = XEXP (x2, 2);
    9897              :           x7 = XEXP (x6, 0);
    9898              :           operands[3] = x7;
    9899              :           if (!nonimmediate_operand (operands[3], E_SImode)
    9900              :               || !
    9901              : #line 27481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9902              : (TARGET_64BIT
    9903              :    && TARGET_CMOVE && !(MEM_P (operands[2]) && MEM_P (operands[3]))))
    9904              :             return -1;
    9905              :           return 1838; /* *movsicc_noc_zext */
    9906              : 
    9907              :         default:
    9908              :           return -1;
    9909              :         }
    9910              : 
    9911              :     default:
    9912              :       return -1;
    9913              :     }
    9914              : }
    9915              : 
    9916              :  int
    9917              : recog_93 (rtx x1 ATTRIBUTE_UNUSED,
    9918              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9919              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
    9920              : {
    9921              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
    9922              :   rtx x2, x3, x4, x5, x6, x7;
    9923              :   int res ATTRIBUTE_UNUSED;
    9924              :   if (pnum_clobbers == NULL)
    9925              :     return -1;
    9926              :   x2 = XEXP (x1, 1);
    9927              :   x3 = XEXP (x2, 0);
    9928              :   if (GET_CODE (x3) != LSHIFTRT)
    9929              :     return -1;
    9930              :   x4 = XEXP (x3, 0);
    9931              :   if (GET_CODE (x4) != MULT)
    9932              :     return -1;
    9933              :   x5 = XEXP (x3, 1);
    9934              :   if (GET_CODE (x5) != CONST_INT)
    9935              :     return -1;
    9936              :   x6 = XEXP (x1, 0);
    9937              :   operands[0] = x6;
    9938              :   x7 = XEXP (x4, 0);
    9939              :   switch (GET_CODE (x7))
    9940              :     {
    9941              :     case SIGN_EXTEND:
    9942              :       switch (pattern769 (x2, 
    9943              : SIGN_EXTEND))
    9944              :         {
    9945              :         case 0:
    9946              :           if (!
    9947              : #line 11950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9948              : (TARGET_64BIT
    9949              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9950              :             return -1;
    9951              :           *pnum_clobbers = 2;
    9952              :           return 661; /* *smuldi3_highpart_1 */
    9953              : 
    9954              :         case 1:
    9955              :           if (!
    9956              : #line 11999 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9957              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9958              :             return -1;
    9959              :           *pnum_clobbers = 2;
    9960              :           return 665; /* *smulsi3_highpart_1 */
    9961              : 
    9962              :         default:
    9963              :           return -1;
    9964              :         }
    9965              : 
    9966              :     case ZERO_EXTEND:
    9967              :       switch (pattern769 (x2, 
    9968              : ZERO_EXTEND))
    9969              :         {
    9970              :         case 0:
    9971              :           if (!
    9972              : #line 11950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9973              : (TARGET_64BIT
    9974              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9975              :             return -1;
    9976              :           *pnum_clobbers = 2;
    9977              :           return 662; /* *umuldi3_highpart_1 */
    9978              : 
    9979              :         case 1:
    9980              :           if (!
    9981              : #line 11999 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
    9982              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
    9983              :             return -1;
    9984              :           *pnum_clobbers = 2;
    9985              :           return 666; /* *umulsi3_highpart_1 */
    9986              : 
    9987              :         default:
    9988              :           return -1;
    9989              :         }
    9990              : 
    9991              :     default:
    9992              :       return -1;
    9993              :     }
    9994              : }
    9995              : 
    9996              :  int
    9997              : recog_96 (rtx x1 ATTRIBUTE_UNUSED,
    9998              :         rtx_insn *insn ATTRIBUTE_UNUSED,
    9999              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10000              : {
   10001              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10002              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   10003              :   int res ATTRIBUTE_UNUSED;
   10004              :   x2 = XEXP (x1, 0);
   10005              :   operands[0] = x2;
   10006              :   x3 = XEXP (x1, 1);
   10007              :   x4 = XEXP (x3, 0);
   10008              :   switch (GET_CODE (x4))
   10009              :     {
   10010              :     case XOR:
   10011              :       if (pnum_clobbers == NULL)
   10012              :         return -1;
   10013              :       x5 = XEXP (x4, 0);
   10014              :       operands[1] = x5;
   10015              :       x6 = XEXP (x4, 1);
   10016              :       operands[2] = x6;
   10017              :       switch (GET_MODE (operands[0]))
   10018              :         {
   10019              :         case E_SImode:
   10020              :           if (!nonimmediate_operand (operands[0], E_SImode)
   10021              :               || pattern21 (x3, 
   10022              : E_SImode) != 0
   10023              :               || !
   10024              : #line 14425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10025              : (ix86_binary_operator_ok (XOR, SImode, operands, TARGET_APX_NDD)))
   10026              :             return -1;
   10027              :           *pnum_clobbers = 1;
   10028              :           return 864; /* *notxorsi_1 */
   10029              : 
   10030              :         case E_DImode:
   10031              :           if (!nonimmediate_operand (operands[0], E_DImode)
   10032              :               || pattern21 (x3, 
   10033              : E_DImode) != 0
   10034              :               || !(
   10035              : #line 14425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10036              : (ix86_binary_operator_ok (XOR, DImode, operands, TARGET_APX_NDD)) && 
   10037              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10038              : (TARGET_64BIT)))
   10039              :             return -1;
   10040              :           *pnum_clobbers = 1;
   10041              :           return 865; /* *notxordi_1 */
   10042              : 
   10043              :         default:
   10044              :           return -1;
   10045              :         }
   10046              : 
   10047              :     case REG:
   10048              :     case SUBREG:
   10049              :     case MEM:
   10050              :       switch (pattern121 (x3))
   10051              :         {
   10052              :         case 0:
   10053              :           if ((
   10054              : #line 15911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10055              : (ix86_unary_operator_ok (NOT, DImode, operands, TARGET_APX_NDD)) && 
   10056              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10057              : (!TARGET_64BIT)))
   10058              :             return 1062; /* *one_cmpldi2_doubleword */
   10059              :           if (!(
   10060              : #line 15928 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10061              : (ix86_unary_operator_ok (NOT, DImode, operands, TARGET_APX_NDD)) && 
   10062              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10063              : (TARGET_64BIT)))
   10064              :             return -1;
   10065              :           return 1066; /* *one_cmpldi2_1 */
   10066              : 
   10067              :         case 1:
   10068              :           if (!
   10069              : #line 15928 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10070              : (ix86_unary_operator_ok (NOT, SImode, operands, TARGET_APX_NDD)))
   10071              :             return -1;
   10072              :           return 1065; /* *one_cmplsi2_1 */
   10073              : 
   10074              :         default:
   10075              :           return -1;
   10076              :         }
   10077              : 
   10078              :     case UNSPEC:
   10079              :       if (XVECLEN (x4, 0) != 3)
   10080              :         return -1;
   10081              :       x7 = XVECEXP (x4, 0, 0);
   10082              :       operands[1] = x7;
   10083              :       x8 = XVECEXP (x4, 0, 1);
   10084              :       operands[2] = x8;
   10085              :       x9 = XVECEXP (x4, 0, 2);
   10086              :       operands[3] = x9;
   10087              :       switch (XINT (x4, 1))
   10088              :         {
   10089              :         case 60:
   10090              :           switch (GET_MODE (operands[0]))
   10091              :             {
   10092              :             case E_SImode:
   10093              :               switch (pattern995 (x3))
   10094              :                 {
   10095              :                 case 0:
   10096              :                   if (!(
   10097              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10098              : (TARGET_AVX512F && GET_MODE_NUNITS (V32HFmode) >= 8
   10099              :    && ix86_pre_reload_split ()) && 
   10100              : #line 320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10101              : (TARGET_AVX512FP16)))
   10102              :                     return -1;
   10103              :                   return 3452; /* *avx512bw_cmpv32hf3 */
   10104              : 
   10105              :                 case 1:
   10106              :                   if (!(
   10107              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10108              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   10109              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10110              : (TARGET_AVX512VL)))
   10111              :                     return -1;
   10112              :                   return 3540; /* *avx512vl_cmpv32qi3 */
   10113              : 
   10114              :                 case 2:
   10115              :                   if (!
   10116              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10117              : (TARGET_AVX512BW && ix86_pre_reload_split ()))
   10118              :                     return -1;
   10119              :                   return 3542; /* *avx512bw_cmpv32hi3 */
   10120              : 
   10121              :                 default:
   10122              :                   return -1;
   10123              :                 }
   10124              : 
   10125              :             case E_DImode:
   10126              :               if (pattern996 (x3) != 0
   10127              :                   || !
   10128              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10129              : (TARGET_AVX512BW && ix86_pre_reload_split ()))
   10130              :                 return -1;
   10131              :               return 3536; /* *avx512bw_cmpv64qi3 */
   10132              : 
   10133              :             default:
   10134              :               return -1;
   10135              :             }
   10136              : 
   10137              :         case 158:
   10138              :           if (!const_0_to_7_operand (operands[3], E_SImode))
   10139              :             return -1;
   10140              :           switch (GET_MODE (operands[0]))
   10141              :             {
   10142              :             case E_DImode:
   10143              :               if (pattern1105 (x3, 
   10144              : E_V64QImode, 
   10145              : E_DImode) != 0
   10146              :                   || !
   10147              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10148              : (TARGET_AVX512BW && ix86_pre_reload_split ()))
   10149              :                 return -1;
   10150              :               return 3537; /* *avx512bw_cmpv64qi3 */
   10151              : 
   10152              :             case E_SImode:
   10153              :               switch (pattern1106 (x3))
   10154              :                 {
   10155              :                 case 0:
   10156              :                   if (!(
   10157              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10158              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   10159              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10160              : (TARGET_AVX512VL)))
   10161              :                     return -1;
   10162              :                   return 3541; /* *avx512vl_cmpv32qi3 */
   10163              : 
   10164              :                 case 1:
   10165              :                   if (!
   10166              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10167              : (TARGET_AVX512BW && ix86_pre_reload_split ()))
   10168              :                     return -1;
   10169              :                   return 3543; /* *avx512bw_cmpv32hi3 */
   10170              : 
   10171              :                 default:
   10172              :                   return -1;
   10173              :                 }
   10174              : 
   10175              :             default:
   10176              :               return -1;
   10177              :             }
   10178              : 
   10179              :         default:
   10180              :           return -1;
   10181              :         }
   10182              : 
   10183              :     default:
   10184              :       return -1;
   10185              :     }
   10186              : }
   10187              : 
   10188              :  int
   10189              : recog_100 (rtx x1 ATTRIBUTE_UNUSED,
   10190              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10191              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10192              : {
   10193              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10194              :   rtx x2, x3, x4, x5;
   10195              :   int res ATTRIBUTE_UNUSED;
   10196              :   x2 = XEXP (x1, 0);
   10197              :   operands[0] = x2;
   10198              :   x3 = XEXP (x1, 1);
   10199              :   x4 = XEXP (x3, 0);
   10200              :   switch (GET_CODE (x4))
   10201              :     {
   10202              :     case CONST_INT:
   10203              :     case REG:
   10204              :     case SUBREG:
   10205              :     case MEM:
   10206              :       switch (pattern124 (x3, pnum_clobbers))
   10207              :         {
   10208              :         case 0:
   10209              :           if (pnum_clobbers != NULL
   10210              :               && pattern635 (x3) == 0
   10211              :               && (
   10212              : #line 16166 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10213              : (((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) == 0
   10214              :     || ((INTVAL (operands[3]) & (2 * 4 * BITS_PER_UNIT - 1))
   10215              :          == (2 * 4 * BITS_PER_UNIT - 1)))
   10216              :    && ix86_pre_reload_split ()) && 
   10217              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10218              : (!TARGET_64BIT)))
   10219              :             {
   10220              :               *pnum_clobbers = 1;
   10221              :               return 1084; /* *ashldi3_doubleword_mask */
   10222              :             }
   10223              :           x5 = XEXP (x3, 1);
   10224              :           operands[2] = x5;
   10225              :           res = recog_99 (x1, insn, pnum_clobbers);
   10226              :           if (res >= 0)
   10227              :             return res;
   10228              :           if (pnum_clobbers == NULL)
   10229              :             return -1;
   10230              :           switch (pattern636 (x3))
   10231              :             {
   10232              :             case 0:
   10233              :               if (!
   10234              : #line 18773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10235              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   10236              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   10237              :       == 4 * BITS_PER_UNIT - 1
   10238              :    && ix86_pre_reload_split ()))
   10239              :                 return -1;
   10240              :               *pnum_clobbers = 1;
   10241              :               return 1276; /* *ashlsi3_mask */
   10242              : 
   10243              :             case 1:
   10244              :               if (!(
   10245              : #line 18773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10246              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   10247              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   10248              :       == 8 * BITS_PER_UNIT - 1
   10249              :    && ix86_pre_reload_split ()) && 
   10250              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10251              : (TARGET_64BIT)))
   10252              :                 return -1;
   10253              :               *pnum_clobbers = 1;
   10254              :               return 1279; /* *ashldi3_mask */
   10255              : 
   10256              :             case 2:
   10257              :               if (!
   10258              : #line 18821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10259              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   10260              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   10261              :    && ix86_pre_reload_split ()))
   10262              :                 return -1;
   10263              :               *pnum_clobbers = 1;
   10264              :               return 1288; /* *ashlsi3_add */
   10265              : 
   10266              :             case 3:
   10267              :               if (!(
   10268              : #line 18821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10269              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   10270              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   10271              :    && ix86_pre_reload_split ()) && 
   10272              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10273              : (TARGET_64BIT)))
   10274              :                 return -1;
   10275              :               *pnum_clobbers = 1;
   10276              :               return 1291; /* *ashldi3_add */
   10277              : 
   10278              :             case 4:
   10279              :               if (!
   10280              : #line 18867 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10281              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   10282              :    && ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   10283              :        || (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   10284              :           == 4 * BITS_PER_UNIT - 1)
   10285              :    && ix86_pre_reload_split ()))
   10286              :                 return -1;
   10287              :               *pnum_clobbers = 1;
   10288              :               return 1300; /* *ashlsi3_sub */
   10289              : 
   10290              :             case 5:
   10291              :               if (!(
   10292              : #line 18867 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10293              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   10294              :    && ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   10295              :        || (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   10296              :           == 8 * BITS_PER_UNIT - 1)
   10297              :    && ix86_pre_reload_split ()) && 
   10298              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10299              : (TARGET_64BIT)))
   10300              :                 return -1;
   10301              :               *pnum_clobbers = 1;
   10302              :               return 1303; /* *ashldi3_sub */
   10303              : 
   10304              :             default:
   10305              :               return -1;
   10306              :             }
   10307              : 
   10308              :         case 1:
   10309              :           if (register_operand (operands[0], E_DImode)
   10310              :               && register_operand (operands[1], E_DImode)
   10311              :               && (
   10312              : #line 16227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10313              : (((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) == 0
   10314              :     || ((INTVAL (operands[3]) & (2 * 4 * BITS_PER_UNIT - 1))
   10315              :          == (2 * 4 * BITS_PER_UNIT - 1)))
   10316              :    && ix86_pre_reload_split ()) && 
   10317              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10318              : (!TARGET_64BIT)))
   10319              :             {
   10320              :               *pnum_clobbers = 1;
   10321              :               return 1086; /* *ashldi3_doubleword_mask_1 */
   10322              :             }
   10323              :           if (!nonimmediate_operand (operands[0], E_DImode)
   10324              :               || !nonimmediate_operand (operands[1], E_DImode)
   10325              :               || !(
   10326              : #line 18798 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10327              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   10328              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   10329              :       == 8 * BITS_PER_UNIT - 1
   10330              :    && ix86_pre_reload_split ()) && 
   10331              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10332              : (TARGET_64BIT)))
   10333              :             return -1;
   10334              :           *pnum_clobbers = 1;
   10335              :           return 1285; /* *ashldi3_mask_1 */
   10336              : 
   10337              :         case 2:
   10338              :           if (!
   10339              : #line 18798 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10340              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   10341              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   10342              :       == 4 * BITS_PER_UNIT - 1
   10343              :    && ix86_pre_reload_split ()))
   10344              :             return -1;
   10345              :           *pnum_clobbers = 1;
   10346              :           return 1282; /* *ashlsi3_mask_1 */
   10347              : 
   10348              :         case 3:
   10349              :           if (!
   10350              : #line 18845 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10351              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   10352              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   10353              :    && ix86_pre_reload_split ()))
   10354              :             return -1;
   10355              :           *pnum_clobbers = 1;
   10356              :           return 1294; /* *ashlsi3_add_1 */
   10357              : 
   10358              :         case 4:
   10359              :           if (!(
   10360              : #line 18845 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10361              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   10362              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   10363              :    && ix86_pre_reload_split ()) && 
   10364              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10365              : (TARGET_64BIT)))
   10366              :             return -1;
   10367              :           *pnum_clobbers = 1;
   10368              :           return 1297; /* *ashldi3_add_1 */
   10369              : 
   10370              :         case 5:
   10371              :           if (!
   10372              : #line 18900 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10373              : (ix86_binary_operator_ok (ASHIFT, SImode, operands)
   10374              :    && ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   10375              :        || (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   10376              :           == 4 * BITS_PER_UNIT - 1)
   10377              :    && ix86_pre_reload_split ()))
   10378              :             return -1;
   10379              :           *pnum_clobbers = 1;
   10380              :           return 1306; /* *ashlsi3_sub_1 */
   10381              : 
   10382              :         case 6:
   10383              :           if (!(
   10384              : #line 18900 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10385              : (ix86_binary_operator_ok (ASHIFT, DImode, operands)
   10386              :    && ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   10387              :        || (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   10388              :           == 8 * BITS_PER_UNIT - 1)
   10389              :    && ix86_pre_reload_split ()) && 
   10390              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10391              : (TARGET_64BIT)))
   10392              :             return -1;
   10393              :           *pnum_clobbers = 1;
   10394              :           return 1309; /* *ashldi3_sub_1 */
   10395              : 
   10396              :         default:
   10397              :           return -1;
   10398              :         }
   10399              : 
   10400              :     case SIGN_EXTEND:
   10401              :       if (pattern125 (x3, pnum_clobbers) != 0
   10402              :           || !(
   10403              : #line 16328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10404              : (INTVAL (operands[2]) >= 4 * BITS_PER_UNIT
   10405              :    && INTVAL (operands[2]) < 4 * BITS_PER_UNIT * 2) && 
   10406              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10407              : (!TARGET_64BIT)))
   10408              :         return -1;
   10409              :       *pnum_clobbers = 1;
   10410              :       return 1090; /* *ashldi3_doubleword_highpart */
   10411              : 
   10412              :     case ZERO_EXTEND:
   10413              :       if (pattern125 (x3, pnum_clobbers) != 0
   10414              :           || !(
   10415              : #line 16328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10416              : (INTVAL (operands[2]) >= 4 * BITS_PER_UNIT
   10417              :    && INTVAL (operands[2]) < 4 * BITS_PER_UNIT * 2) && 
   10418              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10419              : (!TARGET_64BIT)))
   10420              :         return -1;
   10421              :       *pnum_clobbers = 1;
   10422              :       return 1091; /* *ashldi3_doubleword_highpart */
   10423              : 
   10424              :     default:
   10425              :       return -1;
   10426              :     }
   10427              : }
   10428              : 
   10429              :  int
   10430              : recog_109 (rtx x1 ATTRIBUTE_UNUSED,
   10431              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10432              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10433              : {
   10434              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10435              :   rtx x2, x3, x4, x5, x6;
   10436              :   int res ATTRIBUTE_UNUSED;
   10437              :   if (pnum_clobbers == NULL)
   10438              :     return -1;
   10439              :   x2 = XEXP (x1, 1);
   10440              :   x3 = XEXP (x2, 1);
   10441              :   if (GET_CODE (x3) != CONST_INT)
   10442              :     return -1;
   10443              :   x4 = XEXP (x2, 0);
   10444              :   operands[1] = x4;
   10445              :   if (XWINT (x3, 0) == 1L)
   10446              :     {
   10447              :       res = recog_108 (x1, insn, pnum_clobbers);
   10448              :       if (res >= 0)
   10449              :         return res;
   10450              :     }
   10451              :   x5 = XEXP (x1, 0);
   10452              :   operands[0] = x5;
   10453              :   operands[2] = x3;
   10454              :   if (!const_0_to_255_operand (operands[2], E_QImode))
   10455              :     return -1;
   10456              :   x6 = XEXP (x2, 2);
   10457              :   operands[3] = x6;
   10458              :   if (!const_0_to_255_operand (operands[3], E_QImode))
   10459              :     return -1;
   10460              :   switch (pattern132 (x2))
   10461              :     {
   10462              :     case 0:
   10463              :       if (!
   10464              : #line 23178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10465              : (TARGET_TBM))
   10466              :         return -1;
   10467              :       *pnum_clobbers = 1;
   10468              :       return 1636; /* tbm_bextri_si */
   10469              : 
   10470              :     case 1:
   10471              :       if (!(
   10472              : #line 23178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10473              : (TARGET_TBM) && 
   10474              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10475              : (TARGET_64BIT)))
   10476              :         return -1;
   10477              :       *pnum_clobbers = 1;
   10478              :       return 1637; /* tbm_bextri_di */
   10479              : 
   10480              :     default:
   10481              :       return -1;
   10482              :     }
   10483              : }
   10484              : 
   10485              :  int
   10486              : recog_112 (rtx x1 ATTRIBUTE_UNUSED,
   10487              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   10488              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   10489              : {
   10490              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   10491              :   rtx x2, x3, x4, x5, x6;
   10492              :   int res ATTRIBUTE_UNUSED;
   10493              :   x2 = XEXP (x1, 1);
   10494              :   switch (XINT (x2, 1))
   10495              :     {
   10496              :     case 18:
   10497              :       if (GET_MODE (x2) != E_BLKmode)
   10498              :         return -1;
   10499              :       x3 = XEXP (x1, 0);
   10500              :       operands[0] = x3;
   10501              :       x4 = XVECEXP (x2, 0, 0);
   10502              :       if (!rtx_equal_p (x4, operands[0]))
   10503              :         return -1;
   10504              :       return 1517; /* *memory_blockage */
   10505              : 
   10506              :     case 15:
   10507              :       x3 = XEXP (x1, 0);
   10508              :       operands[0] = x3;
   10509              :       x4 = XVECEXP (x2, 0, 0);
   10510              :       switch (GET_CODE (x4))
   10511              :         {
   10512              :         case CONST_INT:
   10513              :           if (XWINT (x4, 0) != 0L)
   10514              :             return -1;
   10515              :           switch (GET_MODE (operands[0]))
   10516              :             {
   10517              :             case E_SImode:
   10518              :               if (pnum_clobbers == NULL
   10519              :                   || !register_operand (operands[0], E_SImode)
   10520              :                   || GET_MODE (x2) != E_SImode
   10521              :                   || !
   10522              : #line 21764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10523              : (!TARGET_64BIT))
   10524              :                 return -1;
   10525              :               *pnum_clobbers = 1;
   10526              :               return 1528; /* *set_got */
   10527              : 
   10528              :             case E_DImode:
   10529              :               if (!register_operand (operands[0], E_DImode)
   10530              :                   || GET_MODE (x2) != E_DImode
   10531              :                   || !
   10532              : #line 21794 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10533              : (TARGET_64BIT))
   10534              :                 return -1;
   10535              :               return 1530; /* set_got_rex64 */
   10536              : 
   10537              :             default:
   10538              :               return -1;
   10539              :             }
   10540              : 
   10541              :         case LABEL_REF:
   10542              :           if (pnum_clobbers == NULL
   10543              :               || !register_operand (operands[0], E_SImode)
   10544              :               || GET_MODE (x2) != E_SImode)
   10545              :             return -1;
   10546              :           x5 = XEXP (x4, 0);
   10547              :           operands[1] = x5;
   10548              :           if (!
   10549              : #line 21786 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10550              : (!TARGET_64BIT))
   10551              :             return -1;
   10552              :           *pnum_clobbers = 1;
   10553              :           return 1529; /* *set_got_labelled */
   10554              : 
   10555              :         default:
   10556              :           return -1;
   10557              :         }
   10558              : 
   10559              :     case 16:
   10560              :       if (GET_MODE (x2) != E_DImode)
   10561              :         return -1;
   10562              :       x4 = XVECEXP (x2, 0, 0);
   10563              :       if (GET_CODE (x4) != LABEL_REF)
   10564              :         return -1;
   10565              :       x3 = XEXP (x1, 0);
   10566              :       operands[0] = x3;
   10567              :       if (!register_operand (operands[0], E_DImode))
   10568              :         return -1;
   10569              :       x5 = XEXP (x4, 0);
   10570              :       operands[1] = x5;
   10571              :       if (!
   10572              : #line 21803 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10573              : (TARGET_64BIT))
   10574              :         return -1;
   10575              :       return 1531; /* set_rip_rex64 */
   10576              : 
   10577              :     case 17:
   10578              :       if (GET_MODE (x2) != E_DImode)
   10579              :         return -1;
   10580              :       x4 = XVECEXP (x2, 0, 0);
   10581              :       if (GET_CODE (x4) != LABEL_REF)
   10582              :         return -1;
   10583              :       x3 = XEXP (x1, 0);
   10584              :       operands[0] = x3;
   10585              :       if (!register_operand (operands[0], E_DImode))
   10586              :         return -1;
   10587              :       x5 = XEXP (x4, 0);
   10588              :       operands[1] = x5;
   10589              :       if (!
   10590              : #line 21814 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10591              : (TARGET_LP64))
   10592              :         return -1;
   10593              :       return 1532; /* set_got_offset_rex64 */
   10594              : 
   10595              :     case 98:
   10596              :       x3 = XEXP (x1, 0);
   10597              :       operands[0] = x3;
   10598              :       switch (pattern305 (x2))
   10599              :         {
   10600              :         case 0:
   10601              :           if ((
   10602              : #line 22671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10603              : (TARGET_APX_NF) && 
   10604              : #line 22653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10605              : (TARGET_BMI)))
   10606              :             return 1578; /* tzcnt_si_nf */
   10607              :           if (pnum_clobbers == NULL
   10608              :               || !
   10609              : #line 22653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10610              : (TARGET_BMI))
   10611              :             return -1;
   10612              :           *pnum_clobbers = 1;
   10613              :           return 1582; /* tzcnt_si */
   10614              : 
   10615              :         case 1:
   10616              :           if ((
   10617              : #line 22671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10618              : (TARGET_APX_NF) && (((
   10619              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10620              : (TARGET_64BIT) && 
   10621              : #line 22653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10622              : (TARGET_BMI)) && 
   10623              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10624              : (TARGET_64BIT)) && 
   10625              : #line 22653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10626              : (TARGET_BMI))))
   10627              :             return 1580; /* tzcnt_di_nf */
   10628              :           if (pnum_clobbers == NULL
   10629              :               || !(((
   10630              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10631              : (TARGET_64BIT) && 
   10632              : #line 22653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10633              : (TARGET_BMI)) && 
   10634              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10635              : (TARGET_64BIT)) && 
   10636              : #line 22653 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10637              : (TARGET_BMI)))
   10638              :             return -1;
   10639              :           *pnum_clobbers = 1;
   10640              :           return 1584; /* tzcnt_di */
   10641              : 
   10642              :         default:
   10643              :           return -1;
   10644              :         }
   10645              : 
   10646              :     case 97:
   10647              :       x3 = XEXP (x1, 0);
   10648              :       operands[0] = x3;
   10649              :       switch (pattern305 (x2))
   10650              :         {
   10651              :         case 0:
   10652              :           if ((
   10653              : #line 22671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10654              : (TARGET_APX_NF) && 
   10655              : #line 22654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10656              : (TARGET_LZCNT)))
   10657              :             return 1579; /* lzcnt_si_nf */
   10658              :           if (pnum_clobbers == NULL
   10659              :               || !
   10660              : #line 22654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10661              : (TARGET_LZCNT))
   10662              :             return -1;
   10663              :           *pnum_clobbers = 1;
   10664              :           return 1583; /* lzcnt_si */
   10665              : 
   10666              :         case 1:
   10667              :           if ((
   10668              : #line 22671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10669              : (TARGET_APX_NF) && (((
   10670              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10671              : (TARGET_64BIT) && 
   10672              : #line 22654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10673              : (TARGET_LZCNT)) && 
   10674              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10675              : (TARGET_64BIT)) && 
   10676              : #line 22654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10677              : (TARGET_LZCNT))))
   10678              :             return 1581; /* lzcnt_di_nf */
   10679              :           if (pnum_clobbers == NULL
   10680              :               || !(((
   10681              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10682              : (TARGET_64BIT) && 
   10683              : #line 22654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10684              : (TARGET_LZCNT)) && 
   10685              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10686              : (TARGET_64BIT)) && 
   10687              : #line 22654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10688              : (TARGET_LZCNT)))
   10689              :             return -1;
   10690              :           *pnum_clobbers = 1;
   10691              :           return 1585; /* lzcnt_di */
   10692              : 
   10693              :         default:
   10694              :           return -1;
   10695              :         }
   10696              : 
   10697              :     case 20:
   10698              :       x4 = XVECEXP (x2, 0, 0);
   10699              :       if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   10700              :         return -1;
   10701              :       x3 = XEXP (x1, 0);
   10702              :       operands[0] = x3;
   10703              :       switch (pattern24 (x2))
   10704              :         {
   10705              :         case 0:
   10706              :           if (!
   10707              : #line 1439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10708              : (ptr_mode == SImode))
   10709              :             return -1;
   10710              :           return 1690; /* *load_tp_si */
   10711              : 
   10712              :         case 1:
   10713              :           if (!
   10714              : #line 1439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10715              : (ptr_mode == DImode))
   10716              :             return -1;
   10717              :           return 1691; /* *load_tp_di */
   10718              : 
   10719              :         default:
   10720              :           return -1;
   10721              :         }
   10722              : 
   10723              :     case 23:
   10724              :       x3 = XEXP (x1, 0);
   10725              :       operands[0] = x3;
   10726              :       x4 = XVECEXP (x2, 0, 0);
   10727              :       operands[1] = x4;
   10728              :       if (!tls_symbolic_operand (operands[1], E_VOIDmode))
   10729              :         return -1;
   10730              :       switch (pattern24 (x2))
   10731              :         {
   10732              :         case 0:
   10733              :           if (!(
   10734              : #line 24383 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10735              : (TARGET_64BIT && TARGET_GNU2_TLS) && 
   10736              : #line 1439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10737              : (ptr_mode == SImode)))
   10738              :             return -1;
   10739              :           return 1699; /* *tls_dynamic_gnu2_lea_64_si */
   10740              : 
   10741              :         case 1:
   10742              :           if (!(
   10743              : #line 24383 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10744              : (TARGET_64BIT && TARGET_GNU2_TLS) && 
   10745              : #line 1439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10746              : (ptr_mode == DImode)))
   10747              :             return -1;
   10748              :           return 1700; /* *tls_dynamic_gnu2_lea_64_di */
   10749              : 
   10750              :         default:
   10751              :           return -1;
   10752              :         }
   10753              : 
   10754              :     case 71:
   10755              :       x3 = XEXP (x1, 0);
   10756              :       operands[0] = x3;
   10757              :       x4 = XVECEXP (x2, 0, 0);
   10758              :       operands[1] = x4;
   10759              :       if (!register_operand (operands[1], E_XFmode))
   10760              :         return -1;
   10761              :       switch (GET_MODE (operands[0]))
   10762              :         {
   10763              :         case E_DImode:
   10764              :           if (pnum_clobbers == NULL
   10765              :               || !nonimmediate_operand (operands[0], E_DImode)
   10766              :               || GET_MODE (x2) != E_DImode
   10767              :               || !
   10768              : #line 26178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10769              : (TARGET_USE_FANCY_MATH_387))
   10770              :             return -1;
   10771              :           *pnum_clobbers = 1;
   10772              :           return 1765; /* lrintxfdi2 */
   10773              : 
   10774              :         case E_SImode:
   10775              :           if (!nonimmediate_operand (operands[0], E_SImode)
   10776              :               || GET_MODE (x2) != E_SImode
   10777              :               || !
   10778              : #line 26187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10779              : (TARGET_USE_FANCY_MATH_387))
   10780              :             return -1;
   10781              :           return 1767; /* lrintxfsi2 */
   10782              : 
   10783              :         default:
   10784              :           return -1;
   10785              :         }
   10786              : 
   10787              :     case 79:
   10788              :       switch (pattern126 (x1, pnum_clobbers))
   10789              :         {
   10790              :         case 0:
   10791              :           if (!
   10792              : #line 26394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10793              : (TARGET_USE_FANCY_MATH_387
   10794              :    && flag_unsafe_math_optimizations
   10795              :    && ix86_pre_reload_split ()))
   10796              :             return -1;
   10797              :           *pnum_clobbers = 1;
   10798              :           return 1778; /* *fistsi2_floor_1 */
   10799              : 
   10800              :         case 1:
   10801              :           if (!
   10802              : #line 26394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10803              : (TARGET_USE_FANCY_MATH_387
   10804              :    && flag_unsafe_math_optimizations
   10805              :    && ix86_pre_reload_split ()))
   10806              :             return -1;
   10807              :           *pnum_clobbers = 1;
   10808              :           return 1780; /* *fistdi2_floor_1 */
   10809              : 
   10810              :         default:
   10811              :           return -1;
   10812              :         }
   10813              : 
   10814              :     case 80:
   10815              :       switch (pattern126 (x1, pnum_clobbers))
   10816              :         {
   10817              :         case 0:
   10818              :           if (!
   10819              : #line 26394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10820              : (TARGET_USE_FANCY_MATH_387
   10821              :    && flag_unsafe_math_optimizations
   10822              :    && ix86_pre_reload_split ()))
   10823              :             return -1;
   10824              :           *pnum_clobbers = 1;
   10825              :           return 1779; /* *fistsi2_ceil_1 */
   10826              : 
   10827              :         case 1:
   10828              :           if (!
   10829              : #line 26394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10830              : (TARGET_USE_FANCY_MATH_387
   10831              :    && flag_unsafe_math_optimizations
   10832              :    && ix86_pre_reload_split ()))
   10833              :             return -1;
   10834              :           *pnum_clobbers = 1;
   10835              :           return 1781; /* *fistdi2_ceil_1 */
   10836              : 
   10837              :         default:
   10838              :           return -1;
   10839              :         }
   10840              : 
   10841              :     case 50:
   10842              :       return recog_111 (x1, insn, pnum_clobbers);
   10843              : 
   10844              :     case 34:
   10845              :       if (GET_MODE (x2) != E_BLKmode)
   10846              :         return -1;
   10847              :       x3 = XEXP (x1, 0);
   10848              :       operands[0] = x3;
   10849              :       x4 = XVECEXP (x2, 0, 0);
   10850              :       if (!rtx_equal_p (x4, operands[0]))
   10851              :         return -1;
   10852              :       return 2006; /* *pause */
   10853              : 
   10854              :     case 103:
   10855              :       switch (pattern127 (x1))
   10856              :         {
   10857              :         case 0:
   10858              :           if (!
   10859              : #line 31208 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10860              : (TARGET_MOVDIRI))
   10861              :             return -1;
   10862              :           return 2037; /* movdirisi */
   10863              : 
   10864              :         case 1:
   10865              :           if (!(
   10866              : #line 31208 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10867              : (TARGET_MOVDIRI) && 
   10868              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10869              : (TARGET_64BIT)))
   10870              :             return -1;
   10871              :           return 2038; /* movdiridi */
   10872              : 
   10873              :         default:
   10874              :           return -1;
   10875              :         }
   10876              : 
   10877              :     case 104:
   10878              :       if (GET_MODE (x2) != E_XImode)
   10879              :         return -1;
   10880              :       x3 = XEXP (x1, 0);
   10881              :       if (GET_CODE (x3) != MEM
   10882              :           || GET_MODE (x3) != E_XImode)
   10883              :         return -1;
   10884              :       x6 = XEXP (x3, 0);
   10885              :       operands[0] = x6;
   10886              :       x4 = XVECEXP (x2, 0, 0);
   10887              :       operands[1] = x4;
   10888              :       if (!memory_operand (operands[1], E_XImode))
   10889              :         return -1;
   10890              :       switch (GET_MODE (operands[0]))
   10891              :         {
   10892              :         case E_SImode:
   10893              :           if (!register_operand (operands[0], E_SImode)
   10894              :               || !(
   10895              : #line 31216 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10896              : (TARGET_MOVDIR64B) && 
   10897              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10898              : (Pmode == SImode)))
   10899              :             return -1;
   10900              :           return 2039; /* movdir64b_si */
   10901              : 
   10902              :         case E_DImode:
   10903              :           if (!register_operand (operands[0], E_DImode)
   10904              :               || !(
   10905              : #line 31216 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10906              : (TARGET_MOVDIR64B) && 
   10907              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10908              : (Pmode == DImode)))
   10909              :             return -1;
   10910              :           return 2040; /* movdir64b_di */
   10911              : 
   10912              :         default:
   10913              :           return -1;
   10914              :         }
   10915              : 
   10916              :     case 112:
   10917              :       if (GET_MODE (x2) != E_DImode)
   10918              :         return -1;
   10919              :       x3 = XEXP (x1, 0);
   10920              :       operands[0] = x3;
   10921              :       if (!memory_operand (operands[0], E_DImode))
   10922              :         return -1;
   10923              :       x4 = XVECEXP (x2, 0, 0);
   10924              :       operands[1] = x4;
   10925              :       if (!register_operand (operands[1], E_DImode)
   10926              :           || !
   10927              : #line 659 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   10928              : ((TARGET_MMX || TARGET_MMX_WITH_SSE)
   10929              :    && (TARGET_SSE || TARGET_3DNOW_A)))
   10930              :         return -1;
   10931              :       return 2102; /* sse_movntq */
   10932              : 
   10933              :     case 118:
   10934              :       switch (pattern127 (x1))
   10935              :         {
   10936              :         case 0:
   10937              :           if (!
   10938              : #line 2038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10939              : (TARGET_SSE2))
   10940              :             return -1;
   10941              :           return 2621; /* sse2_movntisi */
   10942              : 
   10943              :         case 1:
   10944              :           if (!(
   10945              : #line 2038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10946              : (TARGET_SSE2) && 
   10947              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   10948              : (TARGET_64BIT)))
   10949              :             return -1;
   10950              :           return 2622; /* sse2_movntidi */
   10951              : 
   10952              :         default:
   10953              :           return -1;
   10954              :         }
   10955              : 
   10956              :     case 157:
   10957              :       x3 = XEXP (x1, 0);
   10958              :       operands[0] = x3;
   10959              :       x4 = XVECEXP (x2, 0, 0);
   10960              :       switch (GET_CODE (x4))
   10961              :         {
   10962              :         case VEC_SELECT:
   10963              :           switch (pattern459 (x4))
   10964              :             {
   10965              :             case 0:
   10966              :               switch (pattern1110 (x2, 
   10967              : E_SImode))
   10968              :                 {
   10969              :                 case 0:
   10970              :                   if (!
   10971              : #line 8215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10972              : (TARGET_AVX512FP16))
   10973              :                     return -1;
   10974              :                   return 4590; /* avx512fp16_vcvtsh2usi */
   10975              : 
   10976              :                 case 1:
   10977              :                   if (!
   10978              : #line 9415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10979              : (TARGET_AVX512F))
   10980              :                     return -1;
   10981              :                   return 4950; /* avx512f_vcvtss2usi */
   10982              : 
   10983              :                 case 2:
   10984              :                   if (!
   10985              : #line 9451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   10986              : (TARGET_AVX512F))
   10987              :                     return -1;
   10988              :                   return 4962; /* avx512f_vcvtsd2usi */
   10989              : 
   10990              :                 default:
   10991              :                   return -1;
   10992              :                 }
   10993              : 
   10994              :             case 1:
   10995              :               switch (pattern1110 (x2, 
   10996              : E_DImode))
   10997              :                 {
   10998              :                 case 0:
   10999              :                   if (!(
   11000              : #line 8215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11001              : (TARGET_AVX512FP16) && 
   11002              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11003              : (TARGET_64BIT)))
   11004              :                     return -1;
   11005              :                   return 4594; /* avx512fp16_vcvtsh2usiq */
   11006              : 
   11007              :                 case 1:
   11008              :                   if (!(
   11009              : #line 9415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11010              : (TARGET_AVX512F) && 
   11011              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11012              : (TARGET_64BIT)))
   11013              :                     return -1;
   11014              :                   return 4952; /* avx512f_vcvtss2usiq */
   11015              : 
   11016              :                 case 2:
   11017              :                   if (!(
   11018              : #line 9451 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11019              : (TARGET_AVX512F) && 
   11020              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11021              : (TARGET_64BIT)))
   11022              :                     return -1;
   11023              :                   return 4964; /* avx512f_vcvtsd2usiq */
   11024              : 
   11025              :                 default:
   11026              :                   return -1;
   11027              :                 }
   11028              : 
   11029              :             default:
   11030              :               return -1;
   11031              :             }
   11032              : 
   11033              :         case REG:
   11034              :         case SUBREG:
   11035              :         case MEM:
   11036              :           operands[1] = x4;
   11037              :           if (!nonimmediate_operand (operands[1], E_HFmode))
   11038              :             return -1;
   11039              :           switch (pattern24 (x2))
   11040              :             {
   11041              :             case 0:
   11042              :               if (!
   11043              : #line 8226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11044              : (TARGET_AVX512FP16))
   11045              :                 return -1;
   11046              :               return 4598; /* avx512fp16_vcvtsh2usi_2 */
   11047              : 
   11048              :             case 1:
   11049              :               if (!(
   11050              : #line 8226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11051              : (TARGET_AVX512FP16) && 
   11052              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11053              : (TARGET_64BIT)))
   11054              :                 return -1;
   11055              :               return 4600; /* avx512fp16_vcvtsh2usiq_2 */
   11056              : 
   11057              :             default:
   11058              :               return -1;
   11059              :             }
   11060              : 
   11061              :         default:
   11062              :           return -1;
   11063              :         }
   11064              : 
   11065              :     case 47:
   11066              :       x3 = XEXP (x1, 0);
   11067              :       operands[0] = x3;
   11068              :       x4 = XVECEXP (x2, 0, 0);
   11069              :       switch (GET_CODE (x4))
   11070              :         {
   11071              :         case VEC_SELECT:
   11072              :           switch (pattern459 (x4))
   11073              :             {
   11074              :             case 0:
   11075              :               switch (pattern1111 (x2, 
   11076              : E_SImode))
   11077              :                 {
   11078              :                 case 0:
   11079              :                   if (!
   11080              : #line 8215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11081              : (TARGET_AVX512FP16))
   11082              :                     return -1;
   11083              :                   return 4592; /* avx512fp16_vcvtsh2si */
   11084              : 
   11085              :                 case 1:
   11086              :                   if (!
   11087              : #line 8943 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11088              : (TARGET_SSE))
   11089              :                     return -1;
   11090              :                   return 4839; /* sse_cvtss2si */
   11091              : 
   11092              :                 case 2:
   11093              :                   if (!
   11094              : #line 9487 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11095              : (TARGET_SSE2))
   11096              :                     return -1;
   11097              :                   return 4974; /* sse2_cvtsd2si */
   11098              : 
   11099              :                 default:
   11100              :                   return -1;
   11101              :                 }
   11102              : 
   11103              :             case 1:
   11104              :               switch (pattern1111 (x2, 
   11105              : E_DImode))
   11106              :                 {
   11107              :                 case 0:
   11108              :                   if (!(
   11109              : #line 8215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11110              : (TARGET_AVX512FP16) && 
   11111              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11112              : (TARGET_64BIT)))
   11113              :                     return -1;
   11114              :                   return 4596; /* avx512fp16_vcvtsh2siq */
   11115              : 
   11116              :                 case 1:
   11117              :                   if (!(
   11118              : #line 8943 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11119              : (TARGET_SSE) && 
   11120              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11121              : (TARGET_64BIT)))
   11122              :                     return -1;
   11123              :                   return 4841; /* sse_cvtss2siq */
   11124              : 
   11125              :                 case 2:
   11126              :                   if (!(
   11127              : #line 9487 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11128              : (TARGET_SSE2) && 
   11129              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11130              : (TARGET_64BIT)))
   11131              :                     return -1;
   11132              :                   return 4976; /* sse2_cvtsd2siq */
   11133              : 
   11134              :                 default:
   11135              :                   return -1;
   11136              :                 }
   11137              : 
   11138              :             default:
   11139              :               return -1;
   11140              :             }
   11141              : 
   11142              :         case REG:
   11143              :         case SUBREG:
   11144              :         case MEM:
   11145              :           operands[1] = x4;
   11146              :           switch (GET_MODE (operands[0]))
   11147              :             {
   11148              :             case E_SImode:
   11149              :               switch (pattern774 (x2, 
   11150              : E_SImode))
   11151              :                 {
   11152              :                 case 0:
   11153              :                   if (!
   11154              : #line 8226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11155              : (TARGET_AVX512FP16))
   11156              :                     return -1;
   11157              :                   return 4599; /* avx512fp16_vcvtsh2si_2 */
   11158              : 
   11159              :                 case 1:
   11160              :                   if (!
   11161              : #line 8956 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11162              : (TARGET_SSE))
   11163              :                     return -1;
   11164              :                   return 4843; /* sse_cvtss2si_2 */
   11165              : 
   11166              :                 case 2:
   11167              :                   if (!
   11168              : #line 9501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11169              : (TARGET_SSE2))
   11170              :                     return -1;
   11171              :                   return 4978; /* sse2_cvtsd2si_2 */
   11172              : 
   11173              :                 default:
   11174              :                   return -1;
   11175              :                 }
   11176              : 
   11177              :             case E_DImode:
   11178              :               switch (pattern774 (x2, 
   11179              : E_DImode))
   11180              :                 {
   11181              :                 case 0:
   11182              :                   if (!(
   11183              : #line 8226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11184              : (TARGET_AVX512FP16) && 
   11185              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11186              : (TARGET_64BIT)))
   11187              :                     return -1;
   11188              :                   return 4601; /* avx512fp16_vcvtsh2siq_2 */
   11189              : 
   11190              :                 case 1:
   11191              :                   if (!(
   11192              : #line 8956 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11193              : (TARGET_SSE) && 
   11194              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11195              : (TARGET_64BIT)))
   11196              :                     return -1;
   11197              :                   return 4844; /* sse_cvtss2siq_2 */
   11198              : 
   11199              :                 case 2:
   11200              :                   if (!(
   11201              : #line 9501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11202              : (TARGET_SSE2) && 
   11203              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11204              : (TARGET_64BIT)))
   11205              :                     return -1;
   11206              :                   return 4979; /* sse2_cvtsd2siq_2 */
   11207              : 
   11208              :                 default:
   11209              :                   return -1;
   11210              :                 }
   11211              : 
   11212              :             default:
   11213              :               return -1;
   11214              :             }
   11215              : 
   11216              :         default:
   11217              :           return -1;
   11218              :         }
   11219              : 
   11220              :     case 173:
   11221              :       switch (pattern129 (x1))
   11222              :         {
   11223              :         case 0:
   11224              :           if (!
   11225              : #line 8380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11226              : (TARGET_AVX512FP16))
   11227              :             return -1;
   11228              :           return 4742; /* unspec_avx512fp16_fix_truncsi2 */
   11229              : 
   11230              :         case 1:
   11231              :           if (!
   11232              : #line 8971 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11233              : (TARGET_SSE))
   11234              :             return -1;
   11235              :           return 4845; /* unspec_sse_cvttss2si */
   11236              : 
   11237              :         case 2:
   11238              :           if (!
   11239              : #line 9516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11240              : (TARGET_SSE2))
   11241              :             return -1;
   11242              :           return 4980; /* unspec_sse2_cvttsd2si */
   11243              : 
   11244              :         case 3:
   11245              :           if (!(
   11246              : #line 8380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11247              : (TARGET_AVX512FP16) && 
   11248              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11249              : (TARGET_64BIT)))
   11250              :             return -1;
   11251              :           return 4746; /* unspec_avx512fp16_fix_truncdi2 */
   11252              : 
   11253              :         case 4:
   11254              :           if (!(
   11255              : #line 8971 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11256              : (TARGET_SSE) && 
   11257              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11258              : (TARGET_64BIT)))
   11259              :             return -1;
   11260              :           return 4847; /* unspec_sse_cvttss2siq */
   11261              : 
   11262              :         case 5:
   11263              :           if (!(
   11264              : #line 9516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11265              : (TARGET_SSE2) && 
   11266              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11267              : (TARGET_64BIT)))
   11268              :             return -1;
   11269              :           return 4982; /* unspec_sse2_cvttsd2siq */
   11270              : 
   11271              :         default:
   11272              :           return -1;
   11273              :         }
   11274              : 
   11275              :     case 174:
   11276              :       switch (pattern129 (x1))
   11277              :         {
   11278              :         case 0:
   11279              :           if (!
   11280              : #line 8380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11281              : (TARGET_AVX512FP16))
   11282              :             return -1;
   11283              :           return 4744; /* unspec_avx512fp16_fixuns_truncsi2 */
   11284              : 
   11285              :         case 1:
   11286              :           if (!
   11287              : #line 9426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11288              : (TARGET_AVX512F))
   11289              :             return -1;
   11290              :           return 4954; /* unspec_avx512f_vcvttss2usi */
   11291              : 
   11292              :         case 2:
   11293              :           if (!
   11294              : #line 9462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11295              : (TARGET_AVX512F))
   11296              :             return -1;
   11297              :           return 4966; /* unspec_avx512f_vcvttsd2usi */
   11298              : 
   11299              :         case 3:
   11300              :           if (!(
   11301              : #line 8380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11302              : (TARGET_AVX512FP16) && 
   11303              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11304              : (TARGET_64BIT)))
   11305              :             return -1;
   11306              :           return 4748; /* unspec_avx512fp16_fixuns_truncdi2 */
   11307              : 
   11308              :         case 4:
   11309              :           if (!(
   11310              : #line 9426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11311              : (TARGET_AVX512F) && 
   11312              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11313              : (TARGET_64BIT)))
   11314              :             return -1;
   11315              :           return 4956; /* unspec_avx512f_vcvttss2usiq */
   11316              : 
   11317              :         case 5:
   11318              :           if (!(
   11319              : #line 9462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11320              : (TARGET_AVX512F) && 
   11321              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11322              : (TARGET_64BIT)))
   11323              :             return -1;
   11324              :           return 4968; /* unspec_avx512f_vcvttsd2usiq */
   11325              : 
   11326              :         default:
   11327              :           return -1;
   11328              :         }
   11329              : 
   11330              :     case 192:
   11331              :       x3 = XEXP (x1, 0);
   11332              :       operands[0] = x3;
   11333              :       x4 = XVECEXP (x2, 0, 0);
   11334              :       operands[1] = x4;
   11335              :       switch (GET_MODE (operands[0]))
   11336              :         {
   11337              :         case E_DImode:
   11338              :           if (!register_operand (operands[0], E_DImode)
   11339              :               || GET_MODE (x2) != E_DImode
   11340              :               || !register_operand (operands[1], E_V64QImode)
   11341              :               || !
   11342              : #line 10648 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11343              : (TARGET_AVX512BW))
   11344              :             return -1;
   11345              :           return 5215; /* avx512bw_cvtb2maskv64qi */
   11346              : 
   11347              :         case E_SImode:
   11348              :           if (!register_operand (operands[0], E_SImode)
   11349              :               || GET_MODE (x2) != E_SImode)
   11350              :             return -1;
   11351              :           switch (GET_MODE (operands[1]))
   11352              :             {
   11353              :             case E_V32QImode:
   11354              :               if (!register_operand (operands[1], E_V32QImode)
   11355              :                   || !(
   11356              : #line 10648 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11357              : (TARGET_AVX512BW) && 
   11358              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11359              : (TARGET_AVX512VL)))
   11360              :                 return -1;
   11361              :               return 5217; /* avx512vl_cvtb2maskv32qi */
   11362              : 
   11363              :             case E_V32HImode:
   11364              :               if (!register_operand (operands[1], E_V32HImode)
   11365              :                   || !
   11366              : #line 10648 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11367              : (TARGET_AVX512BW))
   11368              :                 return -1;
   11369              :               return 5218; /* avx512bw_cvtw2maskv32hi */
   11370              : 
   11371              :             default:
   11372              :               return -1;
   11373              :             }
   11374              : 
   11375              :         default:
   11376              :           return -1;
   11377              :         }
   11378              : 
   11379              :     case 276:
   11380              :       switch (pattern131 (x1))
   11381              :         {
   11382              :         case 0:
   11383              :           if (!
   11384              : #line 33688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11385              : (TARGET_AVX10_2))
   11386              :             return -1;
   11387              :           return 10986; /* avx10_2_vcvttsd2sissi */
   11388              : 
   11389              :         case 1:
   11390              :           if (!
   11391              : #line 33701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11392              : (TARGET_AVX10_2))
   11393              :             return -1;
   11394              :           return 10994; /* avx10_2_vcvttss2sissi */
   11395              : 
   11396              :         case 2:
   11397              :           if (!(
   11398              : #line 33688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11399              : (TARGET_AVX10_2) && 
   11400              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11401              : (TARGET_64BIT)))
   11402              :             return -1;
   11403              :           return 10990; /* avx10_2_vcvttsd2sisdi */
   11404              : 
   11405              :         case 3:
   11406              :           if (!(
   11407              : #line 33701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11408              : (TARGET_AVX10_2) && 
   11409              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11410              : (TARGET_64BIT)))
   11411              :             return -1;
   11412              :           return 10998; /* avx10_2_vcvttss2sisdi */
   11413              : 
   11414              :         default:
   11415              :           return -1;
   11416              :         }
   11417              : 
   11418              :     case 277:
   11419              :       switch (pattern131 (x1))
   11420              :         {
   11421              :         case 0:
   11422              :           if (!
   11423              : #line 33688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11424              : (TARGET_AVX10_2))
   11425              :             return -1;
   11426              :           return 10988; /* avx10_2_vcvttsd2usissi */
   11427              : 
   11428              :         case 1:
   11429              :           if (!
   11430              : #line 33701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11431              : (TARGET_AVX10_2))
   11432              :             return -1;
   11433              :           return 10996; /* avx10_2_vcvttss2usissi */
   11434              : 
   11435              :         case 2:
   11436              :           if (!(
   11437              : #line 33688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11438              : (TARGET_AVX10_2) && 
   11439              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11440              : (TARGET_64BIT)))
   11441              :             return -1;
   11442              :           return 10992; /* avx10_2_vcvttsd2usisdi */
   11443              : 
   11444              :         case 3:
   11445              :           if (!(
   11446              : #line 33701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11447              : (TARGET_AVX10_2) && 
   11448              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   11449              : (TARGET_64BIT)))
   11450              :             return -1;
   11451              :           return 11000; /* avx10_2_vcvttss2usisdi */
   11452              : 
   11453              :         default:
   11454              :           return -1;
   11455              :         }
   11456              : 
   11457              :     case 284:
   11458              :       if (GET_MODE (x2) != E_BLKmode)
   11459              :         return -1;
   11460              :       x3 = XEXP (x1, 0);
   11461              :       operands[0] = x3;
   11462              :       x4 = XVECEXP (x2, 0, 0);
   11463              :       if (!rtx_equal_p (x4, operands[0])
   11464              :           || !
   11465              : #line 60 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   11466              : (TARGET_SSE2))
   11467              :         return -1;
   11468              :       return 11090; /* *sse2_lfence */
   11469              : 
   11470              :     case 285:
   11471              :       if (GET_MODE (x2) != E_BLKmode)
   11472              :         return -1;
   11473              :       x3 = XEXP (x1, 0);
   11474              :       operands[0] = x3;
   11475              :       x4 = XVECEXP (x2, 0, 0);
   11476              :       if (!rtx_equal_p (x4, operands[0])
   11477              :           || !
   11478              : #line 79 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   11479              : (TARGET_SSE || TARGET_3DNOW_A))
   11480              :         return -1;
   11481              :       return 11091; /* *sse_sfence */
   11482              : 
   11483              :     case 286:
   11484              :       if (GET_MODE (x2) != E_BLKmode)
   11485              :         return -1;
   11486              :       x3 = XEXP (x1, 0);
   11487              :       operands[0] = x3;
   11488              :       x4 = XVECEXP (x2, 0, 0);
   11489              :       if (!rtx_equal_p (x4, operands[0]))
   11490              :         return -1;
   11491              :       if (
   11492              : #line 98 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   11493              : (TARGET_64BIT || TARGET_SSE2))
   11494              :         return 11092; /* mfence_sse2 */
   11495              :       if (pnum_clobbers == NULL)
   11496              :         return -1;
   11497              :       *pnum_clobbers = 1;
   11498              :       return 11093; /* mfence_nosse */
   11499              : 
   11500              :     case 288:
   11501              :       if (GET_MODE (x2) != E_DImode)
   11502              :         return -1;
   11503              :       x3 = XEXP (x1, 0);
   11504              :       operands[0] = x3;
   11505              :       if (!memory_operand (operands[0], E_DImode))
   11506              :         return -1;
   11507              :       x4 = XVECEXP (x2, 0, 0);
   11508              :       operands[1] = x4;
   11509              :       if (!register_operand (operands[1], E_DFmode)
   11510              :           || !
   11511              : #line 356 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   11512              : (TARGET_80387))
   11513              :         return -1;
   11514              :       return 11101; /* storedi_via_fpu */
   11515              : 
   11516              :     case 290:
   11517              :       if (GET_MODE (x2) != E_DImode)
   11518              :         return -1;
   11519              :       x3 = XEXP (x1, 0);
   11520              :       operands[0] = x3;
   11521              :       if (!memory_operand (operands[0], E_DImode))
   11522              :         return -1;
   11523              :       x4 = XVECEXP (x2, 0, 0);
   11524              :       operands[1] = x4;
   11525              :       if (!register_operand (operands[1], E_DFmode)
   11526              :           || !
   11527              : #line 382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   11528              : (TARGET_SSE))
   11529              :         return -1;
   11530              :       return 11103; /* storedi_via_sse */
   11531              : 
   11532              :     default:
   11533              :       return -1;
   11534              :     }
   11535              : }
   11536              : 
   11537              :  int
   11538              : recog_149 (rtx x1 ATTRIBUTE_UNUSED,
   11539              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   11540              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   11541              : {
   11542              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   11543              :   rtx x2, x3, x4, x5, x6, x7;
   11544              :   int res ATTRIBUTE_UNUSED;
   11545              :   x2 = XEXP (x1, 1);
   11546              :   x3 = XEXP (x2, 0);
   11547              :   switch (XINT (x3, 1))
   11548              :     {
   11549              :     case 64:
   11550              :       switch (pattern463 (x2))
   11551              :         {
   11552              :         case 0:
   11553              :           if (!(
   11554              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11555              : (TARGET_AVX512F) && (
   11556              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11557              : (TARGET_SSE
   11558              :    && (64 == 64 || TARGET_AVX512VL)
   11559              :    && 1) && 
   11560              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11561              : (TARGET_AVX512FP16))))
   11562              :             return -1;
   11563              :           return 3122; /* ieee_maxv32hf3_mask */
   11564              : 
   11565              :         case 1:
   11566              :           if (!(
   11567              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11568              : (TARGET_AVX512F) && (
   11569              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11570              : (TARGET_SSE
   11571              :    && (32 == 64 || TARGET_AVX512VL)
   11572              :    && 1) && 
   11573              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11574              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   11575              :             return -1;
   11576              :           return 3129; /* ieee_maxv16hf3_mask */
   11577              : 
   11578              :         case 2:
   11579              :           if (!(
   11580              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11581              : (TARGET_AVX512F) && (
   11582              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11583              : (TARGET_SSE
   11584              :    && (16 == 64 || TARGET_AVX512VL)
   11585              :    && 1) && 
   11586              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11587              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   11588              :             return -1;
   11589              :           return 3133; /* ieee_maxv8hf3_mask */
   11590              : 
   11591              :         case 3:
   11592              :           if (!(
   11593              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11594              : (TARGET_AVX512F) && (
   11595              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11596              : (TARGET_SSE
   11597              :    && (64 == 64 || TARGET_AVX512VL)
   11598              :    && 1) && 
   11599              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11600              : (TARGET_AVX512F))))
   11601              :             return -1;
   11602              :           return 3138; /* ieee_maxv16sf3_mask */
   11603              : 
   11604              :         case 4:
   11605              :           if (!(
   11606              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11607              : (TARGET_AVX512F) && (
   11608              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11609              : (TARGET_SSE
   11610              :    && (32 == 64 || TARGET_AVX512VL)
   11611              :    && 1) && 
   11612              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11613              : (TARGET_AVX))))
   11614              :             return -1;
   11615              :           return 3145; /* ieee_maxv8sf3_mask */
   11616              : 
   11617              :         case 5:
   11618              :           if (!(
   11619              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11620              : (TARGET_AVX512F) && 
   11621              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11622              : (TARGET_SSE
   11623              :    && (16 == 64 || TARGET_AVX512VL)
   11624              :    && 1)))
   11625              :             return -1;
   11626              :           return 3149; /* ieee_maxv4sf3_mask */
   11627              : 
   11628              :         case 6:
   11629              :           if (!(
   11630              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11631              : (TARGET_AVX512F) && (
   11632              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11633              : (TARGET_SSE
   11634              :    && (64 == 64 || TARGET_AVX512VL)
   11635              :    && 1) && 
   11636              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11637              : (TARGET_AVX512F))))
   11638              :             return -1;
   11639              :           return 3154; /* ieee_maxv8df3_mask */
   11640              : 
   11641              :         case 7:
   11642              :           if (!(
   11643              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11644              : (TARGET_AVX512F) && (
   11645              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11646              : (TARGET_SSE
   11647              :    && (32 == 64 || TARGET_AVX512VL)
   11648              :    && 1) && 
   11649              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11650              : (TARGET_AVX))))
   11651              :             return -1;
   11652              :           return 3161; /* ieee_maxv4df3_mask */
   11653              : 
   11654              :         case 8:
   11655              :           if (!(
   11656              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11657              : (TARGET_AVX512F) && (
   11658              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11659              : (TARGET_SSE
   11660              :    && (16 == 64 || TARGET_AVX512VL)
   11661              :    && 1) && 
   11662              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11663              : (TARGET_SSE2))))
   11664              :             return -1;
   11665              :           return 3165; /* ieee_maxv2df3_mask */
   11666              : 
   11667              :         case 9:
   11668              :           if (!(
   11669              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11670              : (TARGET_SSE) && 
   11671              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11672              : (TARGET_AVX512FP16)))
   11673              :             return -1;
   11674              :           return 3198; /* avx512fp16_ieee_vmmaxv8hf3 */
   11675              : 
   11676              :         case 10:
   11677              :           if (!
   11678              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11679              : (TARGET_SSE))
   11680              :             return -1;
   11681              :           return 3206; /* sse_ieee_vmmaxv4sf3 */
   11682              : 
   11683              :         case 11:
   11684              :           if (!(
   11685              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11686              : (TARGET_SSE) && 
   11687              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11688              : (TARGET_SSE2)))
   11689              :             return -1;
   11690              :           return 3214; /* sse2_ieee_vmmaxv2df3 */
   11691              : 
   11692              :         default:
   11693              :           return -1;
   11694              :         }
   11695              : 
   11696              :     case 63:
   11697              :       switch (pattern463 (x2))
   11698              :         {
   11699              :         case 0:
   11700              :           if (!(
   11701              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11702              : (TARGET_AVX512F) && (
   11703              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11704              : (TARGET_SSE
   11705              :    && (64 == 64 || TARGET_AVX512VL)
   11706              :    && 1) && 
   11707              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11708              : (TARGET_AVX512FP16))))
   11709              :             return -1;
   11710              :           return 3126; /* ieee_minv32hf3_mask */
   11711              : 
   11712              :         case 1:
   11713              :           if (!(
   11714              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11715              : (TARGET_AVX512F) && (
   11716              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11717              : (TARGET_SSE
   11718              :    && (32 == 64 || TARGET_AVX512VL)
   11719              :    && 1) && 
   11720              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11721              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   11722              :             return -1;
   11723              :           return 3131; /* ieee_minv16hf3_mask */
   11724              : 
   11725              :         case 2:
   11726              :           if (!(
   11727              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11728              : (TARGET_AVX512F) && (
   11729              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11730              : (TARGET_SSE
   11731              :    && (16 == 64 || TARGET_AVX512VL)
   11732              :    && 1) && 
   11733              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11734              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   11735              :             return -1;
   11736              :           return 3135; /* ieee_minv8hf3_mask */
   11737              : 
   11738              :         case 3:
   11739              :           if (!(
   11740              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11741              : (TARGET_AVX512F) && (
   11742              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11743              : (TARGET_SSE
   11744              :    && (64 == 64 || TARGET_AVX512VL)
   11745              :    && 1) && 
   11746              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11747              : (TARGET_AVX512F))))
   11748              :             return -1;
   11749              :           return 3142; /* ieee_minv16sf3_mask */
   11750              : 
   11751              :         case 4:
   11752              :           if (!(
   11753              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11754              : (TARGET_AVX512F) && (
   11755              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11756              : (TARGET_SSE
   11757              :    && (32 == 64 || TARGET_AVX512VL)
   11758              :    && 1) && 
   11759              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11760              : (TARGET_AVX))))
   11761              :             return -1;
   11762              :           return 3147; /* ieee_minv8sf3_mask */
   11763              : 
   11764              :         case 5:
   11765              :           if (!(
   11766              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11767              : (TARGET_AVX512F) && 
   11768              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11769              : (TARGET_SSE
   11770              :    && (16 == 64 || TARGET_AVX512VL)
   11771              :    && 1)))
   11772              :             return -1;
   11773              :           return 3151; /* ieee_minv4sf3_mask */
   11774              : 
   11775              :         case 6:
   11776              :           if (!(
   11777              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11778              : (TARGET_AVX512F) && (
   11779              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11780              : (TARGET_SSE
   11781              :    && (64 == 64 || TARGET_AVX512VL)
   11782              :    && 1) && 
   11783              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11784              : (TARGET_AVX512F))))
   11785              :             return -1;
   11786              :           return 3158; /* ieee_minv8df3_mask */
   11787              : 
   11788              :         case 7:
   11789              :           if (!(
   11790              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11791              : (TARGET_AVX512F) && (
   11792              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11793              : (TARGET_SSE
   11794              :    && (32 == 64 || TARGET_AVX512VL)
   11795              :    && 1) && 
   11796              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11797              : (TARGET_AVX))))
   11798              :             return -1;
   11799              :           return 3163; /* ieee_minv4df3_mask */
   11800              : 
   11801              :         case 8:
   11802              :           if (!(
   11803              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11804              : (TARGET_AVX512F) && (
   11805              : #line 3493 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11806              : (TARGET_SSE
   11807              :    && (16 == 64 || TARGET_AVX512VL)
   11808              :    && 1) && 
   11809              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11810              : (TARGET_SSE2))))
   11811              :             return -1;
   11812              :           return 3167; /* ieee_minv2df3_mask */
   11813              : 
   11814              :         case 9:
   11815              :           if (!(
   11816              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11817              : (TARGET_SSE) && 
   11818              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11819              : (TARGET_AVX512FP16)))
   11820              :             return -1;
   11821              :           return 3202; /* avx512fp16_ieee_vmminv8hf3 */
   11822              : 
   11823              :         case 10:
   11824              :           if (!
   11825              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11826              : (TARGET_SSE))
   11827              :             return -1;
   11828              :           return 3210; /* sse_ieee_vmminv4sf3 */
   11829              : 
   11830              :         case 11:
   11831              :           if (!(
   11832              : #line 3588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11833              : (TARGET_SSE) && 
   11834              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11835              : (TARGET_SSE2)))
   11836              :             return -1;
   11837              :           return 3218; /* sse2_ieee_vmminv2df3 */
   11838              : 
   11839              :         default:
   11840              :           return -1;
   11841              :         }
   11842              : 
   11843              :     case 193:
   11844              :       x4 = XVECEXP (x3, 0, 0);
   11845              :       operands[1] = x4;
   11846              :       x5 = XVECEXP (x3, 0, 1);
   11847              :       operands[2] = x5;
   11848              :       if (!const_0_to_255_operand (operands[2], E_SImode))
   11849              :         return -1;
   11850              :       x6 = XEXP (x2, 1);
   11851              :       operands[3] = x6;
   11852              :       x7 = XEXP (x2, 2);
   11853              :       operands[4] = x7;
   11854              :       switch (GET_MODE (operands[0]))
   11855              :         {
   11856              :         case E_V32HFmode:
   11857              :           if (pattern1223 (x2, 
   11858              : E_V32HFmode, 
   11859              : E_SImode) != 0
   11860              :               || !(
   11861              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11862              : (TARGET_AVX512F) && (
   11863              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11864              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V32HFmode))) && 
   11865              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11866              : (TARGET_AVX512FP16))))
   11867              :             return -1;
   11868              :           return 3238; /* reducepv32hf_mask */
   11869              : 
   11870              :         case E_V16HFmode:
   11871              :           if (pattern1223 (x2, 
   11872              : E_V16HFmode, 
   11873              : E_HImode) != 0
   11874              :               || !(
   11875              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11876              : (TARGET_AVX512F) && (
   11877              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11878              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V16HFmode))) && 
   11879              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11880              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   11881              :             return -1;
   11882              :           return 3242; /* reducepv16hf_mask */
   11883              : 
   11884              :         case E_V8HFmode:
   11885              :           if (pattern1223 (x2, 
   11886              : E_V8HFmode, 
   11887              : E_QImode) != 0
   11888              :               || !(
   11889              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11890              : (TARGET_AVX512F) && (
   11891              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11892              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V8HFmode))) && 
   11893              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11894              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   11895              :             return -1;
   11896              :           return 3246; /* reducepv8hf_mask */
   11897              : 
   11898              :         case E_V16SFmode:
   11899              :           if (pattern1223 (x2, 
   11900              : E_V16SFmode, 
   11901              : E_HImode) != 0
   11902              :               || !(
   11903              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11904              : (TARGET_AVX512F) && 
   11905              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11906              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V16SFmode)))))
   11907              :             return -1;
   11908              :           return 3250; /* reducepv16sf_mask */
   11909              : 
   11910              :         case E_V8SFmode:
   11911              :           if (pattern1223 (x2, 
   11912              : E_V8SFmode, 
   11913              : E_QImode) != 0
   11914              :               || !(
   11915              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11916              : (TARGET_AVX512F) && (
   11917              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11918              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V8SFmode))) && 
   11919              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11920              : (TARGET_AVX512VL))))
   11921              :             return -1;
   11922              :           return 3254; /* reducepv8sf_mask */
   11923              : 
   11924              :         case E_V4SFmode:
   11925              :           if (pattern1223 (x2, 
   11926              : E_V4SFmode, 
   11927              : E_QImode) != 0
   11928              :               || !(
   11929              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11930              : (TARGET_AVX512F) && (
   11931              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11932              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V4SFmode))) && 
   11933              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11934              : (TARGET_AVX512VL))))
   11935              :             return -1;
   11936              :           return 3258; /* reducepv4sf_mask */
   11937              : 
   11938              :         case E_V8DFmode:
   11939              :           if (pattern1223 (x2, 
   11940              : E_V8DFmode, 
   11941              : E_QImode) != 0
   11942              :               || !(
   11943              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11944              : (TARGET_AVX512F) && 
   11945              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11946              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V8DFmode)))))
   11947              :             return -1;
   11948              :           return 3262; /* reducepv8df_mask */
   11949              : 
   11950              :         case E_V4DFmode:
   11951              :           if (pattern1223 (x2, 
   11952              : E_V4DFmode, 
   11953              : E_QImode) != 0
   11954              :               || !(
   11955              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11956              : (TARGET_AVX512F) && (
   11957              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11958              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V4DFmode))) && 
   11959              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11960              : (TARGET_AVX512VL))))
   11961              :             return -1;
   11962              :           return 3266; /* reducepv4df_mask */
   11963              : 
   11964              :         case E_V2DFmode:
   11965              :           if (pattern1223 (x2, 
   11966              : E_V2DFmode, 
   11967              : E_QImode) != 0
   11968              :               || !(
   11969              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11970              : (TARGET_AVX512F) && (
   11971              : #line 4293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11972              : (TARGET_AVX512DQ || (VALID_AVX512FP16_REG_MODE (V2DFmode))) && 
   11973              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11974              : (TARGET_AVX512VL))))
   11975              :             return -1;
   11976              :           return 3270; /* reducepv2df_mask */
   11977              : 
   11978              :         default:
   11979              :           return -1;
   11980              :         }
   11981              : 
   11982              :     case 222:
   11983              :       switch (pattern465 (x2))
   11984              :         {
   11985              :         case 0:
   11986              :           if (!(
   11987              : #line 106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11988              : (TARGET_AVX512F) && 
   11989              : #line 7722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11990              : (TARGET_AVX512FP16 && 1)))
   11991              :             return -1;
   11992              :           return 4417; /* avx512bw_fmulc_v32hf_mask */
   11993              : 
   11994              :         case 1:
   11995              :           if (!(
   11996              : #line 106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   11997              : (TARGET_AVX512F) && (
   11998              : #line 7722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   11999              : (TARGET_AVX512FP16 && 1) && 
   12000              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12001              : (TARGET_AVX512VL))))
   12002              :             return -1;
   12003              :           return 4425; /* avx512vl_fmulc_v16hf_mask */
   12004              : 
   12005              :         case 2:
   12006              :           if (!(
   12007              : #line 106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12008              : (TARGET_AVX512F) && (
   12009              : #line 7722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12010              : (TARGET_AVX512FP16 && 1) && 
   12011              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12012              : (TARGET_AVX512VL))))
   12013              :             return -1;
   12014              :           return 4429; /* avx512fp16_fmulc_v8hf_mask */
   12015              : 
   12016              :         case 3:
   12017              :           if (!
   12018              : #line 7926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12019              : (TARGET_AVX512FP16))
   12020              :             return -1;
   12021              :           return 4444; /* avx512fp16_fmulcsh_v8hf */
   12022              : 
   12023              :         default:
   12024              :           return -1;
   12025              :         }
   12026              : 
   12027              :     case 223:
   12028              :       switch (pattern465 (x2))
   12029              :         {
   12030              :         case 0:
   12031              :           if (!(
   12032              : #line 106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12033              : (TARGET_AVX512F) && 
   12034              : #line 7722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12035              : (TARGET_AVX512FP16 && 1)))
   12036              :             return -1;
   12037              :           return 4421; /* avx512bw_fcmulc_v32hf_mask */
   12038              : 
   12039              :         case 1:
   12040              :           if (!(
   12041              : #line 106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12042              : (TARGET_AVX512F) && (
   12043              : #line 7722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12044              : (TARGET_AVX512FP16 && 1) && 
   12045              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12046              : (TARGET_AVX512VL))))
   12047              :             return -1;
   12048              :           return 4427; /* avx512vl_fcmulc_v16hf_mask */
   12049              : 
   12050              :         case 2:
   12051              :           if (!(
   12052              : #line 106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12053              : (TARGET_AVX512F) && (
   12054              : #line 7722 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12055              : (TARGET_AVX512FP16 && 1) && 
   12056              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12057              : (TARGET_AVX512VL))))
   12058              :             return -1;
   12059              :           return 4431; /* avx512fp16_fcmulc_v8hf_mask */
   12060              : 
   12061              :         case 3:
   12062              :           if (!
   12063              : #line 7926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12064              : (TARGET_AVX512FP16))
   12065              :             return -1;
   12066              :           return 4448; /* avx512fp16_fcmulcsh_v8hf */
   12067              : 
   12068              :         default:
   12069              :           return -1;
   12070              :         }
   12071              : 
   12072              :     case 59:
   12073              :       return recog_134 (x1, insn, pnum_clobbers);
   12074              : 
   12075              :     case 166:
   12076              :       x7 = XEXP (x2, 2);
   12077              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   12078              :         return -1;
   12079              :       x4 = XVECEXP (x3, 0, 0);
   12080              :       operands[1] = x4;
   12081              :       x5 = XVECEXP (x3, 0, 1);
   12082              :       operands[2] = x5;
   12083              :       switch (pattern462 (x2))
   12084              :         {
   12085              :         case 0:
   12086              :           if (!(
   12087              : #line 14446 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12088              : (TARGET_AVX512F) && 
   12089              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12090              : (TARGET_AVX512FP16)))
   12091              :             return -1;
   12092              :           return 7098; /* avx512f_sgetexpv8hf */
   12093              : 
   12094              :         case 1:
   12095              :           if (!
   12096              : #line 14446 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12097              : (TARGET_AVX512F))
   12098              :             return -1;
   12099              :           return 7102; /* avx512f_sgetexpv4sf */
   12100              : 
   12101              :         case 2:
   12102              :           if (!(
   12103              : #line 14446 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12104              : (TARGET_AVX512F) && 
   12105              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12106              : (TARGET_SSE2)))
   12107              :             return -1;
   12108              :           return 7106; /* avx512f_sgetexpv2df */
   12109              : 
   12110              :         default:
   12111              :           return -1;
   12112              :         }
   12113              : 
   12114              :     case 95:
   12115              :       return recog_133 (x1, insn, pnum_clobbers);
   12116              : 
   12117              :     case 189:
   12118              :       x4 = XVECEXP (x3, 0, 0);
   12119              :       operands[1] = x4;
   12120              :       x5 = XVECEXP (x3, 0, 1);
   12121              :       operands[2] = x5;
   12122              :       x6 = XEXP (x2, 1);
   12123              :       operands[3] = x6;
   12124              :       x7 = XEXP (x2, 2);
   12125              :       operands[4] = x7;
   12126              :       switch (GET_MODE (operands[0]))
   12127              :         {
   12128              :         case E_V16SImode:
   12129              :           if (pattern468 (x2, 
   12130              : E_HImode, 
   12131              : E_V16SImode, 
   12132              : E_V32HImode) != 0
   12133              :               || !(
   12134              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12135              : (TARGET_AVX512F) && (
   12136              : #line 17110 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12137              : (TARGET_AVX512BW && (64 == 64 || TARGET_AVX512VL)) && 
   12138              : #line 642 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12139              : (TARGET_AVX512BW))))
   12140              :             return -1;
   12141              :           return 7656; /* avx512bw_pmaddwd512v32hi_mask */
   12142              : 
   12143              :         case E_V8SImode:
   12144              :           if (pattern468 (x2, 
   12145              : E_QImode, 
   12146              : E_V8SImode, 
   12147              : E_V16HImode) != 0
   12148              :               || !(
   12149              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12150              : (TARGET_AVX512F) && (
   12151              : #line 17110 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12152              : (TARGET_AVX512BW && (32 == 64 || TARGET_AVX512VL)) && 
   12153              : #line 642 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12154              : (TARGET_AVX2))))
   12155              :             return -1;
   12156              :           return 7658; /* avx512bw_pmaddwd512v16hi_mask */
   12157              : 
   12158              :         case E_V4SImode:
   12159              :           if (pattern468 (x2, 
   12160              : E_QImode, 
   12161              : E_V4SImode, 
   12162              : E_V8HImode) != 0
   12163              :               || !(
   12164              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12165              : (TARGET_AVX512F) && 
   12166              : #line 17110 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12167              : (TARGET_AVX512BW && (16 == 64 || TARGET_AVX512VL))))
   12168              :             return -1;
   12169              :           return 7660; /* avx512bw_pmaddwd512v8hi_mask */
   12170              : 
   12171              :         default:
   12172              :           return -1;
   12173              :         }
   12174              : 
   12175              :     case 58:
   12176              :       x4 = XVECEXP (x3, 0, 0);
   12177              :       operands[1] = x4;
   12178              :       x5 = XVECEXP (x3, 0, 1);
   12179              :       operands[2] = x5;
   12180              :       x6 = XEXP (x2, 1);
   12181              :       operands[3] = x6;
   12182              :       x7 = XEXP (x2, 2);
   12183              :       operands[4] = x7;
   12184              :       switch (GET_MODE (operands[0]))
   12185              :         {
   12186              :         case E_V64QImode:
   12187              :           if (pattern1118 (x2, 
   12188              : E_DImode, 
   12189              : E_V64QImode, 
   12190              : E_V32HImode) != 0
   12191              :               || !(
   12192              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12193              : (TARGET_AVX512F) && (
   12194              : #line 19843 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12195              : (TARGET_SSE2 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
   12196              : #line 626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12197              : (TARGET_AVX512BW))))
   12198              :             return -1;
   12199              :           return 8389; /* avx512bw_packuswb_mask */
   12200              : 
   12201              :         case E_V32QImode:
   12202              :           if (pattern1118 (x2, 
   12203              : E_SImode, 
   12204              : E_V32QImode, 
   12205              : E_V16HImode) != 0
   12206              :               || !(
   12207              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12208              : (TARGET_AVX512F) && (
   12209              : #line 19843 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12210              : (TARGET_SSE2 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
   12211              : #line 626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12212              : (TARGET_AVX2))))
   12213              :             return -1;
   12214              :           return 8391; /* avx2_packuswb_mask */
   12215              : 
   12216              :         case E_V16QImode:
   12217              :           if (pattern1118 (x2, 
   12218              : E_HImode, 
   12219              : E_V16QImode, 
   12220              : E_V8HImode) != 0
   12221              :               || !(
   12222              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12223              : (TARGET_AVX512F) && 
   12224              : #line 19843 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12225              : (TARGET_SSE2 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
   12226              :             return -1;
   12227              :           return 8393; /* sse2_packuswb_mask */
   12228              : 
   12229              :         case E_V32HImode:
   12230              :           if (pattern1118 (x2, 
   12231              : E_SImode, 
   12232              : E_V32HImode, 
   12233              : E_V16SImode) != 0
   12234              :               || !(
   12235              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12236              : (TARGET_AVX512F) && (
   12237              : #line 24380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12238              : (TARGET_SSE4_1 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
   12239              : #line 642 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12240              : (TARGET_AVX512BW))))
   12241              :             return -1;
   12242              :           return 8804; /* avx512bw_packusdw_mask */
   12243              : 
   12244              :         case E_V16HImode:
   12245              :           if (pattern1118 (x2, 
   12246              : E_HImode, 
   12247              : E_V16HImode, 
   12248              : E_V8SImode) != 0
   12249              :               || !(
   12250              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12251              : (TARGET_AVX512F) && (
   12252              : #line 24380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12253              : (TARGET_SSE4_1 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
   12254              : #line 642 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12255              : (TARGET_AVX2))))
   12256              :             return -1;
   12257              :           return 8806; /* avx2_packusdw_mask */
   12258              : 
   12259              :         case E_V8HImode:
   12260              :           if (pattern1118 (x2, 
   12261              : E_QImode, 
   12262              : E_V8HImode, 
   12263              : E_V4SImode) != 0
   12264              :               || !(
   12265              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12266              : (TARGET_AVX512F) && 
   12267              : #line 24380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12268              : (TARGET_SSE4_1 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
   12269              :             return -1;
   12270              :           return 8808; /* sse4_1_packusdw_mask */
   12271              : 
   12272              :         default:
   12273              :           return -1;
   12274              :         }
   12275              : 
   12276              :     case 191:
   12277              :       if (pattern466 (x2) != 0
   12278              :           || !(
   12279              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12280              : (TARGET_AVX512F) && 
   12281              : #line 21195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12282              : (TARGET_AVX512BW)))
   12283              :         return -1;
   12284              :       return 8519; /* avx512bw_pshuflwv32hi_mask */
   12285              : 
   12286              :     case 190:
   12287              :       if (pattern466 (x2) != 0
   12288              :           || !(
   12289              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12290              : (TARGET_AVX512F) && 
   12291              : #line 21371 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12292              : (TARGET_AVX512BW)))
   12293              :         return -1;
   12294              :       return 8525; /* avx512bw_pshufhwv32hi_mask */
   12295              : 
   12296              :     case 188:
   12297              :       x4 = XVECEXP (x3, 0, 0);
   12298              :       operands[1] = x4;
   12299              :       x5 = XVECEXP (x3, 0, 1);
   12300              :       operands[2] = x5;
   12301              :       x6 = XEXP (x2, 1);
   12302              :       operands[3] = x6;
   12303              :       x7 = XEXP (x2, 2);
   12304              :       operands[4] = x7;
   12305              :       switch (GET_MODE (operands[0]))
   12306              :         {
   12307              :         case E_V8HImode:
   12308              :           if (pattern468 (x2, 
   12309              : E_QImode, 
   12310              : E_V8HImode, 
   12311              : E_V16QImode) != 0
   12312              :               || !(
   12313              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12314              : (TARGET_AVX512F) && (
   12315              : #line 23322 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12316              : (TARGET_AVX512BW) && 
   12317              : #line 675 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12318              : (TARGET_AVX512VL))))
   12319              :             return -1;
   12320              :           return 8682; /* avx512bw_pmaddubsw512v8hi_mask */
   12321              : 
   12322              :         case E_V16HImode:
   12323              :           if (pattern468 (x2, 
   12324              : E_HImode, 
   12325              : E_V16HImode, 
   12326              : E_V32QImode) != 0
   12327              :               || !(
   12328              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12329              : (TARGET_AVX512F) && (
   12330              : #line 23322 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12331              : (TARGET_AVX512BW) && 
   12332              : #line 675 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12333              : (TARGET_AVX512VL))))
   12334              :             return -1;
   12335              :           return 8684; /* avx512bw_pmaddubsw512v16hi_mask */
   12336              : 
   12337              :         case E_V32HImode:
   12338              :           if (pattern468 (x2, 
   12339              : E_SImode, 
   12340              : E_V32HImode, 
   12341              : E_V64QImode) != 0
   12342              :               || !(
   12343              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12344              : (TARGET_AVX512F) && 
   12345              : #line 23322 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12346              : (TARGET_AVX512BW)))
   12347              :             return -1;
   12348              :           return 8686; /* avx512bw_pmaddubsw512v32hi_mask */
   12349              : 
   12350              :         default:
   12351              :           return -1;
   12352              :         }
   12353              : 
   12354              :     case 53:
   12355              :       switch (pattern467 (x2))
   12356              :         {
   12357              :         case 0:
   12358              :           if (!(
   12359              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12360              : (TARGET_AVX512F) && (
   12361              : #line 23650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12362              : (TARGET_SSSE3 && (64 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
   12363              : #line 626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12364              : (TARGET_AVX512BW))))
   12365              :             return -1;
   12366              :           return 8700; /* avx512bw_pshufbv64qi3_mask */
   12367              : 
   12368              :         case 1:
   12369              :           if (!(
   12370              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12371              : (TARGET_AVX512F) && (
   12372              : #line 23650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12373              : (TARGET_SSSE3 && (32 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW) && 
   12374              : #line 626 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12375              : (TARGET_AVX2))))
   12376              :             return -1;
   12377              :           return 8702; /* avx2_pshufbv32qi3_mask */
   12378              : 
   12379              :         case 2:
   12380              :           if (!(
   12381              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12382              : (TARGET_AVX512F) && 
   12383              : #line 23650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12384              : (TARGET_SSSE3 && (16 == 64 || TARGET_AVX512VL) && TARGET_AVX512BW)))
   12385              :             return -1;
   12386              :           return 8704; /* ssse3_pshufbv16qi3_mask */
   12387              : 
   12388              :         default:
   12389              :           return -1;
   12390              :         }
   12391              : 
   12392              :     case 152:
   12393              :       return recog_132 (x1, insn, pnum_clobbers);
   12394              : 
   12395              :     case 145:
   12396              :       x4 = XVECEXP (x3, 0, 0);
   12397              :       operands[1] = x4;
   12398              :       x5 = XVECEXP (x3, 0, 1);
   12399              :       operands[2] = x5;
   12400              :       x6 = XEXP (x2, 1);
   12401              :       operands[3] = x6;
   12402              :       x7 = XEXP (x2, 2);
   12403              :       operands[4] = x7;
   12404              :       switch (GET_MODE (operands[0]))
   12405              :         {
   12406              :         case E_V16SFmode:
   12407              :           if (pattern1121 (x2, 
   12408              : E_V16SFmode, 
   12409              : E_V16SImode, 
   12410              : E_HImode) != 0
   12411              :               || !(
   12412              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12413              : (TARGET_AVX512F) && (
   12414              : #line 29083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12415              : (TARGET_AVX && (64 == 64 || TARGET_AVX512VL)) && 
   12416              : #line 382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12417              : (TARGET_AVX512F))))
   12418              :             return -1;
   12419              :           return 9457; /* avx512f_vpermilvarv16sf3_mask */
   12420              : 
   12421              :         case E_V8SFmode:
   12422              :           if (pattern1121 (x2, 
   12423              : E_V8SFmode, 
   12424              : E_V8SImode, 
   12425              : E_QImode) != 0
   12426              :               || !(
   12427              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12428              : (TARGET_AVX512F) && (
   12429              : #line 29083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12430              : (TARGET_AVX && (32 == 64 || TARGET_AVX512VL)) && 
   12431              : #line 382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12432              : (TARGET_AVX))))
   12433              :             return -1;
   12434              :           return 9459; /* avx_vpermilvarv8sf3_mask */
   12435              : 
   12436              :         case E_V4SFmode:
   12437              :           if (pattern1121 (x2, 
   12438              : E_V4SFmode, 
   12439              : E_V4SImode, 
   12440              : E_QImode) != 0
   12441              :               || !(
   12442              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12443              : (TARGET_AVX512F) && 
   12444              : #line 29083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12445              : (TARGET_AVX && (16 == 64 || TARGET_AVX512VL))))
   12446              :             return -1;
   12447              :           return 9461; /* avx_vpermilvarv4sf3_mask */
   12448              : 
   12449              :         case E_V8DFmode:
   12450              :           if (pattern1121 (x2, 
   12451              : E_V8DFmode, 
   12452              : E_V8DImode, 
   12453              : E_QImode) != 0
   12454              :               || !(
   12455              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12456              : (TARGET_AVX512F) && (
   12457              : #line 29083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12458              : (TARGET_AVX && (64 == 64 || TARGET_AVX512VL)) && 
   12459              : #line 383 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12460              : (TARGET_AVX512F))))
   12461              :             return -1;
   12462              :           return 9463; /* avx512f_vpermilvarv8df3_mask */
   12463              : 
   12464              :         case E_V4DFmode:
   12465              :           if (pattern1121 (x2, 
   12466              : E_V4DFmode, 
   12467              : E_V4DImode, 
   12468              : E_QImode) != 0
   12469              :               || !(
   12470              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12471              : (TARGET_AVX512F) && (
   12472              : #line 29083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12473              : (TARGET_AVX && (32 == 64 || TARGET_AVX512VL)) && 
   12474              : #line 383 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12475              : (TARGET_AVX))))
   12476              :             return -1;
   12477              :           return 9465; /* avx_vpermilvarv4df3_mask */
   12478              : 
   12479              :         case E_V2DFmode:
   12480              :           if (pattern1121 (x2, 
   12481              : E_V2DFmode, 
   12482              : E_V2DImode, 
   12483              : E_QImode) != 0
   12484              :               || !(
   12485              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12486              : (TARGET_AVX512F) && (
   12487              : #line 29083 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12488              : (TARGET_AVX && (16 == 64 || TARGET_AVX512VL)) && 
   12489              : #line 384 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12490              : (TARGET_SSE2))))
   12491              :             return -1;
   12492              :           return 9467; /* avx_vpermilvarv2df3_mask */
   12493              : 
   12494              :         default:
   12495              :           return -1;
   12496              :         }
   12497              : 
   12498              :     case 151:
   12499              :       x4 = XVECEXP (x3, 0, 0);
   12500              :       operands[1] = x4;
   12501              :       x5 = XVECEXP (x3, 0, 1);
   12502              :       operands[2] = x5;
   12503              :       if (!const_0_to_255_operand (operands[2], E_SImode))
   12504              :         return -1;
   12505              :       switch (GET_MODE (operands[0]))
   12506              :         {
   12507              :         case E_V8HImode:
   12508              :           if (pattern1008 (x2, 
   12509              : E_QImode, 
   12510              : E_V8SFmode, 
   12511              : E_V8HImode) != 0)
   12512              :             return -1;
   12513              :           x7 = XEXP (x2, 2);
   12514              :           operands[4] = x7;
   12515              :           if (register_operand (operands[0], E_V8HImode))
   12516              :             {
   12517              :               x6 = XEXP (x2, 1);
   12518              :               operands[3] = x6;
   12519              :               if (nonimm_or_0_operand (operands[3], E_V8HImode)
   12520              :                   && (
   12521              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12522              : (TARGET_AVX512F) && 
   12523              : #line 30214 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12524              : (TARGET_F16C || TARGET_AVX512VL)))
   12525              :                 return 9765; /* vcvtps2ph256_mask */
   12526              :             }
   12527              :           operands[3] = x7;
   12528              :           if (!memory_operand (operands[0], E_V8HImode))
   12529              :             return -1;
   12530              :           x6 = XEXP (x2, 1);
   12531              :           if (!rtx_equal_p (x6, operands[0])
   12532              :               || !(
   12533              : #line 96 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12534              : (TARGET_AVX512F) && 
   12535              : #line 30226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12536              : (TARGET_F16C || TARGET_AVX512VL)))
   12537              :             return -1;
   12538              :           return 9767; /* *vcvtps2ph256_merge_mask */
   12539              : 
   12540              :         case E_V16HImode:
   12541              :           if (pattern1008 (x2, 
   12542              : E_HImode, 
   12543              : E_V16SFmode, 
   12544              : E_V16HImode) != 0)
   12545              :             return -1;
   12546              :           x7 = XEXP (x2, 2);
   12547              :           operands[4] = x7;
   12548              :           if (register_operand (operands[0], E_V16HImode))
   12549              :             {
   12550              :               x6 = XEXP (x2, 1);
   12551              :               operands[3] = x6;
   12552              :               if (nonimm_or_0_operand (operands[3], E_V16HImode)
   12553              :                   && 
   12554              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12555              : (TARGET_AVX512F))
   12556              :                 return 9770; /* avx512f_vcvtps2ph512_mask */
   12557              :             }
   12558              :           operands[3] = x7;
   12559              :           if (!memory_operand (operands[0], E_V16HImode))
   12560              :             return -1;
   12561              :           x6 = XEXP (x2, 1);
   12562              :           if (!rtx_equal_p (x6, operands[0])
   12563              :               || !
   12564              : #line 96 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12565              : (TARGET_AVX512F))
   12566              :             return -1;
   12567              :           return 9773; /* *avx512f_vcvtps2ph512_merge_mask */
   12568              : 
   12569              :         default:
   12570              :           return -1;
   12571              :         }
   12572              : 
   12573              :     case 167:
   12574              :       return recog_135 (x1, insn, pnum_clobbers);
   12575              : 
   12576              :     case 198:
   12577              :       x4 = XVECEXP (x3, 0, 0);
   12578              :       operands[1] = x4;
   12579              :       x5 = XVECEXP (x3, 0, 1);
   12580              :       operands[2] = x5;
   12581              :       x6 = XEXP (x2, 1);
   12582              :       operands[3] = x6;
   12583              :       x7 = XEXP (x2, 2);
   12584              :       operands[4] = x7;
   12585              :       switch (GET_MODE (operands[0]))
   12586              :         {
   12587              :         case E_V64QImode:
   12588              :           if (pattern1122 (x2, 
   12589              : E_V64QImode, 
   12590              : E_DImode) != 0
   12591              :               || !(
   12592              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12593              : (TARGET_AVX512F) && 
   12594              : #line 31330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12595              : (TARGET_AVX512VBMI)))
   12596              :             return -1;
   12597              :           return 10232; /* vpmultishiftqbv64qi_mask */
   12598              : 
   12599              :         case E_V16QImode:
   12600              :           if (pattern1122 (x2, 
   12601              : E_V16QImode, 
   12602              : E_HImode) != 0
   12603              :               || !(
   12604              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12605              : (TARGET_AVX512F) && (
   12606              : #line 31330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12607              : (TARGET_AVX512VBMI) && 
   12608              : #line 338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12609              : (TARGET_AVX512VL))))
   12610              :             return -1;
   12611              :           return 10234; /* vpmultishiftqbv16qi_mask */
   12612              : 
   12613              :         case E_V32QImode:
   12614              :           if (pattern1122 (x2, 
   12615              : E_V32QImode, 
   12616              : E_SImode) != 0
   12617              :               || !(
   12618              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12619              : (TARGET_AVX512F) && (
   12620              : #line 31330 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12621              : (TARGET_AVX512VBMI) && 
   12622              : #line 338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12623              : (TARGET_AVX512VL))))
   12624              :             return -1;
   12625              :           return 10236; /* vpmultishiftqbv32qi_mask */
   12626              : 
   12627              :         default:
   12628              :           return -1;
   12629              :         }
   12630              : 
   12631              :     case 201:
   12632              :       switch (pattern467 (x2))
   12633              :         {
   12634              :         case 0:
   12635              :           if (!(
   12636              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12637              : (TARGET_AVX512F) && (
   12638              : #line 31439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12639              : (TARGET_GFNI) && 
   12640              : #line 629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12641              : (TARGET_AVX512F))))
   12642              :             return -1;
   12643              :           return 10282; /* vgf2p8mulb_v64qi_mask */
   12644              : 
   12645              :         case 1:
   12646              :           if (!(
   12647              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12648              : (TARGET_AVX512F) && (
   12649              : #line 31439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12650              : (TARGET_GFNI) && 
   12651              : #line 629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12652              : (TARGET_AVX))))
   12653              :             return -1;
   12654              :           return 10284; /* vgf2p8mulb_v32qi_mask */
   12655              : 
   12656              :         case 2:
   12657              :           if (!(
   12658              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12659              : (TARGET_AVX512F) && 
   12660              : #line 31439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12661              : (TARGET_GFNI)))
   12662              :             return -1;
   12663              :           return 10286; /* vgf2p8mulb_v16qi_mask */
   12664              : 
   12665              :         default:
   12666              :           return -1;
   12667              :         }
   12668              : 
   12669              :     case 250:
   12670              :       switch (pattern469 (x2))
   12671              :         {
   12672              :         case 0:
   12673              :           if (!(
   12674              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12675              : (TARGET_AVX512F) && 
   12676              : #line 32811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12677              : (TARGET_AVX10_2)))
   12678              :             return -1;
   12679              :           return 10550; /* vcvt2ph2bf8v32hf_mask */
   12680              : 
   12681              :         case 1:
   12682              :           if (!(
   12683              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12684              : (TARGET_AVX512F) && (
   12685              : #line 32811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12686              : (TARGET_AVX10_2) && 
   12687              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12688              : (TARGET_AVX512VL))))
   12689              :             return -1;
   12690              :           return 10558; /* vcvt2ph2bf8v16hf_mask */
   12691              : 
   12692              :         case 2:
   12693              :           if (!(
   12694              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12695              : (TARGET_AVX512F) && (
   12696              : #line 32811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12697              : (TARGET_AVX10_2) && 
   12698              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12699              : (TARGET_AVX512VL))))
   12700              :             return -1;
   12701              :           return 10566; /* vcvt2ph2bf8v8hf_mask */
   12702              : 
   12703              :         default:
   12704              :           return -1;
   12705              :         }
   12706              : 
   12707              :     case 251:
   12708              :       switch (pattern469 (x2))
   12709              :         {
   12710              :         case 0:
   12711              :           if (!(
   12712              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12713              : (TARGET_AVX512F) && 
   12714              : #line 32811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12715              : (TARGET_AVX10_2)))
   12716              :             return -1;
   12717              :           return 10552; /* vcvt2ph2bf8sv32hf_mask */
   12718              : 
   12719              :         case 1:
   12720              :           if (!(
   12721              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12722              : (TARGET_AVX512F) && (
   12723              : #line 32811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12724              : (TARGET_AVX10_2) && 
   12725              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12726              : (TARGET_AVX512VL))))
   12727              :             return -1;
   12728              :           return 10560; /* vcvt2ph2bf8sv16hf_mask */
   12729              : 
   12730              :         case 2:
   12731              :           if (!(
   12732              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12733              : (TARGET_AVX512F) && (
   12734              : #line 32811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12735              : (TARGET_AVX10_2) && 
   12736              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12737              : (TARGET_AVX512VL))))
   12738              :             return -1;
   12739              :           return 10568; /* vcvt2ph2bf8sv8hf_mask */
   12740              : 
   12741              :         default:
   12742              :           return -1;
   12743              :         }
   12744              : 
   12745              :     case 252:
   12746              :       switch (pattern469 (x2))
   12747              :         {
   12748              :         case 0:
   12749              :           if (!(
   12750              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12751              : (TARGET_AVX512F) && 
   12752              : #line 32811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12753              : (TARGET_AVX10_2)))
   12754              :             return -1;
   12755              :           return 10554; /* vcvt2ph2hf8v32hf_mask */
   12756              : 
   12757              :         case 1:
   12758              :           if (!(
   12759              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12760              : (TARGET_AVX512F) && (
   12761              : #line 32811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12762              : (TARGET_AVX10_2) && 
   12763              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12764              : (TARGET_AVX512VL))))
   12765              :             return -1;
   12766              :           return 10562; /* vcvt2ph2hf8v16hf_mask */
   12767              : 
   12768              :         case 2:
   12769              :           if (!(
   12770              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12771              : (TARGET_AVX512F) && (
   12772              : #line 32811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12773              : (TARGET_AVX10_2) && 
   12774              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12775              : (TARGET_AVX512VL))))
   12776              :             return -1;
   12777              :           return 10570; /* vcvt2ph2hf8v8hf_mask */
   12778              : 
   12779              :         default:
   12780              :           return -1;
   12781              :         }
   12782              : 
   12783              :     case 253:
   12784              :       switch (pattern469 (x2))
   12785              :         {
   12786              :         case 0:
   12787              :           if (!(
   12788              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12789              : (TARGET_AVX512F) && 
   12790              : #line 32811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12791              : (TARGET_AVX10_2)))
   12792              :             return -1;
   12793              :           return 10556; /* vcvt2ph2hf8sv32hf_mask */
   12794              : 
   12795              :         case 1:
   12796              :           if (!(
   12797              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12798              : (TARGET_AVX512F) && (
   12799              : #line 32811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12800              : (TARGET_AVX10_2) && 
   12801              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12802              : (TARGET_AVX512VL))))
   12803              :             return -1;
   12804              :           return 10564; /* vcvt2ph2hf8sv16hf_mask */
   12805              : 
   12806              :         case 2:
   12807              :           if (!(
   12808              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12809              : (TARGET_AVX512F) && (
   12810              : #line 32811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12811              : (TARGET_AVX10_2) && 
   12812              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12813              : (TARGET_AVX512VL))))
   12814              :             return -1;
   12815              :           return 10572; /* vcvt2ph2hf8sv8hf_mask */
   12816              : 
   12817              :         default:
   12818              :           return -1;
   12819              :         }
   12820              : 
   12821              :     case 246:
   12822              :       switch (pattern471 (x2))
   12823              :         {
   12824              :         case 0:
   12825              :           if (!(
   12826              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12827              : (TARGET_AVX512F) && 
   12828              : #line 32903 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12829              : (TARGET_AVX10_2)))
   12830              :             return -1;
   12831              :           return 10582; /* vcvtbiasph2bf8v32hf_mask */
   12832              : 
   12833              :         case 1:
   12834              :           if (!(
   12835              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12836              : (TARGET_AVX512F) && 
   12837              : #line 32903 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12838              : (TARGET_AVX10_2)))
   12839              :             return -1;
   12840              :           return 10590; /* vcvtbiasph2bf8v16hf_mask */
   12841              : 
   12842              :         default:
   12843              :           return -1;
   12844              :         }
   12845              : 
   12846              :     case 247:
   12847              :       switch (pattern471 (x2))
   12848              :         {
   12849              :         case 0:
   12850              :           if (!(
   12851              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12852              : (TARGET_AVX512F) && 
   12853              : #line 32903 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12854              : (TARGET_AVX10_2)))
   12855              :             return -1;
   12856              :           return 10584; /* vcvtbiasph2bf8sv32hf_mask */
   12857              : 
   12858              :         case 1:
   12859              :           if (!(
   12860              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12861              : (TARGET_AVX512F) && 
   12862              : #line 32903 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12863              : (TARGET_AVX10_2)))
   12864              :             return -1;
   12865              :           return 10592; /* vcvtbiasph2bf8sv16hf_mask */
   12866              : 
   12867              :         default:
   12868              :           return -1;
   12869              :         }
   12870              : 
   12871              :     case 248:
   12872              :       switch (pattern471 (x2))
   12873              :         {
   12874              :         case 0:
   12875              :           if (!(
   12876              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12877              : (TARGET_AVX512F) && 
   12878              : #line 32903 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12879              : (TARGET_AVX10_2)))
   12880              :             return -1;
   12881              :           return 10586; /* vcvtbiasph2hf8v32hf_mask */
   12882              : 
   12883              :         case 1:
   12884              :           if (!(
   12885              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12886              : (TARGET_AVX512F) && 
   12887              : #line 32903 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12888              : (TARGET_AVX10_2)))
   12889              :             return -1;
   12890              :           return 10594; /* vcvtbiasph2hf8v16hf_mask */
   12891              : 
   12892              :         default:
   12893              :           return -1;
   12894              :         }
   12895              : 
   12896              :     case 249:
   12897              :       switch (pattern471 (x2))
   12898              :         {
   12899              :         case 0:
   12900              :           if (!(
   12901              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12902              : (TARGET_AVX512F) && 
   12903              : #line 32903 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12904              : (TARGET_AVX10_2)))
   12905              :             return -1;
   12906              :           return 10588; /* vcvtbiasph2hf8sv32hf_mask */
   12907              : 
   12908              :         case 1:
   12909              :           if (!(
   12910              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12911              : (TARGET_AVX512F) && 
   12912              : #line 32903 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12913              : (TARGET_AVX10_2)))
   12914              :             return -1;
   12915              :           return 10596; /* vcvtbiasph2hf8sv16hf_mask */
   12916              : 
   12917              :         default:
   12918              :           return -1;
   12919              :         }
   12920              : 
   12921              :     case 259:
   12922              :       x4 = XVECEXP (x3, 0, 0);
   12923              :       operands[1] = x4;
   12924              :       x5 = XVECEXP (x3, 0, 1);
   12925              :       operands[2] = x5;
   12926              :       x6 = XEXP (x2, 1);
   12927              :       operands[3] = x6;
   12928              :       x7 = XEXP (x2, 2);
   12929              :       operands[4] = x7;
   12930              :       switch (GET_MODE (operands[0]))
   12931              :         {
   12932              :         case E_V32BFmode:
   12933              :           if (pattern1122 (x2, 
   12934              : E_V32BFmode, 
   12935              : E_SImode) != 0
   12936              :               || !(
   12937              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12938              : (TARGET_AVX512F) && 
   12939              : #line 33170 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12940              : (TARGET_AVX10_2)))
   12941              :             return -1;
   12942              :           return 10691; /* avx10_2_scalefbf16_v32bf_mask */
   12943              : 
   12944              :         case E_V16BFmode:
   12945              :           if (pattern1122 (x2, 
   12946              : E_V16BFmode, 
   12947              : E_HImode) != 0
   12948              :               || !(
   12949              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12950              : (TARGET_AVX512F) && 
   12951              : #line 33170 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12952              : (TARGET_AVX10_2)))
   12953              :             return -1;
   12954              :           return 10693; /* avx10_2_scalefbf16_v16bf_mask */
   12955              : 
   12956              :         case E_V8BFmode:
   12957              :           if (pattern1122 (x2, 
   12958              : E_V8BFmode, 
   12959              : E_QImode) != 0
   12960              :               || !(
   12961              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12962              : (TARGET_AVX512F) && 
   12963              : #line 33170 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12964              : (TARGET_AVX10_2)))
   12965              :             return -1;
   12966              :           return 10695; /* avx10_2_scalefbf16_v8bf_mask */
   12967              : 
   12968              :         default:
   12969              :           return -1;
   12970              :         }
   12971              : 
   12972              :     case 260:
   12973              :       switch (pattern473 (x2))
   12974              :         {
   12975              :         case 0:
   12976              :           if (!(
   12977              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12978              : (TARGET_AVX512F) && 
   12979              : #line 33511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12980              : (TARGET_AVX10_2)))
   12981              :             return -1;
   12982              :           return 10805; /* avx10_2_rndscalebf16_v32bf_mask */
   12983              : 
   12984              :         case 1:
   12985              :           if (!(
   12986              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12987              : (TARGET_AVX512F) && 
   12988              : #line 33511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12989              : (TARGET_AVX10_2)))
   12990              :             return -1;
   12991              :           return 10811; /* avx10_2_rndscalebf16_v16bf_mask */
   12992              : 
   12993              :         case 2:
   12994              :           if (!(
   12995              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   12996              : (TARGET_AVX512F) && 
   12997              : #line 33511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   12998              : (TARGET_AVX10_2)))
   12999              :             return -1;
   13000              :           return 10817; /* avx10_2_rndscalebf16_v8bf_mask */
   13001              : 
   13002              :         default:
   13003              :           return -1;
   13004              :         }
   13005              : 
   13006              :     case 261:
   13007              :       switch (pattern473 (x2))
   13008              :         {
   13009              :         case 0:
   13010              :           if (!(
   13011              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13012              : (TARGET_AVX512F) && 
   13013              : #line 33511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13014              : (TARGET_AVX10_2)))
   13015              :             return -1;
   13016              :           return 10807; /* avx10_2_reducebf16_v32bf_mask */
   13017              : 
   13018              :         case 1:
   13019              :           if (!(
   13020              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13021              : (TARGET_AVX512F) && 
   13022              : #line 33511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13023              : (TARGET_AVX10_2)))
   13024              :             return -1;
   13025              :           return 10813; /* avx10_2_reducebf16_v16bf_mask */
   13026              : 
   13027              :         case 2:
   13028              :           if (!(
   13029              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13030              : (TARGET_AVX512F) && 
   13031              : #line 33511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13032              : (TARGET_AVX10_2)))
   13033              :             return -1;
   13034              :           return 10819; /* avx10_2_reducebf16_v8bf_mask */
   13035              : 
   13036              :         default:
   13037              :           return -1;
   13038              :         }
   13039              : 
   13040              :     case 262:
   13041              :       switch (pattern473 (x2))
   13042              :         {
   13043              :         case 0:
   13044              :           if (!(
   13045              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13046              : (TARGET_AVX512F) && 
   13047              : #line 33511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13048              : (TARGET_AVX10_2)))
   13049              :             return -1;
   13050              :           return 10809; /* avx10_2_getmantbf16_v32bf_mask */
   13051              : 
   13052              :         case 1:
   13053              :           if (!(
   13054              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13055              : (TARGET_AVX512F) && 
   13056              : #line 33511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13057              : (TARGET_AVX10_2)))
   13058              :             return -1;
   13059              :           return 10815; /* avx10_2_getmantbf16_v16bf_mask */
   13060              : 
   13061              :         case 2:
   13062              :           if (!(
   13063              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13064              : (TARGET_AVX512F) && 
   13065              : #line 33511 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13066              : (TARGET_AVX10_2)))
   13067              :             return -1;
   13068              :           return 10821; /* avx10_2_getmantbf16_v8bf_mask */
   13069              : 
   13070              :         default:
   13071              :           return -1;
   13072              :         }
   13073              : 
   13074              :     default:
   13075              :       return -1;
   13076              :     }
   13077              : }
   13078              : 
   13079              :  int
   13080              : recog_185 (rtx x1 ATTRIBUTE_UNUSED,
   13081              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13082              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13083              : {
   13084              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13085              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   13086              :   rtx x10, x11, x12, x13, x14, x15;
   13087              :   int res ATTRIBUTE_UNUSED;
   13088              :   x2 = XEXP (x1, 1);
   13089              :   x3 = XEXP (x2, 0);
   13090              :   x4 = XEXP (x3, 0);
   13091              :   switch (GET_CODE (x4))
   13092              :     {
   13093              :     case REG:
   13094              :     case SUBREG:
   13095              :       x5 = XEXP (x3, 1);
   13096              :       switch (GET_CODE (x5))
   13097              :         {
   13098              :         case CONST_INT:
   13099              :         case CONST_DOUBLE:
   13100              :         case CONST_VECTOR:
   13101              :         case REG:
   13102              :         case SUBREG:
   13103              :         case MEM:
   13104              :           operands[3] = x5;
   13105              :           x6 = XEXP (x2, 2);
   13106              :           if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   13107              :             return -1;
   13108              :           operands[2] = x4;
   13109              :           x7 = XEXP (x3, 2);
   13110              :           operands[4] = x7;
   13111              :           if (!register_operand (operands[4], E_QImode))
   13112              :             return -1;
   13113              :           x8 = XEXP (x2, 1);
   13114              :           operands[1] = x8;
   13115              :           switch (GET_MODE (operands[0]))
   13116              :             {
   13117              :             case E_V8HFmode:
   13118              :               if (pattern1288 (x2, 
   13119              : E_V8HFmode) != 0
   13120              :                   || !(
   13121              : #line 1715 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13122              : (TARGET_AVX512F) && 
   13123              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13124              : (TARGET_AVX512FP16)))
   13125              :                 return -1;
   13126              :               return 2557; /* avx512f_movhf_mask */
   13127              : 
   13128              :             case E_V4SFmode:
   13129              :               if (pattern1288 (x2, 
   13130              : E_V4SFmode) != 0
   13131              :                   || !
   13132              : #line 1715 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13133              : (TARGET_AVX512F))
   13134              :                 return -1;
   13135              :               return 2558; /* avx512f_movsf_mask */
   13136              : 
   13137              :             case E_V2DFmode:
   13138              :               if (pattern1288 (x2, 
   13139              : E_V2DFmode) != 0
   13140              :                   || !(
   13141              : #line 1715 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13142              : (TARGET_AVX512F) && 
   13143              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13144              : (TARGET_SSE2)))
   13145              :                 return -1;
   13146              :               return 2559; /* avx512f_movdf_mask */
   13147              : 
   13148              :             default:
   13149              :               return -1;
   13150              :             }
   13151              : 
   13152              :         case VEC_DUPLICATE:
   13153              :           operands[1] = x4;
   13154              :           x9 = XEXP (x5, 0);
   13155              :           operands[2] = x9;
   13156              :           x7 = XEXP (x3, 2);
   13157              :           operands[3] = x7;
   13158              :           if (!const_int_operand (operands[3], E_SImode))
   13159              :             return -1;
   13160              :           x8 = XEXP (x2, 1);
   13161              :           operands[4] = x8;
   13162              :           x6 = XEXP (x2, 2);
   13163              :           operands[5] = x6;
   13164              :           switch (GET_MODE (operands[0]))
   13165              :             {
   13166              :             case E_V8DFmode:
   13167              :               if (pattern1289 (x2, 
   13168              : E_V8DFmode, 
   13169              : E_V2DFmode, 
   13170              : E_QImode) != 0
   13171              :                   || !(
   13172              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13173              : (TARGET_AVX512F) && (
   13174              : #line 20508 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13175              : (TARGET_AVX512F) && 
   13176              : #line 12793 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13177              : (TARGET_AVX512DQ))))
   13178              :                 return -1;
   13179              :               return 8465; /* avx512dq_vinsertf64x2_1_mask */
   13180              : 
   13181              :             case E_V8DImode:
   13182              :               if (pattern1289 (x2, 
   13183              : E_V8DImode, 
   13184              : E_V2DImode, 
   13185              : E_QImode) != 0
   13186              :                   || !(
   13187              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13188              : (TARGET_AVX512F) && (
   13189              : #line 20508 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13190              : (TARGET_AVX512F) && 
   13191              : #line 12793 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13192              : (TARGET_AVX512DQ))))
   13193              :                 return -1;
   13194              :               return 8467; /* avx512dq_vinserti64x2_1_mask */
   13195              : 
   13196              :             case E_V16SFmode:
   13197              :               if (pattern1289 (x2, 
   13198              : E_V16SFmode, 
   13199              : E_V4SFmode, 
   13200              : E_HImode) != 0
   13201              :                   || !
   13202              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13203              : (TARGET_AVX512F))
   13204              :                 return -1;
   13205              :               return 8469; /* avx512f_vinsertf32x4_1_mask */
   13206              : 
   13207              :             case E_V16SImode:
   13208              :               if (pattern1289 (x2, 
   13209              : E_V16SImode, 
   13210              : E_V4SImode, 
   13211              : E_HImode) != 0
   13212              :                   || !
   13213              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13214              : (TARGET_AVX512F))
   13215              :                 return -1;
   13216              :               return 8471; /* avx512f_vinserti32x4_1_mask */
   13217              : 
   13218              :             default:
   13219              :               return -1;
   13220              :             }
   13221              : 
   13222              :         default:
   13223              :           return -1;
   13224              :         }
   13225              : 
   13226              :     case VEC_DUPLICATE:
   13227              :       x10 = XEXP (x4, 0);
   13228              :       switch (GET_CODE (x10))
   13229              :         {
   13230              :         case SUBREG:
   13231              :         case MEM:
   13232              :           operands[1] = x10;
   13233              :           x6 = XEXP (x2, 2);
   13234              :           if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   13235              :             return -1;
   13236              :           x5 = XEXP (x3, 1);
   13237              :           operands[2] = x5;
   13238              :           x7 = XEXP (x3, 2);
   13239              :           operands[3] = x7;
   13240              :           if (!register_operand (operands[3], E_QImode))
   13241              :             return -1;
   13242              :           x8 = XEXP (x2, 1);
   13243              :           operands[4] = x8;
   13244              :           switch (GET_MODE (operands[0]))
   13245              :             {
   13246              :             case E_V8HFmode:
   13247              :               if (pattern1290 (x2, 
   13248              : E_V8HFmode, 
   13249              : E_HFmode) != 0
   13250              :                   || !(
   13251              : #line 1744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13252              : (TARGET_AVX512F) && 
   13253              : #line 1386 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   13254              : (TARGET_AVX512FP16)))
   13255              :                 return -1;
   13256              :               return 2560; /* *avx512f_loadhf_mask */
   13257              : 
   13258              :             case E_V4SFmode:
   13259              :               if (pattern1290 (x2, 
   13260              : E_V4SFmode, 
   13261              : E_SFmode) != 0
   13262              :                   || !
   13263              : #line 1744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13264              : (TARGET_AVX512F))
   13265              :                 return -1;
   13266              :               return 2561; /* *avx512f_loadsf_mask */
   13267              : 
   13268              :             case E_V2DFmode:
   13269              :               if (pattern1290 (x2, 
   13270              : E_V2DFmode, 
   13271              : E_DFmode) != 0
   13272              :                   || !
   13273              : #line 1744 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13274              : (TARGET_AVX512F))
   13275              :                 return -1;
   13276              :               return 2562; /* *avx512f_loaddf_mask */
   13277              : 
   13278              :             default:
   13279              :               return -1;
   13280              :             }
   13281              : 
   13282              :         case SQRT:
   13283              :           x6 = XEXP (x2, 2);
   13284              :           if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   13285              :             return -1;
   13286              :           x11 = XEXP (x10, 0);
   13287              :           operands[1] = x11;
   13288              :           x5 = XEXP (x3, 1);
   13289              :           operands[3] = x5;
   13290              :           x7 = XEXP (x3, 2);
   13291              :           operands[4] = x7;
   13292              :           if (!register_operand (operands[4], E_QImode))
   13293              :             return -1;
   13294              :           x8 = XEXP (x2, 1);
   13295              :           operands[2] = x8;
   13296              :           switch (GET_MODE (operands[0]))
   13297              :             {
   13298              :             case E_V8HFmode:
   13299              :               if (pattern1291 (x2, 
   13300              : E_V8HFmode, 
   13301              : E_HFmode) != 0
   13302              :                   || !(
   13303              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13304              : (TARGET_AVX512F) && (
   13305              : #line 3150 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13306              : (TARGET_SSE) && 
   13307              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13308              : (TARGET_AVX512FP16))))
   13309              :                 return -1;
   13310              :               return 3011; /* *avx512fp16_vmsqrtv8hf2_mask */
   13311              : 
   13312              :             case E_V4SFmode:
   13313              :               if (pattern1291 (x2, 
   13314              : E_V4SFmode, 
   13315              : E_SFmode) != 0
   13316              :                   || !(
   13317              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13318              : (TARGET_AVX512F) && 
   13319              : #line 3150 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13320              : (TARGET_SSE)))
   13321              :                 return -1;
   13322              :               return 3015; /* *sse_vmsqrtv4sf2_mask */
   13323              : 
   13324              :             case E_V2DFmode:
   13325              :               if (pattern1291 (x2, 
   13326              : E_V2DFmode, 
   13327              : E_DFmode) != 0
   13328              :                   || !(
   13329              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13330              : (TARGET_AVX512F) && (
   13331              : #line 3150 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13332              : (TARGET_SSE) && 
   13333              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13334              : (TARGET_SSE2))))
   13335              :                 return -1;
   13336              :               return 3019; /* *sse2_vmsqrtv2df2_mask */
   13337              : 
   13338              :             default:
   13339              :               return -1;
   13340              :             }
   13341              : 
   13342              :         case UNSPEC:
   13343              :           if (XVECLEN (x10, 0) != 1
   13344              :               || XINT (x10, 1) != 56
   13345              :               || GET_MODE (x10) != E_HFmode)
   13346              :             return -1;
   13347              :           x6 = XEXP (x2, 2);
   13348              :           if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   13349              :               || pattern1010 (x2, 
   13350              : E_V8HFmode) != 0)
   13351              :             return -1;
   13352              :           x12 = XVECEXP (x10, 0, 0);
   13353              :           operands[1] = x12;
   13354              :           if (!nonimmediate_operand (operands[1], E_HFmode))
   13355              :             return -1;
   13356              :           x5 = XEXP (x3, 1);
   13357              :           operands[3] = x5;
   13358              :           if (!nonimm_or_0_operand (operands[3], E_V8HFmode))
   13359              :             return -1;
   13360              :           x7 = XEXP (x3, 2);
   13361              :           operands[4] = x7;
   13362              :           if (!register_operand (operands[4], E_QImode))
   13363              :             return -1;
   13364              :           x8 = XEXP (x2, 1);
   13365              :           operands[2] = x8;
   13366              :           if (!register_operand (operands[2], E_V8HFmode)
   13367              :               || !(
   13368              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13369              : (TARGET_AVX512F) && 
   13370              : #line 3303 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13371              : (TARGET_AVX512FP16)))
   13372              :             return -1;
   13373              :           return 3050; /* *avx512fp16_vmrsqrtv8hf2 */
   13374              : 
   13375              :         case FLOAT_EXTEND:
   13376              :           x6 = XEXP (x2, 2);
   13377              :           if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   13378              :             return -1;
   13379              :           x5 = XEXP (x3, 1);
   13380              :           operands[3] = x5;
   13381              :           x7 = XEXP (x3, 2);
   13382              :           operands[4] = x7;
   13383              :           if (!register_operand (operands[4], E_QImode))
   13384              :             return -1;
   13385              :           x8 = XEXP (x2, 1);
   13386              :           operands[2] = x8;
   13387              :           x11 = XEXP (x10, 0);
   13388              :           switch (GET_CODE (x11))
   13389              :             {
   13390              :             case VEC_SELECT:
   13391              :               if (GET_MODE (x11) != E_HFmode)
   13392              :                 return -1;
   13393              :               x13 = XEXP (x11, 1);
   13394              :               if (GET_CODE (x13) != PARALLEL
   13395              :                   || XVECLEN (x13, 0) != 1)
   13396              :                 return -1;
   13397              :               x14 = XVECEXP (x13, 0, 0);
   13398              :               if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   13399              :                 return -1;
   13400              :               x15 = XEXP (x11, 0);
   13401              :               operands[1] = x15;
   13402              :               if (!register_operand (operands[1], E_V8HFmode))
   13403              :                 return -1;
   13404              :               switch (GET_MODE (operands[0]))
   13405              :                 {
   13406              :                 case E_V2DFmode:
   13407              :                   if (pattern1469 (x2, 
   13408              : E_V2DFmode, 
   13409              : E_DFmode) != 0
   13410              :                       || !(
   13411              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13412              : (TARGET_AVX512F) && 
   13413              : #line 8689 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13414              : (TARGET_AVX512FP16)))
   13415              :                     return -1;
   13416              :                   return 4808; /* avx512fp16_vcvtsh2sd_mask */
   13417              : 
   13418              :                 case E_V4SFmode:
   13419              :                   if (pattern1469 (x2, 
   13420              : E_V4SFmode, 
   13421              : E_SFmode) != 0
   13422              :                       || !(
   13423              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13424              : (TARGET_AVX512F) && 
   13425              : #line 8689 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13426              : (TARGET_AVX512FP16)))
   13427              :                     return -1;
   13428              :                   return 4812; /* avx512fp16_vcvtsh2ss_mask */
   13429              : 
   13430              :                 default:
   13431              :                   return -1;
   13432              :                 }
   13433              : 
   13434              :             case SUBREG:
   13435              :             case MEM:
   13436              :               operands[1] = x11;
   13437              :               if (!memory_operand (operands[1], E_HFmode))
   13438              :                 return -1;
   13439              :               switch (GET_MODE (operands[0]))
   13440              :                 {
   13441              :                 case E_V2DFmode:
   13442              :                   if (pattern1469 (x2, 
   13443              : E_V2DFmode, 
   13444              : E_DFmode) != 0
   13445              :                       || !(
   13446              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13447              : (TARGET_AVX512F) && 
   13448              : #line 8703 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13449              : (TARGET_AVX512FP16)))
   13450              :                     return -1;
   13451              :                   return 4816; /* avx512fp16_vcvtsh2sd_mask_mem */
   13452              : 
   13453              :                 case E_V4SFmode:
   13454              :                   if (pattern1469 (x2, 
   13455              : E_V4SFmode, 
   13456              : E_SFmode) != 0
   13457              :                       || !(
   13458              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13459              : (TARGET_AVX512F) && 
   13460              : #line 8703 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13461              : (TARGET_AVX512FP16)))
   13462              :                     return -1;
   13463              :                   return 4818; /* avx512fp16_vcvtsh2ss_mask_mem */
   13464              : 
   13465              :                 default:
   13466              :                   return -1;
   13467              :                 }
   13468              : 
   13469              :             default:
   13470              :               return -1;
   13471              :             }
   13472              : 
   13473              :         case FLOAT_TRUNCATE:
   13474              :           x11 = XEXP (x10, 0);
   13475              :           switch (GET_CODE (x11))
   13476              :             {
   13477              :             case VEC_SELECT:
   13478              :               x13 = XEXP (x11, 1);
   13479              :               if (GET_CODE (x13) != PARALLEL
   13480              :                   || XVECLEN (x13, 0) != 1)
   13481              :                 return -1;
   13482              :               x14 = XVECEXP (x13, 0, 0);
   13483              :               if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   13484              :                 return -1;
   13485              :               x6 = XEXP (x2, 2);
   13486              :               if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   13487              :                   || pattern896 (x2, 
   13488              : E_HFmode, 
   13489              : E_V8HFmode) != 0)
   13490              :                 return -1;
   13491              :               x15 = XEXP (x11, 0);
   13492              :               operands[1] = x15;
   13493              :               x5 = XEXP (x3, 1);
   13494              :               operands[3] = x5;
   13495              :               if (!nonimm_or_0_operand (operands[3], E_V8HFmode))
   13496              :                 return -1;
   13497              :               x7 = XEXP (x3, 2);
   13498              :               operands[4] = x7;
   13499              :               if (!register_operand (operands[4], E_QImode))
   13500              :                 return -1;
   13501              :               x8 = XEXP (x2, 1);
   13502              :               operands[2] = x8;
   13503              :               if (!register_operand (operands[2], E_V8HFmode))
   13504              :                 return -1;
   13505              :               switch (GET_MODE (x11))
   13506              :                 {
   13507              :                 case E_DFmode:
   13508              :                   if (!register_operand (operands[1], E_V2DFmode)
   13509              :                       || !(
   13510              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13511              : (TARGET_AVX512F) && 
   13512              : #line 8719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13513              : (TARGET_AVX512FP16)))
   13514              :                     return -1;
   13515              :                   return 4821; /* avx512fp16_vcvtsd2sh_mask */
   13516              : 
   13517              :                 case E_SFmode:
   13518              :                   if (!register_operand (operands[1], E_V4SFmode)
   13519              :                       || !(
   13520              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13521              : (TARGET_AVX512F) && 
   13522              : #line 8719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13523              : (TARGET_AVX512FP16)))
   13524              :                     return -1;
   13525              :                   return 4825; /* avx512fp16_vcvtss2sh_mask */
   13526              : 
   13527              :                 default:
   13528              :                   return -1;
   13529              :                 }
   13530              : 
   13531              :             case REG:
   13532              :             case SUBREG:
   13533              :             case MEM:
   13534              :               x7 = XEXP (x3, 2);
   13535              :               switch (GET_CODE (x7))
   13536              :                 {
   13537              :                 case REG:
   13538              :                 case SUBREG:
   13539              :                   operands[4] = x7;
   13540              :                   if (!register_operand (operands[4], E_QImode))
   13541              :                     return -1;
   13542              :                   x6 = XEXP (x2, 2);
   13543              :                   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   13544              :                       || pattern896 (x2, 
   13545              : E_HFmode, 
   13546              : E_V8HFmode) != 0)
   13547              :                     return -1;
   13548              :                   operands[1] = x11;
   13549              :                   x5 = XEXP (x3, 1);
   13550              :                   operands[3] = x5;
   13551              :                   if (!nonimm_or_0_operand (operands[3], E_V8HFmode))
   13552              :                     return -1;
   13553              :                   x8 = XEXP (x2, 1);
   13554              :                   operands[2] = x8;
   13555              :                   if (!register_operand (operands[2], E_V8HFmode))
   13556              :                     return -1;
   13557              :                   switch (GET_MODE (operands[1]))
   13558              :                     {
   13559              :                     case E_SFmode:
   13560              :                       if (!memory_operand (operands[1], E_SFmode)
   13561              :                           || !(
   13562              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13563              : (TARGET_AVX512F) && 
   13564              : #line 8733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13565              : (TARGET_AVX512FP16)))
   13566              :                         return -1;
   13567              :                       return 4828; /* avx512fp16_vcvtss2sh_mask_mem */
   13568              : 
   13569              :                     case E_DFmode:
   13570              :                       if (!memory_operand (operands[1], E_DFmode)
   13571              :                           || !(
   13572              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13573              : (TARGET_AVX512F) && 
   13574              : #line 8733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13575              : (TARGET_AVX512FP16)))
   13576              :                         return -1;
   13577              :                       return 4830; /* avx512fp16_vcvtsd2sh_mask_mem */
   13578              : 
   13579              :                     default:
   13580              :                       return -1;
   13581              :                     }
   13582              : 
   13583              :                 case CONST_INT:
   13584              :                   if (XWINT (x7, 0) != 1L
   13585              :                       || pattern896 (x2, 
   13586              : E_V2SFmode, 
   13587              : E_V4SFmode) != 0
   13588              :                       || pattern1380 (x2, 
   13589              : E_V4SFmode, 
   13590              : E_V2DFmode) != 0
   13591              :                       || !(
   13592              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13593              : (TARGET_AVX512F) && 
   13594              : #line 10392 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13595              : (TARGET_SSE2)))
   13596              :                     return -1;
   13597              :                   return 5189; /* sse2_cvtsd2ss_mask */
   13598              : 
   13599              :                 default:
   13600              :                   return -1;
   13601              :                 }
   13602              : 
   13603              :             default:
   13604              :               return -1;
   13605              :             }
   13606              : 
   13607              :         default:
   13608              :           return -1;
   13609              :         }
   13610              : 
   13611              :     case PLUS:
   13612              :       switch (pattern311 (x2))
   13613              :         {
   13614              :         case 0:
   13615              :           if (!(
   13616              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13617              : (TARGET_AVX512F) && (
   13618              : #line 2750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13619              : (TARGET_SSE) && 
   13620              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13621              : (TARGET_AVX512FP16))))
   13622              :             return -1;
   13623              :           return 2832; /* avx512fp16_vmaddv8hf3_mask */
   13624              : 
   13625              :         case 1:
   13626              :           if (!(
   13627              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13628              : (TARGET_AVX512F) && 
   13629              : #line 2750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13630              : (TARGET_SSE)))
   13631              :             return -1;
   13632              :           return 2840; /* sse_vmaddv4sf3_mask */
   13633              : 
   13634              :         case 2:
   13635              :           if (!(
   13636              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13637              : (TARGET_AVX512F) && (
   13638              : #line 2750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13639              : (TARGET_SSE) && 
   13640              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13641              : (TARGET_SSE2))))
   13642              :             return -1;
   13643              :           return 2848; /* sse2_vmaddv2df3_mask */
   13644              : 
   13645              :         default:
   13646              :           return -1;
   13647              :         }
   13648              : 
   13649              :     case MINUS:
   13650              :       switch (pattern311 (x2))
   13651              :         {
   13652              :         case 0:
   13653              :           if (!(
   13654              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13655              : (TARGET_AVX512F) && (
   13656              : #line 2750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13657              : (TARGET_SSE) && 
   13658              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13659              : (TARGET_AVX512FP16))))
   13660              :             return -1;
   13661              :           return 2836; /* avx512fp16_vmsubv8hf3_mask */
   13662              : 
   13663              :         case 1:
   13664              :           if (!(
   13665              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13666              : (TARGET_AVX512F) && 
   13667              : #line 2750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13668              : (TARGET_SSE)))
   13669              :             return -1;
   13670              :           return 2844; /* sse_vmsubv4sf3_mask */
   13671              : 
   13672              :         case 2:
   13673              :           if (!(
   13674              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13675              : (TARGET_AVX512F) && (
   13676              : #line 2750 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13677              : (TARGET_SSE) && 
   13678              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13679              : (TARGET_SSE2))))
   13680              :             return -1;
   13681              :           return 2852; /* sse2_vmsubv2df3_mask */
   13682              : 
   13683              :         default:
   13684              :           return -1;
   13685              :         }
   13686              : 
   13687              :     case MULT:
   13688              :       switch (pattern311 (x2))
   13689              :         {
   13690              :         case 0:
   13691              :           if (!(
   13692              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13693              : (TARGET_AVX512F) && (
   13694              : #line 2841 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13695              : (TARGET_SSE) && 
   13696              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13697              : (TARGET_AVX512FP16))))
   13698              :             return -1;
   13699              :           return 2898; /* avx512fp16_vmmulv8hf3_mask */
   13700              : 
   13701              :         case 1:
   13702              :           if (!(
   13703              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13704              : (TARGET_AVX512F) && 
   13705              : #line 2841 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13706              : (TARGET_SSE)))
   13707              :             return -1;
   13708              :           return 2906; /* sse_vmmulv4sf3_mask */
   13709              : 
   13710              :         case 2:
   13711              :           if (!(
   13712              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13713              : (TARGET_AVX512F) && (
   13714              : #line 2841 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13715              : (TARGET_SSE) && 
   13716              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13717              : (TARGET_SSE2))))
   13718              :             return -1;
   13719              :           return 2914; /* sse2_vmmulv2df3_mask */
   13720              : 
   13721              :         default:
   13722              :           return -1;
   13723              :         }
   13724              : 
   13725              :     case DIV:
   13726              :       switch (pattern311 (x2))
   13727              :         {
   13728              :         case 0:
   13729              :           if (!(
   13730              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13731              : (TARGET_AVX512F) && (
   13732              : #line 2841 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13733              : (TARGET_SSE) && 
   13734              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13735              : (TARGET_AVX512FP16))))
   13736              :             return -1;
   13737              :           return 2902; /* avx512fp16_vmdivv8hf3_mask */
   13738              : 
   13739              :         case 1:
   13740              :           if (!(
   13741              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13742              : (TARGET_AVX512F) && 
   13743              : #line 2841 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13744              : (TARGET_SSE)))
   13745              :             return -1;
   13746              :           return 2910; /* sse_vmdivv4sf3_mask */
   13747              : 
   13748              :         case 2:
   13749              :           if (!(
   13750              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13751              : (TARGET_AVX512F) && (
   13752              : #line 2841 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13753              : (TARGET_SSE) && 
   13754              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13755              : (TARGET_SSE2))))
   13756              :             return -1;
   13757              :           return 2918; /* sse2_vmdivv2df3_mask */
   13758              : 
   13759              :         default:
   13760              :           return -1;
   13761              :         }
   13762              : 
   13763              :     case UNSPEC:
   13764              :       return recog_151 (x1, insn, pnum_clobbers);
   13765              : 
   13766              :     case SQRT:
   13767              :       x6 = XEXP (x2, 2);
   13768              :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   13769              :         return -1;
   13770              :       x10 = XEXP (x4, 0);
   13771              :       operands[1] = x10;
   13772              :       x5 = XEXP (x3, 1);
   13773              :       operands[3] = x5;
   13774              :       x7 = XEXP (x3, 2);
   13775              :       operands[4] = x7;
   13776              :       if (!register_operand (operands[4], E_QImode))
   13777              :         return -1;
   13778              :       x8 = XEXP (x2, 1);
   13779              :       operands[2] = x8;
   13780              :       switch (GET_MODE (operands[0]))
   13781              :         {
   13782              :         case E_V8HFmode:
   13783              :           if (pattern1225 (x2, 
   13784              : E_V8HFmode) != 0
   13785              :               || !(
   13786              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13787              : (TARGET_AVX512F) && (
   13788              : #line 3130 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13789              : (TARGET_SSE) && 
   13790              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13791              : (TARGET_AVX512FP16))))
   13792              :             return -1;
   13793              :           return 2999; /* avx512fp16_vmsqrtv8hf2_mask */
   13794              : 
   13795              :         case E_V4SFmode:
   13796              :           if (pattern1225 (x2, 
   13797              : E_V4SFmode) != 0
   13798              :               || !(
   13799              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13800              : (TARGET_AVX512F) && 
   13801              : #line 3130 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13802              : (TARGET_SSE)))
   13803              :             return -1;
   13804              :           return 3003; /* sse_vmsqrtv4sf2_mask */
   13805              : 
   13806              :         case E_V2DFmode:
   13807              :           if (pattern1225 (x2, 
   13808              : E_V2DFmode) != 0
   13809              :               || !(
   13810              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13811              : (TARGET_AVX512F) && (
   13812              : #line 3130 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13813              : (TARGET_SSE) && 
   13814              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13815              : (TARGET_SSE2))))
   13816              :             return -1;
   13817              :           return 3007; /* sse2_vmsqrtv2df2_mask */
   13818              : 
   13819              :         default:
   13820              :           return -1;
   13821              :         }
   13822              : 
   13823              :     case SMAX:
   13824              :       switch (pattern311 (x2))
   13825              :         {
   13826              :         case 0:
   13827              :           if (!(
   13828              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13829              : (TARGET_AVX512F) && (
   13830              : #line 3568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13831              : (TARGET_SSE) && 
   13832              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13833              : (TARGET_AVX512FP16))))
   13834              :             return -1;
   13835              :           return 3175; /* *avx512fp16_vmsmaxv8hf3_mask */
   13836              : 
   13837              :         case 1:
   13838              :           if (!(
   13839              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13840              : (TARGET_AVX512F) && 
   13841              : #line 3568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13842              : (TARGET_SSE)))
   13843              :             return -1;
   13844              :           return 3183; /* *sse_vmsmaxv4sf3_mask */
   13845              : 
   13846              :         case 2:
   13847              :           if (!(
   13848              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13849              : (TARGET_AVX512F) && (
   13850              : #line 3568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13851              : (TARGET_SSE) && 
   13852              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13853              : (TARGET_SSE2))))
   13854              :             return -1;
   13855              :           return 3191; /* *sse2_vmsmaxv2df3_mask */
   13856              : 
   13857              :         default:
   13858              :           return -1;
   13859              :         }
   13860              : 
   13861              :     case SMIN:
   13862              :       switch (pattern311 (x2))
   13863              :         {
   13864              :         case 0:
   13865              :           if (!(
   13866              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13867              : (TARGET_AVX512F) && (
   13868              : #line 3568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13869              : (TARGET_SSE) && 
   13870              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13871              : (TARGET_AVX512FP16))))
   13872              :             return -1;
   13873              :           return 3179; /* *avx512fp16_vmsminv8hf3_mask */
   13874              : 
   13875              :         case 1:
   13876              :           if (!(
   13877              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13878              : (TARGET_AVX512F) && 
   13879              : #line 3568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13880              : (TARGET_SSE)))
   13881              :             return -1;
   13882              :           return 3187; /* *sse_vmsminv4sf3_mask */
   13883              : 
   13884              :         case 2:
   13885              :           if (!(
   13886              : #line 355 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13887              : (TARGET_AVX512F) && (
   13888              : #line 3568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13889              : (TARGET_SSE) && 
   13890              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13891              : (TARGET_SSE2))))
   13892              :             return -1;
   13893              :           return 3195; /* *sse2_vmsminv2df3_mask */
   13894              : 
   13895              :         default:
   13896              :           return -1;
   13897              :         }
   13898              : 
   13899              :     case FMA:
   13900              :       return recog_150 (x1, insn, pnum_clobbers);
   13901              : 
   13902              :     case FLOAT_EXTEND:
   13903              :       if (pattern312 (x4, 
   13904              : 1, 
   13905              : E_V2SFmode, 
   13906              : E_V2DFmode) != 0)
   13907              :         return -1;
   13908              :       x7 = XEXP (x3, 2);
   13909              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   13910              :           || !register_operand (operands[0], E_V2DFmode)
   13911              :           || GET_MODE (x2) != E_V2DFmode
   13912              :           || GET_MODE (x3) != E_V2DFmode
   13913              :           || pattern1380 (x2, 
   13914              : E_V2DFmode, 
   13915              : E_V4SFmode) != 0
   13916              :           || !(
   13917              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13918              : (TARGET_AVX512F) && 
   13919              : #line 10436 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13920              : (TARGET_SSE2)))
   13921              :         return -1;
   13922              :       return 5194; /* sse2_cvtss2sd_mask */
   13923              : 
   13924              :     default:
   13925              :       return -1;
   13926              :     }
   13927              : }
   13928              : 
   13929              :  int
   13930              : recog_201 (rtx x1 ATTRIBUTE_UNUSED,
   13931              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   13932              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   13933              : {
   13934              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   13935              :   rtx x2;
   13936              :   int res ATTRIBUTE_UNUSED;
   13937              :   x2 = XEXP (x1, 1);
   13938              :   switch (pattern139 (x2))
   13939              :     {
   13940              :     case 0:
   13941              :       if (!(
   13942              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13943              : (TARGET_AVX512F) && (
   13944              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13945              : (TARGET_SSE
   13946              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13947              :    && (64 == 64 || TARGET_AVX512VL)
   13948              :    && 1) && 
   13949              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13950              : (TARGET_AVX512FP16))))
   13951              :         return -1;
   13952              :       return 3057; /* *sminv32hf3_mask */
   13953              : 
   13954              :     case 1:
   13955              :       if (!(
   13956              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13957              : (TARGET_AVX512F) && (
   13958              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13959              : (TARGET_SSE
   13960              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13961              :    && (32 == 64 || TARGET_AVX512VL)
   13962              :    && 1) && 
   13963              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13964              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13965              :         return -1;
   13966              :       return 3062; /* *sminv16hf3_mask */
   13967              : 
   13968              :     case 2:
   13969              :       if (!(
   13970              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13971              : (TARGET_AVX512F) && (
   13972              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13973              : (TARGET_SSE
   13974              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13975              :    && (16 == 64 || TARGET_AVX512VL)
   13976              :    && 1) && 
   13977              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13978              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   13979              :         return -1;
   13980              :       return 3066; /* *sminv8hf3_mask */
   13981              : 
   13982              :     case 3:
   13983              :       if (!(
   13984              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13985              : (TARGET_AVX512F) && (
   13986              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13987              : (TARGET_SSE
   13988              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   13989              :    && (64 == 64 || TARGET_AVX512VL)
   13990              :    && 1) && 
   13991              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   13992              : (TARGET_AVX512F))))
   13993              :         return -1;
   13994              :       return 3073; /* *sminv16sf3_mask */
   13995              : 
   13996              :     case 4:
   13997              :       if (!(
   13998              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   13999              : (TARGET_AVX512F) && (
   14000              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14001              : (TARGET_SSE
   14002              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   14003              :    && (32 == 64 || TARGET_AVX512VL)
   14004              :    && 1) && 
   14005              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14006              : (TARGET_AVX))))
   14007              :         return -1;
   14008              :       return 3078; /* *sminv8sf3_mask */
   14009              : 
   14010              :     case 5:
   14011              :       if (!(
   14012              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14013              : (TARGET_AVX512F) && 
   14014              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14015              : (TARGET_SSE
   14016              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   14017              :    && (16 == 64 || TARGET_AVX512VL)
   14018              :    && 1)))
   14019              :         return -1;
   14020              :       return 3082; /* *sminv4sf3_mask */
   14021              : 
   14022              :     case 6:
   14023              :       if (!(
   14024              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14025              : (TARGET_AVX512F) && (
   14026              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14027              : (TARGET_SSE
   14028              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   14029              :    && (64 == 64 || TARGET_AVX512VL)
   14030              :    && 1) && 
   14031              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14032              : (TARGET_AVX512F))))
   14033              :         return -1;
   14034              :       return 3089; /* *sminv8df3_mask */
   14035              : 
   14036              :     case 7:
   14037              :       if (!(
   14038              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14039              : (TARGET_AVX512F) && (
   14040              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14041              : (TARGET_SSE
   14042              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   14043              :    && (32 == 64 || TARGET_AVX512VL)
   14044              :    && 1) && 
   14045              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14046              : (TARGET_AVX))))
   14047              :         return -1;
   14048              :       return 3094; /* *sminv4df3_mask */
   14049              : 
   14050              :     case 8:
   14051              :       if (!(
   14052              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14053              : (TARGET_AVX512F) && (
   14054              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14055              : (TARGET_SSE
   14056              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   14057              :    && (16 == 64 || TARGET_AVX512VL)
   14058              :    && 1) && 
   14059              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14060              : (TARGET_SSE2))))
   14061              :         return -1;
   14062              :       return 3098; /* *sminv2df3_mask */
   14063              : 
   14064              :     case 9:
   14065              :       if (!(
   14066              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14067              : (TARGET_AVX512F) && 
   14068              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14069              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   14070              :         return -1;
   14071              :       return 7840; /* *avx512f_sminv16si3_mask */
   14072              : 
   14073              :     case 10:
   14074              :       if (!(
   14075              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14076              : (TARGET_AVX512F) && (
   14077              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14078              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   14079              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14080              : (TARGET_AVX512VL))))
   14081              :         return -1;
   14082              :       return 7848; /* *avx512f_sminv8si3_mask */
   14083              : 
   14084              :     case 11:
   14085              :       if (nonimmediate_operand (operands[1], E_V4SImode)
   14086              :           && nonimmediate_operand (operands[2], E_V4SImode)
   14087              :           && (
   14088              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14089              : (TARGET_AVX512F) && (
   14090              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14091              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   14092              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14093              : (TARGET_AVX512VL))))
   14094              :         return 7856; /* *avx512f_sminv4si3_mask */
   14095              :       if (!vector_operand (operands[1], E_V4SImode)
   14096              :           || !vector_operand (operands[2], E_V4SImode)
   14097              :           || !(
   14098              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14099              : (TARGET_AVX512F) && 
   14100              : #line 18256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14101              : (TARGET_SSE4_1
   14102              :    && (16 == 64 || TARGET_AVX512VL)
   14103              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   14104              :         return -1;
   14105              :       return 7940; /* *sse4_1_sminv4si3_mask */
   14106              : 
   14107              :     case 12:
   14108              :       if (!(
   14109              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14110              : (TARGET_AVX512F) && 
   14111              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14112              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   14113              :         return -1;
   14114              :       return 7864; /* *avx512f_sminv8di3_mask */
   14115              : 
   14116              :     case 13:
   14117              :       if (!(
   14118              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14119              : (TARGET_AVX512F) && (
   14120              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14121              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   14122              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14123              : (TARGET_AVX512VL))))
   14124              :         return -1;
   14125              :       return 7872; /* *avx512f_sminv4di3_mask */
   14126              : 
   14127              :     case 14:
   14128              :       if (!(
   14129              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14130              : (TARGET_AVX512F) && (
   14131              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14132              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   14133              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14134              : (TARGET_AVX512VL))))
   14135              :         return -1;
   14136              :       return 7880; /* *avx512f_sminv2di3_mask */
   14137              : 
   14138              :     case 15:
   14139              :       if (!(
   14140              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14141              : (TARGET_AVX512F) && 
   14142              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14143              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   14144              :         return -1;
   14145              :       return 7888; /* *avx512bw_sminv64qi3_mask */
   14146              : 
   14147              :     case 16:
   14148              :       if (nonimmediate_operand (operands[1], E_V16QImode)
   14149              :           && nonimmediate_operand (operands[2], E_V16QImode)
   14150              :           && (
   14151              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14152              : (TARGET_AVX512F) && (
   14153              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14154              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   14155              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14156              : (TARGET_AVX512VL))))
   14157              :         return 7896; /* *avx512bw_sminv16qi3_mask */
   14158              :       if (!vector_operand (operands[1], E_V16QImode)
   14159              :           || !vector_operand (operands[2], E_V16QImode)
   14160              :           || !(
   14161              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14162              : (TARGET_AVX512F) && 
   14163              : #line 18256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14164              : (TARGET_SSE4_1
   14165              :    && (16 == 64 || TARGET_AVX512VL)
   14166              :    && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   14167              :         return -1;
   14168              :       return 7936; /* *sse4_1_sminv16qi3_mask */
   14169              : 
   14170              :     case 17:
   14171              :       if (!(
   14172              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14173              : (TARGET_AVX512F) && (
   14174              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14175              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   14176              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14177              : (TARGET_AVX512VL))))
   14178              :         return -1;
   14179              :       return 7904; /* *avx512bw_sminv32qi3_mask */
   14180              : 
   14181              :     case 18:
   14182              :       if (!(
   14183              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14184              : (TARGET_AVX512F) && 
   14185              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14186              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2])))))
   14187              :         return -1;
   14188              :       return 7912; /* *avx512bw_sminv32hi3_mask */
   14189              : 
   14190              :     case 19:
   14191              :       if (!(
   14192              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14193              : (TARGET_AVX512F) && (
   14194              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14195              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   14196              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14197              : (TARGET_AVX512VL))))
   14198              :         return -1;
   14199              :       return 7920; /* *avx512bw_sminv16hi3_mask */
   14200              : 
   14201              :     case 20:
   14202              :       if (!(
   14203              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14204              : (TARGET_AVX512F) && (
   14205              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14206              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   14207              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14208              : (TARGET_AVX512VL))))
   14209              :         return -1;
   14210              :       return 7928; /* *avx512bw_sminv8hi3_mask */
   14211              : 
   14212              :     case 21:
   14213              :       if (!(
   14214              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14215              : (TARGET_AVX512F) && 
   14216              : #line 33186 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14217              : (TARGET_AVX10_2)))
   14218              :         return -1;
   14219              :       return 10699; /* avx10_2_sminbf16_v32bf_mask */
   14220              : 
   14221              :     case 22:
   14222              :       if (!(
   14223              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14224              : (TARGET_AVX512F) && 
   14225              : #line 33186 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14226              : (TARGET_AVX10_2)))
   14227              :         return -1;
   14228              :       return 10703; /* avx10_2_sminbf16_v16bf_mask */
   14229              : 
   14230              :     case 23:
   14231              :       if (!(
   14232              : #line 84 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14233              : (TARGET_AVX512F) && 
   14234              : #line 33186 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14235              : (TARGET_AVX10_2)))
   14236              :         return -1;
   14237              :       return 10707; /* avx10_2_sminbf16_v8bf_mask */
   14238              : 
   14239              :     case 24:
   14240              :       if (!(
   14241              : #line 3568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14242              : (TARGET_SSE) && 
   14243              : #line 477 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14244              : (TARGET_AVX512FP16)))
   14245              :         return -1;
   14246              :       return 3178; /* *avx512fp16_vmsminv8hf3 */
   14247              : 
   14248              :     case 25:
   14249              :       if (!
   14250              : #line 3568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14251              : (TARGET_SSE))
   14252              :         return -1;
   14253              :       return 3186; /* *sse_vmsminv4sf3 */
   14254              : 
   14255              :     case 26:
   14256              :       if (!(
   14257              : #line 3568 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14258              : (TARGET_SSE) && 
   14259              : #line 478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14260              : (TARGET_SSE2)))
   14261              :         return -1;
   14262              :       return 3194; /* *sse2_vmsminv2df3 */
   14263              : 
   14264              :     default:
   14265              :       return -1;
   14266              :     }
   14267              : }
   14268              : 
   14269              :  int
   14270              : recog_213 (rtx x1 ATTRIBUTE_UNUSED,
   14271              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   14272              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   14273              : {
   14274              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   14275              :   rtx x2, x3;
   14276              :   int res ATTRIBUTE_UNUSED;
   14277              :   x2 = XEXP (x1, 1);
   14278              :   x3 = XVECEXP (x2, 0, 0);
   14279              :   operands[1] = x3;
   14280              :   switch (GET_MODE (operands[0]))
   14281              :     {
   14282              :     case E_V32HFmode:
   14283              :       if (!register_operand (operands[0], E_V32HFmode)
   14284              :           || GET_MODE (x2) != E_V32HFmode
   14285              :           || !vector_operand (operands[1], E_V32HFmode)
   14286              :           || !(
   14287              : #line 14432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14288              : (TARGET_AVX512F) && 
   14289              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14290              : (TARGET_AVX512FP16)))
   14291              :         return -1;
   14292              :       return 7062; /* avx512bw_getexpv32hf */
   14293              : 
   14294              :     case E_V16HFmode:
   14295              :       if (!register_operand (operands[0], E_V16HFmode)
   14296              :           || GET_MODE (x2) != E_V16HFmode
   14297              :           || !vector_operand (operands[1], E_V16HFmode)
   14298              :           || !(
   14299              : #line 14432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14300              : (TARGET_AVX512F) && 
   14301              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14302              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   14303              :         return -1;
   14304              :       return 7066; /* avx512vl_getexpv16hf */
   14305              : 
   14306              :     case E_V8HFmode:
   14307              :       if (!register_operand (operands[0], E_V8HFmode)
   14308              :           || GET_MODE (x2) != E_V8HFmode
   14309              :           || !vector_operand (operands[1], E_V8HFmode)
   14310              :           || !(
   14311              : #line 14432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14312              : (TARGET_AVX512F) && 
   14313              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14314              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   14315              :         return -1;
   14316              :       return 7070; /* avx512fp16_getexpv8hf */
   14317              : 
   14318              :     case E_V16SFmode:
   14319              :       if (!register_operand (operands[0], E_V16SFmode)
   14320              :           || GET_MODE (x2) != E_V16SFmode
   14321              :           || !vector_operand (operands[1], E_V16SFmode)
   14322              :           || !
   14323              : #line 14432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14324              : (TARGET_AVX512F))
   14325              :         return -1;
   14326              :       return 7074; /* avx512f_getexpv16sf */
   14327              : 
   14328              :     case E_V8SFmode:
   14329              :       if (!register_operand (operands[0], E_V8SFmode)
   14330              :           || GET_MODE (x2) != E_V8SFmode
   14331              :           || !vector_operand (operands[1], E_V8SFmode)
   14332              :           || !(
   14333              : #line 14432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14334              : (TARGET_AVX512F) && 
   14335              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14336              : (TARGET_AVX512VL)))
   14337              :         return -1;
   14338              :       return 7078; /* avx512vl_getexpv8sf */
   14339              : 
   14340              :     case E_V4SFmode:
   14341              :       if (!register_operand (operands[0], E_V4SFmode)
   14342              :           || GET_MODE (x2) != E_V4SFmode
   14343              :           || !vector_operand (operands[1], E_V4SFmode)
   14344              :           || !(
   14345              : #line 14432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14346              : (TARGET_AVX512F) && 
   14347              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14348              : (TARGET_AVX512VL)))
   14349              :         return -1;
   14350              :       return 7082; /* avx512vl_getexpv4sf */
   14351              : 
   14352              :     case E_V8DFmode:
   14353              :       if (!register_operand (operands[0], E_V8DFmode)
   14354              :           || GET_MODE (x2) != E_V8DFmode
   14355              :           || !vector_operand (operands[1], E_V8DFmode)
   14356              :           || !
   14357              : #line 14432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14358              : (TARGET_AVX512F))
   14359              :         return -1;
   14360              :       return 7086; /* avx512f_getexpv8df */
   14361              : 
   14362              :     case E_V4DFmode:
   14363              :       if (!register_operand (operands[0], E_V4DFmode)
   14364              :           || GET_MODE (x2) != E_V4DFmode
   14365              :           || !vector_operand (operands[1], E_V4DFmode)
   14366              :           || !(
   14367              : #line 14432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14368              : (TARGET_AVX512F) && 
   14369              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14370              : (TARGET_AVX512VL)))
   14371              :         return -1;
   14372              :       return 7090; /* avx512vl_getexpv4df */
   14373              : 
   14374              :     case E_V2DFmode:
   14375              :       if (!register_operand (operands[0], E_V2DFmode)
   14376              :           || GET_MODE (x2) != E_V2DFmode
   14377              :           || !vector_operand (operands[1], E_V2DFmode)
   14378              :           || !(
   14379              : #line 14432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14380              : (TARGET_AVX512F) && 
   14381              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14382              : (TARGET_AVX512VL)))
   14383              :         return -1;
   14384              :       return 7094; /* avx512vl_getexpv2df */
   14385              : 
   14386              :     case E_V32BFmode:
   14387              :       if (!register_operand (operands[0], E_V32BFmode)
   14388              :           || GET_MODE (x2) != E_V32BFmode
   14389              :           || !nonimmediate_operand (operands[1], E_V32BFmode)
   14390              :           || !
   14391              : #line 33491 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14392              : (TARGET_AVX10_2))
   14393              :         return -1;
   14394              :       return 10798; /* avx10_2_getexpbf16_v32bf */
   14395              : 
   14396              :     case E_V16BFmode:
   14397              :       if (!register_operand (operands[0], E_V16BFmode)
   14398              :           || GET_MODE (x2) != E_V16BFmode
   14399              :           || !nonimmediate_operand (operands[1], E_V16BFmode)
   14400              :           || !
   14401              : #line 33491 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14402              : (TARGET_AVX10_2))
   14403              :         return -1;
   14404              :       return 10800; /* avx10_2_getexpbf16_v16bf */
   14405              : 
   14406              :     case E_V8BFmode:
   14407              :       if (!register_operand (operands[0], E_V8BFmode)
   14408              :           || GET_MODE (x2) != E_V8BFmode
   14409              :           || !nonimmediate_operand (operands[1], E_V8BFmode)
   14410              :           || !
   14411              : #line 33491 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14412              : (TARGET_AVX10_2))
   14413              :         return -1;
   14414              :       return 10802; /* avx10_2_getexpbf16_v8bf */
   14415              : 
   14416              :     default:
   14417              :       return -1;
   14418              :     }
   14419              : }
   14420              : 
   14421              :  int
   14422              : recog_223 (rtx x1 ATTRIBUTE_UNUSED,
   14423              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   14424              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   14425              : {
   14426              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   14427              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   14428              :   int res ATTRIBUTE_UNUSED;
   14429              :   x2 = XEXP (x1, 1);
   14430              :   x3 = XVECEXP (x2, 0, 1);
   14431              :   if (!const_4_or_8_to_11_operand (x3, E_SImode))
   14432              :     return -1;
   14433              :   x4 = XVECEXP (x2, 0, 0);
   14434              :   x5 = XEXP (x4, 0);
   14435              :   x6 = XVECEXP (x5, 0, 2);
   14436              :   switch (GET_CODE (x6))
   14437              :     {
   14438              :     case REG:
   14439              :     case SUBREG:
   14440              :     case MEM:
   14441              :       operands[3] = x6;
   14442              :       x7 = XEXP (x4, 1);
   14443              :       switch (GET_CODE (x7))
   14444              :         {
   14445              :         case CONST_INT:
   14446              :         case CONST_DOUBLE:
   14447              :         case CONST_VECTOR:
   14448              :           operands[4] = x7;
   14449              :           x8 = XEXP (x4, 2);
   14450              :           operands[5] = x8;
   14451              :           operands[6] = x3;
   14452              :           switch (GET_MODE (operands[0]))
   14453              :             {
   14454              :             case E_V32HFmode:
   14455              :               if (pattern1668 (x2, 
   14456              : E_SImode, 
   14457              : E_V32HFmode) != 0
   14458              :                   || !(
   14459              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14460              : (TARGET_AVX512F) && (
   14461              : #line 6825 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14462              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   14463              :                                                               || V32HFmode == V8DFmode
   14464              :                                                               || V32HFmode == V8DImode
   14465              :                                                               || V32HFmode == V16SImode
   14466              :                                                               || V32HFmode == V32HFmode)) && 
   14467              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14468              : (TARGET_AVX512FP16))))
   14469              :                 return -1;
   14470              :               return 4143; /* fma_fmaddsub_v32hf_maskz_1_round */
   14471              : 
   14472              :             case E_V16SFmode:
   14473              :               if (pattern1668 (x2, 
   14474              : E_HImode, 
   14475              : E_V16SFmode) != 0
   14476              :                   || !(
   14477              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14478              : (TARGET_AVX512F) && 
   14479              : #line 6825 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14480              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   14481              :                                                               || V16SFmode == V8DFmode
   14482              :                                                               || V16SFmode == V8DImode
   14483              :                                                               || V16SFmode == V16SImode
   14484              :                                                               || V16SFmode == V32HFmode))))
   14485              :                 return -1;
   14486              :               return 4151; /* fma_fmaddsub_v16sf_maskz_1_round */
   14487              : 
   14488              :             case E_V8DFmode:
   14489              :               if (pattern1668 (x2, 
   14490              : E_QImode, 
   14491              : E_V8DFmode) != 0
   14492              :                   || !(
   14493              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14494              : (TARGET_AVX512F) && 
   14495              : #line 6825 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14496              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   14497              :                                                               || V8DFmode == V8DFmode
   14498              :                                                               || V8DFmode == V8DImode
   14499              :                                                               || V8DFmode == V16SImode
   14500              :                                                               || V8DFmode == V32HFmode))))
   14501              :                 return -1;
   14502              :               return 4159; /* fma_fmaddsub_v8df_maskz_1_round */
   14503              : 
   14504              :             default:
   14505              :               return -1;
   14506              :             }
   14507              : 
   14508              :         case REG:
   14509              :         case SUBREG:
   14510              :         case MEM:
   14511              :           x8 = XEXP (x4, 2);
   14512              :           operands[4] = x8;
   14513              :           operands[5] = x3;
   14514              :           switch (GET_MODE (operands[0]))
   14515              :             {
   14516              :             case E_V32HFmode:
   14517              :               if (pattern1603 (x2, 
   14518              : E_V32HFmode, 
   14519              : E_SImode) != 0)
   14520              :                 return -1;
   14521              :               if (register_operand (operands[1], E_V32HFmode)
   14522              :                   && register_operand (operands[3], E_V32HFmode)
   14523              :                   && rtx_equal_p (x7, operands[1])
   14524              :                   && (
   14525              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14526              : (TARGET_AVX512F) && (
   14527              : #line 6844 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14528              : (TARGET_AVX512F) && 
   14529              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14530              : (TARGET_AVX512FP16))))
   14531              :                 return 4165; /* avx512bw_fmaddsub_v32hf_mask_round */
   14532              :               if (!nonimmediate_operand (operands[1], E_V32HFmode)
   14533              :                   || !nonimmediate_operand (operands[3], E_V32HFmode)
   14534              :                   || !rtx_equal_p (x7, operands[3])
   14535              :                   || !(
   14536              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14537              : (TARGET_AVX512F) && (
   14538              : #line 6862 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14539              : (TARGET_AVX512F) && 
   14540              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14541              : (TARGET_AVX512FP16))))
   14542              :                 return -1;
   14543              :               return 4183; /* avx512bw_fmaddsub_v32hf_mask3_round */
   14544              : 
   14545              :             case E_V16HFmode:
   14546              :               if (pattern1603 (x2, 
   14547              : E_V16HFmode, 
   14548              : E_HImode) != 0)
   14549              :                 return -1;
   14550              :               if (register_operand (operands[1], E_V16HFmode)
   14551              :                   && register_operand (operands[3], E_V16HFmode)
   14552              :                   && rtx_equal_p (x7, operands[1])
   14553              :                   && (
   14554              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14555              : (TARGET_AVX512F) && (
   14556              : #line 6844 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14557              : (TARGET_AVX512F) && 
   14558              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14559              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14560              :                 return 4167; /* avx512vl_fmaddsub_v16hf_mask_round */
   14561              :               if (!nonimmediate_operand (operands[1], E_V16HFmode)
   14562              :                   || !nonimmediate_operand (operands[3], E_V16HFmode)
   14563              :                   || !rtx_equal_p (x7, operands[3])
   14564              :                   || !(
   14565              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14566              : (TARGET_AVX512F) && (
   14567              : #line 6862 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14568              : (TARGET_AVX512F) && 
   14569              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14570              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14571              :                 return -1;
   14572              :               return 4185; /* avx512vl_fmaddsub_v16hf_mask3_round */
   14573              : 
   14574              :             case E_V8HFmode:
   14575              :               if (pattern1603 (x2, 
   14576              : E_V8HFmode, 
   14577              : E_QImode) != 0)
   14578              :                 return -1;
   14579              :               if (register_operand (operands[1], E_V8HFmode)
   14580              :                   && register_operand (operands[3], E_V8HFmode)
   14581              :                   && rtx_equal_p (x7, operands[1])
   14582              :                   && (
   14583              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14584              : (TARGET_AVX512F) && (
   14585              : #line 6844 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14586              : (TARGET_AVX512F) && 
   14587              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14588              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14589              :                 return 4169; /* avx512fp16_fmaddsub_v8hf_mask_round */
   14590              :               if (!nonimmediate_operand (operands[1], E_V8HFmode)
   14591              :                   || !nonimmediate_operand (operands[3], E_V8HFmode)
   14592              :                   || !rtx_equal_p (x7, operands[3])
   14593              :                   || !(
   14594              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14595              : (TARGET_AVX512F) && (
   14596              : #line 6862 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14597              : (TARGET_AVX512F) && 
   14598              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14599              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14600              :                 return -1;
   14601              :               return 4187; /* avx512fp16_fmaddsub_v8hf_mask3_round */
   14602              : 
   14603              :             case E_V16SFmode:
   14604              :               if (pattern1603 (x2, 
   14605              : E_V16SFmode, 
   14606              : E_HImode) != 0)
   14607              :                 return -1;
   14608              :               if (register_operand (operands[1], E_V16SFmode)
   14609              :                   && register_operand (operands[3], E_V16SFmode)
   14610              :                   && rtx_equal_p (x7, operands[1])
   14611              :                   && 
   14612              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14613              : (TARGET_AVX512F))
   14614              :                 return 4171; /* avx512f_fmaddsub_v16sf_mask_round */
   14615              :               if (!nonimmediate_operand (operands[1], E_V16SFmode)
   14616              :                   || !nonimmediate_operand (operands[3], E_V16SFmode)
   14617              :                   || !rtx_equal_p (x7, operands[3])
   14618              :                   || !
   14619              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14620              : (TARGET_AVX512F))
   14621              :                 return -1;
   14622              :               return 4189; /* avx512f_fmaddsub_v16sf_mask3_round */
   14623              : 
   14624              :             case E_V8SFmode:
   14625              :               if (pattern1603 (x2, 
   14626              : E_V8SFmode, 
   14627              : E_QImode) != 0)
   14628              :                 return -1;
   14629              :               if (register_operand (operands[1], E_V8SFmode)
   14630              :                   && register_operand (operands[3], E_V8SFmode)
   14631              :                   && rtx_equal_p (x7, operands[1])
   14632              :                   && (
   14633              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14634              : (TARGET_AVX512F) && (
   14635              : #line 6844 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14636              : (TARGET_AVX512F) && 
   14637              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14638              : (TARGET_AVX512VL))))
   14639              :                 return 4173; /* avx512vl_fmaddsub_v8sf_mask_round */
   14640              :               if (!nonimmediate_operand (operands[1], E_V8SFmode)
   14641              :                   || !nonimmediate_operand (operands[3], E_V8SFmode)
   14642              :                   || !rtx_equal_p (x7, operands[3])
   14643              :                   || !(
   14644              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14645              : (TARGET_AVX512F) && (
   14646              : #line 6862 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14647              : (TARGET_AVX512F) && 
   14648              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14649              : (TARGET_AVX512VL))))
   14650              :                 return -1;
   14651              :               return 4191; /* avx512vl_fmaddsub_v8sf_mask3_round */
   14652              : 
   14653              :             case E_V4SFmode:
   14654              :               if (pattern1603 (x2, 
   14655              : E_V4SFmode, 
   14656              : E_QImode) != 0)
   14657              :                 return -1;
   14658              :               if (register_operand (operands[1], E_V4SFmode)
   14659              :                   && register_operand (operands[3], E_V4SFmode)
   14660              :                   && rtx_equal_p (x7, operands[1])
   14661              :                   && (
   14662              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14663              : (TARGET_AVX512F) && (
   14664              : #line 6844 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14665              : (TARGET_AVX512F) && 
   14666              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14667              : (TARGET_AVX512VL))))
   14668              :                 return 4175; /* avx512vl_fmaddsub_v4sf_mask_round */
   14669              :               if (!nonimmediate_operand (operands[1], E_V4SFmode)
   14670              :                   || !nonimmediate_operand (operands[3], E_V4SFmode)
   14671              :                   || !rtx_equal_p (x7, operands[3])
   14672              :                   || !(
   14673              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14674              : (TARGET_AVX512F) && (
   14675              : #line 6862 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14676              : (TARGET_AVX512F) && 
   14677              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14678              : (TARGET_AVX512VL))))
   14679              :                 return -1;
   14680              :               return 4193; /* avx512vl_fmaddsub_v4sf_mask3_round */
   14681              : 
   14682              :             case E_V8DFmode:
   14683              :               if (pattern1603 (x2, 
   14684              : E_V8DFmode, 
   14685              : E_QImode) != 0)
   14686              :                 return -1;
   14687              :               if (register_operand (operands[1], E_V8DFmode)
   14688              :                   && register_operand (operands[3], E_V8DFmode)
   14689              :                   && rtx_equal_p (x7, operands[1])
   14690              :                   && 
   14691              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14692              : (TARGET_AVX512F))
   14693              :                 return 4177; /* avx512f_fmaddsub_v8df_mask_round */
   14694              :               if (!nonimmediate_operand (operands[1], E_V8DFmode)
   14695              :                   || !nonimmediate_operand (operands[3], E_V8DFmode)
   14696              :                   || !rtx_equal_p (x7, operands[3])
   14697              :                   || !
   14698              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14699              : (TARGET_AVX512F))
   14700              :                 return -1;
   14701              :               return 4195; /* avx512f_fmaddsub_v8df_mask3_round */
   14702              : 
   14703              :             case E_V4DFmode:
   14704              :               if (pattern1603 (x2, 
   14705              : E_V4DFmode, 
   14706              : E_QImode) != 0)
   14707              :                 return -1;
   14708              :               if (register_operand (operands[1], E_V4DFmode)
   14709              :                   && register_operand (operands[3], E_V4DFmode)
   14710              :                   && rtx_equal_p (x7, operands[1])
   14711              :                   && (
   14712              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14713              : (TARGET_AVX512F) && (
   14714              : #line 6844 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14715              : (TARGET_AVX512F) && 
   14716              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14717              : (TARGET_AVX512VL))))
   14718              :                 return 4179; /* avx512vl_fmaddsub_v4df_mask_round */
   14719              :               if (!nonimmediate_operand (operands[1], E_V4DFmode)
   14720              :                   || !nonimmediate_operand (operands[3], E_V4DFmode)
   14721              :                   || !rtx_equal_p (x7, operands[3])
   14722              :                   || !(
   14723              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14724              : (TARGET_AVX512F) && (
   14725              : #line 6862 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14726              : (TARGET_AVX512F) && 
   14727              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14728              : (TARGET_AVX512VL))))
   14729              :                 return -1;
   14730              :               return 4197; /* avx512vl_fmaddsub_v4df_mask3_round */
   14731              : 
   14732              :             case E_V2DFmode:
   14733              :               if (pattern1603 (x2, 
   14734              : E_V2DFmode, 
   14735              : E_QImode) != 0)
   14736              :                 return -1;
   14737              :               if (register_operand (operands[1], E_V2DFmode)
   14738              :                   && register_operand (operands[3], E_V2DFmode)
   14739              :                   && rtx_equal_p (x7, operands[1])
   14740              :                   && (
   14741              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14742              : (TARGET_AVX512F) && (
   14743              : #line 6844 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14744              : (TARGET_AVX512F) && 
   14745              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14746              : (TARGET_AVX512VL))))
   14747              :                 return 4181; /* avx512vl_fmaddsub_v2df_mask_round */
   14748              :               if (!nonimmediate_operand (operands[1], E_V2DFmode)
   14749              :                   || !nonimmediate_operand (operands[3], E_V2DFmode)
   14750              :                   || !rtx_equal_p (x7, operands[3])
   14751              :                   || !(
   14752              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14753              : (TARGET_AVX512F) && (
   14754              : #line 6862 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14755              : (TARGET_AVX512F) && 
   14756              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14757              : (TARGET_AVX512VL))))
   14758              :                 return -1;
   14759              :               return 4199; /* avx512vl_fmaddsub_v2df_mask3_round */
   14760              : 
   14761              :             default:
   14762              :               return -1;
   14763              :             }
   14764              : 
   14765              :         default:
   14766              :           return -1;
   14767              :         }
   14768              : 
   14769              :     case NEG:
   14770              :       x9 = XEXP (x6, 0);
   14771              :       operands[3] = x9;
   14772              :       x7 = XEXP (x4, 1);
   14773              :       switch (GET_CODE (x7))
   14774              :         {
   14775              :         case CONST_INT:
   14776              :         case CONST_DOUBLE:
   14777              :         case CONST_VECTOR:
   14778              :           operands[4] = x7;
   14779              :           x8 = XEXP (x4, 2);
   14780              :           operands[5] = x8;
   14781              :           operands[6] = x3;
   14782              :           switch (GET_MODE (operands[0]))
   14783              :             {
   14784              :             case E_V32HFmode:
   14785              :               if (pattern1669 (x2, 
   14786              : E_SImode, 
   14787              : E_V32HFmode) != 0
   14788              :                   || !(
   14789              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14790              : (TARGET_AVX512F) && (
   14791              : #line 6895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14792              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V32HFmode == V16SFmode
   14793              :                                                               || V32HFmode == V8DFmode
   14794              :                                                               || V32HFmode == V8DImode
   14795              :                                                               || V32HFmode == V16SImode
   14796              :                                                               || V32HFmode == V32HFmode)) && 
   14797              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14798              : (TARGET_AVX512FP16))))
   14799              :                 return -1;
   14800              :               return 4207; /* fma_fmsubadd_v32hf_maskz_1_round */
   14801              : 
   14802              :             case E_V16SFmode:
   14803              :               if (pattern1669 (x2, 
   14804              : E_HImode, 
   14805              : E_V16SFmode) != 0
   14806              :                   || !(
   14807              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14808              : (TARGET_AVX512F) && 
   14809              : #line 6895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14810              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V16SFmode == V16SFmode
   14811              :                                                               || V16SFmode == V8DFmode
   14812              :                                                               || V16SFmode == V8DImode
   14813              :                                                               || V16SFmode == V16SImode
   14814              :                                                               || V16SFmode == V32HFmode))))
   14815              :                 return -1;
   14816              :               return 4215; /* fma_fmsubadd_v16sf_maskz_1_round */
   14817              : 
   14818              :             case E_V8DFmode:
   14819              :               if (pattern1669 (x2, 
   14820              : E_QImode, 
   14821              : E_V8DFmode) != 0
   14822              :                   || !(
   14823              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14824              : (TARGET_AVX512F) && 
   14825              : #line 6895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14826              : (TARGET_AVX512F && (64 == 64 || TARGET_AVX512VL) && (V8DFmode == V16SFmode
   14827              :                                                               || V8DFmode == V8DFmode
   14828              :                                                               || V8DFmode == V8DImode
   14829              :                                                               || V8DFmode == V16SImode
   14830              :                                                               || V8DFmode == V32HFmode))))
   14831              :                 return -1;
   14832              :               return 4223; /* fma_fmsubadd_v8df_maskz_1_round */
   14833              : 
   14834              :             default:
   14835              :               return -1;
   14836              :             }
   14837              : 
   14838              :         case REG:
   14839              :         case SUBREG:
   14840              :         case MEM:
   14841              :           x8 = XEXP (x4, 2);
   14842              :           operands[4] = x8;
   14843              :           operands[5] = x3;
   14844              :           switch (GET_MODE (operands[0]))
   14845              :             {
   14846              :             case E_V32HFmode:
   14847              :               if (pattern1604 (x2, 
   14848              : E_V32HFmode, 
   14849              : E_SImode) != 0)
   14850              :                 return -1;
   14851              :               if (register_operand (operands[3], E_V32HFmode)
   14852              :                   && rtx_equal_p (x7, operands[1])
   14853              :                   && (
   14854              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14855              : (TARGET_AVX512F) && (
   14856              : #line 6915 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14857              : (TARGET_AVX512F) && 
   14858              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14859              : (TARGET_AVX512FP16))))
   14860              :                 return 4229; /* avx512bw_fmsubadd_v32hf_mask_round */
   14861              :               if (!nonimmediate_operand (operands[3], E_V32HFmode)
   14862              :                   || !rtx_equal_p (x7, operands[3])
   14863              :                   || !(
   14864              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14865              : (TARGET_AVX512F) && (
   14866              : #line 6934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14867              : (TARGET_AVX512F) && 
   14868              : #line 514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14869              : (TARGET_AVX512FP16))))
   14870              :                 return -1;
   14871              :               return 4247; /* avx512bw_fmsubadd_v32hf_mask3_round */
   14872              : 
   14873              :             case E_V16HFmode:
   14874              :               if (pattern1604 (x2, 
   14875              : E_V16HFmode, 
   14876              : E_HImode) != 0)
   14877              :                 return -1;
   14878              :               if (register_operand (operands[3], E_V16HFmode)
   14879              :                   && rtx_equal_p (x7, operands[1])
   14880              :                   && (
   14881              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14882              : (TARGET_AVX512F) && (
   14883              : #line 6915 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14884              : (TARGET_AVX512F) && 
   14885              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14886              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14887              :                 return 4231; /* avx512vl_fmsubadd_v16hf_mask_round */
   14888              :               if (!nonimmediate_operand (operands[3], E_V16HFmode)
   14889              :                   || !rtx_equal_p (x7, operands[3])
   14890              :                   || !(
   14891              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14892              : (TARGET_AVX512F) && (
   14893              : #line 6934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14894              : (TARGET_AVX512F) && 
   14895              : #line 515 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14896              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14897              :                 return -1;
   14898              :               return 4249; /* avx512vl_fmsubadd_v16hf_mask3_round */
   14899              : 
   14900              :             case E_V8HFmode:
   14901              :               if (pattern1604 (x2, 
   14902              : E_V8HFmode, 
   14903              : E_QImode) != 0)
   14904              :                 return -1;
   14905              :               if (register_operand (operands[3], E_V8HFmode)
   14906              :                   && rtx_equal_p (x7, operands[1])
   14907              :                   && (
   14908              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14909              : (TARGET_AVX512F) && (
   14910              : #line 6915 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14911              : (TARGET_AVX512F) && 
   14912              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14913              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14914              :                 return 4233; /* avx512fp16_fmsubadd_v8hf_mask_round */
   14915              :               if (!nonimmediate_operand (operands[3], E_V8HFmode)
   14916              :                   || !rtx_equal_p (x7, operands[3])
   14917              :                   || !(
   14918              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14919              : (TARGET_AVX512F) && (
   14920              : #line 6934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14921              : (TARGET_AVX512F) && 
   14922              : #line 516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14923              : (TARGET_AVX512FP16 && TARGET_AVX512VL))))
   14924              :                 return -1;
   14925              :               return 4251; /* avx512fp16_fmsubadd_v8hf_mask3_round */
   14926              : 
   14927              :             case E_V16SFmode:
   14928              :               if (pattern1604 (x2, 
   14929              : E_V16SFmode, 
   14930              : E_HImode) != 0)
   14931              :                 return -1;
   14932              :               if (register_operand (operands[3], E_V16SFmode)
   14933              :                   && rtx_equal_p (x7, operands[1])
   14934              :                   && 
   14935              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14936              : (TARGET_AVX512F))
   14937              :                 return 4235; /* avx512f_fmsubadd_v16sf_mask_round */
   14938              :               if (!nonimmediate_operand (operands[3], E_V16SFmode)
   14939              :                   || !rtx_equal_p (x7, operands[3])
   14940              :                   || !
   14941              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14942              : (TARGET_AVX512F))
   14943              :                 return -1;
   14944              :               return 4253; /* avx512f_fmsubadd_v16sf_mask3_round */
   14945              : 
   14946              :             case E_V8SFmode:
   14947              :               if (pattern1604 (x2, 
   14948              : E_V8SFmode, 
   14949              : E_QImode) != 0)
   14950              :                 return -1;
   14951              :               if (register_operand (operands[3], E_V8SFmode)
   14952              :                   && rtx_equal_p (x7, operands[1])
   14953              :                   && (
   14954              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14955              : (TARGET_AVX512F) && (
   14956              : #line 6915 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14957              : (TARGET_AVX512F) && 
   14958              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14959              : (TARGET_AVX512VL))))
   14960              :                 return 4237; /* avx512vl_fmsubadd_v8sf_mask_round */
   14961              :               if (!nonimmediate_operand (operands[3], E_V8SFmode)
   14962              :                   || !rtx_equal_p (x7, operands[3])
   14963              :                   || !(
   14964              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14965              : (TARGET_AVX512F) && (
   14966              : #line 6934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14967              : (TARGET_AVX512F) && 
   14968              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14969              : (TARGET_AVX512VL))))
   14970              :                 return -1;
   14971              :               return 4255; /* avx512vl_fmsubadd_v8sf_mask3_round */
   14972              : 
   14973              :             case E_V4SFmode:
   14974              :               if (pattern1604 (x2, 
   14975              : E_V4SFmode, 
   14976              : E_QImode) != 0)
   14977              :                 return -1;
   14978              :               if (register_operand (operands[3], E_V4SFmode)
   14979              :                   && rtx_equal_p (x7, operands[1])
   14980              :                   && (
   14981              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14982              : (TARGET_AVX512F) && (
   14983              : #line 6915 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14984              : (TARGET_AVX512F) && 
   14985              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14986              : (TARGET_AVX512VL))))
   14987              :                 return 4239; /* avx512vl_fmsubadd_v4sf_mask_round */
   14988              :               if (!nonimmediate_operand (operands[3], E_V4SFmode)
   14989              :                   || !rtx_equal_p (x7, operands[3])
   14990              :                   || !(
   14991              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   14992              : (TARGET_AVX512F) && (
   14993              : #line 6934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14994              : (TARGET_AVX512F) && 
   14995              : #line 517 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   14996              : (TARGET_AVX512VL))))
   14997              :                 return -1;
   14998              :               return 4257; /* avx512vl_fmsubadd_v4sf_mask3_round */
   14999              : 
   15000              :             case E_V8DFmode:
   15001              :               if (pattern1604 (x2, 
   15002              : E_V8DFmode, 
   15003              : E_QImode) != 0)
   15004              :                 return -1;
   15005              :               if (register_operand (operands[3], E_V8DFmode)
   15006              :                   && rtx_equal_p (x7, operands[1])
   15007              :                   && 
   15008              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15009              : (TARGET_AVX512F))
   15010              :                 return 4241; /* avx512f_fmsubadd_v8df_mask_round */
   15011              :               if (!nonimmediate_operand (operands[3], E_V8DFmode)
   15012              :                   || !rtx_equal_p (x7, operands[3])
   15013              :                   || !
   15014              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15015              : (TARGET_AVX512F))
   15016              :                 return -1;
   15017              :               return 4259; /* avx512f_fmsubadd_v8df_mask3_round */
   15018              : 
   15019              :             case E_V4DFmode:
   15020              :               if (pattern1604 (x2, 
   15021              : E_V4DFmode, 
   15022              : E_QImode) != 0)
   15023              :                 return -1;
   15024              :               if (register_operand (operands[3], E_V4DFmode)
   15025              :                   && rtx_equal_p (x7, operands[1])
   15026              :                   && (
   15027              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15028              : (TARGET_AVX512F) && (
   15029              : #line 6915 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15030              : (TARGET_AVX512F) && 
   15031              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15032              : (TARGET_AVX512VL))))
   15033              :                 return 4243; /* avx512vl_fmsubadd_v4df_mask_round */
   15034              :               if (!nonimmediate_operand (operands[3], E_V4DFmode)
   15035              :                   || !rtx_equal_p (x7, operands[3])
   15036              :                   || !(
   15037              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15038              : (TARGET_AVX512F) && (
   15039              : #line 6934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15040              : (TARGET_AVX512F) && 
   15041              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15042              : (TARGET_AVX512VL))))
   15043              :                 return -1;
   15044              :               return 4261; /* avx512vl_fmsubadd_v4df_mask3_round */
   15045              : 
   15046              :             case E_V2DFmode:
   15047              :               if (pattern1604 (x2, 
   15048              : E_V2DFmode, 
   15049              : E_QImode) != 0)
   15050              :                 return -1;
   15051              :               if (register_operand (operands[3], E_V2DFmode)
   15052              :                   && rtx_equal_p (x7, operands[1])
   15053              :                   && (
   15054              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15055              : (TARGET_AVX512F) && (
   15056              : #line 6915 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15057              : (TARGET_AVX512F) && 
   15058              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15059              : (TARGET_AVX512VL))))
   15060              :                 return 4245; /* avx512vl_fmsubadd_v2df_mask_round */
   15061              :               if (!nonimmediate_operand (operands[3], E_V2DFmode)
   15062              :                   || !rtx_equal_p (x7, operands[3])
   15063              :                   || !(
   15064              : #line 221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/subst.md"
   15065              : (TARGET_AVX512F) && (
   15066              : #line 6934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15067              : (TARGET_AVX512F) && 
   15068              : #line 518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15069              : (TARGET_AVX512VL))))
   15070              :                 return -1;
   15071              :               return 4263; /* avx512vl_fmsubadd_v2df_mask3_round */
   15072              : 
   15073              :             default:
   15074              :               return -1;
   15075              :             }
   15076              : 
   15077              :         default:
   15078              :           return -1;
   15079              :         }
   15080              : 
   15081              :     default:
   15082              :       return -1;
   15083              :     }
   15084              : }
   15085              : 
   15086              :  int
   15087              : recog_236 (rtx x1 ATTRIBUTE_UNUSED,
   15088              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   15089              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   15090              : {
   15091              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   15092              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   15093              :   rtx x10;
   15094              :   int res ATTRIBUTE_UNUSED;
   15095              :   if (pnum_clobbers == NULL)
   15096              :     return -1;
   15097              :   x2 = XEXP (x1, 0);
   15098              :   if (GET_CODE (x2) != MEM)
   15099              :     return -1;
   15100              :   operands[5] = x2;
   15101              :   x3 = XEXP (x2, 0);
   15102              :   if (GET_CODE (x3) != UNSPEC
   15103              :       || XVECLEN (x3, 0) != 4
   15104              :       || XINT (x3, 1) != 155)
   15105              :     return -1;
   15106              :   x4 = XVECEXP (x3, 0, 0);
   15107              :   operands[0] = x4;
   15108              :   x5 = XVECEXP (x3, 0, 1);
   15109              :   operands[2] = x5;
   15110              :   x6 = XVECEXP (x3, 0, 2);
   15111              :   operands[4] = x6;
   15112              :   if (!const1248_operand (operands[4], E_SImode))
   15113              :     return -1;
   15114              :   x7 = XVECEXP (x3, 0, 3);
   15115              :   operands[6] = x7;
   15116              :   x8 = XEXP (x1, 1);
   15117              :   x9 = XVECEXP (x8, 0, 1);
   15118              :   operands[3] = x9;
   15119              :   x10 = XVECEXP (x8, 0, 0);
   15120              :   if (!rtx_equal_p (x10, operands[6]))
   15121              :     return -1;
   15122              :   switch (GET_MODE (operands[5]))
   15123              :     {
   15124              :     case E_V16SImode:
   15125              :       if (!vsib_mem_operator (operands[5], E_V16SImode)
   15126              :           || GET_MODE (x8) != E_V16SImode)
   15127              :         return -1;
   15128              :       switch (GET_MODE (x3))
   15129              :         {
   15130              :         case E_SImode:
   15131              :           switch (pattern1722 (
   15132              : E_SImode))
   15133              :             {
   15134              :             case 0:
   15135              :               if (!(
   15136              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15137              : (TARGET_AVX512F) && 
   15138              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15139              : (Pmode == SImode)))
   15140              :                 return -1;
   15141              :               *pnum_clobbers = 1;
   15142              :               return 9942; /* *avx512f_scattersiv16si */
   15143              : 
   15144              :             case 1:
   15145              :               if (!(
   15146              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15147              : (TARGET_AVX512F) && 
   15148              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15149              : (Pmode == SImode)))
   15150              :                 return -1;
   15151              :               *pnum_clobbers = 1;
   15152              :               return 9966; /* *avx512f_scatterdiv16si */
   15153              : 
   15154              :             default:
   15155              :               return -1;
   15156              :             }
   15157              : 
   15158              :         case E_DImode:
   15159              :           switch (pattern1722 (
   15160              : E_DImode))
   15161              :             {
   15162              :             case 0:
   15163              :               if (!(
   15164              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15165              : (TARGET_AVX512F) && 
   15166              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15167              : (Pmode == DImode)))
   15168              :                 return -1;
   15169              :               *pnum_clobbers = 1;
   15170              :               return 9954; /* *avx512f_scattersiv16si */
   15171              : 
   15172              :             case 1:
   15173              :               if (!(
   15174              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15175              : (TARGET_AVX512F) && 
   15176              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15177              : (Pmode == DImode)))
   15178              :                 return -1;
   15179              :               *pnum_clobbers = 1;
   15180              :               return 9978; /* *avx512f_scatterdiv16si */
   15181              : 
   15182              :             default:
   15183              :               return -1;
   15184              :             }
   15185              : 
   15186              :         default:
   15187              :           return -1;
   15188              :         }
   15189              : 
   15190              :     case E_V16SFmode:
   15191              :       if (!vsib_mem_operator (operands[5], E_V16SFmode)
   15192              :           || GET_MODE (x8) != E_V16SFmode)
   15193              :         return -1;
   15194              :       switch (GET_MODE (x3))
   15195              :         {
   15196              :         case E_SImode:
   15197              :           switch (pattern1723 (
   15198              : E_SImode))
   15199              :             {
   15200              :             case 0:
   15201              :               if (!(
   15202              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15203              : (TARGET_AVX512F) && 
   15204              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15205              : (Pmode == SImode)))
   15206              :                 return -1;
   15207              :               *pnum_clobbers = 1;
   15208              :               return 9943; /* *avx512f_scattersiv16sf */
   15209              : 
   15210              :             case 1:
   15211              :               if (!(
   15212              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15213              : (TARGET_AVX512F) && 
   15214              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15215              : (Pmode == SImode)))
   15216              :                 return -1;
   15217              :               *pnum_clobbers = 1;
   15218              :               return 9967; /* *avx512f_scatterdiv16sf */
   15219              : 
   15220              :             default:
   15221              :               return -1;
   15222              :             }
   15223              : 
   15224              :         case E_DImode:
   15225              :           switch (pattern1723 (
   15226              : E_DImode))
   15227              :             {
   15228              :             case 0:
   15229              :               if (!(
   15230              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15231              : (TARGET_AVX512F) && 
   15232              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15233              : (Pmode == DImode)))
   15234              :                 return -1;
   15235              :               *pnum_clobbers = 1;
   15236              :               return 9955; /* *avx512f_scattersiv16sf */
   15237              : 
   15238              :             case 1:
   15239              :               if (!(
   15240              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15241              : (TARGET_AVX512F) && 
   15242              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15243              : (Pmode == DImode)))
   15244              :                 return -1;
   15245              :               *pnum_clobbers = 1;
   15246              :               return 9979; /* *avx512f_scatterdiv16sf */
   15247              : 
   15248              :             default:
   15249              :               return -1;
   15250              :             }
   15251              : 
   15252              :         default:
   15253              :           return -1;
   15254              :         }
   15255              : 
   15256              :     case E_V8DImode:
   15257              :       switch (pattern1620 (x1, 
   15258              : E_V8DImode))
   15259              :         {
   15260              :         case 0:
   15261              :           if (!(
   15262              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15263              : (TARGET_AVX512F) && 
   15264              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15265              : (Pmode == SImode)))
   15266              :             return -1;
   15267              :           *pnum_clobbers = 1;
   15268              :           return 9944; /* *avx512f_scattersiv8di */
   15269              : 
   15270              :         case 1:
   15271              :           if (!(
   15272              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15273              : (TARGET_AVX512F) && 
   15274              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15275              : (Pmode == SImode)))
   15276              :             return -1;
   15277              :           *pnum_clobbers = 1;
   15278              :           return 9968; /* *avx512f_scatterdiv8di */
   15279              : 
   15280              :         case 2:
   15281              :           if (!(
   15282              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15283              : (TARGET_AVX512F) && 
   15284              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15285              : (Pmode == DImode)))
   15286              :             return -1;
   15287              :           *pnum_clobbers = 1;
   15288              :           return 9956; /* *avx512f_scattersiv8di */
   15289              : 
   15290              :         case 3:
   15291              :           if (!(
   15292              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15293              : (TARGET_AVX512F) && 
   15294              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15295              : (Pmode == DImode)))
   15296              :             return -1;
   15297              :           *pnum_clobbers = 1;
   15298              :           return 9980; /* *avx512f_scatterdiv8di */
   15299              : 
   15300              :         default:
   15301              :           return -1;
   15302              :         }
   15303              : 
   15304              :     case E_V8DFmode:
   15305              :       switch (pattern1620 (x1, 
   15306              : E_V8DFmode))
   15307              :         {
   15308              :         case 0:
   15309              :           if (!(
   15310              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15311              : (TARGET_AVX512F) && 
   15312              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15313              : (Pmode == SImode)))
   15314              :             return -1;
   15315              :           *pnum_clobbers = 1;
   15316              :           return 9945; /* *avx512f_scattersiv8df */
   15317              : 
   15318              :         case 1:
   15319              :           if (!(
   15320              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15321              : (TARGET_AVX512F) && 
   15322              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15323              : (Pmode == SImode)))
   15324              :             return -1;
   15325              :           *pnum_clobbers = 1;
   15326              :           return 9969; /* *avx512f_scatterdiv8df */
   15327              : 
   15328              :         case 2:
   15329              :           if (!(
   15330              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15331              : (TARGET_AVX512F) && 
   15332              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15333              : (Pmode == DImode)))
   15334              :             return -1;
   15335              :           *pnum_clobbers = 1;
   15336              :           return 9957; /* *avx512f_scattersiv8df */
   15337              : 
   15338              :         case 3:
   15339              :           if (!(
   15340              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15341              : (TARGET_AVX512F) && 
   15342              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15343              : (Pmode == DImode)))
   15344              :             return -1;
   15345              :           *pnum_clobbers = 1;
   15346              :           return 9981; /* *avx512f_scatterdiv8df */
   15347              : 
   15348              :         default:
   15349              :           return -1;
   15350              :         }
   15351              : 
   15352              :     case E_V8SImode:
   15353              :       switch (pattern1621 (x1, 
   15354              : E_V8SImode))
   15355              :         {
   15356              :         case 0:
   15357              :           switch (pattern1761 (
   15358              : E_SImode))
   15359              :             {
   15360              :             case 0:
   15361              :               if (!(
   15362              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15363              : (TARGET_AVX512F) && ((((
   15364              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15365              : (TARGET_AVX512VL) && 
   15366              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15367              : (Pmode == SImode)) && 
   15368              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15369              : (Pmode == SImode)) && 
   15370              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15371              : (TARGET_AVX512VL)) && 
   15372              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15373              : (TARGET_AVX512VL))))
   15374              :                 return -1;
   15375              :               *pnum_clobbers = 1;
   15376              :               return 9946; /* *avx512f_scattersiv8si */
   15377              : 
   15378              :             case 1:
   15379              :               if (!(
   15380              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15381              : (TARGET_AVX512F) && (((
   15382              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15383              : (TARGET_AVX512VL) && 
   15384              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15385              : (Pmode == SImode)) && 
   15386              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15387              : (Pmode == SImode)) && 
   15388              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15389              : (TARGET_AVX512VL))))
   15390              :                 return -1;
   15391              :               *pnum_clobbers = 1;
   15392              :               return 9970; /* *avx512f_scatterdiv8si */
   15393              : 
   15394              :             default:
   15395              :               return -1;
   15396              :             }
   15397              : 
   15398              :         case 1:
   15399              :           switch (pattern1761 (
   15400              : E_DImode))
   15401              :             {
   15402              :             case 0:
   15403              :               if (!(
   15404              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15405              : (TARGET_AVX512F) && ((((
   15406              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15407              : (TARGET_AVX512VL) && 
   15408              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15409              : (Pmode == DImode)) && 
   15410              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15411              : (Pmode == DImode)) && 
   15412              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15413              : (TARGET_AVX512VL)) && 
   15414              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15415              : (TARGET_AVX512VL))))
   15416              :                 return -1;
   15417              :               *pnum_clobbers = 1;
   15418              :               return 9958; /* *avx512f_scattersiv8si */
   15419              : 
   15420              :             case 1:
   15421              :               if (!(
   15422              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15423              : (TARGET_AVX512F) && (((
   15424              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15425              : (TARGET_AVX512VL) && 
   15426              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15427              : (Pmode == DImode)) && 
   15428              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15429              : (Pmode == DImode)) && 
   15430              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15431              : (TARGET_AVX512VL))))
   15432              :                 return -1;
   15433              :               *pnum_clobbers = 1;
   15434              :               return 9982; /* *avx512f_scatterdiv8si */
   15435              : 
   15436              :             default:
   15437              :               return -1;
   15438              :             }
   15439              : 
   15440              :         default:
   15441              :           return -1;
   15442              :         }
   15443              : 
   15444              :     case E_V8SFmode:
   15445              :       switch (pattern1621 (x1, 
   15446              : E_V8SFmode))
   15447              :         {
   15448              :         case 0:
   15449              :           switch (pattern1762 (
   15450              : E_SImode))
   15451              :             {
   15452              :             case 0:
   15453              :               if (!(
   15454              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15455              : (TARGET_AVX512F) && ((((
   15456              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15457              : (TARGET_AVX512VL) && 
   15458              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15459              : (Pmode == SImode)) && 
   15460              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15461              : (Pmode == SImode)) && 
   15462              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15463              : (TARGET_AVX512VL)) && 
   15464              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15465              : (TARGET_AVX512VL))))
   15466              :                 return -1;
   15467              :               *pnum_clobbers = 1;
   15468              :               return 9947; /* *avx512f_scattersiv8sf */
   15469              : 
   15470              :             case 1:
   15471              :               if (!(
   15472              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15473              : (TARGET_AVX512F) && (((
   15474              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15475              : (TARGET_AVX512VL) && 
   15476              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15477              : (Pmode == SImode)) && 
   15478              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15479              : (Pmode == SImode)) && 
   15480              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15481              : (TARGET_AVX512VL))))
   15482              :                 return -1;
   15483              :               *pnum_clobbers = 1;
   15484              :               return 9971; /* *avx512f_scatterdiv8sf */
   15485              : 
   15486              :             default:
   15487              :               return -1;
   15488              :             }
   15489              : 
   15490              :         case 1:
   15491              :           switch (pattern1762 (
   15492              : E_DImode))
   15493              :             {
   15494              :             case 0:
   15495              :               if (!(
   15496              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15497              : (TARGET_AVX512F) && ((((
   15498              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15499              : (TARGET_AVX512VL) && 
   15500              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15501              : (Pmode == DImode)) && 
   15502              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15503              : (Pmode == DImode)) && 
   15504              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15505              : (TARGET_AVX512VL)) && 
   15506              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15507              : (TARGET_AVX512VL))))
   15508              :                 return -1;
   15509              :               *pnum_clobbers = 1;
   15510              :               return 9959; /* *avx512f_scattersiv8sf */
   15511              : 
   15512              :             case 1:
   15513              :               if (!(
   15514              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15515              : (TARGET_AVX512F) && (((
   15516              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15517              : (TARGET_AVX512VL) && 
   15518              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15519              : (Pmode == DImode)) && 
   15520              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15521              : (Pmode == DImode)) && 
   15522              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15523              : (TARGET_AVX512VL))))
   15524              :                 return -1;
   15525              :               *pnum_clobbers = 1;
   15526              :               return 9983; /* *avx512f_scatterdiv8sf */
   15527              : 
   15528              :             default:
   15529              :               return -1;
   15530              :             }
   15531              : 
   15532              :         default:
   15533              :           return -1;
   15534              :         }
   15535              : 
   15536              :     case E_V4DImode:
   15537              :       switch (pattern1623 (x1, 
   15538              : E_V4DImode))
   15539              :         {
   15540              :         case 0:
   15541              :           if (!(
   15542              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15543              : (TARGET_AVX512F) && ((((
   15544              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15545              : (TARGET_AVX512VL) && 
   15546              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15547              : (Pmode == SImode)) && 
   15548              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15549              : (Pmode == SImode)) && 
   15550              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15551              : (TARGET_AVX512VL)) && 
   15552              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15553              : (TARGET_AVX512VL))))
   15554              :             return -1;
   15555              :           *pnum_clobbers = 1;
   15556              :           return 9948; /* *avx512f_scattersiv4di */
   15557              : 
   15558              :         case 1:
   15559              :           if (!(
   15560              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15561              : (TARGET_AVX512F) && (((
   15562              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15563              : (TARGET_AVX512VL) && 
   15564              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15565              : (Pmode == SImode)) && 
   15566              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15567              : (Pmode == SImode)) && 
   15568              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15569              : (TARGET_AVX512VL))))
   15570              :             return -1;
   15571              :           *pnum_clobbers = 1;
   15572              :           return 9972; /* *avx512f_scatterdiv4di */
   15573              : 
   15574              :         case 2:
   15575              :           if (!(
   15576              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15577              : (TARGET_AVX512F) && ((((
   15578              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15579              : (TARGET_AVX512VL) && 
   15580              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15581              : (Pmode == DImode)) && 
   15582              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15583              : (Pmode == DImode)) && 
   15584              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15585              : (TARGET_AVX512VL)) && 
   15586              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15587              : (TARGET_AVX512VL))))
   15588              :             return -1;
   15589              :           *pnum_clobbers = 1;
   15590              :           return 9960; /* *avx512f_scattersiv4di */
   15591              : 
   15592              :         case 3:
   15593              :           if (!(
   15594              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15595              : (TARGET_AVX512F) && (((
   15596              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15597              : (TARGET_AVX512VL) && 
   15598              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15599              : (Pmode == DImode)) && 
   15600              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15601              : (Pmode == DImode)) && 
   15602              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15603              : (TARGET_AVX512VL))))
   15604              :             return -1;
   15605              :           *pnum_clobbers = 1;
   15606              :           return 9984; /* *avx512f_scatterdiv4di */
   15607              : 
   15608              :         default:
   15609              :           return -1;
   15610              :         }
   15611              : 
   15612              :     case E_V4DFmode:
   15613              :       switch (pattern1623 (x1, 
   15614              : E_V4DFmode))
   15615              :         {
   15616              :         case 0:
   15617              :           if (!(
   15618              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15619              : (TARGET_AVX512F) && ((((
   15620              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15621              : (TARGET_AVX512VL) && 
   15622              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15623              : (Pmode == SImode)) && 
   15624              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15625              : (Pmode == SImode)) && 
   15626              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15627              : (TARGET_AVX512VL)) && 
   15628              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15629              : (TARGET_AVX512VL))))
   15630              :             return -1;
   15631              :           *pnum_clobbers = 1;
   15632              :           return 9949; /* *avx512f_scattersiv4df */
   15633              : 
   15634              :         case 1:
   15635              :           if (!(
   15636              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15637              : (TARGET_AVX512F) && (((
   15638              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15639              : (TARGET_AVX512VL) && 
   15640              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15641              : (Pmode == SImode)) && 
   15642              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15643              : (Pmode == SImode)) && 
   15644              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15645              : (TARGET_AVX512VL))))
   15646              :             return -1;
   15647              :           *pnum_clobbers = 1;
   15648              :           return 9973; /* *avx512f_scatterdiv4df */
   15649              : 
   15650              :         case 2:
   15651              :           if (!(
   15652              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15653              : (TARGET_AVX512F) && ((((
   15654              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15655              : (TARGET_AVX512VL) && 
   15656              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15657              : (Pmode == DImode)) && 
   15658              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15659              : (Pmode == DImode)) && 
   15660              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15661              : (TARGET_AVX512VL)) && 
   15662              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15663              : (TARGET_AVX512VL))))
   15664              :             return -1;
   15665              :           *pnum_clobbers = 1;
   15666              :           return 9961; /* *avx512f_scattersiv4df */
   15667              : 
   15668              :         case 3:
   15669              :           if (!(
   15670              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15671              : (TARGET_AVX512F) && (((
   15672              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15673              : (TARGET_AVX512VL) && 
   15674              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15675              : (Pmode == DImode)) && 
   15676              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15677              : (Pmode == DImode)) && 
   15678              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15679              : (TARGET_AVX512VL))))
   15680              :             return -1;
   15681              :           *pnum_clobbers = 1;
   15682              :           return 9985; /* *avx512f_scatterdiv4df */
   15683              : 
   15684              :         default:
   15685              :           return -1;
   15686              :         }
   15687              : 
   15688              :     case E_V4SImode:
   15689              :       switch (pattern1625 (x1, 
   15690              : E_V4SImode))
   15691              :         {
   15692              :         case 0:
   15693              :           if (!(
   15694              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15695              : (TARGET_AVX512F) && ((((
   15696              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15697              : (TARGET_AVX512VL) && 
   15698              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15699              : (Pmode == SImode)) && 
   15700              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15701              : (Pmode == SImode)) && 
   15702              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15703              : (TARGET_AVX512VL)) && 
   15704              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15705              : (TARGET_AVX512VL))))
   15706              :             return -1;
   15707              :           *pnum_clobbers = 1;
   15708              :           return 9950; /* *avx512f_scattersiv4si */
   15709              : 
   15710              :         case 1:
   15711              :           if (!(
   15712              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15713              : (TARGET_AVX512F) && (((
   15714              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15715              : (TARGET_AVX512VL) && 
   15716              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15717              : (Pmode == SImode)) && 
   15718              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15719              : (Pmode == SImode)) && 
   15720              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15721              : (TARGET_AVX512VL))))
   15722              :             return -1;
   15723              :           *pnum_clobbers = 1;
   15724              :           return 9974; /* *avx512f_scatterdiv4si */
   15725              : 
   15726              :         case 2:
   15727              :           if (!(
   15728              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15729              : (TARGET_AVX512F) && ((((
   15730              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15731              : (TARGET_AVX512VL) && 
   15732              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15733              : (Pmode == DImode)) && 
   15734              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15735              : (Pmode == DImode)) && 
   15736              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15737              : (TARGET_AVX512VL)) && 
   15738              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15739              : (TARGET_AVX512VL))))
   15740              :             return -1;
   15741              :           *pnum_clobbers = 1;
   15742              :           return 9962; /* *avx512f_scattersiv4si */
   15743              : 
   15744              :         case 3:
   15745              :           if (!(
   15746              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15747              : (TARGET_AVX512F) && (((
   15748              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15749              : (TARGET_AVX512VL) && 
   15750              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15751              : (Pmode == DImode)) && 
   15752              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15753              : (Pmode == DImode)) && 
   15754              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15755              : (TARGET_AVX512VL))))
   15756              :             return -1;
   15757              :           *pnum_clobbers = 1;
   15758              :           return 9986; /* *avx512f_scatterdiv4si */
   15759              : 
   15760              :         default:
   15761              :           return -1;
   15762              :         }
   15763              : 
   15764              :     case E_V4SFmode:
   15765              :       switch (pattern1625 (x1, 
   15766              : E_V4SFmode))
   15767              :         {
   15768              :         case 0:
   15769              :           if (!(
   15770              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15771              : (TARGET_AVX512F) && ((((
   15772              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15773              : (TARGET_AVX512VL) && 
   15774              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15775              : (Pmode == SImode)) && 
   15776              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15777              : (Pmode == SImode)) && 
   15778              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15779              : (TARGET_AVX512VL)) && 
   15780              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15781              : (TARGET_AVX512VL))))
   15782              :             return -1;
   15783              :           *pnum_clobbers = 1;
   15784              :           return 9951; /* *avx512f_scattersiv4sf */
   15785              : 
   15786              :         case 1:
   15787              :           if (!(
   15788              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15789              : (TARGET_AVX512F) && (((
   15790              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15791              : (TARGET_AVX512VL) && 
   15792              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15793              : (Pmode == SImode)) && 
   15794              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15795              : (Pmode == SImode)) && 
   15796              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15797              : (TARGET_AVX512VL))))
   15798              :             return -1;
   15799              :           *pnum_clobbers = 1;
   15800              :           return 9975; /* *avx512f_scatterdiv4sf */
   15801              : 
   15802              :         case 2:
   15803              :           if (!(
   15804              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15805              : (TARGET_AVX512F) && ((((
   15806              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15807              : (TARGET_AVX512VL) && 
   15808              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15809              : (Pmode == DImode)) && 
   15810              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15811              : (Pmode == DImode)) && 
   15812              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15813              : (TARGET_AVX512VL)) && 
   15814              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15815              : (TARGET_AVX512VL))))
   15816              :             return -1;
   15817              :           *pnum_clobbers = 1;
   15818              :           return 9963; /* *avx512f_scattersiv4sf */
   15819              : 
   15820              :         case 3:
   15821              :           if (!(
   15822              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15823              : (TARGET_AVX512F) && (((
   15824              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15825              : (TARGET_AVX512VL) && 
   15826              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15827              : (Pmode == DImode)) && 
   15828              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15829              : (Pmode == DImode)) && 
   15830              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15831              : (TARGET_AVX512VL))))
   15832              :             return -1;
   15833              :           *pnum_clobbers = 1;
   15834              :           return 9987; /* *avx512f_scatterdiv4sf */
   15835              : 
   15836              :         default:
   15837              :           return -1;
   15838              :         }
   15839              : 
   15840              :     case E_V2DImode:
   15841              :       switch (pattern1625 (x1, 
   15842              : E_V2DImode))
   15843              :         {
   15844              :         case 0:
   15845              :           if (!(
   15846              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15847              : (TARGET_AVX512F) && ((((
   15848              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15849              : (TARGET_AVX512VL) && 
   15850              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15851              : (Pmode == SImode)) && 
   15852              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15853              : (Pmode == SImode)) && 
   15854              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15855              : (TARGET_AVX512VL)) && 
   15856              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15857              : (TARGET_AVX512VL))))
   15858              :             return -1;
   15859              :           *pnum_clobbers = 1;
   15860              :           return 9952; /* *avx512f_scattersiv2di */
   15861              : 
   15862              :         case 1:
   15863              :           if (!(
   15864              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15865              : (TARGET_AVX512F) && (((
   15866              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15867              : (TARGET_AVX512VL) && 
   15868              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15869              : (Pmode == SImode)) && 
   15870              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15871              : (Pmode == SImode)) && 
   15872              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15873              : (TARGET_AVX512VL))))
   15874              :             return -1;
   15875              :           *pnum_clobbers = 1;
   15876              :           return 9976; /* *avx512f_scatterdiv2di */
   15877              : 
   15878              :         case 2:
   15879              :           if (!(
   15880              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15881              : (TARGET_AVX512F) && ((((
   15882              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15883              : (TARGET_AVX512VL) && 
   15884              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15885              : (Pmode == DImode)) && 
   15886              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15887              : (Pmode == DImode)) && 
   15888              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15889              : (TARGET_AVX512VL)) && 
   15890              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15891              : (TARGET_AVX512VL))))
   15892              :             return -1;
   15893              :           *pnum_clobbers = 1;
   15894              :           return 9964; /* *avx512f_scattersiv2di */
   15895              : 
   15896              :         case 3:
   15897              :           if (!(
   15898              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15899              : (TARGET_AVX512F) && (((
   15900              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15901              : (TARGET_AVX512VL) && 
   15902              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15903              : (Pmode == DImode)) && 
   15904              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15905              : (Pmode == DImode)) && 
   15906              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15907              : (TARGET_AVX512VL))))
   15908              :             return -1;
   15909              :           *pnum_clobbers = 1;
   15910              :           return 9988; /* *avx512f_scatterdiv2di */
   15911              : 
   15912              :         default:
   15913              :           return -1;
   15914              :         }
   15915              : 
   15916              :     case E_V2DFmode:
   15917              :       switch (pattern1625 (x1, 
   15918              : E_V2DFmode))
   15919              :         {
   15920              :         case 0:
   15921              :           if (!(
   15922              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15923              : (TARGET_AVX512F) && ((((
   15924              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15925              : (TARGET_AVX512VL) && 
   15926              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15927              : (Pmode == SImode)) && 
   15928              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15929              : (Pmode == SImode)) && 
   15930              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15931              : (TARGET_AVX512VL)) && 
   15932              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15933              : (TARGET_AVX512VL))))
   15934              :             return -1;
   15935              :           *pnum_clobbers = 1;
   15936              :           return 9953; /* *avx512f_scattersiv2df */
   15937              : 
   15938              :         case 1:
   15939              :           if (!(
   15940              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15941              : (TARGET_AVX512F) && (((
   15942              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15943              : (TARGET_AVX512VL) && 
   15944              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15945              : (Pmode == SImode)) && 
   15946              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15947              : (Pmode == SImode)) && 
   15948              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15949              : (TARGET_AVX512VL))))
   15950              :             return -1;
   15951              :           *pnum_clobbers = 1;
   15952              :           return 9977; /* *avx512f_scatterdiv2df */
   15953              : 
   15954              :         case 2:
   15955              :           if (!(
   15956              : #line 30646 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15957              : (TARGET_AVX512F) && ((((
   15958              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15959              : (TARGET_AVX512VL) && 
   15960              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15961              : (Pmode == DImode)) && 
   15962              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15963              : (Pmode == DImode)) && 
   15964              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15965              : (TARGET_AVX512VL)) && 
   15966              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15967              : (TARGET_AVX512VL))))
   15968              :             return -1;
   15969              :           *pnum_clobbers = 1;
   15970              :           return 9965; /* *avx512f_scattersiv2df */
   15971              : 
   15972              :         case 3:
   15973              :           if (!(
   15974              : #line 30686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15975              : (TARGET_AVX512F) && (((
   15976              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15977              : (TARGET_AVX512VL) && 
   15978              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15979              : (Pmode == DImode)) && 
   15980              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   15981              : (Pmode == DImode)) && 
   15982              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   15983              : (TARGET_AVX512VL))))
   15984              :             return -1;
   15985              :           *pnum_clobbers = 1;
   15986              :           return 9989; /* *avx512f_scatterdiv2df */
   15987              : 
   15988              :         default:
   15989              :           return -1;
   15990              :         }
   15991              : 
   15992              :     default:
   15993              :       return -1;
   15994              :     }
   15995              : }
   15996              : 
   15997              :  int
   15998              : recog_255 (rtx x1 ATTRIBUTE_UNUSED,
   15999              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16000              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16001              : {
   16002              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16003              :   rtx x2, x3, x4, x5, x6;
   16004              :   int res ATTRIBUTE_UNUSED;
   16005              :   x2 = XEXP (x1, 0);
   16006              :   operands[0] = x2;
   16007              :   x3 = XEXP (x1, 1);
   16008              :   x4 = XVECEXP (x3, 0, 0);
   16009              :   operands[1] = x4;
   16010              :   x5 = XVECEXP (x3, 0, 1);
   16011              :   operands[2] = x5;
   16012              :   x6 = XVECEXP (x3, 0, 2);
   16013              :   operands[3] = x6;
   16014              :   switch (GET_MODE (operands[0]))
   16015              :     {
   16016              :     case E_V16SImode:
   16017              :       if (pattern918 (x3, 
   16018              : E_HImode, 
   16019              : E_V16SImode) != 0
   16020              :           || !
   16021              : #line 30701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16022              : (TARGET_AVX512F))
   16023              :         return -1;
   16024              :       return 9990; /* avx512f_compressv16si_mask */
   16025              : 
   16026              :     case E_V16SFmode:
   16027              :       if (pattern918 (x3, 
   16028              : E_HImode, 
   16029              : E_V16SFmode) != 0
   16030              :           || !
   16031              : #line 30701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16032              : (TARGET_AVX512F))
   16033              :         return -1;
   16034              :       return 9991; /* avx512f_compressv16sf_mask */
   16035              : 
   16036              :     case E_V8DImode:
   16037              :       if (pattern918 (x3, 
   16038              : E_QImode, 
   16039              : E_V8DImode) != 0
   16040              :           || !
   16041              : #line 30701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16042              : (TARGET_AVX512F))
   16043              :         return -1;
   16044              :       return 9992; /* avx512f_compressv8di_mask */
   16045              : 
   16046              :     case E_V8DFmode:
   16047              :       if (pattern918 (x3, 
   16048              : E_QImode, 
   16049              : E_V8DFmode) != 0
   16050              :           || !
   16051              : #line 30701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16052              : (TARGET_AVX512F))
   16053              :         return -1;
   16054              :       return 9993; /* avx512f_compressv8df_mask */
   16055              : 
   16056              :     case E_V8SImode:
   16057              :       if (pattern918 (x3, 
   16058              : E_QImode, 
   16059              : E_V8SImode) != 0
   16060              :           || !(
   16061              : #line 30701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16062              : (TARGET_AVX512F) && 
   16063              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16064              : (TARGET_AVX512VL)))
   16065              :         return -1;
   16066              :       return 9994; /* avx512vl_compressv8si_mask */
   16067              : 
   16068              :     case E_V8SFmode:
   16069              :       if (pattern918 (x3, 
   16070              : E_QImode, 
   16071              : E_V8SFmode) != 0
   16072              :           || !(
   16073              : #line 30701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16074              : (TARGET_AVX512F) && 
   16075              : #line 989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16076              : (TARGET_AVX512VL)))
   16077              :         return -1;
   16078              :       return 9995; /* avx512vl_compressv8sf_mask */
   16079              : 
   16080              :     case E_V4DImode:
   16081              :       if (pattern918 (x3, 
   16082              : E_QImode, 
   16083              : E_V4DImode) != 0
   16084              :           || !(
   16085              : #line 30701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16086              : (TARGET_AVX512F) && 
   16087              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16088              : (TARGET_AVX512VL)))
   16089              :         return -1;
   16090              :       return 9996; /* avx512vl_compressv4di_mask */
   16091              : 
   16092              :     case E_V4DFmode:
   16093              :       if (pattern918 (x3, 
   16094              : E_QImode, 
   16095              : E_V4DFmode) != 0
   16096              :           || !(
   16097              : #line 30701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16098              : (TARGET_AVX512F) && 
   16099              : #line 990 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16100              : (TARGET_AVX512VL)))
   16101              :         return -1;
   16102              :       return 9997; /* avx512vl_compressv4df_mask */
   16103              : 
   16104              :     case E_V4SImode:
   16105              :       if (pattern918 (x3, 
   16106              : E_QImode, 
   16107              : E_V4SImode) != 0
   16108              :           || !(
   16109              : #line 30701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16110              : (TARGET_AVX512F) && 
   16111              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16112              : (TARGET_AVX512VL)))
   16113              :         return -1;
   16114              :       return 9998; /* avx512vl_compressv4si_mask */
   16115              : 
   16116              :     case E_V4SFmode:
   16117              :       if (pattern918 (x3, 
   16118              : E_QImode, 
   16119              : E_V4SFmode) != 0
   16120              :           || !(
   16121              : #line 30701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16122              : (TARGET_AVX512F) && 
   16123              : #line 991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16124              : (TARGET_AVX512VL)))
   16125              :         return -1;
   16126              :       return 9999; /* avx512vl_compressv4sf_mask */
   16127              : 
   16128              :     case E_V2DImode:
   16129              :       if (pattern918 (x3, 
   16130              : E_QImode, 
   16131              : E_V2DImode) != 0
   16132              :           || !(
   16133              : #line 30701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16134              : (TARGET_AVX512F) && 
   16135              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16136              : (TARGET_AVX512VL)))
   16137              :         return -1;
   16138              :       return 10000; /* avx512vl_compressv2di_mask */
   16139              : 
   16140              :     case E_V2DFmode:
   16141              :       if (pattern918 (x3, 
   16142              : E_QImode, 
   16143              : E_V2DFmode) != 0
   16144              :           || !(
   16145              : #line 30701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16146              : (TARGET_AVX512F) && 
   16147              : #line 992 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16148              : (TARGET_AVX512VL)))
   16149              :         return -1;
   16150              :       return 10001; /* avx512vl_compressv2df_mask */
   16151              : 
   16152              :     case E_V64QImode:
   16153              :       if (pattern918 (x3, 
   16154              : E_DImode, 
   16155              : E_V64QImode) != 0
   16156              :           || !
   16157              : #line 30715 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16158              : (TARGET_AVX512VBMI2))
   16159              :         return -1;
   16160              :       return 10002; /* compressv64qi_mask */
   16161              : 
   16162              :     case E_V16QImode:
   16163              :       if (pattern918 (x3, 
   16164              : E_HImode, 
   16165              : E_V16QImode) != 0
   16166              :           || !(
   16167              : #line 30715 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16168              : (TARGET_AVX512VBMI2) && 
   16169              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16170              : (TARGET_AVX512VL)))
   16171              :         return -1;
   16172              :       return 10003; /* compressv16qi_mask */
   16173              : 
   16174              :     case E_V32QImode:
   16175              :       if (pattern918 (x3, 
   16176              : E_SImode, 
   16177              : E_V32QImode) != 0
   16178              :           || !(
   16179              : #line 30715 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16180              : (TARGET_AVX512VBMI2) && 
   16181              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16182              : (TARGET_AVX512VL)))
   16183              :         return -1;
   16184              :       return 10004; /* compressv32qi_mask */
   16185              : 
   16186              :     case E_V32HImode:
   16187              :       if (pattern918 (x3, 
   16188              : E_SImode, 
   16189              : E_V32HImode) != 0
   16190              :           || !
   16191              : #line 30715 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16192              : (TARGET_AVX512VBMI2))
   16193              :         return -1;
   16194              :       return 10005; /* compressv32hi_mask */
   16195              : 
   16196              :     case E_V16HImode:
   16197              :       if (pattern918 (x3, 
   16198              : E_HImode, 
   16199              : E_V16HImode) != 0
   16200              :           || !(
   16201              : #line 30715 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16202              : (TARGET_AVX512VBMI2) && 
   16203              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16204              : (TARGET_AVX512VL)))
   16205              :         return -1;
   16206              :       return 10006; /* compressv16hi_mask */
   16207              : 
   16208              :     case E_V8HImode:
   16209              :       if (pattern918 (x3, 
   16210              : E_QImode, 
   16211              : E_V8HImode) != 0
   16212              :           || !(
   16213              : #line 30715 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16214              : (TARGET_AVX512VBMI2) && 
   16215              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16216              : (TARGET_AVX512VL)))
   16217              :         return -1;
   16218              :       return 10007; /* compressv8hi_mask */
   16219              : 
   16220              :     default:
   16221              :       return -1;
   16222              :     }
   16223              : }
   16224              : 
   16225              :  int
   16226              : recog_265 (rtx x1 ATTRIBUTE_UNUSED,
   16227              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16228              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16229              : {
   16230              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16231              :   rtx x2, x3, x4, x5, x6;
   16232              :   int res ATTRIBUTE_UNUSED;
   16233              :   x2 = XEXP (x1, 0);
   16234              :   operands[0] = x2;
   16235              :   x3 = XEXP (x1, 1);
   16236              :   x4 = XVECEXP (x3, 0, 0);
   16237              :   operands[1] = x4;
   16238              :   x5 = XVECEXP (x3, 0, 1);
   16239              :   operands[2] = x5;
   16240              :   x6 = XVECEXP (x3, 0, 2);
   16241              :   operands[3] = x6;
   16242              :   if (!const_0_to_255_operand (operands[3], E_SImode))
   16243              :     return -1;
   16244              :   switch (GET_MODE (operands[0]))
   16245              :     {
   16246              :     case E_V32QImode:
   16247              :       if (pattern158 (x3, 
   16248              : E_V32QImode) != 0)
   16249              :         return -1;
   16250              :       if ((
   16251              : #line 24333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16252              : (TARGET_SSE4_1) && 
   16253              : #line 623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16254              : (TARGET_AVX2)))
   16255              :         return 8795; /* avx2_mpsadbw */
   16256              :       if (!(
   16257              : #line 24368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16258              : (TARGET_AVX10_2) && 
   16259              : #line 597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16260              : (TARGET_AVX)))
   16261              :         return -1;
   16262              :       return 8799; /* *avx2_mpsadbw */
   16263              : 
   16264              :     case E_V16QImode:
   16265              :       if (pattern158 (x3, 
   16266              : E_V16QImode) != 0)
   16267              :         return -1;
   16268              :       if (
   16269              : #line 24333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16270              : (TARGET_SSE4_1))
   16271              :         return 8796; /* sse4_1_mpsadbw */
   16272              :       if (!
   16273              : #line 24368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16274              : (TARGET_AVX10_2))
   16275              :         return -1;
   16276              :       return 8801; /* *sse4_1_mpsadbw */
   16277              : 
   16278              :     case E_V64QImode:
   16279              :       if (pattern158 (x3, 
   16280              : E_V64QImode) != 0
   16281              :           || !
   16282              : #line 24356 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16283              : (TARGET_AVX10_2))
   16284              :         return -1;
   16285              :       return 8797; /* avx10_2_mpsadbw */
   16286              : 
   16287              :     default:
   16288              :       return -1;
   16289              :     }
   16290              : }
   16291              : 
   16292              :  int
   16293              : recog_271 (rtx x1 ATTRIBUTE_UNUSED,
   16294              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16295              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16296              : {
   16297              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16298              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   16299              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   16300              :   rtx x18;
   16301              :   int res ATTRIBUTE_UNUSED;
   16302              :   x2 = XEXP (x1, 1);
   16303              :   x3 = XEXP (x2, 1);
   16304              :   x4 = XEXP (x3, 1);
   16305              :   if (GET_CODE (x4) != PARALLEL)
   16306              :     return -1;
   16307              :   x5 = XEXP (x2, 0);
   16308              :   operands[2] = x5;
   16309              :   x6 = XEXP (x3, 0);
   16310              :   operands[1] = x6;
   16311              :   switch (XVECLEN (x4, 0))
   16312              :     {
   16313              :     case 2:
   16314              :       x7 = XVECEXP (x4, 0, 0);
   16315              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
   16316              :         return -1;
   16317              :       x8 = XVECEXP (x4, 0, 1);
   16318              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 3])
   16319              :         return -1;
   16320              :       switch (GET_MODE (operands[0]))
   16321              :         {
   16322              :         case E_V4SFmode:
   16323              :           if (!nonimmediate_operand (operands[0], E_V4SFmode)
   16324              :               || GET_MODE (x2) != E_V4SFmode
   16325              :               || !nonimmediate_operand (operands[2], E_V2SFmode)
   16326              :               || GET_MODE (x3) != E_V2SFmode
   16327              :               || !nonimmediate_operand (operands[1], E_V4SFmode)
   16328              :               || !
   16329              : #line 12063 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16330              : (TARGET_SSE))
   16331              :             return -1;
   16332              :           return 5298; /* sse_loadlps */
   16333              : 
   16334              :         case E_V4DImode:
   16335              :           if (pattern1239 (x2, 
   16336              : E_V4DImode, 
   16337              : E_V2DImode) != 0
   16338              :               || !
   16339              : #line 29398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16340              : (TARGET_AVX && 1))
   16341              :             return -1;
   16342              :           return 9566; /* vec_set_lo_v4di */
   16343              : 
   16344              :         case E_V4DFmode:
   16345              :           if (pattern1239 (x2, 
   16346              : E_V4DFmode, 
   16347              : E_V2DFmode) != 0
   16348              :               || !
   16349              : #line 29398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16350              : (TARGET_AVX && 1))
   16351              :             return -1;
   16352              :           return 9568; /* vec_set_lo_v4df */
   16353              : 
   16354              :         default:
   16355              :           return -1;
   16356              :         }
   16357              : 
   16358              :     case 1:
   16359              :       x7 = XVECEXP (x4, 0, 0);
   16360              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   16361              :           || !nonimmediate_operand (operands[0], E_V2DFmode)
   16362              :           || GET_MODE (x2) != E_V2DFmode
   16363              :           || !nonimmediate_operand (operands[2], E_DFmode)
   16364              :           || GET_MODE (x3) != E_DFmode
   16365              :           || !nonimm_or_0_operand (operands[1], E_V2DFmode)
   16366              :           || !
   16367              : #line 15189 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16368              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   16369              :         return -1;
   16370              :       return 7258; /* sse2_loadlpd */
   16371              : 
   16372              :     case 8:
   16373              :       x7 = XVECEXP (x4, 0, 0);
   16374              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 8])
   16375              :         return -1;
   16376              :       x8 = XVECEXP (x4, 0, 1);
   16377              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 9])
   16378              :         return -1;
   16379              :       x9 = XVECEXP (x4, 0, 2);
   16380              :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 10]
   16381              :           || pattern1240 (x4, 
   16382              : 15, 
   16383              : 14, 
   16384              : 13, 
   16385              : 12, 
   16386              : 11) != 0)
   16387              :         return -1;
   16388              :       switch (GET_MODE (operands[0]))
   16389              :         {
   16390              :         case E_V16SFmode:
   16391              :           if (pattern1239 (x2, 
   16392              : E_V16SFmode, 
   16393              : E_V8SFmode) != 0
   16394              :               || !
   16395              : #line 20565 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16396              : (TARGET_AVX512DQ))
   16397              :             return -1;
   16398              :           return 8472; /* vec_set_lo_v16sf */
   16399              : 
   16400              :         case E_V16SImode:
   16401              :           if (pattern1239 (x2, 
   16402              : E_V16SImode, 
   16403              : E_V8SImode) != 0
   16404              :               || !
   16405              : #line 20565 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16406              : (TARGET_AVX512DQ))
   16407              :             return -1;
   16408              :           return 8474; /* vec_set_lo_v16si */
   16409              : 
   16410              :         case E_V16HImode:
   16411              :           if (pattern1239 (x2, 
   16412              : E_V16HImode, 
   16413              : E_V8HImode) != 0
   16414              :               || !
   16415              : #line 29499 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16416              : (TARGET_AVX))
   16417              :             return -1;
   16418              :           return 9582; /* vec_set_lo_v16hi */
   16419              : 
   16420              :         case E_V16HFmode:
   16421              :           if (pattern1239 (x2, 
   16422              : E_V16HFmode, 
   16423              : E_V8HFmode) != 0
   16424              :               || !
   16425              : #line 29499 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16426              : (TARGET_AVX))
   16427              :             return -1;
   16428              :           return 9583; /* vec_set_lo_v16hf */
   16429              : 
   16430              :         case E_V16BFmode:
   16431              :           if (pattern1239 (x2, 
   16432              : E_V16BFmode, 
   16433              : E_V8BFmode) != 0
   16434              :               || !
   16435              : #line 29499 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16436              : (TARGET_AVX))
   16437              :             return -1;
   16438              :           return 9584; /* vec_set_lo_v16bf */
   16439              : 
   16440              :         default:
   16441              :           return -1;
   16442              :         }
   16443              : 
   16444              :     case 4:
   16445              :       x7 = XVECEXP (x4, 0, 0);
   16446              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 4])
   16447              :         return -1;
   16448              :       x8 = XVECEXP (x4, 0, 1);
   16449              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 5])
   16450              :         return -1;
   16451              :       x9 = XVECEXP (x4, 0, 2);
   16452              :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 6])
   16453              :         return -1;
   16454              :       x10 = XVECEXP (x4, 0, 3);
   16455              :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 7])
   16456              :         return -1;
   16457              :       switch (GET_MODE (operands[0]))
   16458              :         {
   16459              :         case E_V8DFmode:
   16460              :           if (pattern1239 (x2, 
   16461              : E_V8DFmode, 
   16462              : E_V4DFmode) != 0
   16463              :               || !
   16464              : #line 20599 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16465              : (TARGET_AVX512F))
   16466              :             return -1;
   16467              :           return 8480; /* vec_set_lo_v8df */
   16468              : 
   16469              :         case E_V8DImode:
   16470              :           if (pattern1239 (x2, 
   16471              : E_V8DImode, 
   16472              : E_V4DImode) != 0
   16473              :               || !
   16474              : #line 20599 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16475              : (TARGET_AVX512F))
   16476              :             return -1;
   16477              :           return 8482; /* vec_set_lo_v8di */
   16478              : 
   16479              :         case E_V8SImode:
   16480              :           if (pattern1239 (x2, 
   16481              : E_V8SImode, 
   16482              : E_V4SImode) != 0
   16483              :               || !
   16484              : #line 29449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16485              : (TARGET_AVX))
   16486              :             return -1;
   16487              :           return 9574; /* vec_set_lo_v8si */
   16488              : 
   16489              :         case E_V8SFmode:
   16490              :           if (pattern1239 (x2, 
   16491              : E_V8SFmode, 
   16492              : E_V4SFmode) != 0
   16493              :               || !
   16494              : #line 29449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16495              : (TARGET_AVX))
   16496              :             return -1;
   16497              :           return 9576; /* vec_set_lo_v8sf */
   16498              : 
   16499              :         default:
   16500              :           return -1;
   16501              :         }
   16502              : 
   16503              :     case 16:
   16504              :       x7 = XVECEXP (x4, 0, 0);
   16505              :       if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 16])
   16506              :         return -1;
   16507              :       x8 = XVECEXP (x4, 0, 1);
   16508              :       if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 17])
   16509              :         return -1;
   16510              :       x9 = XVECEXP (x4, 0, 2);
   16511              :       if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 18]
   16512              :           || pattern1240 (x4, 
   16513              : 23, 
   16514              : 22, 
   16515              : 21, 
   16516              : 20, 
   16517              : 19) != 0)
   16518              :         return -1;
   16519              :       x11 = XVECEXP (x4, 0, 8);
   16520              :       if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 24])
   16521              :         return -1;
   16522              :       x12 = XVECEXP (x4, 0, 9);
   16523              :       if (x12 != const_int_rtx[MAX_SAVED_CONST_INT + 25])
   16524              :         return -1;
   16525              :       x13 = XVECEXP (x4, 0, 10);
   16526              :       if (x13 != const_int_rtx[MAX_SAVED_CONST_INT + 26])
   16527              :         return -1;
   16528              :       x14 = XVECEXP (x4, 0, 11);
   16529              :       if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 27])
   16530              :         return -1;
   16531              :       x15 = XVECEXP (x4, 0, 12);
   16532              :       if (x15 != const_int_rtx[MAX_SAVED_CONST_INT + 28])
   16533              :         return -1;
   16534              :       x16 = XVECEXP (x4, 0, 13);
   16535              :       if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 29])
   16536              :         return -1;
   16537              :       x17 = XVECEXP (x4, 0, 14);
   16538              :       if (x17 != const_int_rtx[MAX_SAVED_CONST_INT + 30])
   16539              :         return -1;
   16540              :       x18 = XVECEXP (x4, 0, 15);
   16541              :       if (x18 != const_int_rtx[MAX_SAVED_CONST_INT + 31]
   16542              :           || pattern1239 (x2, 
   16543              : E_V32QImode, 
   16544              : E_V16QImode) != 0
   16545              :           || !
   16546              : #line 29549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16547              : (TARGET_AVX))
   16548              :         return -1;
   16549              :       return 9588; /* vec_set_lo_v32qi */
   16550              : 
   16551              :     default:
   16552              :       return -1;
   16553              :     }
   16554              : }
   16555              : 
   16556              :  int
   16557              : recog_276 (rtx x1 ATTRIBUTE_UNUSED,
   16558              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16559              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16560              : {
   16561              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16562              :   rtx x2, x3, x4;
   16563              :   int res ATTRIBUTE_UNUSED;
   16564              :   x2 = XEXP (x1, 1);
   16565              :   operands[3] = x2;
   16566              :   x3 = XEXP (x2, 0);
   16567              :   operands[1] = x3;
   16568              :   x4 = XEXP (x2, 1);
   16569              :   operands[2] = x4;
   16570              :   switch (GET_MODE (operands[0]))
   16571              :     {
   16572              :     case E_V8SFmode:
   16573              :       if (pattern805 (
   16574              : E_V8SFmode) != 0)
   16575              :         return -1;
   16576              :       if ((
   16577              : #line 4598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16578              : (TARGET_SSE
   16579              :    && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE) && 
   16580              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16581              : (TARGET_AVX)))
   16582              :         return 3318; /* *avx_maskcmpv8sf3_comm */
   16583              :       if (!(
   16584              : #line 4632 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16585              : (TARGET_SSE) && 
   16586              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16587              : (TARGET_AVX)))
   16588              :         return -1;
   16589              :       return 3326; /* avx_maskcmpv8sf3 */
   16590              : 
   16591              :     case E_V4SFmode:
   16592              :       if (pattern805 (
   16593              : E_V4SFmode) != 0)
   16594              :         return -1;
   16595              :       if (
   16596              : #line 4598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16597              : (TARGET_SSE
   16598              :    && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE))
   16599              :         return 3319; /* *sse_maskcmpv4sf3_comm */
   16600              :       if (!
   16601              : #line 4632 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16602              : (TARGET_SSE))
   16603              :         return -1;
   16604              :       return 3327; /* sse_maskcmpv4sf3 */
   16605              : 
   16606              :     case E_V4DFmode:
   16607              :       if (pattern805 (
   16608              : E_V4DFmode) != 0)
   16609              :         return -1;
   16610              :       if ((
   16611              : #line 4598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16612              : (TARGET_SSE
   16613              :    && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE) && 
   16614              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16615              : (TARGET_AVX)))
   16616              :         return 3320; /* *avx_maskcmpv4df3_comm */
   16617              :       if (!(
   16618              : #line 4632 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16619              : (TARGET_SSE) && 
   16620              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16621              : (TARGET_AVX)))
   16622              :         return -1;
   16623              :       return 3328; /* avx_maskcmpv4df3 */
   16624              : 
   16625              :     case E_V2DFmode:
   16626              :       if (pattern805 (
   16627              : E_V2DFmode) != 0)
   16628              :         return -1;
   16629              :       if ((
   16630              : #line 4598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16631              : (TARGET_SSE
   16632              :    && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE) && 
   16633              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16634              : (TARGET_SSE2)))
   16635              :         return 3321; /* *sse2_maskcmpv2df3_comm */
   16636              :       if (!(
   16637              : #line 4632 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16638              : (TARGET_SSE) && 
   16639              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16640              : (TARGET_SSE2)))
   16641              :         return -1;
   16642              :       return 3329; /* sse2_maskcmpv2df3 */
   16643              : 
   16644              :     case E_V8SImode:
   16645              :       if (pattern806 (
   16646              : E_V8SFmode, 
   16647              : E_V8SImode) != 0
   16648              :           || !(
   16649              : #line 4615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16650              : (TARGET_SSE
   16651              :    && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE) && 
   16652              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16653              : (TARGET_AVX)))
   16654              :         return -1;
   16655              :       return 3322; /* *avx_imaskcmpv8sf3_comm */
   16656              : 
   16657              :     case E_V4SImode:
   16658              :       if (pattern806 (
   16659              : E_V4SFmode, 
   16660              : E_V4SImode) != 0
   16661              :           || !
   16662              : #line 4615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16663              : (TARGET_SSE
   16664              :    && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE))
   16665              :         return -1;
   16666              :       return 3323; /* *sse_imaskcmpv4sf3_comm */
   16667              : 
   16668              :     case E_V4DImode:
   16669              :       if (pattern806 (
   16670              : E_V4DFmode, 
   16671              : E_V4DImode) != 0
   16672              :           || !(
   16673              : #line 4615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16674              : (TARGET_SSE
   16675              :    && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE) && 
   16676              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16677              : (TARGET_AVX)))
   16678              :         return -1;
   16679              :       return 3324; /* *avx_imaskcmpv4df3_comm */
   16680              : 
   16681              :     case E_V2DImode:
   16682              :       if (pattern806 (
   16683              : E_V2DFmode, 
   16684              : E_V2DImode) != 0
   16685              :           || !(
   16686              : #line 4615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16687              : (TARGET_SSE
   16688              :    && GET_RTX_CLASS (GET_CODE (operands[3])) == RTX_COMM_COMPARE) && 
   16689              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16690              : (TARGET_SSE2)))
   16691              :         return -1;
   16692              :       return 3325; /* *sse2_imaskcmpv2df3_comm */
   16693              : 
   16694              :     default:
   16695              :       return -1;
   16696              :     }
   16697              : }
   16698              : 
   16699              :  int
   16700              : recog_278 (rtx x1 ATTRIBUTE_UNUSED,
   16701              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   16702              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   16703              : {
   16704              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   16705              :   rtx x2, x3, x4, x5;
   16706              :   int res ATTRIBUTE_UNUSED;
   16707              :   x2 = XEXP (x1, 1);
   16708              :   x3 = XEXP (x2, 0);
   16709              :   operands[1] = x3;
   16710              :   x4 = XEXP (x2, 2);
   16711              :   switch (GET_CODE (x4))
   16712              :     {
   16713              :     case REG:
   16714              :     case SUBREG:
   16715              :     case MEM:
   16716              :     case VEC_DUPLICATE:
   16717              :       operands[3] = x4;
   16718              :       switch (GET_MODE (operands[0]))
   16719              :         {
   16720              :         case E_V4SFmode:
   16721              :           if (!register_operand (operands[0], E_V4SFmode)
   16722              :               || GET_MODE (x2) != E_V4SFmode)
   16723              :             return -1;
   16724              :           if (nonimmediate_operand (operands[1], E_V4SFmode)
   16725              :               && nonimmediate_operand (operands[2], E_V4SFmode)
   16726              :               && nonimmediate_operand (operands[3], E_V4SFmode)
   16727              :               && 
   16728              : #line 6320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16729              : (TARGET_FMA || TARGET_FMA4))
   16730              :             return 3878; /* *fma_fmadd_v4sf */
   16731              :           if (!bcst_vector_operand (operands[1], E_V4SFmode)
   16732              :               || !bcst_vector_operand (operands[2], E_V4SFmode)
   16733              :               || !bcst_vector_operand (operands[3], E_V4SFmode)
   16734              :               || !(
   16735              : #line 6346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16736              : (TARGET_AVX512F && 1 && 1) && 
   16737              : #line 6337 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16738              : (TARGET_AVX512VL)))
   16739              :             return -1;
   16740              :           return 3898; /* *fma_fmadd_v4sf */
   16741              : 
   16742              :         case E_V2DFmode:
   16743              :           if (!register_operand (operands[0], E_V2DFmode)
   16744              :               || GET_MODE (x2) != E_V2DFmode)
   16745              :             return -1;
   16746              :           if (nonimmediate_operand (operands[1], E_V2DFmode)
   16747              :               && nonimmediate_operand (operands[2], E_V2DFmode)
   16748              :               && nonimmediate_operand (operands[3], E_V2DFmode)
   16749              :               && 
   16750              : #line 6320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16751              : (TARGET_FMA || TARGET_FMA4))
   16752              :             return 3879; /* *fma_fmadd_v2df */
   16753              :           if (!bcst_vector_operand (operands[1], E_V2DFmode)
   16754              :               || !bcst_vector_operand (operands[2], E_V2DFmode)
   16755              :               || !bcst_vector_operand (operands[3], E_V2DFmode)
   16756              :               || !(
   16757              : #line 6346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16758              : (TARGET_AVX512F && 1 && 1) && 
   16759              : #line 6338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16760              : (TARGET_AVX512VL)))
   16761              :             return -1;
   16762              :           return 3907; /* *fma_fmadd_v2df */
   16763              : 
   16764              :         case E_V8SFmode:
   16765              :           if (!register_operand (operands[0], E_V8SFmode)
   16766              :               || GET_MODE (x2) != E_V8SFmode)
   16767              :             return -1;
   16768              :           if (nonimmediate_operand (operands[1], E_V8SFmode)
   16769              :               && nonimmediate_operand (operands[2], E_V8SFmode)
   16770              :               && nonimmediate_operand (operands[3], E_V8SFmode)
   16771              :               && 
   16772              : #line 6320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16773              : (TARGET_FMA || TARGET_FMA4))
   16774              :             return 3880; /* *fma_fmadd_v8sf */
   16775              :           if (!bcst_vector_operand (operands[1], E_V8SFmode)
   16776              :               || !bcst_vector_operand (operands[2], E_V8SFmode)
   16777              :               || !bcst_vector_operand (operands[3], E_V8SFmode)
   16778              :               || !(
   16779              : #line 6346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16780              : (TARGET_AVX512F && 1 && 1) && 
   16781              : #line 6337 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16782              : (TARGET_AVX512VL)))
   16783              :             return -1;
   16784              :           return 3896; /* *fma_fmadd_v8sf */
   16785              : 
   16786              :         case E_V4DFmode:
   16787              :           if (!register_operand (operands[0], E_V4DFmode)
   16788              :               || GET_MODE (x2) != E_V4DFmode)
   16789              :             return -1;
   16790              :           if (nonimmediate_operand (operands[1], E_V4DFmode)
   16791              :               && nonimmediate_operand (operands[2], E_V4DFmode)
   16792              :               && nonimmediate_operand (operands[3], E_V4DFmode)
   16793              :               && 
   16794              : #line 6320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16795              : (TARGET_FMA || TARGET_FMA4))
   16796              :             return 3881; /* *fma_fmadd_v4df */
   16797              :           if (!bcst_vector_operand (operands[1], E_V4DFmode)
   16798              :               || !bcst_vector_operand (operands[2], E_V4DFmode)
   16799              :               || !bcst_vector_operand (operands[3], E_V4DFmode)
   16800              :               || !(
   16801              : #line 6346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16802              : (TARGET_AVX512F && 1 && 1) && 
   16803              : #line 6338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16804              : (TARGET_AVX512VL)))
   16805              :             return -1;
   16806              :           return 3905; /* *fma_fmadd_v4df */
   16807              : 
   16808              :         case E_V32HFmode:
   16809              :           if (pattern877 (x2, 
   16810              : E_V32HFmode) != 0
   16811              :               || !(
   16812              : #line 6346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16813              : (TARGET_AVX512F && 1 && 1) && 
   16814              : #line 6333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16815              : (TARGET_AVX512FP16)))
   16816              :             return -1;
   16817              :           return 3882; /* *fma_fmadd_v32hf */
   16818              : 
   16819              :         case E_V16HFmode:
   16820              :           if (pattern877 (x2, 
   16821              : E_V16HFmode) != 0
   16822              :               || !(
   16823              : #line 6346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16824              : (TARGET_AVX512F && 1 && 1) && 
   16825              : #line 6334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16826              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   16827              :             return -1;
   16828              :           return 3886; /* *fma_fmadd_v16hf */
   16829              : 
   16830              :         case E_V8HFmode:
   16831              :           if (pattern877 (x2, 
   16832              : E_V8HFmode) != 0
   16833              :               || !(
   16834              : #line 6346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16835              : (TARGET_AVX512F && 1 && 1) && 
   16836              : #line 6335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16837              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   16838              :             return -1;
   16839              :           return 3888; /* *fma_fmadd_v8hf */
   16840              : 
   16841              :         case E_V16SFmode:
   16842              :           if (pattern877 (x2, 
   16843              : E_V16SFmode) != 0
   16844              :               || !
   16845              : #line 6346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16846              : (TARGET_AVX512F && 1 && 1))
   16847              :             return -1;
   16848              :           return 3892; /* *fma_fmadd_v16sf */
   16849              : 
   16850              :         case E_V8DFmode:
   16851              :           if (pattern877 (x2, 
   16852              : E_V8DFmode) != 0
   16853              :               || !
   16854              : #line 6346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16855              : (TARGET_AVX512F && 1 && 1))
   16856              :             return -1;
   16857              :           return 3901; /* *fma_fmadd_v8df */
   16858              : 
   16859              :         case E_V32BFmode:
   16860              :           if (pattern927 (x2, 
   16861              : E_V32BFmode) != 0
   16862              :               || !
   16863              : #line 33221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16864              : (TARGET_AVX10_2))
   16865              :             return -1;
   16866              :           return 10732; /* avx10_2_fmaddbf16_v32bf */
   16867              : 
   16868              :         case E_V16BFmode:
   16869              :           if (pattern927 (x2, 
   16870              : E_V16BFmode) != 0
   16871              :               || !
   16872              : #line 33221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16873              : (TARGET_AVX10_2))
   16874              :             return -1;
   16875              :           return 10734; /* avx10_2_fmaddbf16_v16bf */
   16876              : 
   16877              :         case E_V8BFmode:
   16878              :           if (pattern927 (x2, 
   16879              : E_V8BFmode) != 0
   16880              :               || !
   16881              : #line 33221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16882              : (TARGET_AVX10_2))
   16883              :             return -1;
   16884              :           return 10736; /* avx10_2_fmaddbf16_v8bf */
   16885              : 
   16886              :         default:
   16887              :           return -1;
   16888              :         }
   16889              : 
   16890              :     case NEG:
   16891              :       x5 = XEXP (x4, 0);
   16892              :       operands[3] = x5;
   16893              :       switch (GET_MODE (operands[0]))
   16894              :         {
   16895              :         case E_V4SFmode:
   16896              :           if (!register_operand (operands[0], E_V4SFmode)
   16897              :               || GET_MODE (x2) != E_V4SFmode
   16898              :               || GET_MODE (x4) != E_V4SFmode)
   16899              :             return -1;
   16900              :           if (nonimmediate_operand (operands[1], E_V4SFmode)
   16901              :               && nonimmediate_operand (operands[2], E_V4SFmode)
   16902              :               && nonimmediate_operand (operands[3], E_V4SFmode)
   16903              :               && 
   16904              : #line 6417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16905              : (TARGET_FMA || TARGET_FMA4))
   16906              :             return 3941; /* *fma_fmsub_v4sf */
   16907              :           if (!bcst_vector_operand (operands[1], E_V4SFmode)
   16908              :               || !bcst_vector_operand (operands[2], E_V4SFmode)
   16909              :               || !bcst_vector_operand (operands[3], E_V4SFmode)
   16910              :               || !(
   16911              : #line 6449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16912              : (TARGET_AVX512F && 1 && 1) && 
   16913              : #line 6337 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16914              : (TARGET_AVX512VL)))
   16915              :             return -1;
   16916              :           return 3961; /* *fma_fmsub_v4sf */
   16917              : 
   16918              :         case E_V2DFmode:
   16919              :           if (!register_operand (operands[0], E_V2DFmode)
   16920              :               || GET_MODE (x2) != E_V2DFmode
   16921              :               || GET_MODE (x4) != E_V2DFmode)
   16922              :             return -1;
   16923              :           if (nonimmediate_operand (operands[1], E_V2DFmode)
   16924              :               && nonimmediate_operand (operands[2], E_V2DFmode)
   16925              :               && nonimmediate_operand (operands[3], E_V2DFmode)
   16926              :               && 
   16927              : #line 6417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16928              : (TARGET_FMA || TARGET_FMA4))
   16929              :             return 3942; /* *fma_fmsub_v2df */
   16930              :           if (!bcst_vector_operand (operands[1], E_V2DFmode)
   16931              :               || !bcst_vector_operand (operands[2], E_V2DFmode)
   16932              :               || !bcst_vector_operand (operands[3], E_V2DFmode)
   16933              :               || !(
   16934              : #line 6449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16935              : (TARGET_AVX512F && 1 && 1) && 
   16936              : #line 6338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16937              : (TARGET_AVX512VL)))
   16938              :             return -1;
   16939              :           return 3970; /* *fma_fmsub_v2df */
   16940              : 
   16941              :         case E_V8SFmode:
   16942              :           if (!register_operand (operands[0], E_V8SFmode)
   16943              :               || GET_MODE (x2) != E_V8SFmode
   16944              :               || GET_MODE (x4) != E_V8SFmode)
   16945              :             return -1;
   16946              :           if (nonimmediate_operand (operands[1], E_V8SFmode)
   16947              :               && nonimmediate_operand (operands[2], E_V8SFmode)
   16948              :               && nonimmediate_operand (operands[3], E_V8SFmode)
   16949              :               && 
   16950              : #line 6417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16951              : (TARGET_FMA || TARGET_FMA4))
   16952              :             return 3943; /* *fma_fmsub_v8sf */
   16953              :           if (!bcst_vector_operand (operands[1], E_V8SFmode)
   16954              :               || !bcst_vector_operand (operands[2], E_V8SFmode)
   16955              :               || !bcst_vector_operand (operands[3], E_V8SFmode)
   16956              :               || !(
   16957              : #line 6449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16958              : (TARGET_AVX512F && 1 && 1) && 
   16959              : #line 6337 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16960              : (TARGET_AVX512VL)))
   16961              :             return -1;
   16962              :           return 3959; /* *fma_fmsub_v8sf */
   16963              : 
   16964              :         case E_V4DFmode:
   16965              :           if (!register_operand (operands[0], E_V4DFmode)
   16966              :               || GET_MODE (x2) != E_V4DFmode
   16967              :               || GET_MODE (x4) != E_V4DFmode)
   16968              :             return -1;
   16969              :           if (nonimmediate_operand (operands[1], E_V4DFmode)
   16970              :               && nonimmediate_operand (operands[2], E_V4DFmode)
   16971              :               && nonimmediate_operand (operands[3], E_V4DFmode)
   16972              :               && 
   16973              : #line 6417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16974              : (TARGET_FMA || TARGET_FMA4))
   16975              :             return 3944; /* *fma_fmsub_v4df */
   16976              :           if (!bcst_vector_operand (operands[1], E_V4DFmode)
   16977              :               || !bcst_vector_operand (operands[2], E_V4DFmode)
   16978              :               || !bcst_vector_operand (operands[3], E_V4DFmode)
   16979              :               || !(
   16980              : #line 6449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16981              : (TARGET_AVX512F && 1 && 1) && 
   16982              : #line 6338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16983              : (TARGET_AVX512VL)))
   16984              :             return -1;
   16985              :           return 3968; /* *fma_fmsub_v4df */
   16986              : 
   16987              :         case E_V32HFmode:
   16988              :           if (pattern878 (x2, 
   16989              : E_V32HFmode) != 0
   16990              :               || !(
   16991              : #line 6449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16992              : (TARGET_AVX512F && 1 && 1) && 
   16993              : #line 6333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   16994              : (TARGET_AVX512FP16)))
   16995              :             return -1;
   16996              :           return 3945; /* *fma_fmsub_v32hf */
   16997              : 
   16998              :         case E_V16HFmode:
   16999              :           if (pattern878 (x2, 
   17000              : E_V16HFmode) != 0
   17001              :               || !(
   17002              : #line 6449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17003              : (TARGET_AVX512F && 1 && 1) && 
   17004              : #line 6334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17005              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   17006              :             return -1;
   17007              :           return 3949; /* *fma_fmsub_v16hf */
   17008              : 
   17009              :         case E_V8HFmode:
   17010              :           if (pattern878 (x2, 
   17011              : E_V8HFmode) != 0
   17012              :               || !(
   17013              : #line 6449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17014              : (TARGET_AVX512F && 1 && 1) && 
   17015              : #line 6335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17016              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   17017              :             return -1;
   17018              :           return 3951; /* *fma_fmsub_v8hf */
   17019              : 
   17020              :         case E_V16SFmode:
   17021              :           if (pattern878 (x2, 
   17022              : E_V16SFmode) != 0
   17023              :               || !
   17024              : #line 6449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17025              : (TARGET_AVX512F && 1 && 1))
   17026              :             return -1;
   17027              :           return 3955; /* *fma_fmsub_v16sf */
   17028              : 
   17029              :         case E_V8DFmode:
   17030              :           if (pattern878 (x2, 
   17031              : E_V8DFmode) != 0
   17032              :               || !
   17033              : #line 6449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17034              : (TARGET_AVX512F && 1 && 1))
   17035              :             return -1;
   17036              :           return 3964; /* *fma_fmsub_v8df */
   17037              : 
   17038              :         case E_V32BFmode:
   17039              :           if (pattern928 (x2, 
   17040              : E_V32BFmode) != 0
   17041              :               || !
   17042              : #line 33349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17043              : (TARGET_AVX10_2))
   17044              :             return -1;
   17045              :           return 10756; /* avx10_2_fmsubbf16_v32bf */
   17046              : 
   17047              :         case E_V16BFmode:
   17048              :           if (pattern928 (x2, 
   17049              : E_V16BFmode) != 0
   17050              :               || !
   17051              : #line 33349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17052              : (TARGET_AVX10_2))
   17053              :             return -1;
   17054              :           return 10758; /* avx10_2_fmsubbf16_v16bf */
   17055              : 
   17056              :         case E_V8BFmode:
   17057              :           if (pattern928 (x2, 
   17058              : E_V8BFmode) != 0
   17059              :               || !
   17060              : #line 33349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17061              : (TARGET_AVX10_2))
   17062              :             return -1;
   17063              :           return 10760; /* avx10_2_fmsubbf16_v8bf */
   17064              : 
   17065              :         default:
   17066              :           return -1;
   17067              :         }
   17068              : 
   17069              :     default:
   17070              :       return -1;
   17071              :     }
   17072              : }
   17073              : 
   17074              :  int
   17075              : recog_287 (rtx x1 ATTRIBUTE_UNUSED,
   17076              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   17077              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   17078              : {
   17079              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   17080              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   17081              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   17082              :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
   17083              :   rtx x26, x27, x28, x29, x30, x31, x32, x33;
   17084              :   rtx x34, x35, x36, x37, x38, x39, x40, x41;
   17085              :   rtx x42, x43, x44, x45, x46, x47, x48, x49;
   17086              :   rtx x50, x51, x52, x53, x54, x55, x56, x57;
   17087              :   rtx x58, x59, x60, x61, x62, x63, x64, x65;
   17088              :   rtx x66, x67;
   17089              :   int res ATTRIBUTE_UNUSED;
   17090              :   x2 = XEXP (x1, 1);
   17091              :   x3 = XEXP (x2, 1);
   17092              :   if (pattern685 (x3) != 0)
   17093              :     return -1;
   17094              :   x4 = XVECEXP (x3, 0, 32);
   17095              :   if (GET_CODE (x4) != CONST_INT)
   17096              :     return -1;
   17097              :   x5 = XVECEXP (x3, 0, 33);
   17098              :   if (GET_CODE (x5) != CONST_INT)
   17099              :     return -1;
   17100              :   x6 = XVECEXP (x3, 0, 34);
   17101              :   if (GET_CODE (x6) != CONST_INT)
   17102              :     return -1;
   17103              :   x7 = XVECEXP (x3, 0, 35);
   17104              :   if (GET_CODE (x7) != CONST_INT)
   17105              :     return -1;
   17106              :   x8 = XVECEXP (x3, 0, 36);
   17107              :   if (GET_CODE (x8) != CONST_INT)
   17108              :     return -1;
   17109              :   x9 = XVECEXP (x3, 0, 37);
   17110              :   if (GET_CODE (x9) != CONST_INT)
   17111              :     return -1;
   17112              :   x10 = XVECEXP (x3, 0, 38);
   17113              :   if (GET_CODE (x10) != CONST_INT)
   17114              :     return -1;
   17115              :   x11 = XVECEXP (x3, 0, 39);
   17116              :   if (GET_CODE (x11) != CONST_INT)
   17117              :     return -1;
   17118              :   x12 = XVECEXP (x3, 0, 40);
   17119              :   if (GET_CODE (x12) != CONST_INT)
   17120              :     return -1;
   17121              :   x13 = XVECEXP (x3, 0, 41);
   17122              :   if (GET_CODE (x13) != CONST_INT)
   17123              :     return -1;
   17124              :   x14 = XVECEXP (x3, 0, 42);
   17125              :   if (GET_CODE (x14) != CONST_INT)
   17126              :     return -1;
   17127              :   x15 = XVECEXP (x3, 0, 43);
   17128              :   if (GET_CODE (x15) != CONST_INT)
   17129              :     return -1;
   17130              :   x16 = XVECEXP (x3, 0, 44);
   17131              :   if (GET_CODE (x16) != CONST_INT)
   17132              :     return -1;
   17133              :   x17 = XVECEXP (x3, 0, 45);
   17134              :   if (GET_CODE (x17) != CONST_INT)
   17135              :     return -1;
   17136              :   x18 = XVECEXP (x3, 0, 46);
   17137              :   if (GET_CODE (x18) != CONST_INT)
   17138              :     return -1;
   17139              :   x19 = XVECEXP (x3, 0, 47);
   17140              :   if (GET_CODE (x19) != CONST_INT)
   17141              :     return -1;
   17142              :   x20 = XVECEXP (x3, 0, 48);
   17143              :   if (GET_CODE (x20) != CONST_INT)
   17144              :     return -1;
   17145              :   x21 = XVECEXP (x3, 0, 49);
   17146              :   if (GET_CODE (x21) != CONST_INT)
   17147              :     return -1;
   17148              :   x22 = XVECEXP (x3, 0, 50);
   17149              :   if (GET_CODE (x22) != CONST_INT)
   17150              :     return -1;
   17151              :   x23 = XVECEXP (x3, 0, 51);
   17152              :   if (GET_CODE (x23) != CONST_INT)
   17153              :     return -1;
   17154              :   x24 = XVECEXP (x3, 0, 52);
   17155              :   if (GET_CODE (x24) != CONST_INT)
   17156              :     return -1;
   17157              :   x25 = XVECEXP (x3, 0, 53);
   17158              :   if (GET_CODE (x25) != CONST_INT)
   17159              :     return -1;
   17160              :   x26 = XVECEXP (x3, 0, 54);
   17161              :   if (GET_CODE (x26) != CONST_INT)
   17162              :     return -1;
   17163              :   x27 = XVECEXP (x3, 0, 55);
   17164              :   if (GET_CODE (x27) != CONST_INT)
   17165              :     return -1;
   17166              :   x28 = XVECEXP (x3, 0, 56);
   17167              :   if (GET_CODE (x28) != CONST_INT)
   17168              :     return -1;
   17169              :   x29 = XVECEXP (x3, 0, 57);
   17170              :   if (GET_CODE (x29) != CONST_INT)
   17171              :     return -1;
   17172              :   x30 = XVECEXP (x3, 0, 58);
   17173              :   if (GET_CODE (x30) != CONST_INT)
   17174              :     return -1;
   17175              :   x31 = XVECEXP (x3, 0, 59);
   17176              :   if (GET_CODE (x31) != CONST_INT)
   17177              :     return -1;
   17178              :   x32 = XVECEXP (x3, 0, 60);
   17179              :   if (GET_CODE (x32) != CONST_INT)
   17180              :     return -1;
   17181              :   x33 = XVECEXP (x3, 0, 61);
   17182              :   if (GET_CODE (x33) != CONST_INT)
   17183              :     return -1;
   17184              :   x34 = XVECEXP (x3, 0, 62);
   17185              :   if (GET_CODE (x34) != CONST_INT)
   17186              :     return -1;
   17187              :   x35 = XVECEXP (x3, 0, 63);
   17188              :   if (GET_CODE (x35) != CONST_INT
   17189              :       || pattern1636 (x2, 
   17190              : E_V64QImode, 
   17191              : E_V128QImode) != 0)
   17192              :     return -1;
   17193              :   x36 = XVECEXP (x3, 0, 0);
   17194              :   switch (XWINT (x36, 0))
   17195              :     {
   17196              :     case 8L:
   17197              :       x37 = XVECEXP (x3, 0, 1);
   17198              :       if (XWINT (x37, 0) != 72L)
   17199              :         return -1;
   17200              :       x38 = XVECEXP (x3, 0, 2);
   17201              :       if (XWINT (x38, 0) != 9L)
   17202              :         return -1;
   17203              :       x39 = XVECEXP (x3, 0, 3);
   17204              :       if (XWINT (x39, 0) != 73L)
   17205              :         return -1;
   17206              :       x40 = XVECEXP (x3, 0, 4);
   17207              :       if (XWINT (x40, 0) != 10L)
   17208              :         return -1;
   17209              :       x41 = XVECEXP (x3, 0, 5);
   17210              :       if (XWINT (x41, 0) != 74L)
   17211              :         return -1;
   17212              :       x42 = XVECEXP (x3, 0, 6);
   17213              :       if (XWINT (x42, 0) != 11L)
   17214              :         return -1;
   17215              :       x43 = XVECEXP (x3, 0, 7);
   17216              :       if (XWINT (x43, 0) != 75L)
   17217              :         return -1;
   17218              :       x44 = XVECEXP (x3, 0, 8);
   17219              :       if (XWINT (x44, 0) != 12L)
   17220              :         return -1;
   17221              :       x45 = XVECEXP (x3, 0, 9);
   17222              :       if (XWINT (x45, 0) != 76L)
   17223              :         return -1;
   17224              :       x46 = XVECEXP (x3, 0, 10);
   17225              :       if (XWINT (x46, 0) != 13L)
   17226              :         return -1;
   17227              :       x47 = XVECEXP (x3, 0, 11);
   17228              :       if (XWINT (x47, 0) != 77L)
   17229              :         return -1;
   17230              :       x48 = XVECEXP (x3, 0, 12);
   17231              :       if (XWINT (x48, 0) != 14L)
   17232              :         return -1;
   17233              :       x49 = XVECEXP (x3, 0, 13);
   17234              :       if (XWINT (x49, 0) != 78L)
   17235              :         return -1;
   17236              :       x50 = XVECEXP (x3, 0, 14);
   17237              :       if (XWINT (x50, 0) != 15L)
   17238              :         return -1;
   17239              :       x51 = XVECEXP (x3, 0, 15);
   17240              :       if (XWINT (x51, 0) != 79L)
   17241              :         return -1;
   17242              :       x52 = XVECEXP (x3, 0, 16);
   17243              :       if (XWINT (x52, 0) != 24L)
   17244              :         return -1;
   17245              :       x53 = XVECEXP (x3, 0, 17);
   17246              :       if (XWINT (x53, 0) != 88L)
   17247              :         return -1;
   17248              :       x54 = XVECEXP (x3, 0, 18);
   17249              :       if (XWINT (x54, 0) != 25L)
   17250              :         return -1;
   17251              :       x55 = XVECEXP (x3, 0, 19);
   17252              :       if (XWINT (x55, 0) != 89L)
   17253              :         return -1;
   17254              :       x56 = XVECEXP (x3, 0, 20);
   17255              :       if (XWINT (x56, 0) != 26L)
   17256              :         return -1;
   17257              :       x57 = XVECEXP (x3, 0, 21);
   17258              :       if (XWINT (x57, 0) != 90L)
   17259              :         return -1;
   17260              :       x58 = XVECEXP (x3, 0, 22);
   17261              :       if (XWINT (x58, 0) != 27L)
   17262              :         return -1;
   17263              :       x59 = XVECEXP (x3, 0, 23);
   17264              :       if (XWINT (x59, 0) != 91L)
   17265              :         return -1;
   17266              :       x60 = XVECEXP (x3, 0, 24);
   17267              :       if (XWINT (x60, 0) != 28L)
   17268              :         return -1;
   17269              :       x61 = XVECEXP (x3, 0, 25);
   17270              :       if (XWINT (x61, 0) != 92L)
   17271              :         return -1;
   17272              :       x62 = XVECEXP (x3, 0, 26);
   17273              :       if (XWINT (x62, 0) != 29L)
   17274              :         return -1;
   17275              :       x63 = XVECEXP (x3, 0, 27);
   17276              :       if (XWINT (x63, 0) != 93L)
   17277              :         return -1;
   17278              :       x64 = XVECEXP (x3, 0, 28);
   17279              :       if (XWINT (x64, 0) != 30L)
   17280              :         return -1;
   17281              :       x65 = XVECEXP (x3, 0, 29);
   17282              :       if (XWINT (x65, 0) != 94L)
   17283              :         return -1;
   17284              :       x66 = XVECEXP (x3, 0, 30);
   17285              :       if (XWINT (x66, 0) != 31L)
   17286              :         return -1;
   17287              :       x67 = XVECEXP (x3, 0, 31);
   17288              :       if (XWINT (x67, 0) != 95L
   17289              :           || XWINT (x4, 0) != 40L
   17290              :           || XWINT (x5, 0) != 104L
   17291              :           || XWINT (x6, 0) != 41L
   17292              :           || XWINT (x7, 0) != 105L
   17293              :           || XWINT (x8, 0) != 42L
   17294              :           || XWINT (x9, 0) != 106L
   17295              :           || XWINT (x10, 0) != 43L
   17296              :           || XWINT (x11, 0) != 107L
   17297              :           || XWINT (x12, 0) != 44L
   17298              :           || XWINT (x13, 0) != 108L
   17299              :           || XWINT (x14, 0) != 45L
   17300              :           || XWINT (x15, 0) != 109L
   17301              :           || XWINT (x16, 0) != 46L
   17302              :           || XWINT (x17, 0) != 110L
   17303              :           || XWINT (x18, 0) != 47L
   17304              :           || XWINT (x19, 0) != 111L
   17305              :           || XWINT (x20, 0) != 56L
   17306              :           || XWINT (x21, 0) != 120L
   17307              :           || XWINT (x22, 0) != 57L
   17308              :           || XWINT (x23, 0) != 121L
   17309              :           || XWINT (x24, 0) != 58L
   17310              :           || XWINT (x25, 0) != 122L
   17311              :           || XWINT (x26, 0) != 59L
   17312              :           || XWINT (x27, 0) != 123L
   17313              :           || XWINT (x28, 0) != 60L
   17314              :           || XWINT (x29, 0) != 124L
   17315              :           || XWINT (x30, 0) != 61L
   17316              :           || XWINT (x31, 0) != 125L
   17317              :           || XWINT (x32, 0) != 62L
   17318              :           || XWINT (x33, 0) != 126L
   17319              :           || XWINT (x34, 0) != 63L
   17320              :           || XWINT (x35, 0) != 127L
   17321              :           || !
   17322              : #line 19891 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17323              : (TARGET_AVX512BW))
   17324              :         return -1;
   17325              :       return 8394; /* avx512bw_interleave_highv64qi */
   17326              : 
   17327              :     case 0L:
   17328              :       x37 = XVECEXP (x3, 0, 1);
   17329              :       if (XWINT (x37, 0) != 64L)
   17330              :         return -1;
   17331              :       x38 = XVECEXP (x3, 0, 2);
   17332              :       if (XWINT (x38, 0) != 1L)
   17333              :         return -1;
   17334              :       x39 = XVECEXP (x3, 0, 3);
   17335              :       if (XWINT (x39, 0) != 65L)
   17336              :         return -1;
   17337              :       x40 = XVECEXP (x3, 0, 4);
   17338              :       if (XWINT (x40, 0) != 2L)
   17339              :         return -1;
   17340              :       x41 = XVECEXP (x3, 0, 5);
   17341              :       if (XWINT (x41, 0) != 66L)
   17342              :         return -1;
   17343              :       x42 = XVECEXP (x3, 0, 6);
   17344              :       if (XWINT (x42, 0) != 3L)
   17345              :         return -1;
   17346              :       x43 = XVECEXP (x3, 0, 7);
   17347              :       if (XWINT (x43, 0) != 67L)
   17348              :         return -1;
   17349              :       x44 = XVECEXP (x3, 0, 8);
   17350              :       if (XWINT (x44, 0) != 4L)
   17351              :         return -1;
   17352              :       x45 = XVECEXP (x3, 0, 9);
   17353              :       if (XWINT (x45, 0) != 68L)
   17354              :         return -1;
   17355              :       x46 = XVECEXP (x3, 0, 10);
   17356              :       if (XWINT (x46, 0) != 5L)
   17357              :         return -1;
   17358              :       x47 = XVECEXP (x3, 0, 11);
   17359              :       if (XWINT (x47, 0) != 69L)
   17360              :         return -1;
   17361              :       x48 = XVECEXP (x3, 0, 12);
   17362              :       if (XWINT (x48, 0) != 6L)
   17363              :         return -1;
   17364              :       x49 = XVECEXP (x3, 0, 13);
   17365              :       if (XWINT (x49, 0) != 70L)
   17366              :         return -1;
   17367              :       x50 = XVECEXP (x3, 0, 14);
   17368              :       if (XWINT (x50, 0) != 7L)
   17369              :         return -1;
   17370              :       x51 = XVECEXP (x3, 0, 15);
   17371              :       if (XWINT (x51, 0) != 71L)
   17372              :         return -1;
   17373              :       x52 = XVECEXP (x3, 0, 16);
   17374              :       if (XWINT (x52, 0) != 16L)
   17375              :         return -1;
   17376              :       x53 = XVECEXP (x3, 0, 17);
   17377              :       if (XWINT (x53, 0) != 80L)
   17378              :         return -1;
   17379              :       x54 = XVECEXP (x3, 0, 18);
   17380              :       if (XWINT (x54, 0) != 17L)
   17381              :         return -1;
   17382              :       x55 = XVECEXP (x3, 0, 19);
   17383              :       if (XWINT (x55, 0) != 81L)
   17384              :         return -1;
   17385              :       x56 = XVECEXP (x3, 0, 20);
   17386              :       if (XWINT (x56, 0) != 18L)
   17387              :         return -1;
   17388              :       x57 = XVECEXP (x3, 0, 21);
   17389              :       if (XWINT (x57, 0) != 82L)
   17390              :         return -1;
   17391              :       x58 = XVECEXP (x3, 0, 22);
   17392              :       if (XWINT (x58, 0) != 19L)
   17393              :         return -1;
   17394              :       x59 = XVECEXP (x3, 0, 23);
   17395              :       if (XWINT (x59, 0) != 83L)
   17396              :         return -1;
   17397              :       x60 = XVECEXP (x3, 0, 24);
   17398              :       if (XWINT (x60, 0) != 20L)
   17399              :         return -1;
   17400              :       x61 = XVECEXP (x3, 0, 25);
   17401              :       if (XWINT (x61, 0) != 84L)
   17402              :         return -1;
   17403              :       x62 = XVECEXP (x3, 0, 26);
   17404              :       if (XWINT (x62, 0) != 21L)
   17405              :         return -1;
   17406              :       x63 = XVECEXP (x3, 0, 27);
   17407              :       if (XWINT (x63, 0) != 85L)
   17408              :         return -1;
   17409              :       x64 = XVECEXP (x3, 0, 28);
   17410              :       if (XWINT (x64, 0) != 22L)
   17411              :         return -1;
   17412              :       x65 = XVECEXP (x3, 0, 29);
   17413              :       if (XWINT (x65, 0) != 86L)
   17414              :         return -1;
   17415              :       x66 = XVECEXP (x3, 0, 30);
   17416              :       if (XWINT (x66, 0) != 23L)
   17417              :         return -1;
   17418              :       x67 = XVECEXP (x3, 0, 31);
   17419              :       if (XWINT (x67, 0) != 87L
   17420              :           || XWINT (x4, 0) != 32L
   17421              :           || XWINT (x5, 0) != 96L
   17422              :           || XWINT (x6, 0) != 33L
   17423              :           || XWINT (x7, 0) != 97L
   17424              :           || XWINT (x8, 0) != 34L
   17425              :           || XWINT (x9, 0) != 98L
   17426              :           || XWINT (x10, 0) != 35L
   17427              :           || XWINT (x11, 0) != 99L
   17428              :           || XWINT (x12, 0) != 36L
   17429              :           || XWINT (x13, 0) != 100L
   17430              :           || XWINT (x14, 0) != 37L
   17431              :           || XWINT (x15, 0) != 101L
   17432              :           || XWINT (x16, 0) != 38L
   17433              :           || XWINT (x17, 0) != 102L
   17434              :           || XWINT (x18, 0) != 39L
   17435              :           || XWINT (x19, 0) != 103L
   17436              :           || XWINT (x20, 0) != 48L
   17437              :           || XWINT (x21, 0) != 112L
   17438              :           || XWINT (x22, 0) != 49L
   17439              :           || XWINT (x23, 0) != 113L
   17440              :           || XWINT (x24, 0) != 50L
   17441              :           || XWINT (x25, 0) != 114L
   17442              :           || XWINT (x26, 0) != 51L
   17443              :           || XWINT (x27, 0) != 115L
   17444              :           || XWINT (x28, 0) != 52L
   17445              :           || XWINT (x29, 0) != 116L
   17446              :           || XWINT (x30, 0) != 53L
   17447              :           || XWINT (x31, 0) != 117L
   17448              :           || XWINT (x32, 0) != 54L
   17449              :           || XWINT (x33, 0) != 118L
   17450              :           || XWINT (x34, 0) != 55L
   17451              :           || XWINT (x35, 0) != 119L
   17452              :           || !
   17453              : #line 19987 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17454              : (TARGET_AVX512BW))
   17455              :         return -1;
   17456              :       return 8400; /* avx512bw_interleave_lowv64qi */
   17457              : 
   17458              :     default:
   17459              :       return -1;
   17460              :     }
   17461              : }
   17462              : 
   17463              :  int
   17464              : recog_300 (rtx x1 ATTRIBUTE_UNUSED,
   17465              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   17466              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   17467              : {
   17468              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   17469              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   17470              :   rtx x10, x11;
   17471              :   int res ATTRIBUTE_UNUSED;
   17472              :   x2 = XEXP (x1, 1);
   17473              :   x3 = XEXP (x2, 1);
   17474              :   x4 = XVECEXP (x3, 0, 0);
   17475              :   if (GET_CODE (x4) != CONST_INT)
   17476              :     return -1;
   17477              :   x5 = XVECEXP (x3, 0, 1);
   17478              :   if (GET_CODE (x5) == CONST_INT)
   17479              :     {
   17480              :       res = recog_297 (x1, insn, pnum_clobbers);
   17481              :       if (res >= 0)
   17482              :         return res;
   17483              :     }
   17484              :   operands[2] = x4;
   17485              :   res = recog_299 (x1, insn, pnum_clobbers);
   17486              :   if (res >= 0)
   17487              :     return res;
   17488              :   if (XWINT (x4, 0) != 0L
   17489              :       || x5 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   17490              :     return -1;
   17491              :   x6 = XVECEXP (x3, 0, 2);
   17492              :   if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 2])
   17493              :     return -1;
   17494              :   x7 = XVECEXP (x3, 0, 3);
   17495              :   if (x7 != const_int_rtx[MAX_SAVED_CONST_INT + 3]
   17496              :       || pattern850 (x3, 
   17497              : 11, 
   17498              : 10, 
   17499              : 9, 
   17500              : 8) != 0
   17501              :       || !register_operand (operands[0], E_V16HImode)
   17502              :       || GET_MODE (x2) != E_V16HImode
   17503              :       || !nonimmediate_operand (operands[1], E_V16HImode)
   17504              :       || pattern1495 (x3) != 0)
   17505              :     return -1;
   17506              :   x8 = XVECEXP (x3, 0, 12);
   17507              :   operands[6] = x8;
   17508              :   if (!const_12_to_15_operand (operands[6], E_VOIDmode))
   17509              :     return -1;
   17510              :   x9 = XVECEXP (x3, 0, 13);
   17511              :   operands[7] = x9;
   17512              :   if (!const_12_to_15_operand (operands[7], E_VOIDmode))
   17513              :     return -1;
   17514              :   x10 = XVECEXP (x3, 0, 14);
   17515              :   operands[8] = x10;
   17516              :   if (!const_12_to_15_operand (operands[8], E_VOIDmode))
   17517              :     return -1;
   17518              :   x11 = XVECEXP (x3, 0, 15);
   17519              :   operands[9] = x11;
   17520              :   if (!const_12_to_15_operand (operands[9], E_VOIDmode)
   17521              :       || !
   17522              : #line 21419 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17523              : (TARGET_AVX2
   17524              :    && 1 && 1
   17525              :    && INTVAL (operands[2]) + 8 == INTVAL (operands[6])
   17526              :    && INTVAL (operands[3]) + 8 == INTVAL (operands[7])
   17527              :    && INTVAL (operands[4]) + 8 == INTVAL (operands[8])
   17528              :    && INTVAL (operands[5]) + 8 == INTVAL (operands[9])))
   17529              :     return -1;
   17530              :   return 8526; /* avx2_pshufhw_1 */
   17531              : }
   17532              : 
   17533              :  int
   17534              : recog_306 (rtx x1 ATTRIBUTE_UNUSED,
   17535              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   17536              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   17537              : {
   17538              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   17539              :   rtx x2, x3, x4;
   17540              :   int res ATTRIBUTE_UNUSED;
   17541              :   x2 = XEXP (x1, 1);
   17542              :   x3 = XEXP (x2, 0);
   17543              :   x4 = XEXP (x3, 0);
   17544              :   switch (GET_CODE (x4))
   17545              :     {
   17546              :     case REG:
   17547              :     case SUBREG:
   17548              :     case MEM:
   17549              :     case NOT:
   17550              :       switch (pattern537 (x2))
   17551              :         {
   17552              :         case 0:
   17553              :           if (!(
   17554              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17555              : ((64 == 64 || TARGET_AVX512VL
   17556              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17557              :    && ix86_pre_reload_split ()
   17558              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17559              :                     STRIP_UNARY (operands[4]))
   17560              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17561              :                        STRIP_UNARY (operands[4]))
   17562              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17563              :                        STRIP_UNARY (operands[3]))
   17564              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17565              :                        STRIP_UNARY (operands[3])))) && 
   17566              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17567              : (TARGET_AVX512F)))
   17568              :             return -1;
   17569              :           return 5562; /* *avx512bw_vpternlogv64qi_1 */
   17570              : 
   17571              :         case 1:
   17572              :           if (!(
   17573              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17574              : ((32 == 64 || TARGET_AVX512VL
   17575              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17576              :    && ix86_pre_reload_split ()
   17577              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17578              :                     STRIP_UNARY (operands[4]))
   17579              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17580              :                        STRIP_UNARY (operands[4]))
   17581              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17582              :                        STRIP_UNARY (operands[3]))
   17583              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17584              :                        STRIP_UNARY (operands[3])))) && 
   17585              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17586              : (TARGET_AVX)))
   17587              :             return -1;
   17588              :           return 5589; /* *avx512vl_vpternlogv32qi_1 */
   17589              : 
   17590              :         case 2:
   17591              :           if (!
   17592              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17593              : ((16 == 64 || TARGET_AVX512VL
   17594              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17595              :    && ix86_pre_reload_split ()
   17596              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17597              :                     STRIP_UNARY (operands[4]))
   17598              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17599              :                        STRIP_UNARY (operands[4]))
   17600              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17601              :                        STRIP_UNARY (operands[3]))
   17602              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17603              :                        STRIP_UNARY (operands[3])))))
   17604              :             return -1;
   17605              :           return 5616; /* *avx512vl_vpternlogv16qi_1 */
   17606              : 
   17607              :         case 3:
   17608              :           if (!(
   17609              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17610              : ((64 == 64 || TARGET_AVX512VL
   17611              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17612              :    && ix86_pre_reload_split ()
   17613              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17614              :                     STRIP_UNARY (operands[4]))
   17615              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17616              :                        STRIP_UNARY (operands[4]))
   17617              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17618              :                        STRIP_UNARY (operands[3]))
   17619              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17620              :                        STRIP_UNARY (operands[3])))) && 
   17621              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17622              : (TARGET_AVX512F)))
   17623              :             return -1;
   17624              :           return 5643; /* *avx512bw_vpternlogv32hi_1 */
   17625              : 
   17626              :         case 4:
   17627              :           if (!(
   17628              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17629              : ((32 == 64 || TARGET_AVX512VL
   17630              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17631              :    && ix86_pre_reload_split ()
   17632              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17633              :                     STRIP_UNARY (operands[4]))
   17634              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17635              :                        STRIP_UNARY (operands[4]))
   17636              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17637              :                        STRIP_UNARY (operands[3]))
   17638              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17639              :                        STRIP_UNARY (operands[3])))) && 
   17640              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17641              : (TARGET_AVX)))
   17642              :             return -1;
   17643              :           return 5670; /* *avx512vl_vpternlogv16hi_1 */
   17644              : 
   17645              :         case 5:
   17646              :           if (!
   17647              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17648              : ((16 == 64 || TARGET_AVX512VL
   17649              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17650              :    && ix86_pre_reload_split ()
   17651              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17652              :                     STRIP_UNARY (operands[4]))
   17653              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17654              :                        STRIP_UNARY (operands[4]))
   17655              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17656              :                        STRIP_UNARY (operands[3]))
   17657              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17658              :                        STRIP_UNARY (operands[3])))))
   17659              :             return -1;
   17660              :           return 5697; /* *avx512vl_vpternlogv8hi_1 */
   17661              : 
   17662              :         case 6:
   17663              :           if (!(
   17664              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17665              : ((64 == 64 || TARGET_AVX512VL
   17666              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17667              :    && ix86_pre_reload_split ()
   17668              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17669              :                     STRIP_UNARY (operands[4]))
   17670              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17671              :                        STRIP_UNARY (operands[4]))
   17672              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17673              :                        STRIP_UNARY (operands[3]))
   17674              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17675              :                        STRIP_UNARY (operands[3])))) && 
   17676              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17677              : (TARGET_AVX512F)))
   17678              :             return -1;
   17679              :           return 5724; /* *avx512f_vpternlogv16si_1 */
   17680              : 
   17681              :         case 7:
   17682              :           if (!(
   17683              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17684              : ((32 == 64 || TARGET_AVX512VL
   17685              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17686              :    && ix86_pre_reload_split ()
   17687              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17688              :                     STRIP_UNARY (operands[4]))
   17689              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17690              :                        STRIP_UNARY (operands[4]))
   17691              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17692              :                        STRIP_UNARY (operands[3]))
   17693              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17694              :                        STRIP_UNARY (operands[3])))) && 
   17695              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17696              : (TARGET_AVX)))
   17697              :             return -1;
   17698              :           return 5751; /* *avx512vl_vpternlogv8si_1 */
   17699              : 
   17700              :         case 8:
   17701              :           if (!
   17702              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17703              : ((16 == 64 || TARGET_AVX512VL
   17704              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17705              :    && ix86_pre_reload_split ()
   17706              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17707              :                     STRIP_UNARY (operands[4]))
   17708              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17709              :                        STRIP_UNARY (operands[4]))
   17710              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17711              :                        STRIP_UNARY (operands[3]))
   17712              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17713              :                        STRIP_UNARY (operands[3])))))
   17714              :             return -1;
   17715              :           return 5778; /* *avx512vl_vpternlogv4si_1 */
   17716              : 
   17717              :         case 9:
   17718              :           if (!(
   17719              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17720              : ((64 == 64 || TARGET_AVX512VL
   17721              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17722              :    && ix86_pre_reload_split ()
   17723              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17724              :                     STRIP_UNARY (operands[4]))
   17725              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17726              :                        STRIP_UNARY (operands[4]))
   17727              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17728              :                        STRIP_UNARY (operands[3]))
   17729              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17730              :                        STRIP_UNARY (operands[3])))) && 
   17731              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17732              : (TARGET_AVX512F)))
   17733              :             return -1;
   17734              :           return 5805; /* *avx512f_vpternlogv8di_1 */
   17735              : 
   17736              :         case 10:
   17737              :           if (!(
   17738              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17739              : ((32 == 64 || TARGET_AVX512VL
   17740              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17741              :    && ix86_pre_reload_split ()
   17742              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17743              :                     STRIP_UNARY (operands[4]))
   17744              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17745              :                        STRIP_UNARY (operands[4]))
   17746              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17747              :                        STRIP_UNARY (operands[3]))
   17748              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17749              :                        STRIP_UNARY (operands[3])))) && 
   17750              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17751              : (TARGET_AVX)))
   17752              :             return -1;
   17753              :           return 5832; /* *avx512vl_vpternlogv4di_1 */
   17754              : 
   17755              :         case 11:
   17756              :           if (!
   17757              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17758              : ((16 == 64 || TARGET_AVX512VL
   17759              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17760              :    && ix86_pre_reload_split ()
   17761              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17762              :                     STRIP_UNARY (operands[4]))
   17763              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17764              :                        STRIP_UNARY (operands[4]))
   17765              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17766              :                        STRIP_UNARY (operands[3]))
   17767              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17768              :                        STRIP_UNARY (operands[3])))))
   17769              :             return -1;
   17770              :           return 5859; /* *avx512vl_vpternlogv2di_1 */
   17771              : 
   17772              :         case 12:
   17773              :           if (!(
   17774              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17775              : ((64 == 64 || TARGET_AVX512VL
   17776              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17777              :    && ix86_pre_reload_split ()
   17778              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17779              :                     STRIP_UNARY (operands[4]))
   17780              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17781              :                        STRIP_UNARY (operands[4]))
   17782              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17783              :                        STRIP_UNARY (operands[3]))
   17784              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17785              :                        STRIP_UNARY (operands[3])))) && 
   17786              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17787              : (TARGET_AVX512F)))
   17788              :             return -1;
   17789              :           return 5565; /* *avx512bw_vpternlogv64qi_1 */
   17790              : 
   17791              :         case 13:
   17792              :           if (!(
   17793              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17794              : ((32 == 64 || TARGET_AVX512VL
   17795              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17796              :    && ix86_pre_reload_split ()
   17797              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17798              :                     STRIP_UNARY (operands[4]))
   17799              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17800              :                        STRIP_UNARY (operands[4]))
   17801              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17802              :                        STRIP_UNARY (operands[3]))
   17803              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17804              :                        STRIP_UNARY (operands[3])))) && 
   17805              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17806              : (TARGET_AVX)))
   17807              :             return -1;
   17808              :           return 5592; /* *avx512vl_vpternlogv32qi_1 */
   17809              : 
   17810              :         case 14:
   17811              :           if (!
   17812              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17813              : ((16 == 64 || TARGET_AVX512VL
   17814              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17815              :    && ix86_pre_reload_split ()
   17816              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17817              :                     STRIP_UNARY (operands[4]))
   17818              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17819              :                        STRIP_UNARY (operands[4]))
   17820              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17821              :                        STRIP_UNARY (operands[3]))
   17822              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17823              :                        STRIP_UNARY (operands[3])))))
   17824              :             return -1;
   17825              :           return 5619; /* *avx512vl_vpternlogv16qi_1 */
   17826              : 
   17827              :         case 15:
   17828              :           if (!(
   17829              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17830              : ((64 == 64 || TARGET_AVX512VL
   17831              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17832              :    && ix86_pre_reload_split ()
   17833              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17834              :                     STRIP_UNARY (operands[4]))
   17835              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17836              :                        STRIP_UNARY (operands[4]))
   17837              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17838              :                        STRIP_UNARY (operands[3]))
   17839              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17840              :                        STRIP_UNARY (operands[3])))) && 
   17841              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17842              : (TARGET_AVX512F)))
   17843              :             return -1;
   17844              :           return 5646; /* *avx512bw_vpternlogv32hi_1 */
   17845              : 
   17846              :         case 16:
   17847              :           if (!(
   17848              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17849              : ((32 == 64 || TARGET_AVX512VL
   17850              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17851              :    && ix86_pre_reload_split ()
   17852              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17853              :                     STRIP_UNARY (operands[4]))
   17854              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17855              :                        STRIP_UNARY (operands[4]))
   17856              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17857              :                        STRIP_UNARY (operands[3]))
   17858              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17859              :                        STRIP_UNARY (operands[3])))) && 
   17860              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17861              : (TARGET_AVX)))
   17862              :             return -1;
   17863              :           return 5673; /* *avx512vl_vpternlogv16hi_1 */
   17864              : 
   17865              :         case 17:
   17866              :           if (!
   17867              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17868              : ((16 == 64 || TARGET_AVX512VL
   17869              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17870              :    && ix86_pre_reload_split ()
   17871              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17872              :                     STRIP_UNARY (operands[4]))
   17873              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17874              :                        STRIP_UNARY (operands[4]))
   17875              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17876              :                        STRIP_UNARY (operands[3]))
   17877              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17878              :                        STRIP_UNARY (operands[3])))))
   17879              :             return -1;
   17880              :           return 5700; /* *avx512vl_vpternlogv8hi_1 */
   17881              : 
   17882              :         case 18:
   17883              :           if (!(
   17884              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17885              : ((64 == 64 || TARGET_AVX512VL
   17886              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17887              :    && ix86_pre_reload_split ()
   17888              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17889              :                     STRIP_UNARY (operands[4]))
   17890              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17891              :                        STRIP_UNARY (operands[4]))
   17892              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17893              :                        STRIP_UNARY (operands[3]))
   17894              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17895              :                        STRIP_UNARY (operands[3])))) && 
   17896              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17897              : (TARGET_AVX512F)))
   17898              :             return -1;
   17899              :           return 5727; /* *avx512f_vpternlogv16si_1 */
   17900              : 
   17901              :         case 19:
   17902              :           if (!(
   17903              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17904              : ((32 == 64 || TARGET_AVX512VL
   17905              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17906              :    && ix86_pre_reload_split ()
   17907              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17908              :                     STRIP_UNARY (operands[4]))
   17909              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17910              :                        STRIP_UNARY (operands[4]))
   17911              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17912              :                        STRIP_UNARY (operands[3]))
   17913              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17914              :                        STRIP_UNARY (operands[3])))) && 
   17915              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17916              : (TARGET_AVX)))
   17917              :             return -1;
   17918              :           return 5754; /* *avx512vl_vpternlogv8si_1 */
   17919              : 
   17920              :         case 20:
   17921              :           if (!
   17922              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17923              : ((16 == 64 || TARGET_AVX512VL
   17924              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17925              :    && ix86_pre_reload_split ()
   17926              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17927              :                     STRIP_UNARY (operands[4]))
   17928              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17929              :                        STRIP_UNARY (operands[4]))
   17930              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17931              :                        STRIP_UNARY (operands[3]))
   17932              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17933              :                        STRIP_UNARY (operands[3])))))
   17934              :             return -1;
   17935              :           return 5781; /* *avx512vl_vpternlogv4si_1 */
   17936              : 
   17937              :         case 21:
   17938              :           if (!(
   17939              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17940              : ((64 == 64 || TARGET_AVX512VL
   17941              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17942              :    && ix86_pre_reload_split ()
   17943              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17944              :                     STRIP_UNARY (operands[4]))
   17945              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17946              :                        STRIP_UNARY (operands[4]))
   17947              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17948              :                        STRIP_UNARY (operands[3]))
   17949              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17950              :                        STRIP_UNARY (operands[3])))) && 
   17951              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17952              : (TARGET_AVX512F)))
   17953              :             return -1;
   17954              :           return 5808; /* *avx512f_vpternlogv8di_1 */
   17955              : 
   17956              :         case 22:
   17957              :           if (!(
   17958              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17959              : ((32 == 64 || TARGET_AVX512VL
   17960              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17961              :    && ix86_pre_reload_split ()
   17962              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17963              :                     STRIP_UNARY (operands[4]))
   17964              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17965              :                        STRIP_UNARY (operands[4]))
   17966              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17967              :                        STRIP_UNARY (operands[3]))
   17968              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17969              :                        STRIP_UNARY (operands[3])))) && 
   17970              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17971              : (TARGET_AVX)))
   17972              :             return -1;
   17973              :           return 5835; /* *avx512vl_vpternlogv4di_1 */
   17974              : 
   17975              :         case 23:
   17976              :           if (!
   17977              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17978              : ((16 == 64 || TARGET_AVX512VL
   17979              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17980              :    && ix86_pre_reload_split ()
   17981              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17982              :                     STRIP_UNARY (operands[4]))
   17983              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17984              :                        STRIP_UNARY (operands[4]))
   17985              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   17986              :                        STRIP_UNARY (operands[3]))
   17987              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   17988              :                        STRIP_UNARY (operands[3])))))
   17989              :             return -1;
   17990              :           return 5862; /* *avx512vl_vpternlogv2di_1 */
   17991              : 
   17992              :         case 24:
   17993              :           if (!(
   17994              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   17995              : ((64 == 64 || TARGET_AVX512VL
   17996              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   17997              :    && ix86_pre_reload_split ()
   17998              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   17999              :                     STRIP_UNARY (operands[4]))
   18000              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18001              :                        STRIP_UNARY (operands[4]))
   18002              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18003              :                        STRIP_UNARY (operands[3]))
   18004              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18005              :                        STRIP_UNARY (operands[3])))) && 
   18006              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18007              : (TARGET_AVX512F)))
   18008              :             return -1;
   18009              :           return 5568; /* *avx512bw_vpternlogv64qi_1 */
   18010              : 
   18011              :         case 25:
   18012              :           if (!(
   18013              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18014              : ((32 == 64 || TARGET_AVX512VL
   18015              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18016              :    && ix86_pre_reload_split ()
   18017              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18018              :                     STRIP_UNARY (operands[4]))
   18019              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18020              :                        STRIP_UNARY (operands[4]))
   18021              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18022              :                        STRIP_UNARY (operands[3]))
   18023              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18024              :                        STRIP_UNARY (operands[3])))) && 
   18025              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18026              : (TARGET_AVX)))
   18027              :             return -1;
   18028              :           return 5595; /* *avx512vl_vpternlogv32qi_1 */
   18029              : 
   18030              :         case 26:
   18031              :           if (!
   18032              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18033              : ((16 == 64 || TARGET_AVX512VL
   18034              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18035              :    && ix86_pre_reload_split ()
   18036              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18037              :                     STRIP_UNARY (operands[4]))
   18038              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18039              :                        STRIP_UNARY (operands[4]))
   18040              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18041              :                        STRIP_UNARY (operands[3]))
   18042              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18043              :                        STRIP_UNARY (operands[3])))))
   18044              :             return -1;
   18045              :           return 5622; /* *avx512vl_vpternlogv16qi_1 */
   18046              : 
   18047              :         case 27:
   18048              :           if (!(
   18049              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18050              : ((64 == 64 || TARGET_AVX512VL
   18051              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18052              :    && ix86_pre_reload_split ()
   18053              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18054              :                     STRIP_UNARY (operands[4]))
   18055              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18056              :                        STRIP_UNARY (operands[4]))
   18057              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18058              :                        STRIP_UNARY (operands[3]))
   18059              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18060              :                        STRIP_UNARY (operands[3])))) && 
   18061              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18062              : (TARGET_AVX512F)))
   18063              :             return -1;
   18064              :           return 5649; /* *avx512bw_vpternlogv32hi_1 */
   18065              : 
   18066              :         case 28:
   18067              :           if (!(
   18068              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18069              : ((32 == 64 || TARGET_AVX512VL
   18070              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18071              :    && ix86_pre_reload_split ()
   18072              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18073              :                     STRIP_UNARY (operands[4]))
   18074              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18075              :                        STRIP_UNARY (operands[4]))
   18076              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18077              :                        STRIP_UNARY (operands[3]))
   18078              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18079              :                        STRIP_UNARY (operands[3])))) && 
   18080              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18081              : (TARGET_AVX)))
   18082              :             return -1;
   18083              :           return 5676; /* *avx512vl_vpternlogv16hi_1 */
   18084              : 
   18085              :         case 29:
   18086              :           if (!
   18087              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18088              : ((16 == 64 || TARGET_AVX512VL
   18089              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18090              :    && ix86_pre_reload_split ()
   18091              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18092              :                     STRIP_UNARY (operands[4]))
   18093              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18094              :                        STRIP_UNARY (operands[4]))
   18095              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18096              :                        STRIP_UNARY (operands[3]))
   18097              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18098              :                        STRIP_UNARY (operands[3])))))
   18099              :             return -1;
   18100              :           return 5703; /* *avx512vl_vpternlogv8hi_1 */
   18101              : 
   18102              :         case 30:
   18103              :           if (!(
   18104              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18105              : ((64 == 64 || TARGET_AVX512VL
   18106              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18107              :    && ix86_pre_reload_split ()
   18108              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18109              :                     STRIP_UNARY (operands[4]))
   18110              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18111              :                        STRIP_UNARY (operands[4]))
   18112              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18113              :                        STRIP_UNARY (operands[3]))
   18114              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18115              :                        STRIP_UNARY (operands[3])))) && 
   18116              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18117              : (TARGET_AVX512F)))
   18118              :             return -1;
   18119              :           return 5730; /* *avx512f_vpternlogv16si_1 */
   18120              : 
   18121              :         case 31:
   18122              :           if (!(
   18123              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18124              : ((32 == 64 || TARGET_AVX512VL
   18125              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18126              :    && ix86_pre_reload_split ()
   18127              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18128              :                     STRIP_UNARY (operands[4]))
   18129              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18130              :                        STRIP_UNARY (operands[4]))
   18131              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18132              :                        STRIP_UNARY (operands[3]))
   18133              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18134              :                        STRIP_UNARY (operands[3])))) && 
   18135              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18136              : (TARGET_AVX)))
   18137              :             return -1;
   18138              :           return 5757; /* *avx512vl_vpternlogv8si_1 */
   18139              : 
   18140              :         case 32:
   18141              :           if (!
   18142              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18143              : ((16 == 64 || TARGET_AVX512VL
   18144              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18145              :    && ix86_pre_reload_split ()
   18146              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18147              :                     STRIP_UNARY (operands[4]))
   18148              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18149              :                        STRIP_UNARY (operands[4]))
   18150              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18151              :                        STRIP_UNARY (operands[3]))
   18152              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18153              :                        STRIP_UNARY (operands[3])))))
   18154              :             return -1;
   18155              :           return 5784; /* *avx512vl_vpternlogv4si_1 */
   18156              : 
   18157              :         case 33:
   18158              :           if (!(
   18159              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18160              : ((64 == 64 || TARGET_AVX512VL
   18161              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18162              :    && ix86_pre_reload_split ()
   18163              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18164              :                     STRIP_UNARY (operands[4]))
   18165              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18166              :                        STRIP_UNARY (operands[4]))
   18167              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18168              :                        STRIP_UNARY (operands[3]))
   18169              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18170              :                        STRIP_UNARY (operands[3])))) && 
   18171              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18172              : (TARGET_AVX512F)))
   18173              :             return -1;
   18174              :           return 5811; /* *avx512f_vpternlogv8di_1 */
   18175              : 
   18176              :         case 34:
   18177              :           if (!(
   18178              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18179              : ((32 == 64 || TARGET_AVX512VL
   18180              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18181              :    && ix86_pre_reload_split ()
   18182              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18183              :                     STRIP_UNARY (operands[4]))
   18184              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18185              :                        STRIP_UNARY (operands[4]))
   18186              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18187              :                        STRIP_UNARY (operands[3]))
   18188              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18189              :                        STRIP_UNARY (operands[3])))) && 
   18190              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18191              : (TARGET_AVX)))
   18192              :             return -1;
   18193              :           return 5838; /* *avx512vl_vpternlogv4di_1 */
   18194              : 
   18195              :         case 35:
   18196              :           if (!
   18197              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18198              : ((16 == 64 || TARGET_AVX512VL
   18199              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18200              :    && ix86_pre_reload_split ()
   18201              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18202              :                     STRIP_UNARY (operands[4]))
   18203              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18204              :                        STRIP_UNARY (operands[4]))
   18205              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18206              :                        STRIP_UNARY (operands[3]))
   18207              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18208              :                        STRIP_UNARY (operands[3])))))
   18209              :             return -1;
   18210              :           return 5865; /* *avx512vl_vpternlogv2di_1 */
   18211              : 
   18212              :         case 36:
   18213              :           if (!(
   18214              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18215              : ((64 == 64 || TARGET_AVX512VL
   18216              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18217              :    && ix86_pre_reload_split ()) && 
   18218              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18219              : (TARGET_AVX512F)))
   18220              :             return -1;
   18221              :           return 6846; /* *avx512bw_vpternlogv64qi_3 */
   18222              : 
   18223              :         case 37:
   18224              :           if (!(
   18225              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18226              : ((32 == 64 || TARGET_AVX512VL
   18227              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18228              :    && ix86_pre_reload_split ()) && 
   18229              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18230              : (TARGET_AVX)))
   18231              :             return -1;
   18232              :           return 6855; /* *avx512vl_vpternlogv32qi_3 */
   18233              : 
   18234              :         case 38:
   18235              :           if (!
   18236              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18237              : ((16 == 64 || TARGET_AVX512VL
   18238              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18239              :    && ix86_pre_reload_split ()))
   18240              :             return -1;
   18241              :           return 6864; /* *avx512vl_vpternlogv16qi_3 */
   18242              : 
   18243              :         case 39:
   18244              :           if (!(
   18245              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18246              : ((64 == 64 || TARGET_AVX512VL
   18247              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18248              :    && ix86_pre_reload_split ()) && 
   18249              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18250              : (TARGET_AVX512F)))
   18251              :             return -1;
   18252              :           return 6873; /* *avx512bw_vpternlogv32hi_3 */
   18253              : 
   18254              :         case 40:
   18255              :           if (!(
   18256              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18257              : ((32 == 64 || TARGET_AVX512VL
   18258              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18259              :    && ix86_pre_reload_split ()) && 
   18260              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18261              : (TARGET_AVX)))
   18262              :             return -1;
   18263              :           return 6882; /* *avx512vl_vpternlogv16hi_3 */
   18264              : 
   18265              :         case 41:
   18266              :           if (!
   18267              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18268              : ((16 == 64 || TARGET_AVX512VL
   18269              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18270              :    && ix86_pre_reload_split ()))
   18271              :             return -1;
   18272              :           return 6891; /* *avx512vl_vpternlogv8hi_3 */
   18273              : 
   18274              :         case 42:
   18275              :           if (!(
   18276              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18277              : ((64 == 64 || TARGET_AVX512VL
   18278              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18279              :    && ix86_pre_reload_split ()) && 
   18280              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18281              : (TARGET_AVX512F)))
   18282              :             return -1;
   18283              :           return 6900; /* *avx512f_vpternlogv16si_3 */
   18284              : 
   18285              :         case 43:
   18286              :           if (!(
   18287              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18288              : ((32 == 64 || TARGET_AVX512VL
   18289              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18290              :    && ix86_pre_reload_split ()) && 
   18291              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18292              : (TARGET_AVX)))
   18293              :             return -1;
   18294              :           return 6909; /* *avx512vl_vpternlogv8si_3 */
   18295              : 
   18296              :         case 44:
   18297              :           if (!
   18298              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18299              : ((16 == 64 || TARGET_AVX512VL
   18300              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18301              :    && ix86_pre_reload_split ()))
   18302              :             return -1;
   18303              :           return 6918; /* *avx512vl_vpternlogv4si_3 */
   18304              : 
   18305              :         case 45:
   18306              :           if (!(
   18307              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18308              : ((64 == 64 || TARGET_AVX512VL
   18309              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18310              :    && ix86_pre_reload_split ()) && 
   18311              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18312              : (TARGET_AVX512F)))
   18313              :             return -1;
   18314              :           return 6927; /* *avx512f_vpternlogv8di_3 */
   18315              : 
   18316              :         case 46:
   18317              :           if (!(
   18318              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18319              : ((32 == 64 || TARGET_AVX512VL
   18320              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18321              :    && ix86_pre_reload_split ()) && 
   18322              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18323              : (TARGET_AVX)))
   18324              :             return -1;
   18325              :           return 6936; /* *avx512vl_vpternlogv4di_3 */
   18326              : 
   18327              :         case 47:
   18328              :           if (!
   18329              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18330              : ((16 == 64 || TARGET_AVX512VL
   18331              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18332              :    && ix86_pre_reload_split ()))
   18333              :             return -1;
   18334              :           return 6945; /* *avx512vl_vpternlogv2di_3 */
   18335              : 
   18336              :         default:
   18337              :           return -1;
   18338              :         }
   18339              : 
   18340              :     case AND:
   18341              :       switch (pattern539 (x2))
   18342              :         {
   18343              :         case 0:
   18344              :           if (!(
   18345              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18346              : ((64 == 64 || TARGET_AVX512VL
   18347              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18348              :    && ix86_pre_reload_split ()
   18349              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18350              :                     STRIP_UNARY (operands[4]))
   18351              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18352              :                        STRIP_UNARY (operands[4]))
   18353              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18354              :                        STRIP_UNARY (operands[3]))
   18355              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18356              :                        STRIP_UNARY (operands[3])))) && 
   18357              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18358              : (TARGET_AVX512F)))
   18359              :             return -1;
   18360              :           return 6210; /* *avx512bw_vpternlogv64qi_2 */
   18361              : 
   18362              :         case 1:
   18363              :           if (!(
   18364              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18365              : ((32 == 64 || TARGET_AVX512VL
   18366              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18367              :    && ix86_pre_reload_split ()
   18368              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18369              :                     STRIP_UNARY (operands[4]))
   18370              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18371              :                        STRIP_UNARY (operands[4]))
   18372              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18373              :                        STRIP_UNARY (operands[3]))
   18374              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18375              :                        STRIP_UNARY (operands[3])))) && 
   18376              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18377              : (TARGET_AVX)))
   18378              :             return -1;
   18379              :           return 6237; /* *avx512vl_vpternlogv32qi_2 */
   18380              : 
   18381              :         case 2:
   18382              :           if (!
   18383              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18384              : ((16 == 64 || TARGET_AVX512VL
   18385              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18386              :    && ix86_pre_reload_split ()
   18387              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18388              :                     STRIP_UNARY (operands[4]))
   18389              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18390              :                        STRIP_UNARY (operands[4]))
   18391              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18392              :                        STRIP_UNARY (operands[3]))
   18393              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18394              :                        STRIP_UNARY (operands[3])))))
   18395              :             return -1;
   18396              :           return 6264; /* *avx512vl_vpternlogv16qi_2 */
   18397              : 
   18398              :         case 3:
   18399              :           if (!(
   18400              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18401              : ((64 == 64 || TARGET_AVX512VL
   18402              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18403              :    && ix86_pre_reload_split ()
   18404              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18405              :                     STRIP_UNARY (operands[4]))
   18406              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18407              :                        STRIP_UNARY (operands[4]))
   18408              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18409              :                        STRIP_UNARY (operands[3]))
   18410              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18411              :                        STRIP_UNARY (operands[3])))) && 
   18412              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18413              : (TARGET_AVX512F)))
   18414              :             return -1;
   18415              :           return 6291; /* *avx512bw_vpternlogv32hi_2 */
   18416              : 
   18417              :         case 4:
   18418              :           if (!(
   18419              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18420              : ((32 == 64 || TARGET_AVX512VL
   18421              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18422              :    && ix86_pre_reload_split ()
   18423              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18424              :                     STRIP_UNARY (operands[4]))
   18425              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18426              :                        STRIP_UNARY (operands[4]))
   18427              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18428              :                        STRIP_UNARY (operands[3]))
   18429              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18430              :                        STRIP_UNARY (operands[3])))) && 
   18431              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18432              : (TARGET_AVX)))
   18433              :             return -1;
   18434              :           return 6318; /* *avx512vl_vpternlogv16hi_2 */
   18435              : 
   18436              :         case 5:
   18437              :           if (!
   18438              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18439              : ((16 == 64 || TARGET_AVX512VL
   18440              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18441              :    && ix86_pre_reload_split ()
   18442              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18443              :                     STRIP_UNARY (operands[4]))
   18444              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18445              :                        STRIP_UNARY (operands[4]))
   18446              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18447              :                        STRIP_UNARY (operands[3]))
   18448              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18449              :                        STRIP_UNARY (operands[3])))))
   18450              :             return -1;
   18451              :           return 6345; /* *avx512vl_vpternlogv8hi_2 */
   18452              : 
   18453              :         case 6:
   18454              :           if (!(
   18455              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18456              : ((64 == 64 || TARGET_AVX512VL
   18457              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18458              :    && ix86_pre_reload_split ()
   18459              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18460              :                     STRIP_UNARY (operands[4]))
   18461              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18462              :                        STRIP_UNARY (operands[4]))
   18463              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18464              :                        STRIP_UNARY (operands[3]))
   18465              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18466              :                        STRIP_UNARY (operands[3])))) && 
   18467              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18468              : (TARGET_AVX512F)))
   18469              :             return -1;
   18470              :           return 6372; /* *avx512f_vpternlogv16si_2 */
   18471              : 
   18472              :         case 7:
   18473              :           if (!(
   18474              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18475              : ((32 == 64 || TARGET_AVX512VL
   18476              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18477              :    && ix86_pre_reload_split ()
   18478              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18479              :                     STRIP_UNARY (operands[4]))
   18480              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18481              :                        STRIP_UNARY (operands[4]))
   18482              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18483              :                        STRIP_UNARY (operands[3]))
   18484              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18485              :                        STRIP_UNARY (operands[3])))) && 
   18486              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18487              : (TARGET_AVX)))
   18488              :             return -1;
   18489              :           return 6399; /* *avx512vl_vpternlogv8si_2 */
   18490              : 
   18491              :         case 8:
   18492              :           if (!
   18493              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18494              : ((16 == 64 || TARGET_AVX512VL
   18495              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18496              :    && ix86_pre_reload_split ()
   18497              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18498              :                     STRIP_UNARY (operands[4]))
   18499              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18500              :                        STRIP_UNARY (operands[4]))
   18501              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18502              :                        STRIP_UNARY (operands[3]))
   18503              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18504              :                        STRIP_UNARY (operands[3])))))
   18505              :             return -1;
   18506              :           return 6426; /* *avx512vl_vpternlogv4si_2 */
   18507              : 
   18508              :         case 9:
   18509              :           if (!(
   18510              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18511              : ((64 == 64 || TARGET_AVX512VL
   18512              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18513              :    && ix86_pre_reload_split ()
   18514              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18515              :                     STRIP_UNARY (operands[4]))
   18516              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18517              :                        STRIP_UNARY (operands[4]))
   18518              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18519              :                        STRIP_UNARY (operands[3]))
   18520              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18521              :                        STRIP_UNARY (operands[3])))) && 
   18522              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18523              : (TARGET_AVX512F)))
   18524              :             return -1;
   18525              :           return 6453; /* *avx512f_vpternlogv8di_2 */
   18526              : 
   18527              :         case 10:
   18528              :           if (!(
   18529              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18530              : ((32 == 64 || TARGET_AVX512VL
   18531              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18532              :    && ix86_pre_reload_split ()
   18533              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18534              :                     STRIP_UNARY (operands[4]))
   18535              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18536              :                        STRIP_UNARY (operands[4]))
   18537              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18538              :                        STRIP_UNARY (operands[3]))
   18539              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18540              :                        STRIP_UNARY (operands[3])))) && 
   18541              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18542              : (TARGET_AVX)))
   18543              :             return -1;
   18544              :           return 6480; /* *avx512vl_vpternlogv4di_2 */
   18545              : 
   18546              :         case 11:
   18547              :           if (!
   18548              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18549              : ((16 == 64 || TARGET_AVX512VL
   18550              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18551              :    && ix86_pre_reload_split ()
   18552              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18553              :                     STRIP_UNARY (operands[4]))
   18554              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18555              :                        STRIP_UNARY (operands[4]))
   18556              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18557              :                        STRIP_UNARY (operands[3]))
   18558              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18559              :                        STRIP_UNARY (operands[3])))))
   18560              :             return -1;
   18561              :           return 6507; /* *avx512vl_vpternlogv2di_2 */
   18562              : 
   18563              :         default:
   18564              :           return -1;
   18565              :         }
   18566              : 
   18567              :     case IOR:
   18568              :       switch (pattern539 (x2))
   18569              :         {
   18570              :         case 0:
   18571              :           if (!(
   18572              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18573              : ((64 == 64 || TARGET_AVX512VL
   18574              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18575              :    && ix86_pre_reload_split ()
   18576              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18577              :                     STRIP_UNARY (operands[4]))
   18578              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18579              :                        STRIP_UNARY (operands[4]))
   18580              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18581              :                        STRIP_UNARY (operands[3]))
   18582              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18583              :                        STRIP_UNARY (operands[3])))) && 
   18584              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18585              : (TARGET_AVX512F)))
   18586              :             return -1;
   18587              :           return 6213; /* *avx512bw_vpternlogv64qi_2 */
   18588              : 
   18589              :         case 1:
   18590              :           if (!(
   18591              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18592              : ((32 == 64 || TARGET_AVX512VL
   18593              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18594              :    && ix86_pre_reload_split ()
   18595              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18596              :                     STRIP_UNARY (operands[4]))
   18597              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18598              :                        STRIP_UNARY (operands[4]))
   18599              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18600              :                        STRIP_UNARY (operands[3]))
   18601              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18602              :                        STRIP_UNARY (operands[3])))) && 
   18603              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18604              : (TARGET_AVX)))
   18605              :             return -1;
   18606              :           return 6240; /* *avx512vl_vpternlogv32qi_2 */
   18607              : 
   18608              :         case 2:
   18609              :           if (!
   18610              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18611              : ((16 == 64 || TARGET_AVX512VL
   18612              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18613              :    && ix86_pre_reload_split ()
   18614              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18615              :                     STRIP_UNARY (operands[4]))
   18616              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18617              :                        STRIP_UNARY (operands[4]))
   18618              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18619              :                        STRIP_UNARY (operands[3]))
   18620              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18621              :                        STRIP_UNARY (operands[3])))))
   18622              :             return -1;
   18623              :           return 6267; /* *avx512vl_vpternlogv16qi_2 */
   18624              : 
   18625              :         case 3:
   18626              :           if (!(
   18627              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18628              : ((64 == 64 || TARGET_AVX512VL
   18629              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18630              :    && ix86_pre_reload_split ()
   18631              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18632              :                     STRIP_UNARY (operands[4]))
   18633              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18634              :                        STRIP_UNARY (operands[4]))
   18635              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18636              :                        STRIP_UNARY (operands[3]))
   18637              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18638              :                        STRIP_UNARY (operands[3])))) && 
   18639              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18640              : (TARGET_AVX512F)))
   18641              :             return -1;
   18642              :           return 6294; /* *avx512bw_vpternlogv32hi_2 */
   18643              : 
   18644              :         case 4:
   18645              :           if (!(
   18646              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18647              : ((32 == 64 || TARGET_AVX512VL
   18648              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18649              :    && ix86_pre_reload_split ()
   18650              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18651              :                     STRIP_UNARY (operands[4]))
   18652              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18653              :                        STRIP_UNARY (operands[4]))
   18654              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18655              :                        STRIP_UNARY (operands[3]))
   18656              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18657              :                        STRIP_UNARY (operands[3])))) && 
   18658              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18659              : (TARGET_AVX)))
   18660              :             return -1;
   18661              :           return 6321; /* *avx512vl_vpternlogv16hi_2 */
   18662              : 
   18663              :         case 5:
   18664              :           if (!
   18665              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18666              : ((16 == 64 || TARGET_AVX512VL
   18667              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18668              :    && ix86_pre_reload_split ()
   18669              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18670              :                     STRIP_UNARY (operands[4]))
   18671              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18672              :                        STRIP_UNARY (operands[4]))
   18673              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18674              :                        STRIP_UNARY (operands[3]))
   18675              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18676              :                        STRIP_UNARY (operands[3])))))
   18677              :             return -1;
   18678              :           return 6348; /* *avx512vl_vpternlogv8hi_2 */
   18679              : 
   18680              :         case 6:
   18681              :           if (!(
   18682              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18683              : ((64 == 64 || TARGET_AVX512VL
   18684              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18685              :    && ix86_pre_reload_split ()
   18686              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18687              :                     STRIP_UNARY (operands[4]))
   18688              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18689              :                        STRIP_UNARY (operands[4]))
   18690              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18691              :                        STRIP_UNARY (operands[3]))
   18692              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18693              :                        STRIP_UNARY (operands[3])))) && 
   18694              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18695              : (TARGET_AVX512F)))
   18696              :             return -1;
   18697              :           return 6375; /* *avx512f_vpternlogv16si_2 */
   18698              : 
   18699              :         case 7:
   18700              :           if (!(
   18701              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18702              : ((32 == 64 || TARGET_AVX512VL
   18703              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18704              :    && ix86_pre_reload_split ()
   18705              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18706              :                     STRIP_UNARY (operands[4]))
   18707              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18708              :                        STRIP_UNARY (operands[4]))
   18709              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18710              :                        STRIP_UNARY (operands[3]))
   18711              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18712              :                        STRIP_UNARY (operands[3])))) && 
   18713              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18714              : (TARGET_AVX)))
   18715              :             return -1;
   18716              :           return 6402; /* *avx512vl_vpternlogv8si_2 */
   18717              : 
   18718              :         case 8:
   18719              :           if (!
   18720              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18721              : ((16 == 64 || TARGET_AVX512VL
   18722              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18723              :    && ix86_pre_reload_split ()
   18724              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18725              :                     STRIP_UNARY (operands[4]))
   18726              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18727              :                        STRIP_UNARY (operands[4]))
   18728              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18729              :                        STRIP_UNARY (operands[3]))
   18730              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18731              :                        STRIP_UNARY (operands[3])))))
   18732              :             return -1;
   18733              :           return 6429; /* *avx512vl_vpternlogv4si_2 */
   18734              : 
   18735              :         case 9:
   18736              :           if (!(
   18737              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18738              : ((64 == 64 || TARGET_AVX512VL
   18739              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18740              :    && ix86_pre_reload_split ()
   18741              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18742              :                     STRIP_UNARY (operands[4]))
   18743              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18744              :                        STRIP_UNARY (operands[4]))
   18745              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18746              :                        STRIP_UNARY (operands[3]))
   18747              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18748              :                        STRIP_UNARY (operands[3])))) && 
   18749              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18750              : (TARGET_AVX512F)))
   18751              :             return -1;
   18752              :           return 6456; /* *avx512f_vpternlogv8di_2 */
   18753              : 
   18754              :         case 10:
   18755              :           if (!(
   18756              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18757              : ((32 == 64 || TARGET_AVX512VL
   18758              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18759              :    && ix86_pre_reload_split ()
   18760              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18761              :                     STRIP_UNARY (operands[4]))
   18762              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18763              :                        STRIP_UNARY (operands[4]))
   18764              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18765              :                        STRIP_UNARY (operands[3]))
   18766              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18767              :                        STRIP_UNARY (operands[3])))) && 
   18768              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18769              : (TARGET_AVX)))
   18770              :             return -1;
   18771              :           return 6483; /* *avx512vl_vpternlogv4di_2 */
   18772              : 
   18773              :         case 11:
   18774              :           if (!
   18775              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18776              : ((16 == 64 || TARGET_AVX512VL
   18777              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18778              :    && ix86_pre_reload_split ()
   18779              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18780              :                     STRIP_UNARY (operands[4]))
   18781              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18782              :                        STRIP_UNARY (operands[4]))
   18783              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18784              :                        STRIP_UNARY (operands[3]))
   18785              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18786              :                        STRIP_UNARY (operands[3])))))
   18787              :             return -1;
   18788              :           return 6510; /* *avx512vl_vpternlogv2di_2 */
   18789              : 
   18790              :         default:
   18791              :           return -1;
   18792              :         }
   18793              : 
   18794              :     case XOR:
   18795              :       switch (pattern539 (x2))
   18796              :         {
   18797              :         case 0:
   18798              :           if (!(
   18799              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18800              : ((64 == 64 || TARGET_AVX512VL
   18801              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18802              :    && ix86_pre_reload_split ()
   18803              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18804              :                     STRIP_UNARY (operands[4]))
   18805              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18806              :                        STRIP_UNARY (operands[4]))
   18807              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18808              :                        STRIP_UNARY (operands[3]))
   18809              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18810              :                        STRIP_UNARY (operands[3])))) && 
   18811              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18812              : (TARGET_AVX512F)))
   18813              :             return -1;
   18814              :           return 6216; /* *avx512bw_vpternlogv64qi_2 */
   18815              : 
   18816              :         case 1:
   18817              :           if (!(
   18818              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18819              : ((32 == 64 || TARGET_AVX512VL
   18820              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18821              :    && ix86_pre_reload_split ()
   18822              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18823              :                     STRIP_UNARY (operands[4]))
   18824              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18825              :                        STRIP_UNARY (operands[4]))
   18826              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18827              :                        STRIP_UNARY (operands[3]))
   18828              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18829              :                        STRIP_UNARY (operands[3])))) && 
   18830              : #line 345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18831              : (TARGET_AVX)))
   18832              :             return -1;
   18833              :           return 6243; /* *avx512vl_vpternlogv32qi_2 */
   18834              : 
   18835              :         case 2:
   18836              :           if (!
   18837              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18838              : ((16 == 64 || TARGET_AVX512VL
   18839              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18840              :    && ix86_pre_reload_split ()
   18841              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18842              :                     STRIP_UNARY (operands[4]))
   18843              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18844              :                        STRIP_UNARY (operands[4]))
   18845              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18846              :                        STRIP_UNARY (operands[3]))
   18847              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18848              :                        STRIP_UNARY (operands[3])))))
   18849              :             return -1;
   18850              :           return 6270; /* *avx512vl_vpternlogv16qi_2 */
   18851              : 
   18852              :         case 3:
   18853              :           if (!(
   18854              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18855              : ((64 == 64 || TARGET_AVX512VL
   18856              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18857              :    && ix86_pre_reload_split ()
   18858              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18859              :                     STRIP_UNARY (operands[4]))
   18860              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18861              :                        STRIP_UNARY (operands[4]))
   18862              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18863              :                        STRIP_UNARY (operands[3]))
   18864              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18865              :                        STRIP_UNARY (operands[3])))) && 
   18866              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18867              : (TARGET_AVX512F)))
   18868              :             return -1;
   18869              :           return 6297; /* *avx512bw_vpternlogv32hi_2 */
   18870              : 
   18871              :         case 4:
   18872              :           if (!(
   18873              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18874              : ((32 == 64 || TARGET_AVX512VL
   18875              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18876              :    && ix86_pre_reload_split ()
   18877              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18878              :                     STRIP_UNARY (operands[4]))
   18879              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18880              :                        STRIP_UNARY (operands[4]))
   18881              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18882              :                        STRIP_UNARY (operands[3]))
   18883              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18884              :                        STRIP_UNARY (operands[3])))) && 
   18885              : #line 346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18886              : (TARGET_AVX)))
   18887              :             return -1;
   18888              :           return 6324; /* *avx512vl_vpternlogv16hi_2 */
   18889              : 
   18890              :         case 5:
   18891              :           if (!
   18892              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18893              : ((16 == 64 || TARGET_AVX512VL
   18894              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18895              :    && ix86_pre_reload_split ()
   18896              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18897              :                     STRIP_UNARY (operands[4]))
   18898              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18899              :                        STRIP_UNARY (operands[4]))
   18900              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18901              :                        STRIP_UNARY (operands[3]))
   18902              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18903              :                        STRIP_UNARY (operands[3])))))
   18904              :             return -1;
   18905              :           return 6351; /* *avx512vl_vpternlogv8hi_2 */
   18906              : 
   18907              :         case 6:
   18908              :           if (!(
   18909              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18910              : ((64 == 64 || TARGET_AVX512VL
   18911              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18912              :    && ix86_pre_reload_split ()
   18913              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18914              :                     STRIP_UNARY (operands[4]))
   18915              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18916              :                        STRIP_UNARY (operands[4]))
   18917              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18918              :                        STRIP_UNARY (operands[3]))
   18919              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18920              :                        STRIP_UNARY (operands[3])))) && 
   18921              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18922              : (TARGET_AVX512F)))
   18923              :             return -1;
   18924              :           return 6378; /* *avx512f_vpternlogv16si_2 */
   18925              : 
   18926              :         case 7:
   18927              :           if (!(
   18928              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18929              : ((32 == 64 || TARGET_AVX512VL
   18930              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18931              :    && ix86_pre_reload_split ()
   18932              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18933              :                     STRIP_UNARY (operands[4]))
   18934              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18935              :                        STRIP_UNARY (operands[4]))
   18936              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18937              :                        STRIP_UNARY (operands[3]))
   18938              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18939              :                        STRIP_UNARY (operands[3])))) && 
   18940              : #line 347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18941              : (TARGET_AVX)))
   18942              :             return -1;
   18943              :           return 6405; /* *avx512vl_vpternlogv8si_2 */
   18944              : 
   18945              :         case 8:
   18946              :           if (!
   18947              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18948              : ((16 == 64 || TARGET_AVX512VL
   18949              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18950              :    && ix86_pre_reload_split ()
   18951              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18952              :                     STRIP_UNARY (operands[4]))
   18953              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18954              :                        STRIP_UNARY (operands[4]))
   18955              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18956              :                        STRIP_UNARY (operands[3]))
   18957              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18958              :                        STRIP_UNARY (operands[3])))))
   18959              :             return -1;
   18960              :           return 6432; /* *avx512vl_vpternlogv4si_2 */
   18961              : 
   18962              :         case 9:
   18963              :           if (!(
   18964              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18965              : ((64 == 64 || TARGET_AVX512VL
   18966              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18967              :    && ix86_pre_reload_split ()
   18968              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18969              :                     STRIP_UNARY (operands[4]))
   18970              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18971              :                        STRIP_UNARY (operands[4]))
   18972              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18973              :                        STRIP_UNARY (operands[3]))
   18974              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18975              :                        STRIP_UNARY (operands[3])))) && 
   18976              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18977              : (TARGET_AVX512F)))
   18978              :             return -1;
   18979              :           return 6459; /* *avx512f_vpternlogv8di_2 */
   18980              : 
   18981              :         case 10:
   18982              :           if (!(
   18983              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18984              : ((32 == 64 || TARGET_AVX512VL
   18985              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   18986              :    && ix86_pre_reload_split ()
   18987              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   18988              :                     STRIP_UNARY (operands[4]))
   18989              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18990              :                        STRIP_UNARY (operands[4]))
   18991              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   18992              :                        STRIP_UNARY (operands[3]))
   18993              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   18994              :                        STRIP_UNARY (operands[3])))) && 
   18995              : #line 348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   18996              : (TARGET_AVX)))
   18997              :             return -1;
   18998              :           return 6486; /* *avx512vl_vpternlogv4di_2 */
   18999              : 
   19000              :         case 11:
   19001              :           if (!
   19002              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19003              : ((16 == 64 || TARGET_AVX512VL
   19004              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19005              :    && ix86_pre_reload_split ()
   19006              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19007              :                     STRIP_UNARY (operands[4]))
   19008              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19009              :                        STRIP_UNARY (operands[4]))
   19010              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19011              :                        STRIP_UNARY (operands[3]))
   19012              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19013              :                        STRIP_UNARY (operands[3])))))
   19014              :             return -1;
   19015              :           return 6513; /* *avx512vl_vpternlogv2di_2 */
   19016              : 
   19017              :         default:
   19018              :           return -1;
   19019              :         }
   19020              : 
   19021              :     default:
   19022              :       return -1;
   19023              :     }
   19024              : }
   19025              : 
   19026              :  int
   19027              : recog_316 (rtx x1 ATTRIBUTE_UNUSED,
   19028              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   19029              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   19030              : {
   19031              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   19032              :   rtx x2, x3, x4;
   19033              :   int res ATTRIBUTE_UNUSED;
   19034              :   x2 = XEXP (x1, 1);
   19035              :   x3 = XEXP (x2, 0);
   19036              :   x4 = XEXP (x3, 0);
   19037              :   switch (GET_CODE (x4))
   19038              :     {
   19039              :     case REG:
   19040              :     case SUBREG:
   19041              :     case MEM:
   19042              :     case NOT:
   19043              :       switch (pattern543 (x2))
   19044              :         {
   19045              :         case 0:
   19046              :           if (!(
   19047              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19048              : ((64 == 64 || TARGET_AVX512VL
   19049              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19050              :    && ix86_pre_reload_split ()
   19051              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19052              :                     STRIP_UNARY (operands[4]))
   19053              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19054              :                        STRIP_UNARY (operands[4]))
   19055              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19056              :                        STRIP_UNARY (operands[3]))
   19057              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19058              :                        STRIP_UNARY (operands[3])))) && 
   19059              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19060              : (TARGET_AVX512F)))
   19061              :             return -1;
   19062              :           return 5888; /* *avx512bw_vpternlogv32hf_1 */
   19063              : 
   19064              :         case 1:
   19065              :           if (!(
   19066              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19067              : ((32 == 64 || TARGET_AVX512VL
   19068              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19069              :    && ix86_pre_reload_split ()
   19070              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19071              :                     STRIP_UNARY (operands[4]))
   19072              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19073              :                        STRIP_UNARY (operands[4]))
   19074              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19075              :                        STRIP_UNARY (operands[3]))
   19076              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19077              :                        STRIP_UNARY (operands[3])))) && 
   19078              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19079              : (TARGET_AVX)))
   19080              :             return -1;
   19081              :           return 5915; /* *avx512vl_vpternlogv16hf_1 */
   19082              : 
   19083              :         case 2:
   19084              :           if (!
   19085              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19086              : ((16 == 64 || TARGET_AVX512VL
   19087              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19088              :    && ix86_pre_reload_split ()
   19089              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19090              :                     STRIP_UNARY (operands[4]))
   19091              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19092              :                        STRIP_UNARY (operands[4]))
   19093              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19094              :                        STRIP_UNARY (operands[3]))
   19095              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19096              :                        STRIP_UNARY (operands[3])))))
   19097              :             return -1;
   19098              :           return 5942; /* *avx512fp16_vpternlogv8hf_1 */
   19099              : 
   19100              :         case 3:
   19101              :           if (!(
   19102              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19103              : ((64 == 64 || TARGET_AVX512VL
   19104              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19105              :    && ix86_pre_reload_split ()
   19106              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19107              :                     STRIP_UNARY (operands[4]))
   19108              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19109              :                        STRIP_UNARY (operands[4]))
   19110              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19111              :                        STRIP_UNARY (operands[3]))
   19112              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19113              :                        STRIP_UNARY (operands[3])))) && 
   19114              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19115              : (TARGET_AVX512F)))
   19116              :             return -1;
   19117              :           return 5969; /* *avx512bw_vpternlogv32bf_1 */
   19118              : 
   19119              :         case 4:
   19120              :           if (!(
   19121              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19122              : ((32 == 64 || TARGET_AVX512VL
   19123              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19124              :    && ix86_pre_reload_split ()
   19125              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19126              :                     STRIP_UNARY (operands[4]))
   19127              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19128              :                        STRIP_UNARY (operands[4]))
   19129              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19130              :                        STRIP_UNARY (operands[3]))
   19131              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19132              :                        STRIP_UNARY (operands[3])))) && 
   19133              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19134              : (TARGET_AVX)))
   19135              :             return -1;
   19136              :           return 5996; /* *avx512vl_vpternlogv16bf_1 */
   19137              : 
   19138              :         case 5:
   19139              :           if (!
   19140              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19141              : ((16 == 64 || TARGET_AVX512VL
   19142              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19143              :    && ix86_pre_reload_split ()
   19144              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19145              :                     STRIP_UNARY (operands[4]))
   19146              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19147              :                        STRIP_UNARY (operands[4]))
   19148              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19149              :                        STRIP_UNARY (operands[3]))
   19150              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19151              :                        STRIP_UNARY (operands[3])))))
   19152              :             return -1;
   19153              :           return 6023; /* *avx512vl_vpternlogv8bf_1 */
   19154              : 
   19155              :         case 6:
   19156              :           if (!(
   19157              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19158              : ((64 == 64 || TARGET_AVX512VL
   19159              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19160              :    && ix86_pre_reload_split ()
   19161              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19162              :                     STRIP_UNARY (operands[4]))
   19163              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19164              :                        STRIP_UNARY (operands[4]))
   19165              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19166              :                        STRIP_UNARY (operands[3]))
   19167              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19168              :                        STRIP_UNARY (operands[3])))) && 
   19169              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19170              : (TARGET_AVX512F)))
   19171              :             return -1;
   19172              :           return 6050; /* *avx512f_vpternlogv16sf_1 */
   19173              : 
   19174              :         case 7:
   19175              :           if (!(
   19176              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19177              : ((32 == 64 || TARGET_AVX512VL
   19178              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19179              :    && ix86_pre_reload_split ()
   19180              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19181              :                     STRIP_UNARY (operands[4]))
   19182              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19183              :                        STRIP_UNARY (operands[4]))
   19184              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19185              :                        STRIP_UNARY (operands[3]))
   19186              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19187              :                        STRIP_UNARY (operands[3])))) && 
   19188              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19189              : (TARGET_AVX)))
   19190              :             return -1;
   19191              :           return 6077; /* *avx512vl_vpternlogv8sf_1 */
   19192              : 
   19193              :         case 8:
   19194              :           if (!
   19195              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19196              : ((16 == 64 || TARGET_AVX512VL
   19197              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19198              :    && ix86_pre_reload_split ()
   19199              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19200              :                     STRIP_UNARY (operands[4]))
   19201              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19202              :                        STRIP_UNARY (operands[4]))
   19203              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19204              :                        STRIP_UNARY (operands[3]))
   19205              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19206              :                        STRIP_UNARY (operands[3])))))
   19207              :             return -1;
   19208              :           return 6104; /* *avx512vl_vpternlogv4sf_1 */
   19209              : 
   19210              :         case 9:
   19211              :           if (!(
   19212              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19213              : ((64 == 64 || TARGET_AVX512VL
   19214              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19215              :    && ix86_pre_reload_split ()
   19216              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19217              :                     STRIP_UNARY (operands[4]))
   19218              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19219              :                        STRIP_UNARY (operands[4]))
   19220              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19221              :                        STRIP_UNARY (operands[3]))
   19222              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19223              :                        STRIP_UNARY (operands[3])))) && 
   19224              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19225              : (TARGET_AVX512F)))
   19226              :             return -1;
   19227              :           return 6131; /* *avx512f_vpternlogv8df_1 */
   19228              : 
   19229              :         case 10:
   19230              :           if (!(
   19231              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19232              : ((32 == 64 || TARGET_AVX512VL
   19233              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19234              :    && ix86_pre_reload_split ()
   19235              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19236              :                     STRIP_UNARY (operands[4]))
   19237              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19238              :                        STRIP_UNARY (operands[4]))
   19239              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19240              :                        STRIP_UNARY (operands[3]))
   19241              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19242              :                        STRIP_UNARY (operands[3])))) && 
   19243              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19244              : (TARGET_AVX)))
   19245              :             return -1;
   19246              :           return 6158; /* *avx512vl_vpternlogv4df_1 */
   19247              : 
   19248              :         case 11:
   19249              :           if (!(
   19250              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19251              : ((16 == 64 || TARGET_AVX512VL
   19252              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19253              :    && ix86_pre_reload_split ()
   19254              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19255              :                     STRIP_UNARY (operands[4]))
   19256              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19257              :                        STRIP_UNARY (operands[4]))
   19258              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19259              :                        STRIP_UNARY (operands[3]))
   19260              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19261              :                        STRIP_UNARY (operands[3])))) && 
   19262              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19263              : (TARGET_SSE2)))
   19264              :             return -1;
   19265              :           return 6185; /* *avx512vl_vpternlogv2df_1 */
   19266              : 
   19267              :         case 12:
   19268              :           if (!(
   19269              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19270              : ((64 == 64 || TARGET_AVX512VL
   19271              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19272              :    && ix86_pre_reload_split ()
   19273              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19274              :                     STRIP_UNARY (operands[4]))
   19275              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19276              :                        STRIP_UNARY (operands[4]))
   19277              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19278              :                        STRIP_UNARY (operands[3]))
   19279              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19280              :                        STRIP_UNARY (operands[3])))) && 
   19281              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19282              : (TARGET_AVX512F)))
   19283              :             return -1;
   19284              :           return 5891; /* *avx512bw_vpternlogv32hf_1 */
   19285              : 
   19286              :         case 13:
   19287              :           if (!(
   19288              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19289              : ((32 == 64 || TARGET_AVX512VL
   19290              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19291              :    && ix86_pre_reload_split ()
   19292              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19293              :                     STRIP_UNARY (operands[4]))
   19294              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19295              :                        STRIP_UNARY (operands[4]))
   19296              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19297              :                        STRIP_UNARY (operands[3]))
   19298              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19299              :                        STRIP_UNARY (operands[3])))) && 
   19300              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19301              : (TARGET_AVX)))
   19302              :             return -1;
   19303              :           return 5918; /* *avx512vl_vpternlogv16hf_1 */
   19304              : 
   19305              :         case 14:
   19306              :           if (!
   19307              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19308              : ((16 == 64 || TARGET_AVX512VL
   19309              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19310              :    && ix86_pre_reload_split ()
   19311              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19312              :                     STRIP_UNARY (operands[4]))
   19313              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19314              :                        STRIP_UNARY (operands[4]))
   19315              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19316              :                        STRIP_UNARY (operands[3]))
   19317              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19318              :                        STRIP_UNARY (operands[3])))))
   19319              :             return -1;
   19320              :           return 5945; /* *avx512fp16_vpternlogv8hf_1 */
   19321              : 
   19322              :         case 15:
   19323              :           if (!(
   19324              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19325              : ((64 == 64 || TARGET_AVX512VL
   19326              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19327              :    && ix86_pre_reload_split ()
   19328              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19329              :                     STRIP_UNARY (operands[4]))
   19330              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19331              :                        STRIP_UNARY (operands[4]))
   19332              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19333              :                        STRIP_UNARY (operands[3]))
   19334              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19335              :                        STRIP_UNARY (operands[3])))) && 
   19336              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19337              : (TARGET_AVX512F)))
   19338              :             return -1;
   19339              :           return 5972; /* *avx512bw_vpternlogv32bf_1 */
   19340              : 
   19341              :         case 16:
   19342              :           if (!(
   19343              : #line 14178 "/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              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19348              :                     STRIP_UNARY (operands[4]))
   19349              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19350              :                        STRIP_UNARY (operands[4]))
   19351              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19352              :                        STRIP_UNARY (operands[3]))
   19353              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19354              :                        STRIP_UNARY (operands[3])))) && 
   19355              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19356              : (TARGET_AVX)))
   19357              :             return -1;
   19358              :           return 5999; /* *avx512vl_vpternlogv16bf_1 */
   19359              : 
   19360              :         case 17:
   19361              :           if (!
   19362              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19363              : ((16 == 64 || TARGET_AVX512VL
   19364              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19365              :    && ix86_pre_reload_split ()
   19366              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19367              :                     STRIP_UNARY (operands[4]))
   19368              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19369              :                        STRIP_UNARY (operands[4]))
   19370              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19371              :                        STRIP_UNARY (operands[3]))
   19372              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19373              :                        STRIP_UNARY (operands[3])))))
   19374              :             return -1;
   19375              :           return 6026; /* *avx512vl_vpternlogv8bf_1 */
   19376              : 
   19377              :         case 18:
   19378              :           if (!(
   19379              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19380              : ((64 == 64 || TARGET_AVX512VL
   19381              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19382              :    && ix86_pre_reload_split ()
   19383              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19384              :                     STRIP_UNARY (operands[4]))
   19385              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19386              :                        STRIP_UNARY (operands[4]))
   19387              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19388              :                        STRIP_UNARY (operands[3]))
   19389              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19390              :                        STRIP_UNARY (operands[3])))) && 
   19391              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19392              : (TARGET_AVX512F)))
   19393              :             return -1;
   19394              :           return 6053; /* *avx512f_vpternlogv16sf_1 */
   19395              : 
   19396              :         case 19:
   19397              :           if (!(
   19398              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19399              : ((32 == 64 || TARGET_AVX512VL
   19400              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19401              :    && ix86_pre_reload_split ()
   19402              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19403              :                     STRIP_UNARY (operands[4]))
   19404              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19405              :                        STRIP_UNARY (operands[4]))
   19406              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19407              :                        STRIP_UNARY (operands[3]))
   19408              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19409              :                        STRIP_UNARY (operands[3])))) && 
   19410              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19411              : (TARGET_AVX)))
   19412              :             return -1;
   19413              :           return 6080; /* *avx512vl_vpternlogv8sf_1 */
   19414              : 
   19415              :         case 20:
   19416              :           if (!
   19417              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19418              : ((16 == 64 || TARGET_AVX512VL
   19419              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19420              :    && ix86_pre_reload_split ()
   19421              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19422              :                     STRIP_UNARY (operands[4]))
   19423              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19424              :                        STRIP_UNARY (operands[4]))
   19425              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19426              :                        STRIP_UNARY (operands[3]))
   19427              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19428              :                        STRIP_UNARY (operands[3])))))
   19429              :             return -1;
   19430              :           return 6107; /* *avx512vl_vpternlogv4sf_1 */
   19431              : 
   19432              :         case 21:
   19433              :           if (!(
   19434              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19435              : ((64 == 64 || TARGET_AVX512VL
   19436              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19437              :    && ix86_pre_reload_split ()
   19438              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19439              :                     STRIP_UNARY (operands[4]))
   19440              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19441              :                        STRIP_UNARY (operands[4]))
   19442              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19443              :                        STRIP_UNARY (operands[3]))
   19444              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19445              :                        STRIP_UNARY (operands[3])))) && 
   19446              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19447              : (TARGET_AVX512F)))
   19448              :             return -1;
   19449              :           return 6134; /* *avx512f_vpternlogv8df_1 */
   19450              : 
   19451              :         case 22:
   19452              :           if (!(
   19453              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19454              : ((32 == 64 || TARGET_AVX512VL
   19455              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19456              :    && ix86_pre_reload_split ()
   19457              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19458              :                     STRIP_UNARY (operands[4]))
   19459              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19460              :                        STRIP_UNARY (operands[4]))
   19461              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19462              :                        STRIP_UNARY (operands[3]))
   19463              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19464              :                        STRIP_UNARY (operands[3])))) && 
   19465              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19466              : (TARGET_AVX)))
   19467              :             return -1;
   19468              :           return 6161; /* *avx512vl_vpternlogv4df_1 */
   19469              : 
   19470              :         case 23:
   19471              :           if (!(
   19472              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19473              : ((16 == 64 || TARGET_AVX512VL
   19474              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19475              :    && ix86_pre_reload_split ()
   19476              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19477              :                     STRIP_UNARY (operands[4]))
   19478              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19479              :                        STRIP_UNARY (operands[4]))
   19480              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19481              :                        STRIP_UNARY (operands[3]))
   19482              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19483              :                        STRIP_UNARY (operands[3])))) && 
   19484              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19485              : (TARGET_SSE2)))
   19486              :             return -1;
   19487              :           return 6188; /* *avx512vl_vpternlogv2df_1 */
   19488              : 
   19489              :         case 24:
   19490              :           if (!(
   19491              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19492              : ((64 == 64 || TARGET_AVX512VL
   19493              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19494              :    && ix86_pre_reload_split ()
   19495              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19496              :                     STRIP_UNARY (operands[4]))
   19497              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19498              :                        STRIP_UNARY (operands[4]))
   19499              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19500              :                        STRIP_UNARY (operands[3]))
   19501              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19502              :                        STRIP_UNARY (operands[3])))) && 
   19503              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19504              : (TARGET_AVX512F)))
   19505              :             return -1;
   19506              :           return 5894; /* *avx512bw_vpternlogv32hf_1 */
   19507              : 
   19508              :         case 25:
   19509              :           if (!(
   19510              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19511              : ((32 == 64 || TARGET_AVX512VL
   19512              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19513              :    && ix86_pre_reload_split ()
   19514              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19515              :                     STRIP_UNARY (operands[4]))
   19516              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19517              :                        STRIP_UNARY (operands[4]))
   19518              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19519              :                        STRIP_UNARY (operands[3]))
   19520              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19521              :                        STRIP_UNARY (operands[3])))) && 
   19522              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19523              : (TARGET_AVX)))
   19524              :             return -1;
   19525              :           return 5921; /* *avx512vl_vpternlogv16hf_1 */
   19526              : 
   19527              :         case 26:
   19528              :           if (!
   19529              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19530              : ((16 == 64 || TARGET_AVX512VL
   19531              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19532              :    && ix86_pre_reload_split ()
   19533              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19534              :                     STRIP_UNARY (operands[4]))
   19535              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19536              :                        STRIP_UNARY (operands[4]))
   19537              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19538              :                        STRIP_UNARY (operands[3]))
   19539              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19540              :                        STRIP_UNARY (operands[3])))))
   19541              :             return -1;
   19542              :           return 5948; /* *avx512fp16_vpternlogv8hf_1 */
   19543              : 
   19544              :         case 27:
   19545              :           if (!(
   19546              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19547              : ((64 == 64 || TARGET_AVX512VL
   19548              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19549              :    && ix86_pre_reload_split ()
   19550              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19551              :                     STRIP_UNARY (operands[4]))
   19552              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19553              :                        STRIP_UNARY (operands[4]))
   19554              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19555              :                        STRIP_UNARY (operands[3]))
   19556              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19557              :                        STRIP_UNARY (operands[3])))) && 
   19558              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19559              : (TARGET_AVX512F)))
   19560              :             return -1;
   19561              :           return 5975; /* *avx512bw_vpternlogv32bf_1 */
   19562              : 
   19563              :         case 28:
   19564              :           if (!(
   19565              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19566              : ((32 == 64 || TARGET_AVX512VL
   19567              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19568              :    && ix86_pre_reload_split ()
   19569              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19570              :                     STRIP_UNARY (operands[4]))
   19571              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19572              :                        STRIP_UNARY (operands[4]))
   19573              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19574              :                        STRIP_UNARY (operands[3]))
   19575              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19576              :                        STRIP_UNARY (operands[3])))) && 
   19577              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19578              : (TARGET_AVX)))
   19579              :             return -1;
   19580              :           return 6002; /* *avx512vl_vpternlogv16bf_1 */
   19581              : 
   19582              :         case 29:
   19583              :           if (!
   19584              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19585              : ((16 == 64 || TARGET_AVX512VL
   19586              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19587              :    && ix86_pre_reload_split ()
   19588              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19589              :                     STRIP_UNARY (operands[4]))
   19590              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19591              :                        STRIP_UNARY (operands[4]))
   19592              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19593              :                        STRIP_UNARY (operands[3]))
   19594              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19595              :                        STRIP_UNARY (operands[3])))))
   19596              :             return -1;
   19597              :           return 6029; /* *avx512vl_vpternlogv8bf_1 */
   19598              : 
   19599              :         case 30:
   19600              :           if (!(
   19601              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19602              : ((64 == 64 || TARGET_AVX512VL
   19603              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19604              :    && ix86_pre_reload_split ()
   19605              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19606              :                     STRIP_UNARY (operands[4]))
   19607              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19608              :                        STRIP_UNARY (operands[4]))
   19609              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19610              :                        STRIP_UNARY (operands[3]))
   19611              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19612              :                        STRIP_UNARY (operands[3])))) && 
   19613              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19614              : (TARGET_AVX512F)))
   19615              :             return -1;
   19616              :           return 6056; /* *avx512f_vpternlogv16sf_1 */
   19617              : 
   19618              :         case 31:
   19619              :           if (!(
   19620              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19621              : ((32 == 64 || TARGET_AVX512VL
   19622              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19623              :    && ix86_pre_reload_split ()
   19624              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19625              :                     STRIP_UNARY (operands[4]))
   19626              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19627              :                        STRIP_UNARY (operands[4]))
   19628              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19629              :                        STRIP_UNARY (operands[3]))
   19630              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19631              :                        STRIP_UNARY (operands[3])))) && 
   19632              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19633              : (TARGET_AVX)))
   19634              :             return -1;
   19635              :           return 6083; /* *avx512vl_vpternlogv8sf_1 */
   19636              : 
   19637              :         case 32:
   19638              :           if (!
   19639              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19640              : ((16 == 64 || TARGET_AVX512VL
   19641              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19642              :    && ix86_pre_reload_split ()
   19643              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19644              :                     STRIP_UNARY (operands[4]))
   19645              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19646              :                        STRIP_UNARY (operands[4]))
   19647              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19648              :                        STRIP_UNARY (operands[3]))
   19649              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19650              :                        STRIP_UNARY (operands[3])))))
   19651              :             return -1;
   19652              :           return 6110; /* *avx512vl_vpternlogv4sf_1 */
   19653              : 
   19654              :         case 33:
   19655              :           if (!(
   19656              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19657              : ((64 == 64 || TARGET_AVX512VL
   19658              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19659              :    && ix86_pre_reload_split ()
   19660              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19661              :                     STRIP_UNARY (operands[4]))
   19662              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19663              :                        STRIP_UNARY (operands[4]))
   19664              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19665              :                        STRIP_UNARY (operands[3]))
   19666              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19667              :                        STRIP_UNARY (operands[3])))) && 
   19668              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19669              : (TARGET_AVX512F)))
   19670              :             return -1;
   19671              :           return 6137; /* *avx512f_vpternlogv8df_1 */
   19672              : 
   19673              :         case 34:
   19674              :           if (!(
   19675              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19676              : ((32 == 64 || TARGET_AVX512VL
   19677              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19678              :    && ix86_pre_reload_split ()
   19679              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19680              :                     STRIP_UNARY (operands[4]))
   19681              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19682              :                        STRIP_UNARY (operands[4]))
   19683              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19684              :                        STRIP_UNARY (operands[3]))
   19685              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19686              :                        STRIP_UNARY (operands[3])))) && 
   19687              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19688              : (TARGET_AVX)))
   19689              :             return -1;
   19690              :           return 6164; /* *avx512vl_vpternlogv4df_1 */
   19691              : 
   19692              :         case 35:
   19693              :           if (!(
   19694              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19695              : ((16 == 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 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19707              : (TARGET_SSE2)))
   19708              :             return -1;
   19709              :           return 6191; /* *avx512vl_vpternlogv2df_1 */
   19710              : 
   19711              :         case 36:
   19712              :           if (!(
   19713              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19714              : ((64 == 64 || TARGET_AVX512VL
   19715              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19716              :    && ix86_pre_reload_split ()) && 
   19717              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19718              : (TARGET_AVX512F)))
   19719              :             return -1;
   19720              :           return 6956; /* *avx512bw_vpternlogv32hf_3 */
   19721              : 
   19722              :         case 37:
   19723              :           if (!(
   19724              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19725              : ((32 == 64 || TARGET_AVX512VL
   19726              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19727              :    && ix86_pre_reload_split ()) && 
   19728              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19729              : (TARGET_AVX)))
   19730              :             return -1;
   19731              :           return 6965; /* *avx512vl_vpternlogv16hf_3 */
   19732              : 
   19733              :         case 38:
   19734              :           if (!
   19735              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19736              : ((16 == 64 || TARGET_AVX512VL
   19737              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19738              :    && ix86_pre_reload_split ()))
   19739              :             return -1;
   19740              :           return 6974; /* *avx512fp16_vpternlogv8hf_3 */
   19741              : 
   19742              :         case 39:
   19743              :           if (!(
   19744              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19745              : ((64 == 64 || TARGET_AVX512VL
   19746              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19747              :    && ix86_pre_reload_split ()) && 
   19748              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19749              : (TARGET_AVX512F)))
   19750              :             return -1;
   19751              :           return 6983; /* *avx512bw_vpternlogv32bf_3 */
   19752              : 
   19753              :         case 40:
   19754              :           if (!(
   19755              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19756              : ((32 == 64 || TARGET_AVX512VL
   19757              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19758              :    && ix86_pre_reload_split ()) && 
   19759              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19760              : (TARGET_AVX)))
   19761              :             return -1;
   19762              :           return 6992; /* *avx512vl_vpternlogv16bf_3 */
   19763              : 
   19764              :         case 41:
   19765              :           if (!
   19766              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19767              : ((16 == 64 || TARGET_AVX512VL
   19768              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19769              :    && ix86_pre_reload_split ()))
   19770              :             return -1;
   19771              :           return 7001; /* *avx512vl_vpternlogv8bf_3 */
   19772              : 
   19773              :         case 42:
   19774              :           if (!(
   19775              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19776              : ((64 == 64 || TARGET_AVX512VL
   19777              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19778              :    && ix86_pre_reload_split ()) && 
   19779              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19780              : (TARGET_AVX512F)))
   19781              :             return -1;
   19782              :           return 7010; /* *avx512f_vpternlogv16sf_3 */
   19783              : 
   19784              :         case 43:
   19785              :           if (!(
   19786              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19787              : ((32 == 64 || TARGET_AVX512VL
   19788              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19789              :    && ix86_pre_reload_split ()) && 
   19790              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19791              : (TARGET_AVX)))
   19792              :             return -1;
   19793              :           return 7019; /* *avx512vl_vpternlogv8sf_3 */
   19794              : 
   19795              :         case 44:
   19796              :           if (!
   19797              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19798              : ((16 == 64 || TARGET_AVX512VL
   19799              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19800              :    && ix86_pre_reload_split ()))
   19801              :             return -1;
   19802              :           return 7028; /* *avx512vl_vpternlogv4sf_3 */
   19803              : 
   19804              :         case 45:
   19805              :           if (!(
   19806              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19807              : ((64 == 64 || TARGET_AVX512VL
   19808              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19809              :    && ix86_pre_reload_split ()) && 
   19810              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19811              : (TARGET_AVX512F)))
   19812              :             return -1;
   19813              :           return 7037; /* *avx512f_vpternlogv8df_3 */
   19814              : 
   19815              :         case 46:
   19816              :           if (!(
   19817              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19818              : ((32 == 64 || TARGET_AVX512VL
   19819              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19820              :    && ix86_pre_reload_split ()) && 
   19821              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19822              : (TARGET_AVX)))
   19823              :             return -1;
   19824              :           return 7046; /* *avx512vl_vpternlogv4df_3 */
   19825              : 
   19826              :         case 47:
   19827              :           if (!(
   19828              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19829              : ((16 == 64 || TARGET_AVX512VL
   19830              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19831              :    && ix86_pre_reload_split ()) && 
   19832              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19833              : (TARGET_SSE2)))
   19834              :             return -1;
   19835              :           return 7055; /* *avx512vl_vpternlogv2df_3 */
   19836              : 
   19837              :         default:
   19838              :           return -1;
   19839              :         }
   19840              : 
   19841              :     case AND:
   19842              :       switch (pattern544 (x2))
   19843              :         {
   19844              :         case 0:
   19845              :           if (!(
   19846              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19847              : ((64 == 64 || TARGET_AVX512VL
   19848              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19849              :    && ix86_pre_reload_split ()
   19850              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19851              :                     STRIP_UNARY (operands[4]))
   19852              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19853              :                        STRIP_UNARY (operands[4]))
   19854              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19855              :                        STRIP_UNARY (operands[3]))
   19856              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19857              :                        STRIP_UNARY (operands[3])))) && 
   19858              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19859              : (TARGET_AVX512F)))
   19860              :             return -1;
   19861              :           return 6536; /* *avx512bw_vpternlogv32hf_2 */
   19862              : 
   19863              :         case 1:
   19864              :           if (!(
   19865              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19866              : ((32 == 64 || TARGET_AVX512VL
   19867              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19868              :    && ix86_pre_reload_split ()
   19869              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19870              :                     STRIP_UNARY (operands[4]))
   19871              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19872              :                        STRIP_UNARY (operands[4]))
   19873              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19874              :                        STRIP_UNARY (operands[3]))
   19875              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19876              :                        STRIP_UNARY (operands[3])))) && 
   19877              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19878              : (TARGET_AVX)))
   19879              :             return -1;
   19880              :           return 6563; /* *avx512vl_vpternlogv16hf_2 */
   19881              : 
   19882              :         case 2:
   19883              :           if (!
   19884              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19885              : ((16 == 64 || TARGET_AVX512VL
   19886              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19887              :    && ix86_pre_reload_split ()
   19888              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19889              :                     STRIP_UNARY (operands[4]))
   19890              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19891              :                        STRIP_UNARY (operands[4]))
   19892              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19893              :                        STRIP_UNARY (operands[3]))
   19894              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19895              :                        STRIP_UNARY (operands[3])))))
   19896              :             return -1;
   19897              :           return 6590; /* *avx512fp16_vpternlogv8hf_2 */
   19898              : 
   19899              :         case 3:
   19900              :           if (!(
   19901              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19902              : ((64 == 64 || TARGET_AVX512VL
   19903              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19904              :    && ix86_pre_reload_split ()
   19905              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19906              :                     STRIP_UNARY (operands[4]))
   19907              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19908              :                        STRIP_UNARY (operands[4]))
   19909              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19910              :                        STRIP_UNARY (operands[3]))
   19911              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19912              :                        STRIP_UNARY (operands[3])))) && 
   19913              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19914              : (TARGET_AVX512F)))
   19915              :             return -1;
   19916              :           return 6617; /* *avx512bw_vpternlogv32bf_2 */
   19917              : 
   19918              :         case 4:
   19919              :           if (!(
   19920              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19921              : ((32 == 64 || TARGET_AVX512VL
   19922              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19923              :    && ix86_pre_reload_split ()
   19924              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19925              :                     STRIP_UNARY (operands[4]))
   19926              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19927              :                        STRIP_UNARY (operands[4]))
   19928              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19929              :                        STRIP_UNARY (operands[3]))
   19930              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19931              :                        STRIP_UNARY (operands[3])))) && 
   19932              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19933              : (TARGET_AVX)))
   19934              :             return -1;
   19935              :           return 6644; /* *avx512vl_vpternlogv16bf_2 */
   19936              : 
   19937              :         case 5:
   19938              :           if (!
   19939              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19940              : ((16 == 64 || TARGET_AVX512VL
   19941              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19942              :    && ix86_pre_reload_split ()
   19943              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19944              :                     STRIP_UNARY (operands[4]))
   19945              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19946              :                        STRIP_UNARY (operands[4]))
   19947              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19948              :                        STRIP_UNARY (operands[3]))
   19949              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19950              :                        STRIP_UNARY (operands[3])))))
   19951              :             return -1;
   19952              :           return 6671; /* *avx512vl_vpternlogv8bf_2 */
   19953              : 
   19954              :         case 6:
   19955              :           if (!(
   19956              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19957              : ((64 == 64 || TARGET_AVX512VL
   19958              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19959              :    && ix86_pre_reload_split ()
   19960              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19961              :                     STRIP_UNARY (operands[4]))
   19962              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19963              :                        STRIP_UNARY (operands[4]))
   19964              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19965              :                        STRIP_UNARY (operands[3]))
   19966              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19967              :                        STRIP_UNARY (operands[3])))) && 
   19968              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19969              : (TARGET_AVX512F)))
   19970              :             return -1;
   19971              :           return 6698; /* *avx512f_vpternlogv16sf_2 */
   19972              : 
   19973              :         case 7:
   19974              :           if (!(
   19975              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19976              : ((32 == 64 || TARGET_AVX512VL
   19977              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19978              :    && ix86_pre_reload_split ()
   19979              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19980              :                     STRIP_UNARY (operands[4]))
   19981              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19982              :                        STRIP_UNARY (operands[4]))
   19983              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   19984              :                        STRIP_UNARY (operands[3]))
   19985              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   19986              :                        STRIP_UNARY (operands[3])))) && 
   19987              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19988              : (TARGET_AVX)))
   19989              :             return -1;
   19990              :           return 6725; /* *avx512vl_vpternlogv8sf_2 */
   19991              : 
   19992              :         case 8:
   19993              :           if (!
   19994              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   19995              : ((16 == 64 || TARGET_AVX512VL
   19996              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   19997              :    && ix86_pre_reload_split ()
   19998              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   19999              :                     STRIP_UNARY (operands[4]))
   20000              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20001              :                        STRIP_UNARY (operands[4]))
   20002              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20003              :                        STRIP_UNARY (operands[3]))
   20004              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20005              :                        STRIP_UNARY (operands[3])))))
   20006              :             return -1;
   20007              :           return 6752; /* *avx512vl_vpternlogv4sf_2 */
   20008              : 
   20009              :         case 9:
   20010              :           if (!(
   20011              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20012              : ((64 == 64 || TARGET_AVX512VL
   20013              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20014              :    && ix86_pre_reload_split ()
   20015              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20016              :                     STRIP_UNARY (operands[4]))
   20017              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20018              :                        STRIP_UNARY (operands[4]))
   20019              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20020              :                        STRIP_UNARY (operands[3]))
   20021              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20022              :                        STRIP_UNARY (operands[3])))) && 
   20023              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20024              : (TARGET_AVX512F)))
   20025              :             return -1;
   20026              :           return 6779; /* *avx512f_vpternlogv8df_2 */
   20027              : 
   20028              :         case 10:
   20029              :           if (!(
   20030              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20031              : ((32 == 64 || TARGET_AVX512VL
   20032              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20033              :    && ix86_pre_reload_split ()
   20034              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20035              :                     STRIP_UNARY (operands[4]))
   20036              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20037              :                        STRIP_UNARY (operands[4]))
   20038              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20039              :                        STRIP_UNARY (operands[3]))
   20040              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20041              :                        STRIP_UNARY (operands[3])))) && 
   20042              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20043              : (TARGET_AVX)))
   20044              :             return -1;
   20045              :           return 6806; /* *avx512vl_vpternlogv4df_2 */
   20046              : 
   20047              :         case 11:
   20048              :           if (!(
   20049              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20050              : ((16 == 64 || TARGET_AVX512VL
   20051              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20052              :    && ix86_pre_reload_split ()
   20053              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20054              :                     STRIP_UNARY (operands[4]))
   20055              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20056              :                        STRIP_UNARY (operands[4]))
   20057              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20058              :                        STRIP_UNARY (operands[3]))
   20059              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20060              :                        STRIP_UNARY (operands[3])))) && 
   20061              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20062              : (TARGET_SSE2)))
   20063              :             return -1;
   20064              :           return 6833; /* *avx512vl_vpternlogv2df_2 */
   20065              : 
   20066              :         default:
   20067              :           return -1;
   20068              :         }
   20069              : 
   20070              :     case IOR:
   20071              :       switch (pattern544 (x2))
   20072              :         {
   20073              :         case 0:
   20074              :           if (!(
   20075              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20076              : ((64 == 64 || TARGET_AVX512VL
   20077              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20078              :    && ix86_pre_reload_split ()
   20079              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20080              :                     STRIP_UNARY (operands[4]))
   20081              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20082              :                        STRIP_UNARY (operands[4]))
   20083              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20084              :                        STRIP_UNARY (operands[3]))
   20085              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20086              :                        STRIP_UNARY (operands[3])))) && 
   20087              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20088              : (TARGET_AVX512F)))
   20089              :             return -1;
   20090              :           return 6539; /* *avx512bw_vpternlogv32hf_2 */
   20091              : 
   20092              :         case 1:
   20093              :           if (!(
   20094              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20095              : ((32 == 64 || TARGET_AVX512VL
   20096              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20097              :    && ix86_pre_reload_split ()
   20098              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20099              :                     STRIP_UNARY (operands[4]))
   20100              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20101              :                        STRIP_UNARY (operands[4]))
   20102              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20103              :                        STRIP_UNARY (operands[3]))
   20104              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20105              :                        STRIP_UNARY (operands[3])))) && 
   20106              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20107              : (TARGET_AVX)))
   20108              :             return -1;
   20109              :           return 6566; /* *avx512vl_vpternlogv16hf_2 */
   20110              : 
   20111              :         case 2:
   20112              :           if (!
   20113              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20114              : ((16 == 64 || TARGET_AVX512VL
   20115              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20116              :    && ix86_pre_reload_split ()
   20117              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20118              :                     STRIP_UNARY (operands[4]))
   20119              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20120              :                        STRIP_UNARY (operands[4]))
   20121              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20122              :                        STRIP_UNARY (operands[3]))
   20123              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20124              :                        STRIP_UNARY (operands[3])))))
   20125              :             return -1;
   20126              :           return 6593; /* *avx512fp16_vpternlogv8hf_2 */
   20127              : 
   20128              :         case 3:
   20129              :           if (!(
   20130              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20131              : ((64 == 64 || TARGET_AVX512VL
   20132              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20133              :    && ix86_pre_reload_split ()
   20134              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20135              :                     STRIP_UNARY (operands[4]))
   20136              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20137              :                        STRIP_UNARY (operands[4]))
   20138              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20139              :                        STRIP_UNARY (operands[3]))
   20140              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20141              :                        STRIP_UNARY (operands[3])))) && 
   20142              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20143              : (TARGET_AVX512F)))
   20144              :             return -1;
   20145              :           return 6620; /* *avx512bw_vpternlogv32bf_2 */
   20146              : 
   20147              :         case 4:
   20148              :           if (!(
   20149              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20150              : ((32 == 64 || TARGET_AVX512VL
   20151              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20152              :    && ix86_pre_reload_split ()
   20153              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20154              :                     STRIP_UNARY (operands[4]))
   20155              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20156              :                        STRIP_UNARY (operands[4]))
   20157              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20158              :                        STRIP_UNARY (operands[3]))
   20159              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20160              :                        STRIP_UNARY (operands[3])))) && 
   20161              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20162              : (TARGET_AVX)))
   20163              :             return -1;
   20164              :           return 6647; /* *avx512vl_vpternlogv16bf_2 */
   20165              : 
   20166              :         case 5:
   20167              :           if (!
   20168              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20169              : ((16 == 64 || TARGET_AVX512VL
   20170              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20171              :    && ix86_pre_reload_split ()
   20172              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20173              :                     STRIP_UNARY (operands[4]))
   20174              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20175              :                        STRIP_UNARY (operands[4]))
   20176              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20177              :                        STRIP_UNARY (operands[3]))
   20178              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20179              :                        STRIP_UNARY (operands[3])))))
   20180              :             return -1;
   20181              :           return 6674; /* *avx512vl_vpternlogv8bf_2 */
   20182              : 
   20183              :         case 6:
   20184              :           if (!(
   20185              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20186              : ((64 == 64 || TARGET_AVX512VL
   20187              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20188              :    && ix86_pre_reload_split ()
   20189              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20190              :                     STRIP_UNARY (operands[4]))
   20191              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20192              :                        STRIP_UNARY (operands[4]))
   20193              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20194              :                        STRIP_UNARY (operands[3]))
   20195              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20196              :                        STRIP_UNARY (operands[3])))) && 
   20197              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20198              : (TARGET_AVX512F)))
   20199              :             return -1;
   20200              :           return 6701; /* *avx512f_vpternlogv16sf_2 */
   20201              : 
   20202              :         case 7:
   20203              :           if (!(
   20204              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20205              : ((32 == 64 || TARGET_AVX512VL
   20206              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20207              :    && ix86_pre_reload_split ()
   20208              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20209              :                     STRIP_UNARY (operands[4]))
   20210              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20211              :                        STRIP_UNARY (operands[4]))
   20212              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20213              :                        STRIP_UNARY (operands[3]))
   20214              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20215              :                        STRIP_UNARY (operands[3])))) && 
   20216              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20217              : (TARGET_AVX)))
   20218              :             return -1;
   20219              :           return 6728; /* *avx512vl_vpternlogv8sf_2 */
   20220              : 
   20221              :         case 8:
   20222              :           if (!
   20223              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20224              : ((16 == 64 || TARGET_AVX512VL
   20225              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20226              :    && ix86_pre_reload_split ()
   20227              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20228              :                     STRIP_UNARY (operands[4]))
   20229              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20230              :                        STRIP_UNARY (operands[4]))
   20231              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20232              :                        STRIP_UNARY (operands[3]))
   20233              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20234              :                        STRIP_UNARY (operands[3])))))
   20235              :             return -1;
   20236              :           return 6755; /* *avx512vl_vpternlogv4sf_2 */
   20237              : 
   20238              :         case 9:
   20239              :           if (!(
   20240              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20241              : ((64 == 64 || TARGET_AVX512VL
   20242              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20243              :    && ix86_pre_reload_split ()
   20244              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20245              :                     STRIP_UNARY (operands[4]))
   20246              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20247              :                        STRIP_UNARY (operands[4]))
   20248              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20249              :                        STRIP_UNARY (operands[3]))
   20250              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20251              :                        STRIP_UNARY (operands[3])))) && 
   20252              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20253              : (TARGET_AVX512F)))
   20254              :             return -1;
   20255              :           return 6782; /* *avx512f_vpternlogv8df_2 */
   20256              : 
   20257              :         case 10:
   20258              :           if (!(
   20259              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20260              : ((32 == 64 || TARGET_AVX512VL
   20261              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20262              :    && ix86_pre_reload_split ()
   20263              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20264              :                     STRIP_UNARY (operands[4]))
   20265              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20266              :                        STRIP_UNARY (operands[4]))
   20267              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20268              :                        STRIP_UNARY (operands[3]))
   20269              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20270              :                        STRIP_UNARY (operands[3])))) && 
   20271              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20272              : (TARGET_AVX)))
   20273              :             return -1;
   20274              :           return 6809; /* *avx512vl_vpternlogv4df_2 */
   20275              : 
   20276              :         case 11:
   20277              :           if (!(
   20278              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20279              : ((16 == 64 || TARGET_AVX512VL
   20280              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20281              :    && ix86_pre_reload_split ()
   20282              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20283              :                     STRIP_UNARY (operands[4]))
   20284              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20285              :                        STRIP_UNARY (operands[4]))
   20286              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20287              :                        STRIP_UNARY (operands[3]))
   20288              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20289              :                        STRIP_UNARY (operands[3])))) && 
   20290              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20291              : (TARGET_SSE2)))
   20292              :             return -1;
   20293              :           return 6836; /* *avx512vl_vpternlogv2df_2 */
   20294              : 
   20295              :         default:
   20296              :           return -1;
   20297              :         }
   20298              : 
   20299              :     case XOR:
   20300              :       switch (pattern544 (x2))
   20301              :         {
   20302              :         case 0:
   20303              :           if (!(
   20304              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20305              : ((64 == 64 || TARGET_AVX512VL
   20306              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20307              :    && ix86_pre_reload_split ()
   20308              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20309              :                     STRIP_UNARY (operands[4]))
   20310              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20311              :                        STRIP_UNARY (operands[4]))
   20312              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20313              :                        STRIP_UNARY (operands[3]))
   20314              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20315              :                        STRIP_UNARY (operands[3])))) && 
   20316              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20317              : (TARGET_AVX512F)))
   20318              :             return -1;
   20319              :           return 6542; /* *avx512bw_vpternlogv32hf_2 */
   20320              : 
   20321              :         case 1:
   20322              :           if (!(
   20323              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20324              : ((32 == 64 || TARGET_AVX512VL
   20325              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20326              :    && ix86_pre_reload_split ()
   20327              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20328              :                     STRIP_UNARY (operands[4]))
   20329              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20330              :                        STRIP_UNARY (operands[4]))
   20331              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20332              :                        STRIP_UNARY (operands[3]))
   20333              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20334              :                        STRIP_UNARY (operands[3])))) && 
   20335              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20336              : (TARGET_AVX)))
   20337              :             return -1;
   20338              :           return 6569; /* *avx512vl_vpternlogv16hf_2 */
   20339              : 
   20340              :         case 2:
   20341              :           if (!
   20342              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20343              : ((16 == 64 || TARGET_AVX512VL
   20344              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20345              :    && ix86_pre_reload_split ()
   20346              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20347              :                     STRIP_UNARY (operands[4]))
   20348              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20349              :                        STRIP_UNARY (operands[4]))
   20350              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20351              :                        STRIP_UNARY (operands[3]))
   20352              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20353              :                        STRIP_UNARY (operands[3])))))
   20354              :             return -1;
   20355              :           return 6596; /* *avx512fp16_vpternlogv8hf_2 */
   20356              : 
   20357              :         case 3:
   20358              :           if (!(
   20359              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20360              : ((64 == 64 || TARGET_AVX512VL
   20361              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20362              :    && ix86_pre_reload_split ()
   20363              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20364              :                     STRIP_UNARY (operands[4]))
   20365              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20366              :                        STRIP_UNARY (operands[4]))
   20367              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20368              :                        STRIP_UNARY (operands[3]))
   20369              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20370              :                        STRIP_UNARY (operands[3])))) && 
   20371              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20372              : (TARGET_AVX512F)))
   20373              :             return -1;
   20374              :           return 6623; /* *avx512bw_vpternlogv32bf_2 */
   20375              : 
   20376              :         case 4:
   20377              :           if (!(
   20378              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20379              : ((32 == 64 || TARGET_AVX512VL
   20380              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20381              :    && ix86_pre_reload_split ()
   20382              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20383              :                     STRIP_UNARY (operands[4]))
   20384              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20385              :                        STRIP_UNARY (operands[4]))
   20386              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20387              :                        STRIP_UNARY (operands[3]))
   20388              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20389              :                        STRIP_UNARY (operands[3])))) && 
   20390              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20391              : (TARGET_AVX)))
   20392              :             return -1;
   20393              :           return 6650; /* *avx512vl_vpternlogv16bf_2 */
   20394              : 
   20395              :         case 5:
   20396              :           if (!
   20397              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20398              : ((16 == 64 || TARGET_AVX512VL
   20399              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20400              :    && ix86_pre_reload_split ()
   20401              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20402              :                     STRIP_UNARY (operands[4]))
   20403              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20404              :                        STRIP_UNARY (operands[4]))
   20405              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20406              :                        STRIP_UNARY (operands[3]))
   20407              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20408              :                        STRIP_UNARY (operands[3])))))
   20409              :             return -1;
   20410              :           return 6677; /* *avx512vl_vpternlogv8bf_2 */
   20411              : 
   20412              :         case 6:
   20413              :           if (!(
   20414              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20415              : ((64 == 64 || TARGET_AVX512VL
   20416              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20417              :    && ix86_pre_reload_split ()
   20418              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20419              :                     STRIP_UNARY (operands[4]))
   20420              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20421              :                        STRIP_UNARY (operands[4]))
   20422              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20423              :                        STRIP_UNARY (operands[3]))
   20424              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20425              :                        STRIP_UNARY (operands[3])))) && 
   20426              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20427              : (TARGET_AVX512F)))
   20428              :             return -1;
   20429              :           return 6704; /* *avx512f_vpternlogv16sf_2 */
   20430              : 
   20431              :         case 7:
   20432              :           if (!(
   20433              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20434              : ((32 == 64 || TARGET_AVX512VL
   20435              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20436              :    && ix86_pre_reload_split ()
   20437              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20438              :                     STRIP_UNARY (operands[4]))
   20439              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20440              :                        STRIP_UNARY (operands[4]))
   20441              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20442              :                        STRIP_UNARY (operands[3]))
   20443              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20444              :                        STRIP_UNARY (operands[3])))) && 
   20445              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20446              : (TARGET_AVX)))
   20447              :             return -1;
   20448              :           return 6731; /* *avx512vl_vpternlogv8sf_2 */
   20449              : 
   20450              :         case 8:
   20451              :           if (!
   20452              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20453              : ((16 == 64 || TARGET_AVX512VL
   20454              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20455              :    && ix86_pre_reload_split ()
   20456              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20457              :                     STRIP_UNARY (operands[4]))
   20458              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20459              :                        STRIP_UNARY (operands[4]))
   20460              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20461              :                        STRIP_UNARY (operands[3]))
   20462              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20463              :                        STRIP_UNARY (operands[3])))))
   20464              :             return -1;
   20465              :           return 6758; /* *avx512vl_vpternlogv4sf_2 */
   20466              : 
   20467              :         case 9:
   20468              :           if (!(
   20469              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20470              : ((64 == 64 || TARGET_AVX512VL
   20471              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20472              :    && ix86_pre_reload_split ()
   20473              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20474              :                     STRIP_UNARY (operands[4]))
   20475              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20476              :                        STRIP_UNARY (operands[4]))
   20477              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20478              :                        STRIP_UNARY (operands[3]))
   20479              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20480              :                        STRIP_UNARY (operands[3])))) && 
   20481              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20482              : (TARGET_AVX512F)))
   20483              :             return -1;
   20484              :           return 6785; /* *avx512f_vpternlogv8df_2 */
   20485              : 
   20486              :         case 10:
   20487              :           if (!(
   20488              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20489              : ((32 == 64 || TARGET_AVX512VL
   20490              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20491              :    && ix86_pre_reload_split ()
   20492              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20493              :                     STRIP_UNARY (operands[4]))
   20494              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20495              :                        STRIP_UNARY (operands[4]))
   20496              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20497              :                        STRIP_UNARY (operands[3]))
   20498              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20499              :                        STRIP_UNARY (operands[3])))) && 
   20500              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20501              : (TARGET_AVX)))
   20502              :             return -1;
   20503              :           return 6812; /* *avx512vl_vpternlogv4df_2 */
   20504              : 
   20505              :         case 11:
   20506              :           if (!(
   20507              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20508              : ((16 == 64 || TARGET_AVX512VL
   20509              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   20510              :    && ix86_pre_reload_split ()
   20511              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   20512              :                     STRIP_UNARY (operands[4]))
   20513              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20514              :                        STRIP_UNARY (operands[4]))
   20515              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   20516              :                        STRIP_UNARY (operands[3]))
   20517              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   20518              :                        STRIP_UNARY (operands[3])))) && 
   20519              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20520              : (TARGET_SSE2)))
   20521              :             return -1;
   20522              :           return 6839; /* *avx512vl_vpternlogv2df_2 */
   20523              : 
   20524              :         default:
   20525              :           return -1;
   20526              :         }
   20527              : 
   20528              :     default:
   20529              :       return -1;
   20530              :     }
   20531              : }
   20532              : 
   20533              :  int
   20534              : recog_330 (rtx x1 ATTRIBUTE_UNUSED,
   20535              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   20536              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   20537              : {
   20538              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   20539              :   rtx x2, x3, x4, x5, x6, x7, x8;
   20540              :   int res ATTRIBUTE_UNUSED;
   20541              :   x2 = XEXP (x1, 0);
   20542              :   operands[0] = x2;
   20543              :   x3 = XEXP (x1, 1);
   20544              :   x4 = XEXP (x3, 1);
   20545              :   operands[2] = x4;
   20546              :   x5 = XEXP (x3, 0);
   20547              :   switch (GET_CODE (x5))
   20548              :     {
   20549              :     case REG:
   20550              :     case SUBREG:
   20551              :     case MEM:
   20552              :     case VEC_DUPLICATE:
   20553              :       return recog_278 (x1, insn, pnum_clobbers);
   20554              : 
   20555              :     case NEG:
   20556              :       x6 = XEXP (x5, 0);
   20557              :       operands[1] = x6;
   20558              :       x7 = XEXP (x3, 2);
   20559              :       switch (GET_CODE (x7))
   20560              :         {
   20561              :         case REG:
   20562              :         case SUBREG:
   20563              :         case MEM:
   20564              :         case VEC_DUPLICATE:
   20565              :           operands[3] = x7;
   20566              :           switch (GET_MODE (operands[0]))
   20567              :             {
   20568              :             case E_V4SFmode:
   20569              :               if (!register_operand (operands[0], E_V4SFmode)
   20570              :                   || GET_MODE (x3) != E_V4SFmode
   20571              :                   || GET_MODE (x5) != E_V4SFmode)
   20572              :                 return -1;
   20573              :               if (nonimmediate_operand (operands[1], E_V4SFmode)
   20574              :                   && nonimmediate_operand (operands[2], E_V4SFmode)
   20575              :                   && nonimmediate_operand (operands[3], E_V4SFmode)
   20576              :                   && 
   20577              : #line 6523 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20578              : (TARGET_FMA || TARGET_FMA4))
   20579              :                 return 4004; /* *fma_fnmadd_v4sf */
   20580              :               if (!bcst_vector_operand (operands[1], E_V4SFmode)
   20581              :                   || !bcst_vector_operand (operands[2], E_V4SFmode)
   20582              :                   || !bcst_vector_operand (operands[3], E_V4SFmode)
   20583              :                   || !(
   20584              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20585              : (TARGET_AVX512F && 1 && 1) && 
   20586              : #line 6337 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20587              : (TARGET_AVX512VL)))
   20588              :                 return -1;
   20589              :               return 4024; /* *fma_fnmadd_v4sf */
   20590              : 
   20591              :             case E_V2DFmode:
   20592              :               if (!register_operand (operands[0], E_V2DFmode)
   20593              :                   || GET_MODE (x3) != E_V2DFmode
   20594              :                   || GET_MODE (x5) != E_V2DFmode)
   20595              :                 return -1;
   20596              :               if (nonimmediate_operand (operands[1], E_V2DFmode)
   20597              :                   && nonimmediate_operand (operands[2], E_V2DFmode)
   20598              :                   && nonimmediate_operand (operands[3], E_V2DFmode)
   20599              :                   && 
   20600              : #line 6523 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20601              : (TARGET_FMA || TARGET_FMA4))
   20602              :                 return 4005; /* *fma_fnmadd_v2df */
   20603              :               if (!bcst_vector_operand (operands[1], E_V2DFmode)
   20604              :                   || !bcst_vector_operand (operands[2], E_V2DFmode)
   20605              :                   || !bcst_vector_operand (operands[3], E_V2DFmode)
   20606              :                   || !(
   20607              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20608              : (TARGET_AVX512F && 1 && 1) && 
   20609              : #line 6338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20610              : (TARGET_AVX512VL)))
   20611              :                 return -1;
   20612              :               return 4033; /* *fma_fnmadd_v2df */
   20613              : 
   20614              :             case E_V8SFmode:
   20615              :               if (!register_operand (operands[0], E_V8SFmode)
   20616              :                   || GET_MODE (x3) != E_V8SFmode
   20617              :                   || GET_MODE (x5) != E_V8SFmode)
   20618              :                 return -1;
   20619              :               if (nonimmediate_operand (operands[1], E_V8SFmode)
   20620              :                   && nonimmediate_operand (operands[2], E_V8SFmode)
   20621              :                   && nonimmediate_operand (operands[3], E_V8SFmode)
   20622              :                   && 
   20623              : #line 6523 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20624              : (TARGET_FMA || TARGET_FMA4))
   20625              :                 return 4006; /* *fma_fnmadd_v8sf */
   20626              :               if (!bcst_vector_operand (operands[1], E_V8SFmode)
   20627              :                   || !bcst_vector_operand (operands[2], E_V8SFmode)
   20628              :                   || !bcst_vector_operand (operands[3], E_V8SFmode)
   20629              :                   || !(
   20630              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20631              : (TARGET_AVX512F && 1 && 1) && 
   20632              : #line 6337 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20633              : (TARGET_AVX512VL)))
   20634              :                 return -1;
   20635              :               return 4022; /* *fma_fnmadd_v8sf */
   20636              : 
   20637              :             case E_V4DFmode:
   20638              :               if (!register_operand (operands[0], E_V4DFmode)
   20639              :                   || GET_MODE (x3) != E_V4DFmode
   20640              :                   || GET_MODE (x5) != E_V4DFmode)
   20641              :                 return -1;
   20642              :               if (nonimmediate_operand (operands[1], E_V4DFmode)
   20643              :                   && nonimmediate_operand (operands[2], E_V4DFmode)
   20644              :                   && nonimmediate_operand (operands[3], E_V4DFmode)
   20645              :                   && 
   20646              : #line 6523 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20647              : (TARGET_FMA || TARGET_FMA4))
   20648              :                 return 4007; /* *fma_fnmadd_v4df */
   20649              :               if (!bcst_vector_operand (operands[1], E_V4DFmode)
   20650              :                   || !bcst_vector_operand (operands[2], E_V4DFmode)
   20651              :                   || !bcst_vector_operand (operands[3], E_V4DFmode)
   20652              :                   || !(
   20653              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20654              : (TARGET_AVX512F && 1 && 1) && 
   20655              : #line 6338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20656              : (TARGET_AVX512VL)))
   20657              :                 return -1;
   20658              :               return 4031; /* *fma_fnmadd_v4df */
   20659              : 
   20660              :             case E_V32HFmode:
   20661              :               if (pattern879 (x3, 
   20662              : E_V32HFmode) != 0
   20663              :                   || !(
   20664              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20665              : (TARGET_AVX512F && 1 && 1) && 
   20666              : #line 6333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20667              : (TARGET_AVX512FP16)))
   20668              :                 return -1;
   20669              :               return 4008; /* *fma_fnmadd_v32hf */
   20670              : 
   20671              :             case E_V16HFmode:
   20672              :               if (pattern879 (x3, 
   20673              : E_V16HFmode) != 0
   20674              :                   || !(
   20675              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20676              : (TARGET_AVX512F && 1 && 1) && 
   20677              : #line 6334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20678              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   20679              :                 return -1;
   20680              :               return 4012; /* *fma_fnmadd_v16hf */
   20681              : 
   20682              :             case E_V8HFmode:
   20683              :               if (pattern879 (x3, 
   20684              : E_V8HFmode) != 0
   20685              :                   || !(
   20686              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20687              : (TARGET_AVX512F && 1 && 1) && 
   20688              : #line 6335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20689              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   20690              :                 return -1;
   20691              :               return 4014; /* *fma_fnmadd_v8hf */
   20692              : 
   20693              :             case E_V16SFmode:
   20694              :               if (pattern879 (x3, 
   20695              : E_V16SFmode) != 0
   20696              :                   || !
   20697              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20698              : (TARGET_AVX512F && 1 && 1))
   20699              :                 return -1;
   20700              :               return 4018; /* *fma_fnmadd_v16sf */
   20701              : 
   20702              :             case E_V8DFmode:
   20703              :               if (pattern879 (x3, 
   20704              : E_V8DFmode) != 0
   20705              :                   || !
   20706              : #line 6555 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20707              : (TARGET_AVX512F && 1 && 1))
   20708              :                 return -1;
   20709              :               return 4027; /* *fma_fnmadd_v8df */
   20710              : 
   20711              :             case E_V32BFmode:
   20712              :               if (pattern929 (x3, 
   20713              : E_V32BFmode) != 0
   20714              :                   || !
   20715              : #line 33284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20716              : (TARGET_AVX10_2))
   20717              :                 return -1;
   20718              :               return 10744; /* avx10_2_fnmaddbf16_v32bf */
   20719              : 
   20720              :             case E_V16BFmode:
   20721              :               if (pattern929 (x3, 
   20722              : E_V16BFmode) != 0
   20723              :                   || !
   20724              : #line 33284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20725              : (TARGET_AVX10_2))
   20726              :                 return -1;
   20727              :               return 10746; /* avx10_2_fnmaddbf16_v16bf */
   20728              : 
   20729              :             case E_V8BFmode:
   20730              :               if (pattern929 (x3, 
   20731              : E_V8BFmode) != 0
   20732              :                   || !
   20733              : #line 33284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20734              : (TARGET_AVX10_2))
   20735              :                 return -1;
   20736              :               return 10748; /* avx10_2_fnmaddbf16_v8bf */
   20737              : 
   20738              :             default:
   20739              :               return -1;
   20740              :             }
   20741              : 
   20742              :         case NEG:
   20743              :           x8 = XEXP (x7, 0);
   20744              :           operands[3] = x8;
   20745              :           switch (GET_MODE (operands[0]))
   20746              :             {
   20747              :             case E_V4SFmode:
   20748              :               if (pattern880 (x3, 
   20749              : E_V4SFmode) != 0)
   20750              :                 return -1;
   20751              :               if (nonimmediate_operand (operands[1], E_V4SFmode)
   20752              :                   && nonimmediate_operand (operands[2], E_V4SFmode)
   20753              :                   && nonimmediate_operand (operands[3], E_V4SFmode)
   20754              :                   && 
   20755              : #line 6630 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20756              : (TARGET_FMA || TARGET_FMA4))
   20757              :                 return 4063; /* *fma_fnmsub_v4sf */
   20758              :               if (!bcst_vector_operand (operands[1], E_V4SFmode)
   20759              :                   || !bcst_vector_operand (operands[2], E_V4SFmode)
   20760              :                   || !bcst_vector_operand (operands[3], E_V4SFmode)
   20761              :                   || !(
   20762              : #line 6663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20763              : (TARGET_AVX512F && 1 && 1) && 
   20764              : #line 6337 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20765              : (TARGET_AVX512VL)))
   20766              :                 return -1;
   20767              :               return 4095; /* *fma_fnmsub_v4sf */
   20768              : 
   20769              :             case E_V2DFmode:
   20770              :               if (pattern880 (x3, 
   20771              : E_V2DFmode) != 0)
   20772              :                 return -1;
   20773              :               if (nonimmediate_operand (operands[1], E_V2DFmode)
   20774              :                   && nonimmediate_operand (operands[2], E_V2DFmode)
   20775              :                   && nonimmediate_operand (operands[3], E_V2DFmode)
   20776              :                   && 
   20777              : #line 6630 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20778              : (TARGET_FMA || TARGET_FMA4))
   20779              :                 return 4067; /* *fma_fnmsub_v2df */
   20780              :               if (!bcst_vector_operand (operands[1], E_V2DFmode)
   20781              :                   || !bcst_vector_operand (operands[2], E_V2DFmode)
   20782              :                   || !bcst_vector_operand (operands[3], E_V2DFmode)
   20783              :                   || !(
   20784              : #line 6663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20785              : (TARGET_AVX512F && 1 && 1) && 
   20786              : #line 6338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20787              : (TARGET_AVX512VL)))
   20788              :                 return -1;
   20789              :               return 4104; /* *fma_fnmsub_v2df */
   20790              : 
   20791              :             case E_V8SFmode:
   20792              :               if (pattern880 (x3, 
   20793              : E_V8SFmode) != 0)
   20794              :                 return -1;
   20795              :               if (nonimmediate_operand (operands[1], E_V8SFmode)
   20796              :                   && nonimmediate_operand (operands[2], E_V8SFmode)
   20797              :                   && nonimmediate_operand (operands[3], E_V8SFmode)
   20798              :                   && 
   20799              : #line 6630 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20800              : (TARGET_FMA || TARGET_FMA4))
   20801              :                 return 4071; /* *fma_fnmsub_v8sf */
   20802              :               if (!bcst_vector_operand (operands[1], E_V8SFmode)
   20803              :                   || !bcst_vector_operand (operands[2], E_V8SFmode)
   20804              :                   || !bcst_vector_operand (operands[3], E_V8SFmode)
   20805              :                   || !(
   20806              : #line 6663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20807              : (TARGET_AVX512F && 1 && 1) && 
   20808              : #line 6337 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20809              : (TARGET_AVX512VL)))
   20810              :                 return -1;
   20811              :               return 4093; /* *fma_fnmsub_v8sf */
   20812              : 
   20813              :             case E_V4DFmode:
   20814              :               if (pattern880 (x3, 
   20815              : E_V4DFmode) != 0)
   20816              :                 return -1;
   20817              :               if (nonimmediate_operand (operands[1], E_V4DFmode)
   20818              :                   && nonimmediate_operand (operands[2], E_V4DFmode)
   20819              :                   && nonimmediate_operand (operands[3], E_V4DFmode)
   20820              :                   && 
   20821              : #line 6630 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20822              : (TARGET_FMA || TARGET_FMA4))
   20823              :                 return 4075; /* *fma_fnmsub_v4df */
   20824              :               if (!bcst_vector_operand (operands[1], E_V4DFmode)
   20825              :                   || !bcst_vector_operand (operands[2], E_V4DFmode)
   20826              :                   || !bcst_vector_operand (operands[3], E_V4DFmode)
   20827              :                   || !(
   20828              : #line 6663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20829              : (TARGET_AVX512F && 1 && 1) && 
   20830              : #line 6338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20831              : (TARGET_AVX512VL)))
   20832              :                 return -1;
   20833              :               return 4102; /* *fma_fnmsub_v4df */
   20834              : 
   20835              :             case E_V32HFmode:
   20836              :               if (pattern881 (x3, 
   20837              : E_V32HFmode) != 0
   20838              :                   || !(
   20839              : #line 6663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20840              : (TARGET_AVX512F && 1 && 1) && 
   20841              : #line 6333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20842              : (TARGET_AVX512FP16)))
   20843              :                 return -1;
   20844              :               return 4079; /* *fma_fnmsub_v32hf */
   20845              : 
   20846              :             case E_V16HFmode:
   20847              :               if (pattern881 (x3, 
   20848              : E_V16HFmode) != 0
   20849              :                   || !(
   20850              : #line 6663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20851              : (TARGET_AVX512F && 1 && 1) && 
   20852              : #line 6334 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20853              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   20854              :                 return -1;
   20855              :               return 4083; /* *fma_fnmsub_v16hf */
   20856              : 
   20857              :             case E_V8HFmode:
   20858              :               if (pattern881 (x3, 
   20859              : E_V8HFmode) != 0
   20860              :                   || !(
   20861              : #line 6663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20862              : (TARGET_AVX512F && 1 && 1) && 
   20863              : #line 6335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20864              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   20865              :                 return -1;
   20866              :               return 4085; /* *fma_fnmsub_v8hf */
   20867              : 
   20868              :             case E_V16SFmode:
   20869              :               if (pattern881 (x3, 
   20870              : E_V16SFmode) != 0
   20871              :                   || !
   20872              : #line 6663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20873              : (TARGET_AVX512F && 1 && 1))
   20874              :                 return -1;
   20875              :               return 4089; /* *fma_fnmsub_v16sf */
   20876              : 
   20877              :             case E_V8DFmode:
   20878              :               if (pattern881 (x3, 
   20879              : E_V8DFmode) != 0
   20880              :                   || !
   20881              : #line 6663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20882              : (TARGET_AVX512F && 1 && 1))
   20883              :                 return -1;
   20884              :               return 4098; /* *fma_fnmsub_v8df */
   20885              : 
   20886              :             case E_V32BFmode:
   20887              :               if (pattern930 (x3, 
   20888              : E_V32BFmode) != 0
   20889              :                   || !
   20890              : #line 33415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20891              : (TARGET_AVX10_2))
   20892              :                 return -1;
   20893              :               return 10768; /* avx10_2_fnmsubbf16_v32bf */
   20894              : 
   20895              :             case E_V16BFmode:
   20896              :               if (pattern930 (x3, 
   20897              : E_V16BFmode) != 0
   20898              :                   || !
   20899              : #line 33415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20900              : (TARGET_AVX10_2))
   20901              :                 return -1;
   20902              :               return 10770; /* avx10_2_fnmsubbf16_v16bf */
   20903              : 
   20904              :             case E_V8BFmode:
   20905              :               if (pattern930 (x3, 
   20906              : E_V8BFmode) != 0
   20907              :                   || !
   20908              : #line 33415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20909              : (TARGET_AVX10_2))
   20910              :                 return -1;
   20911              :               return 10772; /* avx10_2_fnmsubbf16_v8bf */
   20912              : 
   20913              :             default:
   20914              :               return -1;
   20915              :             }
   20916              : 
   20917              :         default:
   20918              :           return -1;
   20919              :         }
   20920              : 
   20921              :     default:
   20922              :       return -1;
   20923              :     }
   20924              : }
   20925              : 
   20926              :  int
   20927              : recog_334 (rtx x1 ATTRIBUTE_UNUSED,
   20928              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   20929              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   20930              : {
   20931              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   20932              :   int res ATTRIBUTE_UNUSED;
   20933              :   switch (pattern30 (x1))
   20934              :     {
   20935              :     case 0:
   20936              :       if (nonimmediate_operand (operands[1], E_V16HImode)
   20937              :           && nonmemory_operand (operands[2], E_DImode)
   20938              :           && (
   20939              : #line 17732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20940              : (TARGET_AVX512VL) && 
   20941              : #line 786 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20942              : (TARGET_AVX512BW)))
   20943              :         return 7710; /* *ashlv16hi3 */
   20944              :       if (!register_operand (operands[1], E_V16HImode))
   20945              :         return -1;
   20946              :       if (nonmemory_operand (operands[2], E_DImode)
   20947              :           && (
   20948              : #line 17746 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20949              : (TARGET_SSE2) && 
   20950              : #line 763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20951              : (TARGET_AVX2)))
   20952              :         return 7734; /* ashlv16hi3 */
   20953              :       if (!nonimmediate_operand (operands[2], E_V16HImode)
   20954              :           || !(
   20955              : #line 29981 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20956              : (TARGET_AVX512BW) && 
   20957              : #line 675 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20958              : (TARGET_AVX512VL)))
   20959              :         return -1;
   20960              :       return 9703; /* avx512vl_ashlvv16hi */
   20961              : 
   20962              :     case 1:
   20963              :       if (nonimmediate_operand (operands[1], E_V8HImode)
   20964              :           && nonmemory_operand (operands[2], E_DImode)
   20965              :           && (
   20966              : #line 17732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20967              : (TARGET_AVX512VL) && 
   20968              : #line 786 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20969              : (TARGET_AVX512BW)))
   20970              :         return 7714; /* *ashlv8hi3 */
   20971              :       if (!register_operand (operands[1], E_V8HImode))
   20972              :         return -1;
   20973              :       if (nonmemory_operand (operands[2], E_DImode)
   20974              :           && 
   20975              : #line 17746 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20976              : (TARGET_SSE2))
   20977              :         return 7736; /* ashlv8hi3 */
   20978              :       if (!nonimmediate_operand (operands[2], E_V8HImode)
   20979              :           || !(
   20980              : #line 29981 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20981              : (TARGET_AVX512BW) && 
   20982              : #line 675 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20983              : (TARGET_AVX512VL)))
   20984              :         return -1;
   20985              :       return 9699; /* avx512vl_ashlvv8hi */
   20986              : 
   20987              :     case 2:
   20988              :       if (nonimmediate_operand (operands[1], E_V8SImode)
   20989              :           && nonmemory_operand (operands[2], E_DImode)
   20990              :           && 
   20991              : #line 17732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20992              : (TARGET_AVX512VL))
   20993              :         return 7718; /* *ashlv8si3 */
   20994              :       if (!register_operand (operands[1], E_V8SImode))
   20995              :         return -1;
   20996              :       if (nonmemory_operand (operands[2], E_DImode)
   20997              :           && (
   20998              : #line 17746 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   20999              : (TARGET_SSE2) && 
   21000              : #line 764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21001              : (TARGET_AVX2)))
   21002              :         return 7738; /* ashlv8si3 */
   21003              :       if (!nonimmediate_operand (operands[2], E_V8SImode)
   21004              :           || !
   21005              : #line 29970 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21006              : (TARGET_AVX2 && 1))
   21007              :         return -1;
   21008              :       return 9679; /* avx2_ashlvv8si */
   21009              : 
   21010              :     case 3:
   21011              :       if (nonimmediate_operand (operands[1], E_V4SImode)
   21012              :           && nonmemory_operand (operands[2], E_DImode)
   21013              :           && 
   21014              : #line 17732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21015              : (TARGET_AVX512VL))
   21016              :         return 7722; /* *ashlv4si3 */
   21017              :       if (!register_operand (operands[1], E_V4SImode))
   21018              :         return -1;
   21019              :       if (nonmemory_operand (operands[2], E_DImode)
   21020              :           && 
   21021              : #line 17746 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21022              : (TARGET_SSE2))
   21023              :         return 7740; /* ashlv4si3 */
   21024              :       if (!nonimmediate_operand (operands[2], E_V4SImode)
   21025              :           || !
   21026              : #line 29970 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21027              : (TARGET_AVX2 && 1))
   21028              :         return -1;
   21029              :       return 9683; /* avx2_ashlvv4si */
   21030              : 
   21031              :     case 4:
   21032              :       if (nonimmediate_operand (operands[1], E_V4DImode)
   21033              :           && nonmemory_operand (operands[2], E_DImode)
   21034              :           && 
   21035              : #line 17732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21036              : (TARGET_AVX512VL))
   21037              :         return 7726; /* *ashlv4di3 */
   21038              :       if (!register_operand (operands[1], E_V4DImode))
   21039              :         return -1;
   21040              :       if (nonmemory_operand (operands[2], E_DImode)
   21041              :           && (
   21042              : #line 17746 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21043              : (TARGET_SSE2) && 
   21044              : #line 765 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21045              : (TARGET_AVX2)))
   21046              :         return 7742; /* ashlv4di3 */
   21047              :       if (!nonimmediate_operand (operands[2], E_V4DImode)
   21048              :           || !
   21049              : #line 29970 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21050              : (TARGET_AVX2 && 1))
   21051              :         return -1;
   21052              :       return 9691; /* avx2_ashlvv4di */
   21053              : 
   21054              :     case 5:
   21055              :       if (nonimmediate_operand (operands[1], E_V2DImode)
   21056              :           && nonmemory_operand (operands[2], E_DImode)
   21057              :           && 
   21058              : #line 17732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21059              : (TARGET_AVX512VL))
   21060              :         return 7730; /* *ashlv2di3 */
   21061              :       if (!register_operand (operands[1], E_V2DImode))
   21062              :         return -1;
   21063              :       if (nonmemory_operand (operands[2], E_DImode)
   21064              :           && 
   21065              : #line 17746 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21066              : (TARGET_SSE2))
   21067              :         return 7744; /* ashlv2di3 */
   21068              :       if (!nonimmediate_operand (operands[2], E_V2DImode)
   21069              :           || !
   21070              : #line 29970 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21071              : (TARGET_AVX2 && 1))
   21072              :         return -1;
   21073              :       return 9695; /* avx2_ashlvv2di */
   21074              : 
   21075              :     case 6:
   21076              :       if (nonimmediate_operand (operands[1], E_V32HImode)
   21077              :           && nonmemory_operand (operands[2], E_DImode)
   21078              :           && (
   21079              : #line 17820 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21080              : (TARGET_AVX512F) && 
   21081              : #line 773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21082              : (TARGET_AVX512BW)))
   21083              :         return 7750; /* ashlv32hi3 */
   21084              :       if (!register_operand (operands[1], E_V32HImode)
   21085              :           || !nonimmediate_operand (operands[2], E_V32HImode)
   21086              :           || !
   21087              : #line 29981 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21088              : (TARGET_AVX512BW))
   21089              :         return -1;
   21090              :       return 9707; /* avx512bw_ashlvv32hi */
   21091              : 
   21092              :     case 7:
   21093              :       if (nonimmediate_operand (operands[1], E_V16SImode)
   21094              :           && nonmemory_operand (operands[2], E_DImode)
   21095              :           && 
   21096              : #line 17820 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21097              : (TARGET_AVX512F))
   21098              :         return 7754; /* ashlv16si3 */
   21099              :       if (!register_operand (operands[1], E_V16SImode)
   21100              :           || !nonimmediate_operand (operands[2], E_V16SImode)
   21101              :           || !(
   21102              : #line 29970 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21103              : (TARGET_AVX2 && 1) && 
   21104              : #line 791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21105              : (TARGET_AVX512F)))
   21106              :         return -1;
   21107              :       return 9675; /* avx512f_ashlvv16si */
   21108              : 
   21109              :     case 8:
   21110              :       if (nonimmediate_operand (operands[1], E_V8DImode)
   21111              :           && nonmemory_operand (operands[2], E_DImode)
   21112              :           && 
   21113              : #line 17820 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21114              : (TARGET_AVX512F))
   21115              :         return 7758; /* ashlv8di3 */
   21116              :       if (!register_operand (operands[1], E_V8DImode)
   21117              :           || !nonimmediate_operand (operands[2], E_V8DImode)
   21118              :           || !(
   21119              : #line 29970 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21120              : (TARGET_AVX2 && 1) && 
   21121              : #line 792 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21122              : (TARGET_AVX512F)))
   21123              :         return -1;
   21124              :       return 9687; /* avx512f_ashlvv8di */
   21125              : 
   21126              :     case 9:
   21127              :       if (register_operand (operands[1], E_V1TImode)
   21128              :           && const_0_to_255_not_mul_8_operand (operands[2], E_SImode)
   21129              :           && 
   21130              : #line 17895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21131              : (TARGET_SSE2 && TARGET_64BIT
   21132              :    && ix86_pre_reload_split ()))
   21133              :         return 7762; /* *ashlv1ti3_internal */
   21134              :       if (!const_0_to_255_mul_8_operand (operands[2], E_SImode))
   21135              :         return -1;
   21136              :       if (nonimmediate_operand (operands[1], E_V1TImode)
   21137              :           && (
   21138              : #line 18039 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21139              : (TARGET_AVX512BW) && 
   21140              : #line 718 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21141              : (TARGET_AVX512VL)))
   21142              :         return 7771; /* avx512bw_ashlv1ti3 */
   21143              :       if (!register_operand (operands[1], E_V1TImode)
   21144              :           || !
   21145              : #line 18054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21146              : (TARGET_SSE2))
   21147              :         return -1;
   21148              :       return 7775; /* sse2_ashlv1ti3 */
   21149              : 
   21150              :     case 10:
   21151              :       if (!
   21152              : #line 18039 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21153              : (TARGET_AVX512BW))
   21154              :         return -1;
   21155              :       return 7767; /* avx512bw_ashlv4ti3 */
   21156              : 
   21157              :     case 11:
   21158              :       if (nonimmediate_operand (operands[1], E_V2TImode)
   21159              :           && (
   21160              : #line 18039 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21161              : (TARGET_AVX512BW) && 
   21162              : #line 718 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21163              : (TARGET_AVX512VL)))
   21164              :         return 7769; /* avx512bw_ashlv2ti3 */
   21165              :       if (!register_operand (operands[1], E_V2TImode)
   21166              :           || !(
   21167              : #line 18054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21168              : (TARGET_SSE2) && 
   21169              : #line 721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21170              : (TARGET_AVX2)))
   21171              :         return -1;
   21172              :       return 7773; /* avx2_ashlv2ti3 */
   21173              : 
   21174              :     default:
   21175              :       return -1;
   21176              :     }
   21177              : }
   21178              : 
   21179              :  int
   21180              : recog_339 (rtx x1 ATTRIBUTE_UNUSED,
   21181              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21182              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21183              : {
   21184              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21185              :   rtx x2, x3, x4;
   21186              :   int res ATTRIBUTE_UNUSED;
   21187              :   x2 = XEXP (x1, 0);
   21188              :   operands[0] = x2;
   21189              :   x3 = XEXP (x1, 1);
   21190              :   x4 = XEXP (x3, 0);
   21191              :   operands[1] = x4;
   21192              :   switch (GET_MODE (operands[0]))
   21193              :     {
   21194              :     case E_V16SImode:
   21195              :       if (!register_operand (operands[0], E_V16SImode)
   21196              :           || GET_MODE (x3) != E_V16SImode
   21197              :           || !nonimmediate_operand (operands[1], E_V16SImode)
   21198              :           || !
   21199              : #line 31346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21200              : (TARGET_AVX512VPOPCNTDQ))
   21201              :         return -1;
   21202              :       return 10237; /* vpopcountv16si */
   21203              : 
   21204              :     case E_V8SImode:
   21205              :       if (!register_operand (operands[0], E_V8SImode)
   21206              :           || GET_MODE (x3) != E_V8SImode
   21207              :           || !nonimmediate_operand (operands[1], E_V8SImode)
   21208              :           || !(
   21209              : #line 31346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21210              : (TARGET_AVX512VPOPCNTDQ) && 
   21211              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21212              : (TARGET_AVX512VL)))
   21213              :         return -1;
   21214              :       return 10239; /* vpopcountv8si */
   21215              : 
   21216              :     case E_V4SImode:
   21217              :       if (!register_operand (operands[0], E_V4SImode)
   21218              :           || GET_MODE (x3) != E_V4SImode
   21219              :           || !nonimmediate_operand (operands[1], E_V4SImode)
   21220              :           || !(
   21221              : #line 31346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21222              : (TARGET_AVX512VPOPCNTDQ) && 
   21223              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21224              : (TARGET_AVX512VL)))
   21225              :         return -1;
   21226              :       return 10241; /* vpopcountv4si */
   21227              : 
   21228              :     case E_V8DImode:
   21229              :       if (!register_operand (operands[0], E_V8DImode)
   21230              :           || GET_MODE (x3) != E_V8DImode
   21231              :           || !nonimmediate_operand (operands[1], E_V8DImode)
   21232              :           || !
   21233              : #line 31346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21234              : (TARGET_AVX512VPOPCNTDQ))
   21235              :         return -1;
   21236              :       return 10243; /* vpopcountv8di */
   21237              : 
   21238              :     case E_V4DImode:
   21239              :       if (!register_operand (operands[0], E_V4DImode)
   21240              :           || GET_MODE (x3) != E_V4DImode
   21241              :           || !nonimmediate_operand (operands[1], E_V4DImode)
   21242              :           || !(
   21243              : #line 31346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21244              : (TARGET_AVX512VPOPCNTDQ) && 
   21245              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21246              : (TARGET_AVX512VL)))
   21247              :         return -1;
   21248              :       return 10245; /* vpopcountv4di */
   21249              : 
   21250              :     case E_V2DImode:
   21251              :       if (!register_operand (operands[0], E_V2DImode)
   21252              :           || GET_MODE (x3) != E_V2DImode
   21253              :           || !nonimmediate_operand (operands[1], E_V2DImode)
   21254              :           || !(
   21255              : #line 31346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21256              : (TARGET_AVX512VPOPCNTDQ) && 
   21257              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21258              : (TARGET_AVX512VL)))
   21259              :         return -1;
   21260              :       return 10247; /* vpopcountv2di */
   21261              : 
   21262              :     case E_V64QImode:
   21263              :       if (!register_operand (operands[0], E_V64QImode)
   21264              :           || GET_MODE (x3) != E_V64QImode
   21265              :           || !nonimmediate_operand (operands[1], E_V64QImode)
   21266              :           || !
   21267              : #line 31396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21268              : (TARGET_AVX512BITALG))
   21269              :         return -1;
   21270              :       return 10257; /* vpopcountv64qi */
   21271              : 
   21272              :     case E_V16QImode:
   21273              :       if (!register_operand (operands[0], E_V16QImode)
   21274              :           || GET_MODE (x3) != E_V16QImode
   21275              :           || !nonimmediate_operand (operands[1], E_V16QImode)
   21276              :           || !(
   21277              : #line 31396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21278              : (TARGET_AVX512BITALG) && 
   21279              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21280              : (TARGET_AVX512VL)))
   21281              :         return -1;
   21282              :       return 10259; /* vpopcountv16qi */
   21283              : 
   21284              :     case E_V32QImode:
   21285              :       if (!register_operand (operands[0], E_V32QImode)
   21286              :           || GET_MODE (x3) != E_V32QImode
   21287              :           || !nonimmediate_operand (operands[1], E_V32QImode)
   21288              :           || !(
   21289              : #line 31396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21290              : (TARGET_AVX512BITALG) && 
   21291              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21292              : (TARGET_AVX512VL)))
   21293              :         return -1;
   21294              :       return 10261; /* vpopcountv32qi */
   21295              : 
   21296              :     case E_V32HImode:
   21297              :       if (!register_operand (operands[0], E_V32HImode)
   21298              :           || GET_MODE (x3) != E_V32HImode
   21299              :           || !nonimmediate_operand (operands[1], E_V32HImode)
   21300              :           || !
   21301              : #line 31396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21302              : (TARGET_AVX512BITALG))
   21303              :         return -1;
   21304              :       return 10263; /* vpopcountv32hi */
   21305              : 
   21306              :     case E_V16HImode:
   21307              :       if (!register_operand (operands[0], E_V16HImode)
   21308              :           || GET_MODE (x3) != E_V16HImode
   21309              :           || !nonimmediate_operand (operands[1], E_V16HImode)
   21310              :           || !(
   21311              : #line 31396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21312              : (TARGET_AVX512BITALG) && 
   21313              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21314              : (TARGET_AVX512VL)))
   21315              :         return -1;
   21316              :       return 10265; /* vpopcountv16hi */
   21317              : 
   21318              :     case E_V8HImode:
   21319              :       if (!register_operand (operands[0], E_V8HImode)
   21320              :           || GET_MODE (x3) != E_V8HImode
   21321              :           || !nonimmediate_operand (operands[1], E_V8HImode)
   21322              :           || !(
   21323              : #line 31396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21324              : (TARGET_AVX512BITALG) && 
   21325              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21326              : (TARGET_AVX512VL)))
   21327              :         return -1;
   21328              :       return 10267; /* vpopcountv8hi */
   21329              : 
   21330              :     default:
   21331              :       return -1;
   21332              :     }
   21333              : }
   21334              : 
   21335              :  int
   21336              : recog_346 (rtx x1 ATTRIBUTE_UNUSED,
   21337              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21338              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21339              : {
   21340              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21341              :   int res ATTRIBUTE_UNUSED;
   21342              :   switch (pattern27 (x1))
   21343              :     {
   21344              :     case 0:
   21345              :       if (!(
   21346              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21347              : (TARGET_SSE
   21348              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   21349              :    && 1
   21350              :    && 1) && 
   21351              : #line 393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21352              : (TARGET_AVX512FP16)))
   21353              :         return -1;
   21354              :       return 3055; /* *sminv32hf3 */
   21355              : 
   21356              :     case 1:
   21357              :       if (!(
   21358              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21359              : (TARGET_SSE
   21360              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   21361              :    && 1
   21362              :    && 1) && 
   21363              : #line 394 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21364              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   21365              :         return -1;
   21366              :       return 3061; /* *sminv16hf3 */
   21367              : 
   21368              :     case 2:
   21369              :       if (!(
   21370              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21371              : (TARGET_SSE
   21372              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   21373              :    && 1
   21374              :    && 1) && 
   21375              : #line 395 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21376              : (TARGET_AVX512FP16 && TARGET_AVX512VL)))
   21377              :         return -1;
   21378              :       return 3065; /* *sminv8hf3 */
   21379              : 
   21380              :     case 3:
   21381              :       if (!(
   21382              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21383              : (TARGET_SSE
   21384              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   21385              :    && 1
   21386              :    && 1) && 
   21387              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21388              : (TARGET_AVX512F)))
   21389              :         return -1;
   21390              :       return 3071; /* *sminv16sf3 */
   21391              : 
   21392              :     case 4:
   21393              :       if (!(
   21394              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21395              : (TARGET_SSE
   21396              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   21397              :    && 1
   21398              :    && 1) && 
   21399              : #line 396 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21400              : (TARGET_AVX)))
   21401              :         return -1;
   21402              :       return 3077; /* *sminv8sf3 */
   21403              : 
   21404              :     case 5:
   21405              :       if (!
   21406              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21407              : (TARGET_SSE
   21408              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   21409              :    && 1
   21410              :    && 1))
   21411              :         return -1;
   21412              :       return 3081; /* *sminv4sf3 */
   21413              : 
   21414              :     case 6:
   21415              :       if (!(
   21416              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21417              : (TARGET_SSE
   21418              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   21419              :    && 1
   21420              :    && 1) && 
   21421              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21422              : (TARGET_AVX512F)))
   21423              :         return -1;
   21424              :       return 3087; /* *sminv8df3 */
   21425              : 
   21426              :     case 7:
   21427              :       if (!(
   21428              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21429              : (TARGET_SSE
   21430              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   21431              :    && 1
   21432              :    && 1) && 
   21433              : #line 397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21434              : (TARGET_AVX)))
   21435              :         return -1;
   21436              :       return 3093; /* *sminv4df3 */
   21437              : 
   21438              :     case 8:
   21439              :       if (!(
   21440              : #line 3358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21441              : (TARGET_SSE
   21442              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))
   21443              :    && 1
   21444              :    && 1) && 
   21445              : #line 398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21446              : (TARGET_SSE2)))
   21447              :         return -1;
   21448              :       return 3097; /* *sminv2df3 */
   21449              : 
   21450              :     case 9:
   21451              :       if (
   21452              : #line 18109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21453              : (TARGET_AVX2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21454              :         return 7826; /* *avx2_sminv32qi3 */
   21455              :       if (!(
   21456              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21457              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21458              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21459              : (TARGET_AVX512VL)))
   21460              :         return -1;
   21461              :       return 7903; /* *avx512bw_sminv32qi3 */
   21462              : 
   21463              :     case 10:
   21464              :       if (
   21465              : #line 18109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21466              : (TARGET_AVX2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21467              :         return 7830; /* *avx2_sminv16hi3 */
   21468              :       if (!(
   21469              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21470              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21471              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21472              : (TARGET_AVX512VL)))
   21473              :         return -1;
   21474              :       return 7919; /* *avx512bw_sminv16hi3 */
   21475              : 
   21476              :     case 11:
   21477              :       if (
   21478              : #line 18109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21479              : (TARGET_AVX2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21480              :         return 7834; /* *avx2_sminv8si3 */
   21481              :       if (!(
   21482              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21483              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21484              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21485              : (TARGET_AVX512VL)))
   21486              :         return -1;
   21487              :       return 7847; /* *avx512f_sminv8si3 */
   21488              : 
   21489              :     case 12:
   21490              :       if (!
   21491              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21492              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21493              :         return -1;
   21494              :       return 7839; /* *avx512f_sminv16si3 */
   21495              : 
   21496              :     case 13:
   21497              :       if (nonimmediate_operand (operands[1], E_V4SImode)
   21498              :           && nonimmediate_operand (operands[2], E_V4SImode)
   21499              :           && (
   21500              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21501              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21502              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21503              : (TARGET_AVX512VL)))
   21504              :         return 7855; /* *avx512f_sminv4si3 */
   21505              :       if (!vector_operand (operands[1], E_V4SImode)
   21506              :           || !vector_operand (operands[2], E_V4SImode)
   21507              :           || !
   21508              : #line 18256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21509              : (TARGET_SSE4_1
   21510              :    && 1
   21511              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21512              :         return -1;
   21513              :       return 7939; /* *sse4_1_sminv4si3 */
   21514              : 
   21515              :     case 14:
   21516              :       if (!
   21517              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21518              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21519              :         return -1;
   21520              :       return 7863; /* *avx512f_sminv8di3 */
   21521              : 
   21522              :     case 15:
   21523              :       if (!(
   21524              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21525              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21526              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21527              : (TARGET_AVX512VL)))
   21528              :         return -1;
   21529              :       return 7871; /* *avx512f_sminv4di3 */
   21530              : 
   21531              :     case 16:
   21532              :       if (!(
   21533              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21534              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21535              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21536              : (TARGET_AVX512VL)))
   21537              :         return -1;
   21538              :       return 7879; /* *avx512f_sminv2di3 */
   21539              : 
   21540              :     case 17:
   21541              :       if (!
   21542              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21543              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21544              :         return -1;
   21545              :       return 7887; /* *avx512bw_sminv64qi3 */
   21546              : 
   21547              :     case 18:
   21548              :       if (nonimmediate_operand (operands[1], E_V16QImode)
   21549              :           && nonimmediate_operand (operands[2], E_V16QImode)
   21550              :           && (
   21551              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21552              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21553              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21554              : (TARGET_AVX512VL)))
   21555              :         return 7895; /* *avx512bw_sminv16qi3 */
   21556              :       if (!vector_operand (operands[1], E_V16QImode)
   21557              :           || !vector_operand (operands[2], E_V16QImode)
   21558              :           || !
   21559              : #line 18256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21560              : (TARGET_SSE4_1
   21561              :    && 1
   21562              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21563              :         return -1;
   21564              :       return 7935; /* *sse4_1_sminv16qi3 */
   21565              : 
   21566              :     case 19:
   21567              :       if (!
   21568              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21569              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21570              :         return -1;
   21571              :       return 7911; /* *avx512bw_sminv32hi3 */
   21572              : 
   21573              :     case 20:
   21574              :       if (nonimmediate_operand (operands[1], E_V8HImode)
   21575              :           && nonimmediate_operand (operands[2], E_V8HImode)
   21576              :           && (
   21577              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21578              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21579              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21580              : (TARGET_AVX512VL)))
   21581              :         return 7927; /* *avx512bw_sminv8hi3 */
   21582              :       if (!vector_operand (operands[1], E_V8HImode)
   21583              :           || !vector_operand (operands[2], E_V8HImode)
   21584              :           || !
   21585              : #line 18276 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21586              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21587              :         return -1;
   21588              :       return 7942; /* *sminv8hi3 */
   21589              : 
   21590              :     case 21:
   21591              :       if (!
   21592              : #line 33186 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21593              : (TARGET_AVX10_2))
   21594              :         return -1;
   21595              :       return 10698; /* avx10_2_sminbf16_v32bf */
   21596              : 
   21597              :     case 22:
   21598              :       if (!
   21599              : #line 33186 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21600              : (TARGET_AVX10_2))
   21601              :         return -1;
   21602              :       return 10702; /* avx10_2_sminbf16_v16bf */
   21603              : 
   21604              :     case 23:
   21605              :       if (!
   21606              : #line 33186 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21607              : (TARGET_AVX10_2))
   21608              :         return -1;
   21609              :       return 10706; /* avx10_2_sminbf16_v8bf */
   21610              : 
   21611              :     default:
   21612              :       return -1;
   21613              :     }
   21614              : }
   21615              : 
   21616              :  int
   21617              : recog_352 (rtx x1 ATTRIBUTE_UNUSED,
   21618              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21619              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21620              : {
   21621              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21622              :   int res ATTRIBUTE_UNUSED;
   21623              :   switch (pattern34 (x1))
   21624              :     {
   21625              :     case 0:
   21626              :       if (
   21627              : #line 18109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21628              : (TARGET_AVX2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21629              :         return 7828; /* *avx2_uminv32qi3 */
   21630              :       if (!(
   21631              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21632              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21633              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21634              : (TARGET_AVX512VL)))
   21635              :         return -1;
   21636              :       return 7907; /* *avx512bw_uminv32qi3 */
   21637              : 
   21638              :     case 1:
   21639              :       if (
   21640              : #line 18109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21641              : (TARGET_AVX2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21642              :         return 7832; /* *avx2_uminv16hi3 */
   21643              :       if (!(
   21644              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21645              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21646              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21647              : (TARGET_AVX512VL)))
   21648              :         return -1;
   21649              :       return 7923; /* *avx512bw_uminv16hi3 */
   21650              : 
   21651              :     case 2:
   21652              :       if (
   21653              : #line 18109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21654              : (TARGET_AVX2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21655              :         return 7836; /* *avx2_uminv8si3 */
   21656              :       if (!(
   21657              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21658              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21659              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21660              : (TARGET_AVX512VL)))
   21661              :         return -1;
   21662              :       return 7851; /* *avx512f_uminv8si3 */
   21663              : 
   21664              :     case 3:
   21665              :       if (!
   21666              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21667              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21668              :         return -1;
   21669              :       return 7843; /* *avx512f_uminv16si3 */
   21670              : 
   21671              :     case 4:
   21672              :       if (nonimmediate_operand (operands[1], E_V4SImode)
   21673              :           && nonimmediate_operand (operands[2], E_V4SImode)
   21674              :           && (
   21675              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21676              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21677              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21678              : (TARGET_AVX512VL)))
   21679              :         return 7859; /* *avx512f_uminv4si3 */
   21680              :       if (!vector_operand (operands[1], E_V4SImode)
   21681              :           || !vector_operand (operands[2], E_V4SImode)
   21682              :           || !
   21683              : #line 18342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21684              : (TARGET_SSE4_1
   21685              :    && 1
   21686              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21687              :         return -1;
   21688              :       return 7949; /* *sse4_1_uminv4si3 */
   21689              : 
   21690              :     case 5:
   21691              :       if (!
   21692              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21693              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21694              :         return -1;
   21695              :       return 7867; /* *avx512f_uminv8di3 */
   21696              : 
   21697              :     case 6:
   21698              :       if (!(
   21699              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21700              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21701              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21702              : (TARGET_AVX512VL)))
   21703              :         return -1;
   21704              :       return 7875; /* *avx512f_uminv4di3 */
   21705              : 
   21706              :     case 7:
   21707              :       if (!(
   21708              : #line 18151 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21709              : (TARGET_AVX512F && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21710              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21711              : (TARGET_AVX512VL)))
   21712              :         return -1;
   21713              :       return 7883; /* *avx512f_uminv2di3 */
   21714              : 
   21715              :     case 8:
   21716              :       if (!
   21717              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21718              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21719              :         return -1;
   21720              :       return 7891; /* *avx512bw_uminv64qi3 */
   21721              : 
   21722              :     case 9:
   21723              :       if (nonimmediate_operand (operands[1], E_V16QImode)
   21724              :           && nonimmediate_operand (operands[2], E_V16QImode)
   21725              :           && (
   21726              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21727              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21728              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21729              : (TARGET_AVX512VL)))
   21730              :         return 7899; /* *avx512bw_uminv16qi3 */
   21731              :       if (!vector_operand (operands[1], E_V16QImode)
   21732              :           || !vector_operand (operands[2], E_V16QImode)
   21733              :           || !
   21734              : #line 18362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21735              : (TARGET_SSE2 && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21736              :         return -1;
   21737              :       return 7952; /* *uminv16qi3 */
   21738              : 
   21739              :     case 10:
   21740              :       if (!
   21741              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21742              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21743              :         return -1;
   21744              :       return 7915; /* *avx512bw_uminv32hi3 */
   21745              : 
   21746              :     case 11:
   21747              :       if (nonimmediate_operand (operands[1], E_V8HImode)
   21748              :           && nonimmediate_operand (operands[2], E_V8HImode)
   21749              :           && (
   21750              : #line 18163 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21751              : (TARGET_AVX512BW && !(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   21752              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21753              : (TARGET_AVX512VL)))
   21754              :         return 7931; /* *avx512bw_uminv8hi3 */
   21755              :       if (!vector_operand (operands[1], E_V8HImode)
   21756              :           || !vector_operand (operands[2], E_V8HImode)
   21757              :           || !
   21758              : #line 18342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   21759              : (TARGET_SSE4_1
   21760              :    && 1
   21761              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   21762              :         return -1;
   21763              :       return 7945; /* *sse4_1_uminv8hi3 */
   21764              : 
   21765              :     default:
   21766              :       return -1;
   21767              :     }
   21768              : }
   21769              : 
   21770              :  int
   21771              : recog_360 (rtx x1 ATTRIBUTE_UNUSED,
   21772              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21773              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21774              : {
   21775              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21776              :   rtx x2, x3, x4;
   21777              :   int res ATTRIBUTE_UNUSED;
   21778              :   x2 = XEXP (x1, 0);
   21779              :   operands[0] = x2;
   21780              :   x3 = XEXP (x1, 1);
   21781              :   x4 = XEXP (x3, 0);
   21782              :   operands[1] = x4;
   21783              :   switch (GET_MODE (operands[0]))
   21784              :     {
   21785              :     case E_SImode:
   21786              :       if (GET_MODE (x3) != E_SImode)
   21787              :         return -1;
   21788              :       if (nonimmediate_operand (operands[0], E_SImode)
   21789              :           && nonimmediate_operand (operands[1], E_SImode)
   21790              :           && 
   21791              : #line 23589 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21792              : (TARGET_MOVBE
   21793              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
   21794              :         return 1672; /* *bswapsi2_movbe */
   21795              :       if (!register_operand (operands[0], E_SImode)
   21796              :           || !register_operand (operands[1], E_SImode)
   21797              :           || !
   21798              : #line 23604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21799              : (TARGET_BSWAP))
   21800              :         return -1;
   21801              :       return 1674; /* *bswapsi2 */
   21802              : 
   21803              :     case E_DImode:
   21804              :       if (GET_MODE (x3) != E_DImode)
   21805              :         return -1;
   21806              :       if (nonimmediate_operand (operands[0], E_DImode)
   21807              :           && nonimmediate_operand (operands[1], E_DImode)
   21808              :           && (
   21809              : #line 23589 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21810              : (TARGET_MOVBE
   21811              :    && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   21812              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21813              : (TARGET_64BIT)))
   21814              :         return 1673; /* *bswapdi2_movbe */
   21815              :       if (!register_operand (operands[0], E_DImode)
   21816              :           || !register_operand (operands[1], E_DImode)
   21817              :           || !(
   21818              : #line 23604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21819              : (TARGET_BSWAP) && 
   21820              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21821              : (TARGET_64BIT)))
   21822              :         return -1;
   21823              :       return 1675; /* *bswapdi2 */
   21824              : 
   21825              :     default:
   21826              :       return -1;
   21827              :     }
   21828              : }
   21829              : 
   21830              :  int
   21831              : recog_365 (rtx x1 ATTRIBUTE_UNUSED,
   21832              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   21833              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   21834              : {
   21835              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   21836              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   21837              :   rtx x10, x11;
   21838              :   int res ATTRIBUTE_UNUSED;
   21839              :   x2 = XVECEXP (x1, 0, 0);
   21840              :   x3 = XEXP (x2, 0);
   21841              :   switch (GET_CODE (x3))
   21842              :     {
   21843              :     case REG:
   21844              :     case SUBREG:
   21845              :     case MEM:
   21846              :       res = recog_363 (x1, insn, pnum_clobbers);
   21847              :       if (res >= 0)
   21848              :         return res;
   21849              :       break;
   21850              : 
   21851              :     case STRICT_LOW_PART:
   21852              :       x4 = XVECEXP (x1, 0, 1);
   21853              :       if (pattern237 (x4, 
   21854              : E_CCmode, 
   21855              : 17) == 0)
   21856              :         {
   21857              :           x5 = XEXP (x3, 0);
   21858              :           operands[0] = x5;
   21859              :           x6 = XEXP (x2, 1);
   21860              :           operands[1] = x6;
   21861              :           switch (GET_MODE (operands[0]))
   21862              :             {
   21863              :             case E_QImode:
   21864              :               if (register_operand (operands[0], E_QImode)
   21865              :                   && const0_operand (operands[1], E_QImode)
   21866              :                   && 
   21867              : #line 3521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21868              : (reload_completed))
   21869              :                 return 117; /* *movstrictqi_xor */
   21870              :               break;
   21871              : 
   21872              :             case E_HImode:
   21873              :               if (register_operand (operands[0], E_HImode)
   21874              :                   && const0_operand (operands[1], E_HImode)
   21875              :                   && 
   21876              : #line 3521 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21877              : (reload_completed))
   21878              :                 return 118; /* *movstricthi_xor */
   21879              :               break;
   21880              : 
   21881              :             default:
   21882              :               break;
   21883              :             }
   21884              :         }
   21885              :       break;
   21886              : 
   21887              :     case PC:
   21888              :       res = recog_364 (x1, insn, pnum_clobbers);
   21889              :       if (res >= 0)
   21890              :         return res;
   21891              :       break;
   21892              : 
   21893              :     default:
   21894              :       break;
   21895              :     }
   21896              :   x4 = XVECEXP (x1, 0, 1);
   21897              :   if (GET_CODE (x4) != CLOBBER)
   21898              :     return -1;
   21899              :   x7 = XEXP (x4, 0);
   21900              :   if (GET_CODE (x7) != REG
   21901              :       || REGNO (x7) != 17
   21902              :       || GET_MODE (x7) != E_CCmode)
   21903              :     return -1;
   21904              :   x6 = XEXP (x2, 1);
   21905              :   switch (GET_CODE (x6))
   21906              :     {
   21907              :     case SUBREG:
   21908              :       if (maybe_ne (SUBREG_BYTE (x6), 0))
   21909              :         return -1;
   21910              :       switch (pattern1050 (x2))
   21911              :         {
   21912              :         case 0:
   21913              :           x8 = XEXP (x6, 0);
   21914              :           x9 = XEXP (x8, 1);
   21915              :           operands[2] = x9;
   21916              :           if (general_operand (operands[2], E_QImode))
   21917              :             {
   21918              :               switch (pattern1048 (x2))
   21919              :                 {
   21920              :                 case 0:
   21921              :                   return 337; /* *addqi_exthi_1 */
   21922              : 
   21923              :                 case 1:
   21924              :                   return 338; /* *addqi_extsi_1 */
   21925              : 
   21926              :                 case 2:
   21927              :                   if (
   21928              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21929              : (TARGET_64BIT))
   21930              :                     return 339; /* *addqi_extdi_1 */
   21931              :                   break;
   21932              : 
   21933              :                 default:
   21934              :                   break;
   21935              :                 }
   21936              :             }
   21937              :           if (GET_CODE (x9) != SUBREG)
   21938              :             return -1;
   21939              :           switch (pattern1815 (x2))
   21940              :             {
   21941              :             case 0:
   21942              :               return 340; /* *addqi_exthi_2 */
   21943              : 
   21944              :             case 1:
   21945              :               return 342; /* *addqi_extsi_2 */
   21946              : 
   21947              :             case 2:
   21948              :               if (!
   21949              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21950              : (TARGET_64BIT))
   21951              :                 return -1;
   21952              :               return 344; /* *addqi_extdi_2 */
   21953              : 
   21954              :             default:
   21955              :               return -1;
   21956              :             }
   21957              : 
   21958              :         case 1:
   21959              :           x8 = XEXP (x6, 0);
   21960              :           x9 = XEXP (x8, 1);
   21961              :           if (GET_CODE (x9) == SUBREG)
   21962              :             {
   21963              :               switch (pattern1815 (x2))
   21964              :                 {
   21965              :                 case 0:
   21966              :                   return 341; /* *subqi_exthi_2 */
   21967              : 
   21968              :                 case 1:
   21969              :                   return 343; /* *subqi_extsi_2 */
   21970              : 
   21971              :                 case 2:
   21972              :                   if (
   21973              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21974              : (TARGET_64BIT))
   21975              :                     return 345; /* *subqi_extdi_2 */
   21976              :                   break;
   21977              : 
   21978              :                 default:
   21979              :                   break;
   21980              :                 }
   21981              :             }
   21982              :           operands[2] = x9;
   21983              :           if (!general_operand (operands[2], E_QImode))
   21984              :             return -1;
   21985              :           switch (pattern1048 (x2))
   21986              :             {
   21987              :             case 0:
   21988              :               return 426; /* *subqi_exthi_1 */
   21989              : 
   21990              :             case 1:
   21991              :               return 427; /* *subqi_extsi_1 */
   21992              : 
   21993              :             case 2:
   21994              :               if (!
   21995              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   21996              : (TARGET_64BIT))
   21997              :                 return -1;
   21998              :               return 428; /* *subqi_extdi_1 */
   21999              : 
   22000              :             default:
   22001              :               return -1;
   22002              :             }
   22003              : 
   22004              :         case 2:
   22005              :           x8 = XEXP (x6, 0);
   22006              :           x9 = XEXP (x8, 1);
   22007              :           operands[2] = x9;
   22008              :           if (general_operand (operands[2], E_QImode))
   22009              :             {
   22010              :               switch (pattern1048 (x2))
   22011              :                 {
   22012              :                 case 0:
   22013              :                   return 801; /* *andqi_exthi_1 */
   22014              : 
   22015              :                 case 1:
   22016              :                   return 804; /* *andqi_extsi_1 */
   22017              : 
   22018              :                 case 2:
   22019              :                   if (
   22020              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22021              : (TARGET_64BIT))
   22022              :                     return 807; /* *andqi_extdi_1 */
   22023              :                   break;
   22024              : 
   22025              :                 default:
   22026              :                   break;
   22027              :                 }
   22028              :             }
   22029              :           if (GET_CODE (x9) != SUBREG)
   22030              :             return -1;
   22031              :           switch (pattern1815 (x2))
   22032              :             {
   22033              :             case 0:
   22034              :               return 819; /* *andqi_exthi_2 */
   22035              : 
   22036              :             case 1:
   22037              :               return 822; /* *andqi_extsi_2 */
   22038              : 
   22039              :             case 2:
   22040              :               if (!
   22041              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22042              : (TARGET_64BIT))
   22043              :                 return -1;
   22044              :               return 825; /* *andqi_extdi_2 */
   22045              : 
   22046              :             default:
   22047              :               return -1;
   22048              :             }
   22049              : 
   22050              :         case 3:
   22051              :           x8 = XEXP (x6, 0);
   22052              :           x9 = XEXP (x8, 1);
   22053              :           operands[2] = x9;
   22054              :           if (general_operand (operands[2], E_QImode))
   22055              :             {
   22056              :               switch (pattern1048 (x2))
   22057              :                 {
   22058              :                 case 0:
   22059              :                   return 802; /* *iorqi_exthi_1 */
   22060              : 
   22061              :                 case 1:
   22062              :                   return 805; /* *iorqi_extsi_1 */
   22063              : 
   22064              :                 case 2:
   22065              :                   if (
   22066              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22067              : (TARGET_64BIT))
   22068              :                     return 808; /* *iorqi_extdi_1 */
   22069              :                   break;
   22070              : 
   22071              :                 default:
   22072              :                   break;
   22073              :                 }
   22074              :             }
   22075              :           if (GET_CODE (x9) != SUBREG)
   22076              :             return -1;
   22077              :           switch (pattern1815 (x2))
   22078              :             {
   22079              :             case 0:
   22080              :               return 820; /* *iorqi_exthi_2 */
   22081              : 
   22082              :             case 1:
   22083              :               return 823; /* *iorqi_extsi_2 */
   22084              : 
   22085              :             case 2:
   22086              :               if (!
   22087              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22088              : (TARGET_64BIT))
   22089              :                 return -1;
   22090              :               return 826; /* *iorqi_extdi_2 */
   22091              : 
   22092              :             default:
   22093              :               return -1;
   22094              :             }
   22095              : 
   22096              :         case 4:
   22097              :           x8 = XEXP (x6, 0);
   22098              :           x9 = XEXP (x8, 1);
   22099              :           operands[2] = x9;
   22100              :           if (general_operand (operands[2], E_QImode))
   22101              :             {
   22102              :               switch (pattern1048 (x2))
   22103              :                 {
   22104              :                 case 0:
   22105              :                   return 803; /* *xorqi_exthi_1 */
   22106              : 
   22107              :                 case 1:
   22108              :                   return 806; /* *xorqi_extsi_1 */
   22109              : 
   22110              :                 case 2:
   22111              :                   if (
   22112              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22113              : (TARGET_64BIT))
   22114              :                     return 809; /* *xorqi_extdi_1 */
   22115              :                   break;
   22116              : 
   22117              :                 default:
   22118              :                   break;
   22119              :                 }
   22120              :             }
   22121              :           if (GET_CODE (x9) != SUBREG)
   22122              :             return -1;
   22123              :           switch (pattern1815 (x2))
   22124              :             {
   22125              :             case 0:
   22126              :               return 821; /* *xorqi_exthi_2 */
   22127              : 
   22128              :             case 1:
   22129              :               return 824; /* *xorqi_extsi_2 */
   22130              : 
   22131              :             case 2:
   22132              :               if (!
   22133              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22134              : (TARGET_64BIT))
   22135              :                 return -1;
   22136              :               return 827; /* *xorqi_extdi_2 */
   22137              : 
   22138              :             default:
   22139              :               return -1;
   22140              :             }
   22141              : 
   22142              :         case 5:
   22143              :           return 1020; /* *negqi_exthi_1 */
   22144              : 
   22145              :         case 6:
   22146              :           return 1021; /* *negqi_extsi_1 */
   22147              : 
   22148              :         case 7:
   22149              :           if (!
   22150              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22151              : (TARGET_64BIT))
   22152              :             return -1;
   22153              :           return 1022; /* *negqi_extdi_1 */
   22154              : 
   22155              :         case 8:
   22156              :           return 1151; /* *ashlqi_exthi_1 */
   22157              : 
   22158              :         case 9:
   22159              :           return 1152; /* *ashlqi_extsi_1 */
   22160              : 
   22161              :         case 10:
   22162              :           if (!
   22163              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22164              : (TARGET_64BIT))
   22165              :             return -1;
   22166              :           return 1153; /* *ashlqi_extdi_1 */
   22167              : 
   22168              :         case 11:
   22169              :           operands[0] = x3;
   22170              :           switch (pattern1242 (x6))
   22171              :             {
   22172              :             case 0:
   22173              :               if ((
   22174              : #line 17698 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22175              : (UINTVAL (operands[2]) < 4 * BITS_PER_UNIT) && 
   22176              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22177              : (!TARGET_64BIT)))
   22178              :                 return 1170; /* lshrdi3_doubleword_lowpart */
   22179              :               break;
   22180              : 
   22181              :             case 1:
   22182              :               if ((
   22183              : #line 17698 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22184              : (UINTVAL (operands[2]) < 8 * BITS_PER_UNIT) && 
   22185              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22186              : (TARGET_64BIT)))
   22187              :                 return 1172; /* lshrti3_doubleword_lowpart */
   22188              :               break;
   22189              : 
   22190              :             default:
   22191              :               break;
   22192              :             }
   22193              :           x8 = XEXP (x6, 0);
   22194              :           if (GET_MODE (x8) != E_QImode)
   22195              :             return -1;
   22196              :           switch (pattern1049 (x2))
   22197              :             {
   22198              :             case 0:
   22199              :               return 1270; /* *lshrqi_exthi_1 */
   22200              : 
   22201              :             case 1:
   22202              :               return 1272; /* *lshrqi_extsi_1 */
   22203              : 
   22204              :             case 2:
   22205              :               if (!
   22206              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22207              : (TARGET_64BIT))
   22208              :                 return -1;
   22209              :               return 1274; /* *lshrqi_extdi_1 */
   22210              : 
   22211              :             default:
   22212              :               return -1;
   22213              :             }
   22214              : 
   22215              :         case 12:
   22216              :           operands[0] = x3;
   22217              :           switch (pattern1242 (x6))
   22218              :             {
   22219              :             case 0:
   22220              :               if ((
   22221              : #line 17698 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22222              : (UINTVAL (operands[2]) < 4 * BITS_PER_UNIT) && 
   22223              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22224              : (!TARGET_64BIT)))
   22225              :                 return 1171; /* ashrdi3_doubleword_lowpart */
   22226              :               break;
   22227              : 
   22228              :             case 1:
   22229              :               if ((
   22230              : #line 17698 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22231              : (UINTVAL (operands[2]) < 8 * BITS_PER_UNIT) && 
   22232              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22233              : (TARGET_64BIT)))
   22234              :                 return 1173; /* ashrti3_doubleword_lowpart */
   22235              :               break;
   22236              : 
   22237              :             default:
   22238              :               break;
   22239              :             }
   22240              :           x8 = XEXP (x6, 0);
   22241              :           if (GET_MODE (x8) != E_QImode)
   22242              :             return -1;
   22243              :           switch (pattern1049 (x2))
   22244              :             {
   22245              :             case 0:
   22246              :               return 1271; /* *ashrqi_exthi_1 */
   22247              : 
   22248              :             case 1:
   22249              :               return 1273; /* *ashrqi_extsi_1 */
   22250              : 
   22251              :             case 2:
   22252              :               if (!
   22253              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22254              : (TARGET_64BIT))
   22255              :                 return -1;
   22256              :               return 1275; /* *ashrqi_extdi_1 */
   22257              : 
   22258              :             default:
   22259              :               return -1;
   22260              :             }
   22261              : 
   22262              :         default:
   22263              :           return -1;
   22264              :         }
   22265              : 
   22266              :     case CONST_INT:
   22267              :       if (GET_CODE (x3) != ZERO_EXTRACT)
   22268              :         return -1;
   22269              :       x10 = XEXP (x3, 1);
   22270              :       if (x10 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   22271              :         return -1;
   22272              :       x5 = XEXP (x3, 0);
   22273              :       operands[0] = x5;
   22274              :       x11 = XEXP (x3, 2);
   22275              :       operands[1] = x11;
   22276              :       switch (XWINT (x6, 0))
   22277              :         {
   22278              :         case 0L:
   22279              :           switch (GET_CODE (operands[1]))
   22280              :             {
   22281              :             case REG:
   22282              :             case SUBREG:
   22283              :               if (!register_operand (operands[1], E_QImode)
   22284              :                   || GET_MODE (x3) != E_HImode)
   22285              :                 return -1;
   22286              :               switch (GET_MODE (operands[0]))
   22287              :                 {
   22288              :                 case E_QImode:
   22289              :                   if (!nonimmediate_operand (operands[0], E_QImode)
   22290              :                       || !
   22291              : #line 19923 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22292              : (TARGET_USE_BT && ix86_pre_reload_split ()))
   22293              :                     return -1;
   22294              :                   return 1443; /* *btrqi_2 */
   22295              : 
   22296              :                 case E_HImode:
   22297              :                   if (!nonimmediate_operand (operands[0], E_HImode)
   22298              :                       || !
   22299              : #line 19923 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22300              : (TARGET_USE_BT && ix86_pre_reload_split ()))
   22301              :                     return -1;
   22302              :                   return 1444; /* *btrhi_2 */
   22303              : 
   22304              :                 default:
   22305              :                   return -1;
   22306              :                 }
   22307              : 
   22308              :             case CONST_INT:
   22309              :               if (!const_0_to_63_operand (operands[1], E_QImode)
   22310              :                   || GET_MODE (x3) != E_DImode
   22311              :                   || !nonimmediate_operand (operands[0], E_DImode)
   22312              :                   || !
   22313              : #line 19988 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22314              : (TARGET_64BIT && (TARGET_USE_BT || reload_completed)))
   22315              :                 return -1;
   22316              :               return 1446; /* *btrq_imm */
   22317              : 
   22318              :             default:
   22319              :               return -1;
   22320              :             }
   22321              : 
   22322              :         case 1L:
   22323              :           if (GET_MODE (x3) != E_DImode
   22324              :               || !nonimmediate_operand (operands[0], E_DImode)
   22325              :               || !const_0_to_63_operand (operands[1], E_QImode)
   22326              :               || !
   22327              : #line 19974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22328              : (TARGET_64BIT && (TARGET_USE_BT || reload_completed)))
   22329              :             return -1;
   22330              :           return 1445; /* *btsq_imm */
   22331              : 
   22332              :         default:
   22333              :           return -1;
   22334              :         }
   22335              : 
   22336              :     default:
   22337              :       return -1;
   22338              :     }
   22339              : }
   22340              : 
   22341              :  int
   22342              : recog_380 (rtx x1 ATTRIBUTE_UNUSED,
   22343              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22344              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22345              : {
   22346              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22347              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   22348              :   rtx x10, x11, x12;
   22349              :   int res ATTRIBUTE_UNUSED;
   22350              :   if (pattern346 (x1) != 0)
   22351              :     return -1;
   22352              :   x2 = XVECEXP (x1, 0, 0);
   22353              :   x3 = XEXP (x2, 1);
   22354              :   x4 = XEXP (x3, 0);
   22355              :   x5 = XEXP (x4, 0);
   22356              :   switch (GET_CODE (x5))
   22357              :     {
   22358              :     case REG:
   22359              :     case SUBREG:
   22360              :     case MEM:
   22361              :       operands[1] = x5;
   22362              :       x6 = XEXP (x4, 1);
   22363              :       operands[2] = x6;
   22364              :       switch (GET_CODE (operands[2]))
   22365              :         {
   22366              :         case CONST_INT:
   22367              :         case CONST_WIDE_INT:
   22368              :         case CONST_POLY_INT:
   22369              :         case CONST_FIXED:
   22370              :         case CONST_DOUBLE:
   22371              :         case CONST_VECTOR:
   22372              :         case CONST:
   22373              :         case REG:
   22374              :         case SUBREG:
   22375              :         case MEM:
   22376              :         case LABEL_REF:
   22377              :         case SYMBOL_REF:
   22378              :         case HIGH:
   22379              :           switch (pattern1051 (x3))
   22380              :             {
   22381              :             case 0:
   22382              :               if (!
   22383              : #line 8381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22384              : (TARGET_APX_NDD && true
   22385              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22386              :                 return -1;
   22387              :               return 397; /* *subqi_1_zexthi */
   22388              : 
   22389              :             case 1:
   22390              :               if (!
   22391              : #line 8381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22392              : (TARGET_APX_NDD && true
   22393              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22394              :                 return -1;
   22395              :               return 399; /* *subqi_1_zextsi */
   22396              : 
   22397              :             case 2:
   22398              :               if (!
   22399              : #line 8400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22400              : (TARGET_APX_NDD && true
   22401              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22402              :                 return -1;
   22403              :               return 403; /* *subhi_1_zextsi */
   22404              : 
   22405              :             case 3:
   22406              :               if (!
   22407              : #line 8381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22408              : (TARGET_APX_NDD && true
   22409              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22410              :                 return -1;
   22411              :               return 401; /* *subqi_1_zextdi */
   22412              : 
   22413              :             case 4:
   22414              :               if (!
   22415              : #line 8400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22416              : (TARGET_APX_NDD && true
   22417              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22418              :                 return -1;
   22419              :               return 405; /* *subhi_1_zextdi */
   22420              : 
   22421              :             case 5:
   22422              :               if (!
   22423              : #line 8420 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22424              : (TARGET_64BIT
   22425              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
   22426              :                 return -1;
   22427              :               return 406; /* *subsi_1_zext */
   22428              : 
   22429              :             default:
   22430              :               return -1;
   22431              :             }
   22432              : 
   22433              :         case LTU:
   22434              :         case UNLT:
   22435              :           switch (pattern1431 (x3))
   22436              :             {
   22437              :             case 0:
   22438              :               if (!nonimmediate_operand (operands[1], E_QImode)
   22439              :                   || !ix86_carry_flag_operator (operands[2], E_QImode)
   22440              :                   || !
   22441              : #line 10080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22442              : (TARGET_APX_NDD))
   22443              :                 return -1;
   22444              :               return 533; /* *subqi3_carry_zexthi_0 */
   22445              : 
   22446              :             case 1:
   22447              :               if (!nonimmediate_operand (operands[1], E_QImode)
   22448              :                   || !ix86_carry_flag_operator (operands[2], E_QImode)
   22449              :                   || !
   22450              : #line 10080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22451              : (TARGET_APX_NDD))
   22452              :                 return -1;
   22453              :               return 534; /* *subqi3_carry_zextsi_0 */
   22454              : 
   22455              :             case 2:
   22456              :               if (!nonimmediate_operand (operands[1], E_HImode)
   22457              :                   || !ix86_carry_flag_operator (operands[2], E_HImode)
   22458              :                   || !
   22459              : #line 10099 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22460              : (TARGET_APX_NDD))
   22461              :                 return -1;
   22462              :               return 536; /* *subhi3_carry_zextsi_0 */
   22463              : 
   22464              :             case 3:
   22465              :               if (!nonimmediate_operand (operands[1], E_QImode)
   22466              :                   || !ix86_carry_flag_operator (operands[2], E_QImode)
   22467              :                   || !
   22468              : #line 10080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22469              : (TARGET_APX_NDD))
   22470              :                 return -1;
   22471              :               return 535; /* *subqi3_carry_zextdi_0 */
   22472              : 
   22473              :             case 4:
   22474              :               if (!nonimmediate_operand (operands[1], E_HImode)
   22475              :                   || !ix86_carry_flag_operator (operands[2], E_HImode)
   22476              :                   || !
   22477              : #line 10099 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22478              : (TARGET_APX_NDD))
   22479              :                 return -1;
   22480              :               return 537; /* *subhi3_carry_zextdi_0 */
   22481              : 
   22482              :             case 5:
   22483              :               if (!nonimmediate_operand (operands[1], E_SImode)
   22484              :                   || !ix86_carry_flag_operator (operands[2], E_SImode)
   22485              :                   || !
   22486              : #line 10118 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22487              : (TARGET_64BIT))
   22488              :                 return -1;
   22489              :               return 538; /* *subsi3_carry_zext_0 */
   22490              : 
   22491              :             default:
   22492              :               return -1;
   22493              :             }
   22494              : 
   22495              :         case GE:
   22496              :         case GEU:
   22497              :           switch (pattern1431 (x3))
   22498              :             {
   22499              :             case 0:
   22500              :               if (!nonimmediate_operand (operands[1], E_QImode)
   22501              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode)
   22502              :                   || !
   22503              : #line 10141 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22504              : (TARGET_APX_NDD))
   22505              :                 return -1;
   22506              :               return 539; /* *subqi3_carry_zexthi_0r */
   22507              : 
   22508              :             case 1:
   22509              :               if (!nonimmediate_operand (operands[1], E_QImode)
   22510              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode)
   22511              :                   || !
   22512              : #line 10141 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22513              : (TARGET_APX_NDD))
   22514              :                 return -1;
   22515              :               return 540; /* *subqi3_carry_zextsi_0r */
   22516              : 
   22517              :             case 2:
   22518              :               if (!nonimmediate_operand (operands[1], E_HImode)
   22519              :                   || !ix86_carry_flag_unset_operator (operands[2], E_HImode)
   22520              :                   || !
   22521              : #line 10160 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22522              : (TARGET_APX_NDD))
   22523              :                 return -1;
   22524              :               return 542; /* *subhi3_carry_zextsi_0r */
   22525              : 
   22526              :             case 3:
   22527              :               if (!nonimmediate_operand (operands[1], E_QImode)
   22528              :                   || !ix86_carry_flag_unset_operator (operands[2], E_QImode)
   22529              :                   || !
   22530              : #line 10141 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22531              : (TARGET_APX_NDD))
   22532              :                 return -1;
   22533              :               return 541; /* *subqi3_carry_zextdi_0r */
   22534              : 
   22535              :             case 4:
   22536              :               if (!nonimmediate_operand (operands[1], E_HImode)
   22537              :                   || !ix86_carry_flag_unset_operator (operands[2], E_HImode)
   22538              :                   || !
   22539              : #line 10160 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22540              : (TARGET_APX_NDD))
   22541              :                 return -1;
   22542              :               return 543; /* *subhi3_carry_zextdi_0r */
   22543              : 
   22544              :             case 5:
   22545              :               if (!nonimmediate_operand (operands[1], E_SImode)
   22546              :                   || !ix86_carry_flag_unset_operator (operands[2], E_SImode)
   22547              :                   || !
   22548              : #line 10179 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22549              : (TARGET_64BIT))
   22550              :                 return -1;
   22551              :               return 544; /* *subsi3_carry_zext_0r */
   22552              : 
   22553              :             default:
   22554              :               return -1;
   22555              :             }
   22556              : 
   22557              :         default:
   22558              :           return -1;
   22559              :         }
   22560              : 
   22561              :     case MINUS:
   22562              :       x7 = XEXP (x5, 1);
   22563              :       switch (GET_CODE (x7))
   22564              :         {
   22565              :         case LTU:
   22566              :         case UNLT:
   22567              :           operands[3] = x7;
   22568              :           x8 = XEXP (x7, 0);
   22569              :           if (GET_CODE (x8) != REG
   22570              :               || REGNO (x8) != 17)
   22571              :             return -1;
   22572              :           x9 = XEXP (x7, 1);
   22573              :           if (x9 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   22574              :             return -1;
   22575              :           x10 = XEXP (x5, 0);
   22576              :           operands[1] = x10;
   22577              :           x6 = XEXP (x4, 1);
   22578              :           operands[2] = x6;
   22579              :           switch (pattern1165 (x3))
   22580              :             {
   22581              :             case 0:
   22582              :               if (pattern1775 (x5, 
   22583              : E_QImode) != 0
   22584              :                   || !
   22585              : #line 10005 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22586              : (TARGET_APX_NDD
   22587              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22588              :                 return -1;
   22589              :               return 527; /* *subqi3_carry_zexthi */
   22590              : 
   22591              :             case 1:
   22592              :               if (pattern1775 (x5, 
   22593              : E_QImode) != 0
   22594              :                   || !
   22595              : #line 10005 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22596              : (TARGET_APX_NDD
   22597              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22598              :                 return -1;
   22599              :               return 528; /* *subqi3_carry_zextsi */
   22600              : 
   22601              :             case 2:
   22602              :               if (pattern1775 (x5, 
   22603              : E_HImode) != 0
   22604              :                   || !
   22605              : #line 10030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22606              : (TARGET_APX_NDD
   22607              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22608              :                 return -1;
   22609              :               return 530; /* *subhi3_carry_zextsi */
   22610              : 
   22611              :             case 3:
   22612              :               if (pattern1775 (x5, 
   22613              : E_QImode) != 0
   22614              :                   || !
   22615              : #line 10005 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22616              : (TARGET_APX_NDD
   22617              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22618              :                 return -1;
   22619              :               return 529; /* *subqi3_carry_zextdi */
   22620              : 
   22621              :             case 4:
   22622              :               if (pattern1775 (x5, 
   22623              : E_HImode) != 0
   22624              :                   || !
   22625              : #line 10030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22626              : (TARGET_APX_NDD
   22627              :    && !(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22628              :                 return -1;
   22629              :               return 531; /* *subhi3_carry_zextdi */
   22630              : 
   22631              :             case 5:
   22632              :               if (pattern1775 (x5, 
   22633              : E_SImode) != 0
   22634              :                   || !
   22635              : #line 10055 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22636              : (TARGET_64BIT
   22637              :    && ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
   22638              :                 return -1;
   22639              :               return 532; /* *subsi3_carry_zext */
   22640              : 
   22641              :             default:
   22642              :               return -1;
   22643              :             }
   22644              : 
   22645              :         default:
   22646              :           return -1;
   22647              :         }
   22648              : 
   22649              :     case CONST_INT:
   22650              :       if (!register_operand (operands[0], E_DImode)
   22651              :           || GET_MODE (x3) != E_DImode
   22652              :           || GET_MODE (x4) != E_SImode)
   22653              :         return -1;
   22654              :       x6 = XEXP (x4, 1);
   22655              :       if (GET_MODE (x6) != E_SImode)
   22656              :         return -1;
   22657              :       switch (XWINT (x5, 0))
   22658              :         {
   22659              :         case 63L:
   22660              :           if (GET_CODE (x6) != SUBREG
   22661              :               || maybe_ne (SUBREG_BYTE (x6), 0))
   22662              :             return -1;
   22663              :           x11 = XEXP (x6, 0);
   22664              :           if (GET_CODE (x11) != CLZ
   22665              :               || GET_MODE (x11) != E_DImode)
   22666              :             return -1;
   22667              :           x12 = XEXP (x11, 0);
   22668              :           operands[1] = x12;
   22669              :           if (!nonimmediate_operand (operands[1], E_DImode)
   22670              :               || !
   22671              : #line 22269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22672              : (!TARGET_LZCNT && TARGET_64BIT))
   22673              :             return -1;
   22674              :           return 1556; /* bsr_rex64_1_zext */
   22675              : 
   22676              :         case 31L:
   22677              :           if (GET_CODE (x6) != CLZ)
   22678              :             return -1;
   22679              :           x11 = XEXP (x6, 0);
   22680              :           operands[1] = x11;
   22681              :           if (!nonimmediate_operand (operands[1], E_SImode)
   22682              :               || !
   22683              : #line 22312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22684              : (!TARGET_LZCNT && TARGET_64BIT))
   22685              :             return -1;
   22686              :           return 1559; /* bsr_zext_1 */
   22687              : 
   22688              :         default:
   22689              :           return -1;
   22690              :         }
   22691              : 
   22692              :     default:
   22693              :       return -1;
   22694              :     }
   22695              : }
   22696              : 
   22697              :  int
   22698              : recog_389 (rtx x1 ATTRIBUTE_UNUSED,
   22699              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22700              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22701              : {
   22702              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22703              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   22704              :   rtx x10, x11;
   22705              :   int res ATTRIBUTE_UNUSED;
   22706              :   x2 = XVECEXP (x1, 0, 0);
   22707              :   x3 = XEXP (x2, 1);
   22708              :   x4 = XEXP (x3, 1);
   22709              :   if (!rtx_equal_p (x4, operands[1]))
   22710              :     return -1;
   22711              :   x5 = XEXP (x2, 0);
   22712              :   if (GET_MODE (x5) != E_CCCmode
   22713              :       || GET_MODE (x3) != E_CCCmode)
   22714              :     return -1;
   22715              :   x6 = XVECEXP (x1, 0, 1);
   22716              :   switch (GET_CODE (x6))
   22717              :     {
   22718              :     case CLOBBER:
   22719              :       x7 = XEXP (x6, 0);
   22720              :       operands[0] = x7;
   22721              :       x8 = XEXP (x3, 0);
   22722              :       switch (pattern1330 (x8))
   22723              :         {
   22724              :         case 0:
   22725              :           if (!
   22726              : #line 10651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22727              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22728              :             return -1;
   22729              :           return 562; /* *addqi3_cconly_overflow_1 */
   22730              : 
   22731              :         case 1:
   22732              :           if (!
   22733              : #line 10651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22734              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22735              :             return -1;
   22736              :           return 563; /* *addhi3_cconly_overflow_1 */
   22737              : 
   22738              :         case 2:
   22739              :           if (!
   22740              : #line 10651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22741              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))))
   22742              :             return -1;
   22743              :           return 564; /* *addsi3_cconly_overflow_1 */
   22744              : 
   22745              :         case 3:
   22746              :           if (!(
   22747              : #line 10651 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22748              : (!(MEM_P (operands[1]) && MEM_P (operands[2]))) && 
   22749              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22750              : (TARGET_64BIT)))
   22751              :             return -1;
   22752              :           return 565; /* *adddi3_cconly_overflow_1 */
   22753              : 
   22754              :         default:
   22755              :           return -1;
   22756              :         }
   22757              : 
   22758              :     case SET:
   22759              :       x7 = XEXP (x6, 0);
   22760              :       operands[0] = x7;
   22761              :       x9 = XEXP (x6, 1);
   22762              :       switch (GET_CODE (x9))
   22763              :         {
   22764              :         case PLUS:
   22765              :           x10 = XEXP (x9, 0);
   22766              :           if (!rtx_equal_p (x10, operands[1]))
   22767              :             return -1;
   22768              :           x11 = XEXP (x9, 1);
   22769              :           if (!rtx_equal_p (x11, operands[2]))
   22770              :             return -1;
   22771              :           x8 = XEXP (x3, 0);
   22772              :           switch (GET_MODE (x8))
   22773              :             {
   22774              :             case E_QImode:
   22775              :               if (pattern1437 (x9, 
   22776              : E_QImode) != 0
   22777              :                   || !
   22778              : #line 10674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22779              : (ix86_binary_operator_ok (PLUS, QImode, operands, TARGET_APX_NDD)))
   22780              :                 return -1;
   22781              :               return 566; /* addqi3_cc_overflow_1 */
   22782              : 
   22783              :             case E_HImode:
   22784              :               if (pattern1437 (x9, 
   22785              : E_HImode) != 0
   22786              :                   || !
   22787              : #line 10674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22788              : (ix86_binary_operator_ok (PLUS, HImode, operands, TARGET_APX_NDD)))
   22789              :                 return -1;
   22790              :               return 567; /* addhi3_cc_overflow_1 */
   22791              : 
   22792              :             case E_SImode:
   22793              :               if (pattern1438 (x9, 
   22794              : E_SImode) != 0
   22795              :                   || !
   22796              : #line 10674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22797              : (ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
   22798              :                 return -1;
   22799              :               return 568; /* addsi3_cc_overflow_1 */
   22800              : 
   22801              :             case E_DImode:
   22802              :               if (pattern1438 (x9, 
   22803              : E_DImode) != 0
   22804              :                   || !(
   22805              : #line 10674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22806              : (ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)) && 
   22807              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22808              : (TARGET_64BIT)))
   22809              :                 return -1;
   22810              :               return 569; /* adddi3_cc_overflow_1 */
   22811              : 
   22812              :             case E_TImode:
   22813              :               if (pattern1687 (x9, 
   22814              : E_TImode) != 0
   22815              :                   || !(
   22816              : #line 10833 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22817              : (ix86_binary_operator_ok (PLUS, TImode, operands, TARGET_APX_NDD)) && 
   22818              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22819              : (TARGET_64BIT)))
   22820              :                 return -1;
   22821              :               return 581; /* *addti3_doubleword_cc_overflow_1 */
   22822              : 
   22823              :             default:
   22824              :               return -1;
   22825              :             }
   22826              : 
   22827              :         case ZERO_EXTEND:
   22828              :           if (pattern1435 (x1, 
   22829              : PLUS) != 0
   22830              :               || !
   22831              : #line 10737 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22832              : (TARGET_64BIT
   22833              :    && ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
   22834              :             return -1;
   22835              :           return 570; /* *addsi3_zext_cc_overflow_1 */
   22836              : 
   22837              :         default:
   22838              :           return -1;
   22839              :         }
   22840              : 
   22841              :     default:
   22842              :       return -1;
   22843              :     }
   22844              : }
   22845              : 
   22846              :  int
   22847              : recog_393 (rtx x1 ATTRIBUTE_UNUSED,
   22848              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22849              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22850              : {
   22851              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22852              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   22853              :   rtx x10, x11;
   22854              :   int res ATTRIBUTE_UNUSED;
   22855              :   if (pattern588 (x1, 
   22856              : PLUS, 
   22857              : E_CCZmode) != 0)
   22858              :     return -1;
   22859              :   x2 = XVECEXP (x1, 0, 0);
   22860              :   x3 = XEXP (x2, 1);
   22861              :   if (GET_MODE (x3) != E_CCZmode)
   22862              :     return -1;
   22863              :   x4 = XEXP (x3, 0);
   22864              :   x5 = XVECEXP (x4, 0, 0);
   22865              :   operands[0] = x5;
   22866              :   x6 = XVECEXP (x4, 0, 1);
   22867              :   operands[3] = x6;
   22868              :   if (!const_int_operand (operands[3], E_SImode))
   22869              :     return -1;
   22870              :   x7 = XVECEXP (x1, 0, 1);
   22871              :   x8 = XEXP (x7, 1);
   22872              :   x9 = XEXP (x8, 1);
   22873              :   operands[1] = x9;
   22874              :   x10 = XEXP (x8, 0);
   22875              :   if (!rtx_equal_p (x10, operands[0]))
   22876              :     return -1;
   22877              :   x11 = XEXP (x7, 0);
   22878              :   if (!rtx_equal_p (x11, operands[0]))
   22879              :     return -1;
   22880              :   switch (GET_MODE (x4))
   22881              :     {
   22882              :     case E_QImode:
   22883              :       if (pattern1778 (x8, 
   22884              : E_QImode) != 0
   22885              :           || !
   22886              : #line 778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   22887              : ((unsigned HOST_WIDE_INT) INTVAL (operands[1])
   22888              :    == -(unsigned HOST_WIDE_INT) INTVAL (operands[2])))
   22889              :         return -1;
   22890              :       return 11114; /* *atomic_fetch_add_cmpqi */
   22891              : 
   22892              :     case E_HImode:
   22893              :       if (pattern1778 (x8, 
   22894              : E_HImode) != 0
   22895              :           || !
   22896              : #line 778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   22897              : ((unsigned HOST_WIDE_INT) INTVAL (operands[1])
   22898              :    == -(unsigned HOST_WIDE_INT) INTVAL (operands[2])))
   22899              :         return -1;
   22900              :       return 11115; /* *atomic_fetch_add_cmphi */
   22901              : 
   22902              :     case E_SImode:
   22903              :       if (pattern1778 (x8, 
   22904              : E_SImode) != 0
   22905              :           || !
   22906              : #line 778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   22907              : ((unsigned HOST_WIDE_INT) INTVAL (operands[1])
   22908              :    == -(unsigned HOST_WIDE_INT) INTVAL (operands[2])))
   22909              :         return -1;
   22910              :       return 11116; /* *atomic_fetch_add_cmpsi */
   22911              : 
   22912              :     case E_DImode:
   22913              :       if (pattern1778 (x8, 
   22914              : E_DImode) != 0
   22915              :           || !(
   22916              : #line 778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
   22917              : ((unsigned HOST_WIDE_INT) INTVAL (operands[1])
   22918              :    == -(unsigned HOST_WIDE_INT) INTVAL (operands[2])) && 
   22919              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   22920              : (TARGET_64BIT)))
   22921              :         return -1;
   22922              :       return 11117; /* *atomic_fetch_add_cmpdi */
   22923              : 
   22924              :     default:
   22925              :       return -1;
   22926              :     }
   22927              : }
   22928              : 
   22929              :  int
   22930              : recog_396 (rtx x1 ATTRIBUTE_UNUSED,
   22931              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   22932              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   22933              : {
   22934              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   22935              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   22936              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   22937              :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
   22938              :   int res ATTRIBUTE_UNUSED;
   22939              :   x2 = XVECEXP (x1, 0, 0);
   22940              :   x3 = XEXP (x2, 1);
   22941              :   x4 = XEXP (x3, 1);
   22942              :   if (GET_CODE (x4) != PLUS)
   22943              :     return -1;
   22944              :   x5 = XEXP (x4, 0);
   22945              :   switch (GET_CODE (x5))
   22946              :     {
   22947              :     case LTU:
   22948              :     case UNLT:
   22949              :       x6 = XEXP (x5, 1);
   22950              :       if (x6 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   22951              :           || pattern830 (x2, 
   22952              : E_CCCmode) != 0)
   22953              :         return -1;
   22954              :       x7 = XEXP (x3, 0);
   22955              :       x8 = XEXP (x7, 0);
   22956              :       switch (GET_CODE (x8))
   22957              :         {
   22958              :         case PLUS:
   22959              :           x9 = XEXP (x8, 0);
   22960              :           if (GET_CODE (x9) != PLUS)
   22961              :             return -1;
   22962              :           x10 = XEXP (x9, 0);
   22963              :           switch (GET_CODE (x10))
   22964              :             {
   22965              :             case LTU:
   22966              :             case UNLT:
   22967              :               operands[5] = x10;
   22968              :               x11 = XEXP (x10, 1);
   22969              :               if (x11 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   22970              :                 return -1;
   22971              :               x12 = XVECEXP (x1, 0, 1);
   22972              :               if (GET_CODE (x12) != SET)
   22973              :                 return -1;
   22974              :               x13 = XEXP (x12, 1);
   22975              :               if (GET_CODE (x13) != PLUS)
   22976              :                 return -1;
   22977              :               x14 = XEXP (x13, 0);
   22978              :               if (GET_CODE (x14) != PLUS)
   22979              :                 return -1;
   22980              :               x15 = XEXP (x14, 0);
   22981              :               switch (GET_CODE (x15))
   22982              :                 {
   22983              :                 case LTU:
   22984              :                 case UNLT:
   22985              :                   if (!rtx_equal_p (x15, operands[5]))
   22986              :                     return -1;
   22987              :                   x16 = XEXP (x10, 0);
   22988              :                   operands[3] = x16;
   22989              :                   if (!flags_reg_operand (operands[3], E_VOIDmode))
   22990              :                     return -1;
   22991              :                   x17 = XEXP (x9, 1);
   22992              :                   operands[1] = x17;
   22993              :                   x18 = XEXP (x8, 1);
   22994              :                   operands[2] = x18;
   22995              :                   operands[4] = x5;
   22996              :                   x19 = XEXP (x12, 0);
   22997              :                   operands[0] = x19;
   22998              :                   x20 = XEXP (x5, 0);
   22999              :                   if (!rtx_equal_p (x20, operands[3]))
   23000              :                     return -1;
   23001              :                   x21 = XEXP (x14, 1);
   23002              :                   if (!rtx_equal_p (x21, operands[1]))
   23003              :                     return -1;
   23004              :                   x22 = XEXP (x13, 1);
   23005              :                   if (!rtx_equal_p (x22, operands[2]))
   23006              :                     return -1;
   23007              :                   switch (GET_CODE (operands[2]))
   23008              :                     {
   23009              :                     case REG:
   23010              :                     case SUBREG:
   23011              :                     case MEM:
   23012              :                       x23 = XEXP (x4, 1);
   23013              :                       if (GET_CODE (x23) != ZERO_EXTEND)
   23014              :                         return -1;
   23015              :                       x24 = XEXP (x23, 0);
   23016              :                       if (!rtx_equal_p (x24, operands[2]))
   23017              :                         return -1;
   23018              :                       switch (GET_MODE (x7))
   23019              :                         {
   23020              :                         case E_DImode:
   23021              :                           if (pattern1889 (x1, 
   23022              : E_SImode, 
   23023              : E_DImode) != 0
   23024              :                               || !
   23025              : #line 9485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23026              : (ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)))
   23027              :                             return -1;
   23028              :                           return 499; /* addcarrysi */
   23029              : 
   23030              :                         case E_TImode:
   23031              :                           if (pattern1889 (x1, 
   23032              : E_DImode, 
   23033              : E_TImode) != 0
   23034              :                               || !(
   23035              : #line 9485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23036              : (ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)) && 
   23037              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23038              : (TARGET_64BIT)))
   23039              :                             return -1;
   23040              :                           return 500; /* addcarrydi */
   23041              : 
   23042              :                         default:
   23043              :                           return -1;
   23044              :                         }
   23045              : 
   23046              :                     case CONST_INT:
   23047              :                     case CONST:
   23048              :                     case LABEL_REF:
   23049              :                     case SYMBOL_REF:
   23050              :                       x23 = XEXP (x4, 1);
   23051              :                       operands[6] = x23;
   23052              :                       switch (GET_MODE (x7))
   23053              :                         {
   23054              :                         case E_DImode:
   23055              :                           if (pattern1886 (x1, 
   23056              : E_SImode, 
   23057              : E_DImode) != 0
   23058              :                               || !
   23059              : #line 9788 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23060              : (ix86_binary_operator_ok (PLUS, SImode, operands, TARGET_APX_NDD)
   23061              :    && CONST_INT_P (operands[2])
   23062              :    /* Check that operands[6] is operands[2] zero extended from
   23063              :       SImode to DImode.  */
   23064              :    && ((SImode == SImode || INTVAL (operands[2]) >= 0)
   23065              :        ? (CONST_INT_P (operands[6])
   23066              :           && UINTVAL (operands[6]) == (UINTVAL (operands[2])
   23067              :                                        & GET_MODE_MASK (SImode)))
   23068              :        : (CONST_WIDE_INT_P (operands[6])
   23069              :           && CONST_WIDE_INT_NUNITS (operands[6]) == 2
   23070              :           && ((unsigned HOST_WIDE_INT) CONST_WIDE_INT_ELT (operands[6], 0)
   23071              :               == UINTVAL (operands[2]))
   23072              :           && CONST_WIDE_INT_ELT (operands[6], 1) == 0))))
   23073              :                             return -1;
   23074              :                           return 501; /* *addcarrysi_1 */
   23075              : 
   23076              :                         case E_TImode:
   23077              :                           if (pattern1886 (x1, 
   23078              : E_DImode, 
   23079              : E_TImode) != 0
   23080              :                               || !(
   23081              : #line 9788 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23082              : (ix86_binary_operator_ok (PLUS, DImode, operands, TARGET_APX_NDD)
   23083              :    && CONST_INT_P (operands[2])
   23084              :    /* Check that operands[6] is operands[2] zero extended from
   23085              :       DImode to TImode.  */
   23086              :    && ((DImode == SImode || INTVAL (operands[2]) >= 0)
   23087              :        ? (CONST_INT_P (operands[6])
   23088              :           && UINTVAL (operands[6]) == (UINTVAL (operands[2])
   23089              :                                        & GET_MODE_MASK (DImode)))
   23090              :        : (CONST_WIDE_INT_P (operands[6])
   23091              :           && CONST_WIDE_INT_NUNITS (operands[6]) == 2
   23092              :           && ((unsigned HOST_WIDE_INT) CONST_WIDE_INT_ELT (operands[6], 0)
   23093              :               == UINTVAL (operands[2]))
   23094              :           && CONST_WIDE_INT_ELT (operands[6], 1) == 0))) && 
   23095              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23096              : (TARGET_64BIT)))
   23097              :                             return -1;
   23098              :                           return 502; /* *addcarrydi_1 */
   23099              : 
   23100              :                         default:
   23101              :                           return -1;
   23102              :                         }
   23103              : 
   23104              :                     default:
   23105              :                       return -1;
   23106              :                     }
   23107              : 
   23108              :                 default:
   23109              :                   return -1;
   23110              :                 }
   23111              : 
   23112              :             default:
   23113              :               return -1;
   23114              :             }
   23115              : 
   23116              :         case REG:
   23117              :         case SUBREG:
   23118              :         case MEM:
   23119              :           operands[1] = x8;
   23120              :           if (GET_CODE (x5) == LTU)
   23121              :             {
   23122              :               res = recog_391 (x1, insn, pnum_clobbers);
   23123              :               if (res >= 0)
   23124              :                 return res;
   23125              :             }
   23126              :           x12 = XVECEXP (x1, 0, 1);
   23127              :           if (GET_CODE (x12) != SET)
   23128              :             return -1;
   23129              :           operands[4] = x5;
   23130              :           x20 = XEXP (x5, 0);
   23131              :           operands[3] = x20;
   23132              :           if (!flags_reg_operand (operands[3], E_VOIDmode))
   23133              :             return -1;
   23134              :           x19 = XEXP (x12, 0);
   23135              :           operands[0] = x19;
   23136              :           x23 = XEXP (x4, 1);
   23137              :           switch (GET_CODE (x23))
   23138              :             {
   23139              :             case ZERO_EXTEND:
   23140              :               x13 = XEXP (x12, 1);
   23141              :               if (pattern1704 (x13, 
   23142              : MINUS) != 0)
   23143              :                 return -1;
   23144              :               x24 = XEXP (x23, 0);
   23145              :               operands[2] = x24;
   23146              :               x14 = XEXP (x13, 0);
   23147              :               x15 = XEXP (x14, 0);
   23148              :               if (!rtx_equal_p (x15, operands[1]))
   23149              :                 return -1;
   23150              :               x21 = XEXP (x14, 1);
   23151              :               x25 = XEXP (x21, 0);
   23152              :               if (!rtx_equal_p (x25, operands[3]))
   23153              :                 return -1;
   23154              :               x22 = XEXP (x13, 1);
   23155              :               if (!rtx_equal_p (x22, operands[2]))
   23156              :                 return -1;
   23157              :               switch (GET_MODE (x7))
   23158              :                 {
   23159              :                 case E_DImode:
   23160              :                   if (pattern1872 (x1, 
   23161              : E_SImode, 
   23162              : E_DImode) != 0
   23163              :                       || !
   23164              : #line 10256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23165              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)))
   23166              :                     return -1;
   23167              :                   return 551; /* subborrowsi */
   23168              : 
   23169              :                 case E_TImode:
   23170              :                   if (pattern1872 (x1, 
   23171              : E_DImode, 
   23172              : E_TImode) != 0
   23173              :                       || !(
   23174              : #line 10256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23175              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)) && 
   23176              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23177              : (TARGET_64BIT)))
   23178              :                     return -1;
   23179              :                   return 552; /* subborrowdi */
   23180              : 
   23181              :                 default:
   23182              :                   return -1;
   23183              :                 }
   23184              : 
   23185              :             case CONST_INT:
   23186              :             case CONST_WIDE_INT:
   23187              :               operands[6] = x23;
   23188              :               x13 = XEXP (x12, 1);
   23189              :               if (pattern1704 (x13, 
   23190              : PLUS) != 0)
   23191              :                 return -1;
   23192              :               x22 = XEXP (x13, 1);
   23193              :               operands[2] = x22;
   23194              :               x14 = XEXP (x13, 0);
   23195              :               x15 = XEXP (x14, 0);
   23196              :               if (!rtx_equal_p (x15, operands[1]))
   23197              :                 return -1;
   23198              :               x21 = XEXP (x14, 1);
   23199              :               x25 = XEXP (x21, 0);
   23200              :               if (!rtx_equal_p (x25, operands[3]))
   23201              :                 return -1;
   23202              :               switch (GET_MODE (x7))
   23203              :                 {
   23204              :                 case E_DImode:
   23205              :                   if (pattern1873 (x1, 
   23206              : E_SImode, 
   23207              : E_DImode) != 0
   23208              :                       || !
   23209              : #line 10492 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23210              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)
   23211              :    && CONST_INT_P (operands[2])
   23212              :    /* Check that operands[6] is -operands[2] zero extended from
   23213              :       SImode to DImode.  */
   23214              :    && ((SImode == SImode || -INTVAL (operands[2]) >= 0)
   23215              :        ? (CONST_INT_P (operands[6])
   23216              :           && (UINTVAL (operands[6])
   23217              :               == ((unsigned HOST_WIDE_INT) -INTVAL (operands[2])
   23218              :                   & GET_MODE_MASK (SImode))))
   23219              :        : (CONST_WIDE_INT_P (operands[6])
   23220              :           && CONST_WIDE_INT_NUNITS (operands[6]) == 2
   23221              :           && ((unsigned HOST_WIDE_INT) CONST_WIDE_INT_ELT (operands[6], 0)
   23222              :               == (unsigned HOST_WIDE_INT) -INTVAL (operands[2]))
   23223              :           && CONST_WIDE_INT_ELT (operands[6], 1) == 0))))
   23224              :                     return -1;
   23225              :                   return 553; /* *subborrowsi_1 */
   23226              : 
   23227              :                 case E_TImode:
   23228              :                   if (pattern1873 (x1, 
   23229              : E_DImode, 
   23230              : E_TImode) != 0
   23231              :                       || !(
   23232              : #line 10492 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23233              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)
   23234              :    && CONST_INT_P (operands[2])
   23235              :    /* Check that operands[6] is -operands[2] zero extended from
   23236              :       DImode to TImode.  */
   23237              :    && ((DImode == SImode || -INTVAL (operands[2]) >= 0)
   23238              :        ? (CONST_INT_P (operands[6])
   23239              :           && (UINTVAL (operands[6])
   23240              :               == ((unsigned HOST_WIDE_INT) -INTVAL (operands[2])
   23241              :                   & GET_MODE_MASK (DImode))))
   23242              :        : (CONST_WIDE_INT_P (operands[6])
   23243              :           && CONST_WIDE_INT_NUNITS (operands[6]) == 2
   23244              :           && ((unsigned HOST_WIDE_INT) CONST_WIDE_INT_ELT (operands[6], 0)
   23245              :               == (unsigned HOST_WIDE_INT) -INTVAL (operands[2]))
   23246              :           && CONST_WIDE_INT_ELT (operands[6], 1) == 0))) && 
   23247              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23248              : (TARGET_64BIT)))
   23249              :                     return -1;
   23250              :                   return 554; /* *subborrowdi_1 */
   23251              : 
   23252              :                 default:
   23253              :                   return -1;
   23254              :                 }
   23255              : 
   23256              :             default:
   23257              :               return -1;
   23258              :             }
   23259              : 
   23260              :         default:
   23261              :           return -1;
   23262              :         }
   23263              : 
   23264              :     default:
   23265              :       return -1;
   23266              :     }
   23267              : }
   23268              : 
   23269              :  int
   23270              : recog_401 (rtx x1 ATTRIBUTE_UNUSED,
   23271              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23272              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23273              : {
   23274              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23275              :   rtx x2, x3, x4, x5, x6;
   23276              :   int res ATTRIBUTE_UNUSED;
   23277              :   x2 = XVECEXP (x1, 0, 0);
   23278              :   x3 = XEXP (x2, 0);
   23279              :   switch (GET_CODE (x3))
   23280              :     {
   23281              :     case REG:
   23282              :     case SUBREG:
   23283              :     case MEM:
   23284              :       operands[0] = x3;
   23285              :       x4 = XVECEXP (x1, 0, 1);
   23286              :       switch (GET_CODE (x4))
   23287              :         {
   23288              :         case CLOBBER:
   23289              :           x5 = XEXP (x4, 0);
   23290              :           if (GET_CODE (x5) != REG
   23291              :               || REGNO (x5) != 17
   23292              :               || GET_MODE (x5) != E_CCmode)
   23293              :             return -1;
   23294              :           switch (GET_MODE (operands[0]))
   23295              :             {
   23296              :             case E_DImode:
   23297              :               if (!nonimmediate_operand (operands[0], E_DImode))
   23298              :                 return -1;
   23299              :               x6 = XEXP (x2, 1);
   23300              :               if (GET_MODE (x6) != E_DImode
   23301              :                   || !nonimmediate_operand (operands[1], E_DImode))
   23302              :                 return -1;
   23303              :               if (x86_64_hilo_general_operand (operands[2], E_DImode)
   23304              :                   && (
   23305              : #line 8293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23306              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)) && 
   23307              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23308              : (!TARGET_64BIT)))
   23309              :                 return 384; /* *subdi3_doubleword */
   23310              :               if (!x86_64_general_operand (operands[2], E_DImode)
   23311              :                   || !(
   23312              : #line 8357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23313              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)
   23314              :   && true) && 
   23315              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23316              : (TARGET_64BIT)))
   23317              :                 return -1;
   23318              :               return 395; /* *subdi_1 */
   23319              : 
   23320              :             case E_TImode:
   23321              :               x6 = XEXP (x2, 1);
   23322              :               if (pattern568 (x6, 
   23323              : E_TImode) != 0
   23324              :                   || !(
   23325              : #line 8293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23326              : (ix86_binary_operator_ok (MINUS, DImode, operands, TARGET_APX_NDD)) && 
   23327              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23328              : (TARGET_64BIT)))
   23329              :                 return -1;
   23330              :               return 385; /* *subti3_doubleword */
   23331              : 
   23332              :             case E_QImode:
   23333              :               x6 = XEXP (x2, 1);
   23334              :               if (pattern569 (x6, 
   23335              : E_QImode) != 0
   23336              :                   || !
   23337              : #line 8357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23338              : (ix86_binary_operator_ok (MINUS, QImode, operands, TARGET_APX_NDD)
   23339              :   && true))
   23340              :                 return -1;
   23341              :               return 389; /* *subqi_1 */
   23342              : 
   23343              :             case E_HImode:
   23344              :               x6 = XEXP (x2, 1);
   23345              :               if (pattern569 (x6, 
   23346              : E_HImode) != 0
   23347              :                   || !
   23348              : #line 8357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23349              : (ix86_binary_operator_ok (MINUS, HImode, operands, TARGET_APX_NDD)
   23350              :   && true))
   23351              :                 return -1;
   23352              :               return 391; /* *subhi_1 */
   23353              : 
   23354              :             case E_SImode:
   23355              :               x6 = XEXP (x2, 1);
   23356              :               if (pattern570 (x6) != 0
   23357              :                   || !
   23358              : #line 8357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23359              : (ix86_binary_operator_ok (MINUS, SImode, operands, TARGET_APX_NDD)
   23360              :   && true))
   23361              :                 return -1;
   23362              :               return 393; /* *subsi_1 */
   23363              : 
   23364              :             case E_V2QImode:
   23365              :               x6 = XEXP (x2, 1);
   23366              :               if (pattern572 (x6, 
   23367              : E_V2QImode) != 0
   23368              :                   || !
   23369              : #line 3272 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23370              : (!TARGET_PARTIAL_REG_STALL || optimize_size || TARGET_SSE2))
   23371              :                 return -1;
   23372              :               return 2191; /* subv2qi3 */
   23373              : 
   23374              :             default:
   23375              :               return -1;
   23376              :             }
   23377              : 
   23378              :         case UNSPEC:
   23379              :           if (pattern215 (x1) != 0
   23380              :               || !
   23381              : #line 797 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   23382              : (TARGET_3DNOW && !(MEM_P (operands[0]) && MEM_P (operands[1]))))
   23383              :             return -1;
   23384              :           return 2107; /* *mmx_subv2sf3 */
   23385              : 
   23386              :         default:
   23387              :           return -1;
   23388              :         }
   23389              : 
   23390              :     case STRICT_LOW_PART:
   23391              :       x4 = XVECEXP (x1, 0, 1);
   23392              :       if (pattern237 (x4, 
   23393              : E_CCmode, 
   23394              : 17) != 0)
   23395              :         return -1;
   23396              :       switch (pattern1335 (x2))
   23397              :         {
   23398              :         case 0:
   23399              :           if (!
   23400              : #line 8441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23401              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   23402              :             return -1;
   23403              :           return 407; /* *subqi_1_slp */
   23404              : 
   23405              :         case 1:
   23406              :           if (!
   23407              : #line 8441 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23408              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   23409              :             return -1;
   23410              :           return 408; /* *subhi_1_slp */
   23411              : 
   23412              :         default:
   23413              :           return -1;
   23414              :         }
   23415              : 
   23416              :     default:
   23417              :       return -1;
   23418              :     }
   23419              : }
   23420              : 
   23421              :  int
   23422              : recog_407 (rtx x1 ATTRIBUTE_UNUSED,
   23423              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23424              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23425              : {
   23426              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23427              :   rtx x2, x3, x4, x5, x6, x7;
   23428              :   int res ATTRIBUTE_UNUSED;
   23429              :   x2 = XVECEXP (x1, 0, 0);
   23430              :   x3 = XEXP (x2, 1);
   23431              :   x4 = XEXP (x3, 0);
   23432              :   x5 = XEXP (x4, 0);
   23433              :   switch (GET_CODE (x5))
   23434              :     {
   23435              :     case ASHIFTRT:
   23436              :     case LSHIFTRT:
   23437              :     case SIGN_EXTRACT:
   23438              :     case ZERO_EXTRACT:
   23439              :       operands[3] = x5;
   23440              :       x6 = XEXP (x5, 0);
   23441              :       operands[2] = x6;
   23442              :       switch (pattern1534 (x2))
   23443              :         {
   23444              :         case 0:
   23445              :           if (
   23446              : #line 13578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23447              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   23448              :             return 760; /* *iorqi_exthi_1_slp */
   23449              :           break;
   23450              : 
   23451              :         case 1:
   23452              :           if (
   23453              : #line 13578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23454              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   23455              :             return 763; /* *iorqi_extsi_1_slp */
   23456              :           break;
   23457              : 
   23458              :         case 2:
   23459              :           if ((
   23460              : #line 13578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23461              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   23462              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23463              : (TARGET_64BIT)))
   23464              :             return 766; /* *iorqi_extdi_1_slp */
   23465              :           break;
   23466              : 
   23467              :         case 3:
   23468              :           return 784; /* *iorqi_exthi_0 */
   23469              : 
   23470              :         case 4:
   23471              :           return 787; /* *iorqi_extsi_0 */
   23472              : 
   23473              :         case 5:
   23474              :           if (
   23475              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23476              : (TARGET_64BIT))
   23477              :             return 790; /* *iorqi_extdi_0 */
   23478              :           break;
   23479              : 
   23480              :         default:
   23481              :           break;
   23482              :         }
   23483              :       x7 = XEXP (x3, 1);
   23484              :       if (GET_CODE (x7) != SUBREG)
   23485              :         return -1;
   23486              :       switch (pattern1535 (x2))
   23487              :         {
   23488              :         case 0:
   23489              :           if (!
   23490              : #line 13607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23491              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   23492              :             return -1;
   23493              :           return 769; /* *iorqi_exthi_2_slp */
   23494              : 
   23495              :         case 1:
   23496              :           if (!
   23497              : #line 13607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23498              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   23499              :             return -1;
   23500              :           return 772; /* *iorqi_extsi_2_slp */
   23501              : 
   23502              :         case 2:
   23503              :           if (!(
   23504              : #line 13607 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23505              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   23506              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23507              : (TARGET_64BIT)))
   23508              :             return -1;
   23509              :           return 775; /* *iorqi_extdi_2_slp */
   23510              : 
   23511              :         case 3:
   23512              :           return 793; /* *iorqi_ext2hi_0 */
   23513              : 
   23514              :         case 4:
   23515              :           return 796; /* *iorqi_ext2si_0 */
   23516              : 
   23517              :         case 5:
   23518              :           if (!
   23519              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23520              : (TARGET_64BIT))
   23521              :             return -1;
   23522              :           return 799; /* *iorqi_ext2di_0 */
   23523              : 
   23524              :         default:
   23525              :           return -1;
   23526              :         }
   23527              : 
   23528              :     default:
   23529              :       return -1;
   23530              :     }
   23531              : }
   23532              : 
   23533              :  int
   23534              : recog_408 (rtx x1 ATTRIBUTE_UNUSED,
   23535              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   23536              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   23537              : {
   23538              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   23539              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   23540              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   23541              :   rtx x18, x19, x20, x21, x22, x23, x24, x25;
   23542              :   rtx x26;
   23543              :   int res ATTRIBUTE_UNUSED;
   23544              :   x2 = XVECEXP (x1, 0, 0);
   23545              :   x3 = XEXP (x2, 1);
   23546              :   x4 = XEXP (x3, 0);
   23547              :   switch (GET_CODE (x4))
   23548              :     {
   23549              :     case ASHIFT:
   23550              :       x5 = XEXP (x2, 0);
   23551              :       operands[0] = x5;
   23552              :       x6 = XEXP (x4, 0);
   23553              :       switch (GET_CODE (x6))
   23554              :         {
   23555              :         case ZERO_EXTEND:
   23556              :           x7 = XEXP (x4, 1);
   23557              :           if (GET_CODE (x7) != CONST_INT)
   23558              :             return -1;
   23559              :           x8 = XEXP (x3, 1);
   23560              :           if (GET_CODE (x8) != ZERO_EXTEND)
   23561              :             return -1;
   23562              :           x9 = XEXP (x6, 0);
   23563              :           switch (GET_CODE (x9))
   23564              :             {
   23565              :             case TRUNCATE:
   23566              :               if (GET_MODE (x9) != E_QImode)
   23567              :                 return -1;
   23568              :               x10 = XEXP (x9, 0);
   23569              :               if (GET_CODE (x10) != MOD
   23570              :                   || GET_MODE (x10) != E_HImode
   23571              :                   || XWINT (x7, 0) != 8L)
   23572              :                 return -1;
   23573              :               x11 = XEXP (x8, 0);
   23574              :               if (GET_CODE (x11) != TRUNCATE
   23575              :                   || GET_MODE (x11) != E_QImode)
   23576              :                 return -1;
   23577              :               x12 = XEXP (x11, 0);
   23578              :               if (GET_CODE (x12) != DIV
   23579              :                   || GET_MODE (x12) != E_HImode)
   23580              :                 return -1;
   23581              :               x13 = XVECEXP (x1, 0, 1);
   23582              :               if (pattern237 (x13, 
   23583              : E_CCmode, 
   23584              : 17) != 0
   23585              :                   || !register_operand (operands[0], E_HImode)
   23586              :                   || GET_MODE (x3) != E_HImode
   23587              :                   || GET_MODE (x4) != E_HImode
   23588              :                   || GET_MODE (x6) != E_HImode)
   23589              :                 return -1;
   23590              :               x14 = XEXP (x10, 0);
   23591              :               operands[1] = x14;
   23592              :               if (!register_operand (operands[1], E_HImode))
   23593              :                 return -1;
   23594              :               x15 = XEXP (x10, 1);
   23595              :               if (GET_MODE (x15) != E_HImode
   23596              :                   || GET_MODE (x8) != E_HImode)
   23597              :                 return -1;
   23598              :               x16 = XEXP (x12, 1);
   23599              :               if (GET_MODE (x16) != E_HImode)
   23600              :                 return -1;
   23601              :               x17 = XEXP (x12, 0);
   23602              :               if (!rtx_equal_p (x17, operands[1]))
   23603              :                 return -1;
   23604              :               switch (GET_CODE (x15))
   23605              :                 {
   23606              :                 case SIGN_EXTEND:
   23607              :                   if (GET_CODE (x16) != SIGN_EXTEND)
   23608              :                     return -1;
   23609              :                   x18 = XEXP (x15, 0);
   23610              :                   operands[2] = x18;
   23611              :                   if (!nonimmediate_operand (operands[2], E_QImode))
   23612              :                     return -1;
   23613              :                   x19 = XEXP (x16, 0);
   23614              :                   if (!rtx_equal_p (x19, operands[2])
   23615              :                       || !
   23616              : #line 12793 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23617              : (TARGET_QIMODE_MATH
   23618              :    && true))
   23619              :                     return -1;
   23620              :                   return 707; /* divmodhiqi3 */
   23621              : 
   23622              :                 case ZERO_EXTEND:
   23623              :                   if (GET_CODE (x16) != ZERO_EXTEND)
   23624              :                     return -1;
   23625              :                   x18 = XEXP (x15, 0);
   23626              :                   operands[2] = x18;
   23627              :                   if (!nonimmediate_operand (operands[2], E_QImode))
   23628              :                     return -1;
   23629              :                   x19 = XEXP (x16, 0);
   23630              :                   if (!rtx_equal_p (x19, operands[2])
   23631              :                       || !
   23632              : #line 12793 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23633              : (TARGET_QIMODE_MATH
   23634              :    && true))
   23635              :                     return -1;
   23636              :                   return 709; /* udivmodhiqi3 */
   23637              : 
   23638              :                 default:
   23639              :                   return -1;
   23640              :                 }
   23641              : 
   23642              :             case REG:
   23643              :             case SUBREG:
   23644              :               operands[1] = x9;
   23645              :               x13 = XVECEXP (x1, 0, 1);
   23646              :               if (pattern386 (x13, 
   23647              : 175, 
   23648              : 0) != 0)
   23649              :                 return -1;
   23650              :               x11 = XEXP (x8, 0);
   23651              :               operands[2] = x11;
   23652              :               switch (XWINT (x7, 0))
   23653              :                 {
   23654              :                 case 8L:
   23655              :                   if (pattern1582 (x3, 
   23656              : E_QImode, 
   23657              : E_HImode) != 0
   23658              :                       || !
   23659              : #line 2577 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23660              : (TARGET_AVX512F))
   23661              :                     return -1;
   23662              :                   return 2719; /* kunpckhi */
   23663              : 
   23664              :                 case 16L:
   23665              :                   if (pattern1582 (x3, 
   23666              : E_HImode, 
   23667              : E_SImode) != 0
   23668              :                       || !
   23669              : #line 2591 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23670              : (TARGET_AVX512BW))
   23671              :                     return -1;
   23672              :                   return 2720; /* kunpcksi */
   23673              : 
   23674              :                 case 32L:
   23675              :                   if (pattern1582 (x3, 
   23676              : E_SImode, 
   23677              : E_DImode) != 0
   23678              :                       || !
   23679              : #line 2603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   23680              : (TARGET_AVX512BW))
   23681              :                     return -1;
   23682              :                   return 2721; /* kunpckdi */
   23683              : 
   23684              :                 default:
   23685              :                   return -1;
   23686              :                 }
   23687              : 
   23688              :             default:
   23689              :               return -1;
   23690              :             }
   23691              : 
   23692              :         case REG:
   23693              :         case SUBREG:
   23694              :         case MEM:
   23695              :           x13 = XVECEXP (x1, 0, 1);
   23696              :           if (pattern237 (x13, 
   23697              : E_CCmode, 
   23698              : 17) != 0)
   23699              :             return -1;
   23700              :           switch (pattern1061 (x3, 
   23701              : LSHIFTRT))
   23702              :             {
   23703              :             case 0:
   23704              :               x8 = XEXP (x3, 1);
   23705              :               x11 = XEXP (x8, 0);
   23706              :               x12 = XEXP (x11, 0);
   23707              :               x17 = XEXP (x12, 0);
   23708              :               operands[1] = x17;
   23709              :               if (nonimmediate_operand (operands[0], E_DImode))
   23710              :                 {
   23711              :                   x7 = XEXP (x4, 1);
   23712              :                   x20 = XEXP (x7, 0);
   23713              :                   operands[2] = x20;
   23714              :                   if (rtx_equal_p (x6, operands[0]))
   23715              :                     {
   23716              :                       x21 = XEXP (x11, 1);
   23717              :                       x22 = XEXP (x21, 1);
   23718              :                       x23 = XEXP (x22, 0);
   23719              :                       if (rtx_equal_p (x23, operands[2])
   23720              :                           && 
   23721              : #line 16369 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23722              : (TARGET_64BIT && true))
   23723              :                         return 1095; /* x86_64_shld */
   23724              :                     }
   23725              :                 }
   23726              :               operands[2] = x17;
   23727              :               if (!register_operand (operands[0], E_DImode))
   23728              :                 return -1;
   23729              :               operands[1] = x6;
   23730              :               if (!nonimmediate_operand (operands[1], E_DImode))
   23731              :                 return -1;
   23732              :               x7 = XEXP (x4, 1);
   23733              :               x20 = XEXP (x7, 0);
   23734              :               operands[3] = x20;
   23735              :               x21 = XEXP (x11, 1);
   23736              :               x22 = XEXP (x21, 1);
   23737              :               x23 = XEXP (x22, 0);
   23738              :               if (!rtx_equal_p (x23, operands[3])
   23739              :                   || !
   23740              : #line 16390 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23741              : (TARGET_APX_NDD && true))
   23742              :                 return -1;
   23743              :               return 1097; /* x86_64_shld_ndd */
   23744              : 
   23745              :             case 1:
   23746              :               if (!nonimmediate_operand (operands[0], E_SImode)
   23747              :                   || pattern1060 (x3, 
   23748              : E_SImode, 
   23749              : E_DImode) != 0)
   23750              :                 return -1;
   23751              :               x8 = XEXP (x3, 1);
   23752              :               x11 = XEXP (x8, 0);
   23753              :               x12 = XEXP (x11, 0);
   23754              :               x17 = XEXP (x12, 0);
   23755              :               operands[1] = x17;
   23756              :               x7 = XEXP (x4, 1);
   23757              :               x20 = XEXP (x7, 0);
   23758              :               operands[2] = x20;
   23759              :               if (rtx_equal_p (x6, operands[0]))
   23760              :                 {
   23761              :                   x21 = XEXP (x11, 1);
   23762              :                   x22 = XEXP (x21, 1);
   23763              :                   x23 = XEXP (x22, 0);
   23764              :                   if (rtx_equal_p (x23, operands[2]))
   23765              :                     return 1107; /* x86_shld */
   23766              :                 }
   23767              :               operands[2] = x17;
   23768              :               operands[1] = x6;
   23769              :               if (!nonimmediate_operand (operands[1], E_SImode))
   23770              :                 return -1;
   23771              :               operands[3] = x20;
   23772              :               x21 = XEXP (x11, 1);
   23773              :               x22 = XEXP (x21, 1);
   23774              :               x23 = XEXP (x22, 0);
   23775              :               if (!rtx_equal_p (x23, operands[3])
   23776              :                   || !
   23777              : #line 16629 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23778              : (TARGET_APX_NDD && true))
   23779              :                 return -1;
   23780              :               return 1109; /* x86_shld_ndd */
   23781              : 
   23782              :             case 2:
   23783              :               x8 = XEXP (x3, 1);
   23784              :               switch (GET_CODE (x8))
   23785              :                 {
   23786              :                 case SUBREG:
   23787              :                   switch (pattern1253 (x3, 
   23788              : LSHIFTRT))
   23789              :                     {
   23790              :                     case 0:
   23791              :                       x7 = XEXP (x4, 1);
   23792              :                       operands[2] = x7;
   23793              :                       if (pattern1705 (x3) == 0
   23794              :                           && 
   23795              : #line 16409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23796              : (TARGET_64BIT
   23797              :    && INTVAL (operands[3]) == 64 - INTVAL (operands[2])
   23798              :    && true))
   23799              :                         return 1099; /* x86_64_shld_1 */
   23800              :                       operands[3] = x7;
   23801              :                       if (pattern1706 (x3) != 0
   23802              :                           || !
   23803              : #line 16431 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23804              : (TARGET_APX_NDD
   23805              :    && INTVAL (operands[4]) == 64 - INTVAL (operands[3])
   23806              :    && true))
   23807              :                         return -1;
   23808              :                       return 1101; /* x86_64_shld_ndd_1 */
   23809              : 
   23810              :                     case 1:
   23811              :                       x7 = XEXP (x4, 1);
   23812              :                       operands[2] = x7;
   23813              :                       if (pattern1707 (x3) == 0
   23814              :                           && 
   23815              : #line 16649 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23816              : (INTVAL (operands[3]) == 32 - INTVAL (operands[2])
   23817              :   && true))
   23818              :                         return 1111; /* x86_shld_1 */
   23819              :                       operands[3] = x7;
   23820              :                       if (pattern1708 (x3) != 0
   23821              :                           || !
   23822              : #line 16671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23823              : (TARGET_APX_NDD 
   23824              :    && INTVAL (operands[4]) == 32 - INTVAL (operands[3])
   23825              :    && true))
   23826              :                         return -1;
   23827              :                       return 1113; /* x86_shld_ndd_1 */
   23828              : 
   23829              :                     default:
   23830              :                       return -1;
   23831              :                     }
   23832              : 
   23833              :                 case LSHIFTRT:
   23834              :                   switch (pattern1255 (x3))
   23835              :                     {
   23836              :                     case 0:
   23837              :                       if (!
   23838              : #line 16507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23839              : (TARGET_64BIT
   23840              :    && INTVAL (operands[3]) == 64 - INTVAL (operands[2])
   23841              :    && ix86_pre_reload_split ()))
   23842              :                         return -1;
   23843              :                       return 1103; /* *x86_64_shld_shrd_1_nozext */
   23844              : 
   23845              :                     case 1:
   23846              :                       if (!
   23847              : #line 16747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23848              : (INTVAL (operands[3]) == 32 - INTVAL (operands[2])
   23849              :    && ix86_pre_reload_split ()))
   23850              :                         return -1;
   23851              :                       return 1115; /* *x86_shld_shrd_1_nozext */
   23852              : 
   23853              :                     case 2:
   23854              :                       x11 = XEXP (x8, 0);
   23855              :                       operands[1] = x11;
   23856              :                       if (nonimmediate_operand (operands[0], E_DImode))
   23857              :                         {
   23858              :                           x7 = XEXP (x4, 1);
   23859              :                           operands[2] = x7;
   23860              :                           if (rtx_equal_p (x6, operands[0]))
   23861              :                             {
   23862              :                               x24 = XEXP (x8, 1);
   23863              :                               x25 = XEXP (x24, 1);
   23864              :                               if (rtx_equal_p (x25, operands[2])
   23865              :                                   && 
   23866              : #line 16560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23867              : (TARGET_64BIT && ix86_pre_reload_split ()))
   23868              :                                 return 1104; /* *x86_64_shld_2 */
   23869              :                             }
   23870              :                         }
   23871              :                       operands[2] = x11;
   23872              :                       if (!register_operand (operands[0], E_DImode))
   23873              :                         return -1;
   23874              :                       operands[1] = x6;
   23875              :                       if (!nonimmediate_operand (operands[1], E_DImode))
   23876              :                         return -1;
   23877              :                       x7 = XEXP (x4, 1);
   23878              :                       operands[3] = x7;
   23879              :                       x24 = XEXP (x8, 1);
   23880              :                       x25 = XEXP (x24, 1);
   23881              :                       if (!rtx_equal_p (x25, operands[3])
   23882              :                           || !
   23883              : #line 16581 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23884              : (TARGET_APX_NDD
   23885              :    && ix86_pre_reload_split ()))
   23886              :                         return -1;
   23887              :                       return 1105; /* *x86_64_shld_ndd_2 */
   23888              : 
   23889              :                     case 3:
   23890              :                       x11 = XEXP (x8, 0);
   23891              :                       operands[1] = x11;
   23892              :                       if (nonimmediate_operand (operands[0], E_SImode))
   23893              :                         {
   23894              :                           x7 = XEXP (x4, 1);
   23895              :                           operands[2] = x7;
   23896              :                           if (rtx_equal_p (x6, operands[0]))
   23897              :                             {
   23898              :                               x24 = XEXP (x8, 1);
   23899              :                               x25 = XEXP (x24, 1);
   23900              :                               if (rtx_equal_p (x25, operands[2])
   23901              :                                   && 
   23902              : #line 16799 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23903              : (TARGET_64BIT && ix86_pre_reload_split ()))
   23904              :                                 return 1116; /* *x86_shld_2 */
   23905              :                             }
   23906              :                         }
   23907              :                       operands[2] = x11;
   23908              :                       if (!register_operand (operands[0], E_SImode))
   23909              :                         return -1;
   23910              :                       operands[1] = x6;
   23911              :                       if (!nonimmediate_operand (operands[1], E_SImode))
   23912              :                         return -1;
   23913              :                       x7 = XEXP (x4, 1);
   23914              :                       operands[3] = x7;
   23915              :                       x24 = XEXP (x8, 1);
   23916              :                       x25 = XEXP (x24, 1);
   23917              :                       if (!rtx_equal_p (x25, operands[3])
   23918              :                           || !
   23919              : #line 16820 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23920              : (TARGET_APX_NDD
   23921              :    && ix86_pre_reload_split ()))
   23922              :                         return -1;
   23923              :                       return 1117; /* *x86_shld_ndd_2 */
   23924              : 
   23925              :                     default:
   23926              :                       return -1;
   23927              :                     }
   23928              : 
   23929              :                 default:
   23930              :                   return -1;
   23931              :                 }
   23932              : 
   23933              :             default:
   23934              :               return -1;
   23935              :             }
   23936              : 
   23937              :         case CONST_INT:
   23938              :           if (XWINT (x6, 0) != 1L)
   23939              :             return -1;
   23940              :           x13 = XVECEXP (x1, 0, 1);
   23941              :           if (pattern237 (x13, 
   23942              : E_CCmode, 
   23943              : 17) != 0)
   23944              :             return -1;
   23945              :           switch (pattern375 (x3))
   23946              :             {
   23947              :             case 0:
   23948              :               x7 = XEXP (x4, 1);
   23949              :               operands[2] = x7;
   23950              :               if (register_operand (operands[2], E_QImode))
   23951              :                 {
   23952              :                   switch (pattern951 (x3))
   23953              :                     {
   23954              :                     case 0:
   23955              :                       if (
   23956              : #line 19763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23957              : (TARGET_USE_BT))
   23958              :                         return 1423; /* *btssi */
   23959              :                       break;
   23960              : 
   23961              :                     case 1:
   23962              :                       if ((
   23963              : #line 19763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23964              : (TARGET_USE_BT) && 
   23965              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23966              : (TARGET_64BIT)))
   23967              :                         return 1425; /* *btsdi */
   23968              :                       break;
   23969              : 
   23970              :                     default:
   23971              :                       break;
   23972              :                     }
   23973              :                 }
   23974              :               if (GET_CODE (x7) != SUBREG)
   23975              :                 return -1;
   23976              :               switch (pattern1339 (x3))
   23977              :                 {
   23978              :                 case 0:
   23979              :                   if (!
   23980              : #line 19783 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23981              : (TARGET_USE_BT
   23982              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
   23983              :       == GET_MODE_BITSIZE (SImode)-1
   23984              :    && ix86_pre_reload_split ()))
   23985              :                     return -1;
   23986              :                   return 1427; /* *btssi_mask */
   23987              : 
   23988              :                 case 1:
   23989              :                   if (!(
   23990              : #line 19783 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23991              : (TARGET_USE_BT
   23992              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
   23993              :       == GET_MODE_BITSIZE (DImode)-1
   23994              :    && ix86_pre_reload_split ()) && 
   23995              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   23996              : (TARGET_64BIT)))
   23997              :                     return -1;
   23998              :                   return 1429; /* *btsdi_mask */
   23999              : 
   24000              :                 default:
   24001              :                   return -1;
   24002              :                 }
   24003              : 
   24004              :             case 1:
   24005              :               if (!
   24006              : #line 19811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24007              : (TARGET_USE_BT
   24008              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (SImode)-1))
   24009              :       == GET_MODE_BITSIZE (SImode)-1
   24010              :    && ix86_pre_reload_split ()))
   24011              :                 return -1;
   24012              :               return 1431; /* *btssi_mask_1 */
   24013              : 
   24014              :             case 2:
   24015              :               if (!(
   24016              : #line 19811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24017              : (TARGET_USE_BT
   24018              :    && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (DImode)-1))
   24019              :       == GET_MODE_BITSIZE (DImode)-1
   24020              :    && ix86_pre_reload_split ()) && 
   24021              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24022              : (TARGET_64BIT)))
   24023              :                 return -1;
   24024              :               return 1433; /* *btsdi_mask_1 */
   24025              : 
   24026              :             default:
   24027              :               return -1;
   24028              :             }
   24029              : 
   24030              :         default:
   24031              :           return -1;
   24032              :         }
   24033              : 
   24034              :     case REG:
   24035              :     case SUBREG:
   24036              :     case MEM:
   24037              :       operands[1] = x4;
   24038              :       switch (pattern574 (x1))
   24039              :         {
   24040              :         case 0:
   24041              :           if (
   24042              : #line 13553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24043              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   24044              :             return 754; /* *iorqi_1_slp */
   24045              :           break;
   24046              : 
   24047              :         case 1:
   24048              :           if (
   24049              : #line 13553 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24050              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)))
   24051              :             return 757; /* *iorhi_1_slp */
   24052              :           break;
   24053              : 
   24054              :         case 2:
   24055              :           if (x86_64_hilo_general_operand (operands[2], E_DImode)
   24056              :               && (
   24057              : #line 14336 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24058              : (ix86_binary_operator_ok (IOR, DImode, operands, TARGET_APX_NDD)) && 
   24059              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24060              : (!TARGET_64BIT)))
   24061              :             return 847; /* *iordi3_doubleword */
   24062              :           if (x86_64_general_operand (operands[2], E_DImode)
   24063              :               && (
   24064              : #line 14398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24065              : (ix86_binary_operator_ok (IOR, DImode, operands, TARGET_APX_NDD)
   24066              :    && true) && 
   24067              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24068              : (TARGET_64BIT)))
   24069              :             return 860; /* *iordi_1 */
   24070              :           if (const_int_operand (operands[2], E_DImode)
   24071              :               && 
   24072              : #line 14455 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24073              : (TARGET_64BIT && TARGET_USE_BT
   24074              :    && ix86_binary_operator_ok (IOR, DImode, operands)
   24075              :    && IN_RANGE (exact_log2 (INTVAL (operands[2])), 31, 63)))
   24076              :             return 866; /* *iordi_1_bts */
   24077              :           break;
   24078              : 
   24079              :         case 3:
   24080              :           if ((
   24081              : #line 14336 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24082              : (ix86_binary_operator_ok (IOR, TImode, operands, TARGET_APX_NDD)) && 
   24083              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24084              : (TARGET_64BIT)))
   24085              :             return 849; /* *iorti3_doubleword */
   24086              :           break;
   24087              : 
   24088              :         case 4:
   24089              :           if (
   24090              : #line 14398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24091              : (ix86_binary_operator_ok (IOR, HImode, operands, TARGET_APX_NDD)
   24092              :    && true))
   24093              :             return 852; /* *iorhi_1 */
   24094              :           break;
   24095              : 
   24096              :         case 5:
   24097              :           if (
   24098              : #line 14398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24099              : (ix86_binary_operator_ok (IOR, SImode, operands, TARGET_APX_NDD)
   24100              :    && true))
   24101              :             return 856; /* *iorsi_1 */
   24102              :           break;
   24103              : 
   24104              :         case 6:
   24105              :           if (
   24106              : #line 4747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24107              : (ix86_binary_operator_ok (IOR, V4QImode, operands)))
   24108              :             return 2338; /* *iorv4qi3 */
   24109              :           break;
   24110              : 
   24111              :         case 7:
   24112              :           if (
   24113              : #line 4747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24114              : (ix86_binary_operator_ok (IOR, V2QImode, operands)))
   24115              :             return 2341; /* *iorv2qi3 */
   24116              :           break;
   24117              : 
   24118              :         case 8:
   24119              :           if (
   24120              : #line 4747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   24121              : (ix86_binary_operator_ok (IOR, V2HImode, operands)))
   24122              :             return 2344; /* *iorv2hi3 */
   24123              :           break;
   24124              : 
   24125              :         case 9:
   24126              :           if (
   24127              : #line 2128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24128              : (TARGET_AVX512F))
   24129              :             return 2642; /* kiorqi */
   24130              :           break;
   24131              : 
   24132              :         case 10:
   24133              :           if (
   24134              : #line 2128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24135              : (TARGET_AVX512F))
   24136              :             return 2645; /* kiorhi */
   24137              :           break;
   24138              : 
   24139              :         case 11:
   24140              :           if ((
   24141              : #line 2128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24142              : (TARGET_AVX512F) && 
   24143              : #line 2109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24144              : (TARGET_AVX512BW)))
   24145              :             return 2648; /* kiorsi */
   24146              :           break;
   24147              : 
   24148              :         case 12:
   24149              :           if ((
   24150              : #line 2128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24151              : (TARGET_AVX512F) && 
   24152              : #line 2109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24153              : (TARGET_AVX512BW)))
   24154              :             return 2651; /* kiordi */
   24155              :           break;
   24156              : 
   24157              :         default:
   24158              :           break;
   24159              :         }
   24160              :       x13 = XVECEXP (x1, 0, 1);
   24161              :       if (GET_CODE (x13) != CLOBBER
   24162              :           || pattern575 (x1) != 0)
   24163              :         return -1;
   24164              :       if (GET_CODE (x4) == SUBREG
   24165              :           && known_eq (SUBREG_BYTE (x4), 0)
   24166              :           && GET_MODE (x4) == E_QImode)
   24167              :         {
   24168              :           res = recog_407 (x1, insn, pnum_clobbers);
   24169              :           if (res >= 0)
   24170              :             return res;
   24171              :         }
   24172              :       x5 = XEXP (x2, 0);
   24173              :       operands[0] = x5;
   24174              :       if (!nonimmediate_operand (operands[0], E_QImode))
   24175              :         return -1;
   24176              :       operands[1] = x4;
   24177              :       if (!nonimmediate_operand (operands[1], E_QImode))
   24178              :         return -1;
   24179              :       x8 = XEXP (x3, 1);
   24180              :       operands[2] = x8;
   24181              :       if (!general_operand (operands[2], E_QImode)
   24182              :           || !
   24183              : #line 14619 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24184              : (ix86_binary_operator_ok (IOR, QImode, operands, TARGET_APX_NDD)
   24185              :    && true))
   24186              :         return -1;
   24187              :       return 896; /* *iorqi_1 */
   24188              : 
   24189              :     case ZERO_EXTEND:
   24190              :       if (GET_MODE (x4) != E_DImode
   24191              :           || pattern576 (x1) != 0)
   24192              :         return -1;
   24193              :       x6 = XEXP (x4, 0);
   24194              :       operands[1] = x6;
   24195              :       if (!nonimmediate_operand (operands[1], E_SImode))
   24196              :         return -1;
   24197              :       x8 = XEXP (x3, 1);
   24198              :       operands[2] = x8;
   24199              :       if (!x86_64_zext_immediate_operand (operands[2], E_DImode)
   24200              :           || !
   24201              : #line 14601 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24202              : (TARGET_64BIT
   24203              :    && ix86_binary_operator_ok (IOR, SImode, operands, TARGET_APX_NDD)))
   24204              :         return -1;
   24205              :       return 893; /* *iorsi_1_zext_imm */
   24206              : 
   24207              :     case LSHIFTRT:
   24208              :       if (pattern346 (x1) != 0)
   24209              :         return -1;
   24210              :       switch (pattern1061 (x3, 
   24211              : ASHIFT))
   24212              :         {
   24213              :         case 0:
   24214              :           x8 = XEXP (x3, 1);
   24215              :           x11 = XEXP (x8, 0);
   24216              :           x12 = XEXP (x11, 0);
   24217              :           x17 = XEXP (x12, 0);
   24218              :           operands[1] = x17;
   24219              :           if (nonimmediate_operand (operands[0], E_DImode))
   24220              :             {
   24221              :               x7 = XEXP (x4, 1);
   24222              :               x20 = XEXP (x7, 0);
   24223              :               operands[2] = x20;
   24224              :               x6 = XEXP (x4, 0);
   24225              :               if (rtx_equal_p (x6, operands[0]))
   24226              :                 {
   24227              :                   x21 = XEXP (x11, 1);
   24228              :                   x22 = XEXP (x21, 1);
   24229              :                   x23 = XEXP (x22, 0);
   24230              :                   if (rtx_equal_p (x23, operands[2])
   24231              :                       && 
   24232              : #line 17727 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24233              : (TARGET_64BIT && true))
   24234              :                     return 1175; /* x86_64_shrd */
   24235              :                 }
   24236              :             }
   24237              :           operands[2] = x17;
   24238              :           if (!register_operand (operands[0], E_DImode))
   24239              :             return -1;
   24240              :           x6 = XEXP (x4, 0);
   24241              :           operands[1] = x6;
   24242              :           if (!nonimmediate_operand (operands[1], E_DImode))
   24243              :             return -1;
   24244              :           x7 = XEXP (x4, 1);
   24245              :           x20 = XEXP (x7, 0);
   24246              :           operands[3] = x20;
   24247              :           x21 = XEXP (x11, 1);
   24248              :           x22 = XEXP (x21, 1);
   24249              :           x23 = XEXP (x22, 0);
   24250              :           if (!rtx_equal_p (x23, operands[3])
   24251              :               || !
   24252              : #line 17748 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24253              : (TARGET_APX_NDD && true))
   24254              :             return -1;
   24255              :           return 1177; /* x86_64_shrd_ndd */
   24256              : 
   24257              :         case 1:
   24258              :           if (pattern1060 (x3, 
   24259              : E_SImode, 
   24260              : E_DImode) != 0)
   24261              :             return -1;
   24262              :           x8 = XEXP (x3, 1);
   24263              :           x11 = XEXP (x8, 0);
   24264              :           x12 = XEXP (x11, 0);
   24265              :           x17 = XEXP (x12, 0);
   24266              :           operands[1] = x17;
   24267              :           if (nonimmediate_operand (operands[0], E_SImode))
   24268              :             {
   24269              :               x7 = XEXP (x4, 1);
   24270              :               x20 = XEXP (x7, 0);
   24271              :               operands[2] = x20;
   24272              :               x6 = XEXP (x4, 0);
   24273              :               if (rtx_equal_p (x6, operands[0]))
   24274              :                 {
   24275              :                   x21 = XEXP (x11, 1);
   24276              :                   x22 = XEXP (x21, 1);
   24277              :                   x23 = XEXP (x22, 0);
   24278              :                   if (rtx_equal_p (x23, operands[2]))
   24279              :                     return 1187; /* x86_shrd */
   24280              :                 }
   24281              :             }
   24282              :           operands[2] = x17;
   24283              :           if (!register_operand (operands[0], E_SImode))
   24284              :             return -1;
   24285              :           x6 = XEXP (x4, 0);
   24286              :           operands[1] = x6;
   24287              :           if (!nonimmediate_operand (operands[1], E_SImode))
   24288              :             return -1;
   24289              :           x7 = XEXP (x4, 1);
   24290              :           x20 = XEXP (x7, 0);
   24291              :           operands[3] = x20;
   24292              :           x21 = XEXP (x11, 1);
   24293              :           x22 = XEXP (x21, 1);
   24294              :           x23 = XEXP (x22, 0);
   24295              :           if (!rtx_equal_p (x23, operands[3])
   24296              :               || !
   24297              : #line 17987 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24298              : (TARGET_APX_NDD && true))
   24299              :             return -1;
   24300              :           return 1189; /* x86_shrd_ndd */
   24301              : 
   24302              :         case 2:
   24303              :           x8 = XEXP (x3, 1);
   24304              :           switch (GET_CODE (x8))
   24305              :             {
   24306              :             case SUBREG:
   24307              :               switch (pattern1253 (x3, 
   24308              : ASHIFT))
   24309              :                 {
   24310              :                 case 0:
   24311              :                   x7 = XEXP (x4, 1);
   24312              :                   operands[2] = x7;
   24313              :                   if (pattern1705 (x3) == 0
   24314              :                       && 
   24315              : #line 17767 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24316              : (TARGET_64BIT
   24317              :    && INTVAL (operands[3]) == 64 - INTVAL (operands[2])
   24318              :    && true))
   24319              :                     return 1179; /* x86_64_shrd_1 */
   24320              :                   operands[3] = x7;
   24321              :                   if (pattern1706 (x3) != 0
   24322              :                       || !
   24323              : #line 17789 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24324              : (TARGET_APX_NDD
   24325              :    && INTVAL (operands[4]) == 64 - INTVAL (operands[3])
   24326              :    && true))
   24327              :                     return -1;
   24328              :                   return 1181; /* x86_64_shrd_ndd_1 */
   24329              : 
   24330              :                 case 1:
   24331              :                   x7 = XEXP (x4, 1);
   24332              :                   operands[2] = x7;
   24333              :                   if (pattern1707 (x3) == 0
   24334              :                       && 
   24335              : #line 18006 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24336              : (INTVAL (operands[3]) == 32 - INTVAL (operands[2])
   24337              :    && true))
   24338              :                     return 1191; /* x86_shrd_1 */
   24339              :                   operands[3] = x7;
   24340              :                   if (pattern1708 (x3) != 0
   24341              :                       || !
   24342              : #line 18028 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24343              : (TARGET_APX_NDD
   24344              :    && (INTVAL (operands[4]) == 32 - INTVAL (operands[3]))
   24345              :    && true))
   24346              :                     return -1;
   24347              :                   return 1193; /* x86_shrd_ndd_1 */
   24348              : 
   24349              :                 default:
   24350              :                   return -1;
   24351              :                 }
   24352              : 
   24353              :             case ASHIFT:
   24354              :               switch (pattern1255 (x3))
   24355              :                 {
   24356              :                 case 0:
   24357              :                   if (!
   24358              : #line 17865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24359              : (TARGET_64BIT
   24360              :    && INTVAL (operands[3]) == 64 - INTVAL (operands[2])
   24361              :    && ix86_pre_reload_split ()))
   24362              :                     return -1;
   24363              :                   return 1183; /* *x86_64_shrd_shld_1_nozext */
   24364              : 
   24365              :                 case 1:
   24366              :                   if (!
   24367              : #line 18104 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24368              : (INTVAL (operands[3]) == 32 - INTVAL (operands[2])
   24369              :    && ix86_pre_reload_split ()))
   24370              :                     return -1;
   24371              :                   return 1195; /* *x86_shrd_shld_1_nozext */
   24372              : 
   24373              :                 case 2:
   24374              :                   x11 = XEXP (x8, 0);
   24375              :                   operands[1] = x11;
   24376              :                   if (nonimmediate_operand (operands[0], E_DImode))
   24377              :                     {
   24378              :                       x7 = XEXP (x4, 1);
   24379              :                       operands[2] = x7;
   24380              :                       x6 = XEXP (x4, 0);
   24381              :                       if (rtx_equal_p (x6, operands[0]))
   24382              :                         {
   24383              :                           x24 = XEXP (x8, 1);
   24384              :                           x25 = XEXP (x24, 1);
   24385              :                           if (rtx_equal_p (x25, operands[2])
   24386              :                               && 
   24387              : #line 17918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24388              : (TARGET_64BIT && ix86_pre_reload_split ()))
   24389              :                             return 1184; /* *x86_64_shrd_2 */
   24390              :                         }
   24391              :                     }
   24392              :                   operands[2] = x11;
   24393              :                   if (!register_operand (operands[0], E_DImode))
   24394              :                     return -1;
   24395              :                   x6 = XEXP (x4, 0);
   24396              :                   operands[1] = x6;
   24397              :                   if (!nonimmediate_operand (operands[1], E_DImode))
   24398              :                     return -1;
   24399              :                   x7 = XEXP (x4, 1);
   24400              :                   operands[3] = x7;
   24401              :                   x24 = XEXP (x8, 1);
   24402              :                   x25 = XEXP (x24, 1);
   24403              :                   if (!rtx_equal_p (x25, operands[2])
   24404              :                       || !
   24405              : #line 17939 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24406              : (TARGET_APX_NDD
   24407              :   && ix86_pre_reload_split ()))
   24408              :                     return -1;
   24409              :                   return 1185; /* *x86_64_shrd_ndd_2 */
   24410              : 
   24411              :                 case 3:
   24412              :                   x11 = XEXP (x8, 0);
   24413              :                   operands[1] = x11;
   24414              :                   if (nonimmediate_operand (operands[0], E_SImode))
   24415              :                     {
   24416              :                       x7 = XEXP (x4, 1);
   24417              :                       operands[2] = x7;
   24418              :                       x6 = XEXP (x4, 0);
   24419              :                       if (rtx_equal_p (x6, operands[0]))
   24420              :                         {
   24421              :                           x24 = XEXP (x8, 1);
   24422              :                           x25 = XEXP (x24, 1);
   24423              :                           if (rtx_equal_p (x25, operands[2])
   24424              :                               && 
   24425              : #line 18156 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24426              : (TARGET_64BIT && ix86_pre_reload_split ()))
   24427              :                             return 1196; /* *x86_shrd_2 */
   24428              :                         }
   24429              :                     }
   24430              :                   operands[2] = x11;
   24431              :                   if (!register_operand (operands[0], E_SImode))
   24432              :                     return -1;
   24433              :                   x6 = XEXP (x4, 0);
   24434              :                   operands[1] = x6;
   24435              :                   if (!nonimmediate_operand (operands[1], E_SImode))
   24436              :                     return -1;
   24437              :                   x7 = XEXP (x4, 1);
   24438              :                   operands[3] = x7;
   24439              :                   x24 = XEXP (x8, 1);
   24440              :                   x25 = XEXP (x24, 1);
   24441              :                   if (!rtx_equal_p (x25, operands[3])
   24442              :                       || !
   24443              : #line 18177 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24444              : (TARGET_APX_NDD
   24445              :    && ix86_pre_reload_split ()))
   24446              :                     return -1;
   24447              :                   return 1197; /* *x86_shrd_ndd_2 */
   24448              : 
   24449              :                 default:
   24450              :                   return -1;
   24451              :                 }
   24452              : 
   24453              :             default:
   24454              :               return -1;
   24455              :             }
   24456              : 
   24457              :         default:
   24458              :           return -1;
   24459              :         }
   24460              : 
   24461              :     case NOT:
   24462              :       x6 = XEXP (x4, 0);
   24463              :       if (GET_CODE (x6) != PLUS)
   24464              :         return -1;
   24465              :       x26 = XEXP (x6, 1);
   24466              :       if (x26 != const_int_rtx[MAX_SAVED_CONST_INT + 1]
   24467              :           || pattern346 (x1) != 0)
   24468              :         return -1;
   24469              :       x9 = XEXP (x6, 0);
   24470              :       operands[1] = x9;
   24471              :       x8 = XEXP (x3, 1);
   24472              :       if (!rtx_equal_p (x8, operands[1]))
   24473              :         return -1;
   24474              :       switch (pattern1256 (x3))
   24475              :         {
   24476              :         case 0:
   24477              :           if (!
   24478              : #line 23208 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24479              : (TARGET_TBM))
   24480              :             return -1;
   24481              :           return 1640; /* *tbm_blci_si */
   24482              : 
   24483              :         case 1:
   24484              :           if (!(
   24485              : #line 23208 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24486              : (TARGET_TBM) && 
   24487              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24488              : (TARGET_64BIT)))
   24489              :             return -1;
   24490              :           return 1641; /* *tbm_blci_di */
   24491              : 
   24492              :         default:
   24493              :           return -1;
   24494              :         }
   24495              : 
   24496              :     case PLUS:
   24497              :       x7 = XEXP (x4, 1);
   24498              :       if (GET_CODE (x7) != CONST_INT
   24499              :           || pattern351 (x1) != 0)
   24500              :         return -1;
   24501              :       switch (XWINT (x7, 0))
   24502              :         {
   24503              :         case 1L:
   24504              :           switch (pattern1338 (x3))
   24505              :             {
   24506              :             case 0:
   24507              :               if (!
   24508              : #line 23248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24509              : (TARGET_TBM))
   24510              :                 return -1;
   24511              :               return 1646; /* *tbm_blcs_si */
   24512              : 
   24513              :             case 1:
   24514              :               if (!(
   24515              : #line 23248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24516              : (TARGET_TBM) && 
   24517              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24518              : (TARGET_64BIT)))
   24519              :                 return -1;
   24520              :               return 1647; /* *tbm_blcs_di */
   24521              : 
   24522              :             case 2:
   24523              :               if (!
   24524              : #line 23289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24525              : (TARGET_TBM))
   24526              :                 return -1;
   24527              :               return 1652; /* *tbm_t1mskc_si */
   24528              : 
   24529              :             case 3:
   24530              :               if (!(
   24531              : #line 23289 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24532              : (TARGET_TBM) && 
   24533              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24534              : (TARGET_64BIT)))
   24535              :                 return -1;
   24536              :               return 1653; /* *tbm_t1mskc_di */
   24537              : 
   24538              :             default:
   24539              :               return -1;
   24540              :             }
   24541              : 
   24542              :         case -1L:
   24543              :           switch (pattern1338 (x3))
   24544              :             {
   24545              :             case 0:
   24546              :               if (!
   24547              : #line 23261 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24548              : (TARGET_TBM))
   24549              :                 return -1;
   24550              :               return 1648; /* *tbm_blsfill_si */
   24551              : 
   24552              :             case 1:
   24553              :               if (!(
   24554              : #line 23261 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24555              : (TARGET_TBM) && 
   24556              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24557              : (TARGET_64BIT)))
   24558              :                 return -1;
   24559              :               return 1649; /* *tbm_blsfill_di */
   24560              : 
   24561              :             case 2:
   24562              :               if (!
   24563              : #line 23275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24564              : (TARGET_TBM))
   24565              :                 return -1;
   24566              :               return 1650; /* *tbm_blsic_si */
   24567              : 
   24568              :             case 3:
   24569              :               if (!(
   24570              : #line 23275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24571              : (TARGET_TBM) && 
   24572              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24573              : (TARGET_64BIT)))
   24574              :                 return -1;
   24575              :               return 1651; /* *tbm_blsic_di */
   24576              : 
   24577              :             default:
   24578              :               return -1;
   24579              :             }
   24580              : 
   24581              :         default:
   24582              :           return -1;
   24583              :         }
   24584              : 
   24585              :     default:
   24586              :       return -1;
   24587              :     }
   24588              : }
   24589              : 
   24590              :  int
   24591              : recog_443 (rtx x1 ATTRIBUTE_UNUSED,
   24592              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   24593              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   24594              : {
   24595              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24596              :   rtx x2, x3, x4, x5, x6;
   24597              :   int res ATTRIBUTE_UNUSED;
   24598              :   x2 = XVECEXP (x1, 0, 0);
   24599              :   if (GET_CODE (x2) != RETURN)
   24600              :     return -1;
   24601              :   x3 = XVECEXP (x1, 0, 1);
   24602              :   if (GET_CODE (x3) != USE)
   24603              :     return -1;
   24604              :   x4 = XVECEXP (x1, 0, 2);
   24605              :   if (GET_CODE (x4) != SET)
   24606              :     return -1;
   24607              :   x5 = XEXP (x4, 1);
   24608              :   if (GET_CODE (x5) != REG
   24609              :       || REGNO (x5) != 38
   24610              :       || pattern731 (x4, 
   24611              : E_DImode, 
   24612              : 7) != 0)
   24613              :     return -1;
   24614              :   x6 = XEXP (x3, 0);
   24615              :   operands[1] = x6;
   24616              :   switch (GET_MODE (operands[1]))
   24617              :     {
   24618              :     case E_SImode:
   24619              :       if (!symbol_operand (operands[1], E_SImode)
   24620              :           || !(
   24621              : #line 31370 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24622              : (TARGET_SSE && TARGET_64BIT) && 
   24623              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24624              : (Pmode == SImode)))
   24625              :         return -1;
   24626              :       return 10253; /* *restore_multiple_and_returnsi */
   24627              : 
   24628              :     case E_DImode:
   24629              :       if (!symbol_operand (operands[1], E_DImode)
   24630              :           || !(
   24631              : #line 31370 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   24632              : (TARGET_SSE && TARGET_64BIT) && 
   24633              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24634              : (Pmode == DImode)))
   24635              :         return -1;
   24636              :       return 10254; /* *restore_multiple_and_returndi */
   24637              : 
   24638              :     default:
   24639              :       return -1;
   24640              :     }
   24641              : }
   24642              : 
   24643              :  int
   24644              : recog_445 (rtx x1 ATTRIBUTE_UNUSED,
   24645              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   24646              :         int *pnum_clobbers ATTRIBUTE_UNUSED)
   24647              : {
   24648              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   24649              :   rtx x2, x3, x4, x5;
   24650              :   int res ATTRIBUTE_UNUSED;
   24651              :   switch (XVECLEN (x1, 0))
   24652              :     {
   24653              :     case 1:
   24654              :       switch (XINT (x1, 1))
   24655              :         {
   24656              :         case 1:
   24657              :           x2 = XVECEXP (x1, 0, 0);
   24658              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   24659              :             return -1;
   24660              :           return 1516; /* blockage */
   24661              : 
   24662              :         case 5:
   24663              :           x2 = XVECEXP (x1, 0, 0);
   24664              :           operands[0] = x2;
   24665              :           return 1518; /* prologue_use */
   24666              : 
   24667              :         case 8:
   24668              :           x2 = XVECEXP (x1, 0, 0);
   24669              :           operands[0] = x2;
   24670              :           if (!const_int_operand (operands[0], E_VOIDmode)
   24671              :               || !
   24672              : #line 21707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24673              : (reload_completed))
   24674              :             return -1;
   24675              :           return 1526; /* nops */
   24676              : 
   24677              :         case 6:
   24678              :           x2 = XVECEXP (x1, 0, 0);
   24679              :           operands[0] = x2;
   24680              :           if (!const_int_operand (operands[0], E_SImode))
   24681              :             return -1;
   24682              :           return 1536; /* split_stack_return */
   24683              : 
   24684              :         case 7:
   24685              :           x2 = XVECEXP (x1, 0, 0);
   24686              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   24687              :             return -1;
   24688              :           return 1792; /* cld */
   24689              : 
   24690              :         case 0:
   24691              :           x2 = XVECEXP (x1, 0, 0);
   24692              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   24693              :             return -1;
   24694              :           return 1937; /* ud2 */
   24695              : 
   24696              :         case 21:
   24697              :           x2 = XVECEXP (x1, 0, 0);
   24698              :           operands[0] = x2;
   24699              :           if (!memory_operand (operands[0], E_BLKmode)
   24700              :               || !
   24701              : #line 30570 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24702              : (TARGET_FXSR))
   24703              :             return -1;
   24704              :           return 1954; /* fxrstor */
   24705              : 
   24706              :         case 23:
   24707              :           x2 = XVECEXP (x1, 0, 0);
   24708              :           operands[0] = x2;
   24709              :           if (!memory_operand (operands[0], E_BLKmode)
   24710              :               || !
   24711              : #line 30580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24712              : (TARGET_64BIT && TARGET_FXSR))
   24713              :             return -1;
   24714              :           return 1955; /* fxrstor64 */
   24715              : 
   24716              :         case 41:
   24717              :           if (pnum_clobbers == NULL)
   24718              :             return -1;
   24719              :           x2 = XVECEXP (x1, 0, 0);
   24720              :           operands[0] = x2;
   24721              :           if (!memory_operand (operands[0], E_BLKmode)
   24722              :               || !
   24723              : #line 30778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24724              : (TARGET_80387))
   24725              :             return -1;
   24726              :           *pnum_clobbers = 8;
   24727              :           return 1979; /* fldenv */
   24728              : 
   24729              :         case 43:
   24730              :           x2 = XVECEXP (x1, 0, 0);
   24731              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   24732              :               || !
   24733              : #line 30797 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24734              : (TARGET_80387))
   24735              :             return -1;
   24736              :           return 1981; /* fnclex */
   24737              : 
   24738              :         case 12:
   24739              :           x2 = XVECEXP (x1, 0, 0);
   24740              :           operands[0] = x2;
   24741              :           switch (GET_MODE (operands[0]))
   24742              :             {
   24743              :             case E_SImode:
   24744              :               if (!register_operand (operands[0], E_SImode)
   24745              :                   || !(
   24746              : #line 30812 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24747              : (TARGET_LWP) && 
   24748              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24749              : (Pmode == SImode)))
   24750              :                 return -1;
   24751              :               return 1982; /* lwp_llwpcbsi */
   24752              : 
   24753              :             case E_DImode:
   24754              :               if (!register_operand (operands[0], E_DImode)
   24755              :                   || !(
   24756              : #line 30812 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24757              : (TARGET_LWP) && 
   24758              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24759              : (Pmode == DImode)))
   24760              :                 return -1;
   24761              :               return 1983; /* lwp_llwpcbdi */
   24762              : 
   24763              :             default:
   24764              :               return -1;
   24765              :             }
   24766              : 
   24767              :         case 18:
   24768              :           x2 = XVECEXP (x1, 0, 0);
   24769              :           operands[0] = x2;
   24770              :           switch (GET_MODE (operands[0]))
   24771              :             {
   24772              :             case E_SImode:
   24773              :               if (!register_operand (operands[0], E_SImode)
   24774              :                   || !
   24775              : #line 30878 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24776              : (TARGET_64BIT && TARGET_FSGSBASE))
   24777              :                 return -1;
   24778              :               return 1994; /* wrfsbasesi */
   24779              : 
   24780              :             case E_DImode:
   24781              :               if (!register_operand (operands[0], E_DImode)
   24782              :                   || !(
   24783              : #line 30878 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24784              : (TARGET_64BIT && TARGET_FSGSBASE) && 
   24785              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24786              : (TARGET_64BIT)))
   24787              :                 return -1;
   24788              :               return 1996; /* wrfsbasedi */
   24789              : 
   24790              :             default:
   24791              :               return -1;
   24792              :             }
   24793              : 
   24794              :         case 19:
   24795              :           x2 = XVECEXP (x1, 0, 0);
   24796              :           operands[0] = x2;
   24797              :           switch (GET_MODE (operands[0]))
   24798              :             {
   24799              :             case E_SImode:
   24800              :               if (!register_operand (operands[0], E_SImode)
   24801              :                   || !
   24802              : #line 30878 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24803              : (TARGET_64BIT && TARGET_FSGSBASE))
   24804              :                 return -1;
   24805              :               return 1995; /* wrgsbasesi */
   24806              : 
   24807              :             case E_DImode:
   24808              :               if (!register_operand (operands[0], E_DImode)
   24809              :                   || !(
   24810              : #line 30878 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24811              : (TARGET_64BIT && TARGET_FSGSBASE) && 
   24812              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24813              : (TARGET_64BIT)))
   24814              :                 return -1;
   24815              :               return 1997; /* wrgsbasedi */
   24816              : 
   24817              :             default:
   24818              :               return -1;
   24819              :             }
   24820              : 
   24821              :         case 78:
   24822              :           x2 = XVECEXP (x1, 0, 0);
   24823              :           operands[0] = x2;
   24824              :           switch (GET_MODE (operands[0]))
   24825              :             {
   24826              :             case E_SImode:
   24827              :               if (!nonimmediate_operand (operands[0], E_SImode)
   24828              :                   || !
   24829              : #line 30887 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24830              : (TARGET_PTWRITE))
   24831              :                 return -1;
   24832              :               return 1998; /* ptwritesi */
   24833              : 
   24834              :             case E_DImode:
   24835              :               if (!nonimmediate_operand (operands[0], E_DImode)
   24836              :                   || !(
   24837              : #line 30887 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24838              : (TARGET_PTWRITE) && 
   24839              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24840              : (TARGET_64BIT)))
   24841              :                 return -1;
   24842              :               return 1999; /* ptwritedi */
   24843              : 
   24844              :             default:
   24845              :               return -1;
   24846              :             }
   24847              : 
   24848              :         case 60:
   24849              :           x2 = XVECEXP (x1, 0, 0);
   24850              :           operands[0] = x2;
   24851              :           switch (GET_MODE (operands[0]))
   24852              :             {
   24853              :             case E_SImode:
   24854              :               if (!register_operand (operands[0], E_SImode)
   24855              :                   || !
   24856              : #line 30945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24857              : (TARGET_SHSTK || (flag_cf_protection & CF_RETURN)))
   24858              :                 return -1;
   24859              :               return 2009; /* incsspsi */
   24860              : 
   24861              :             case E_DImode:
   24862              :               if (!register_operand (operands[0], E_DImode)
   24863              :                   || !(
   24864              : #line 30945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24865              : (TARGET_SHSTK || (flag_cf_protection & CF_RETURN)) && 
   24866              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24867              : (TARGET_64BIT)))
   24868              :                 return -1;
   24869              :               return 2010; /* incsspdi */
   24870              : 
   24871              :             default:
   24872              :               return -1;
   24873              :             }
   24874              : 
   24875              :         case 61:
   24876              :           x2 = XVECEXP (x1, 0, 0);
   24877              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   24878              :               || !
   24879              : #line 30952 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24880              : (TARGET_SHSTK))
   24881              :             return -1;
   24882              :           return 2011; /* saveprevssp */
   24883              : 
   24884              :         case 62:
   24885              :           x2 = XVECEXP (x1, 0, 0);
   24886              :           operands[0] = x2;
   24887              :           if (!memory_operand (operands[0], E_DImode)
   24888              :               || !
   24889              : #line 30960 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24890              : (TARGET_SHSTK))
   24891              :             return -1;
   24892              :           return 2012; /* rstorssp */
   24893              : 
   24894              :         case 65:
   24895              :           x2 = XVECEXP (x1, 0, 0);
   24896              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   24897              :               || !
   24898              : #line 30985 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24899              : (TARGET_SHSTK))
   24900              :             return -1;
   24901              :           return 2017; /* setssbsy */
   24902              : 
   24903              :         case 66:
   24904              :           x2 = XVECEXP (x1, 0, 0);
   24905              :           operands[0] = x2;
   24906              :           if (!memory_operand (operands[0], E_DImode)
   24907              :               || !
   24908              : #line 30993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24909              : (TARGET_SHSTK))
   24910              :             return -1;
   24911              :           return 2018; /* clrssbsy */
   24912              : 
   24913              :         case 58:
   24914              :           x2 = XVECEXP (x1, 0, 0);
   24915              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   24916              :               || !
   24917              : #line 31000 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24918              : ((flag_cf_protection & CF_BRANCH)))
   24919              :             return -1;
   24920              :           return 2019; /* nop_endbr */
   24921              : 
   24922              :         case 47:
   24923              :           x2 = XVECEXP (x1, 0, 0);
   24924              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   24925              :               || !
   24926              : #line 31046 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24927              : (TARGET_RTM))
   24928              :             return -1;
   24929              :           return 2021; /* xend */
   24930              : 
   24931              :         case 48:
   24932              :           x2 = XVECEXP (x1, 0, 0);
   24933              :           operands[0] = x2;
   24934              :           if (!const_0_to_255_operand (operands[0], E_SImode)
   24935              :               || !
   24936              : #line 31054 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24937              : (TARGET_RTM))
   24938              :             return -1;
   24939              :           return 2022; /* xabort */
   24940              : 
   24941              :         case 51:
   24942              :           x2 = XVECEXP (x1, 0, 0);
   24943              :           operands[0] = x2;
   24944              :           if (!address_operand (operands[0], E_VOIDmode)
   24945              :               || !
   24946              : #line 31082 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24947              : (TARGET_CLWB))
   24948              :             return -1;
   24949              :           return 2024; /* clwb */
   24950              : 
   24951              :         case 52:
   24952              :           x2 = XVECEXP (x1, 0, 0);
   24953              :           operands[0] = x2;
   24954              :           if (!address_operand (operands[0], E_VOIDmode)
   24955              :               || !
   24956              : #line 31091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24957              : (TARGET_CLFLUSHOPT))
   24958              :             return -1;
   24959              :           return 2025; /* clflushopt */
   24960              : 
   24961              :         case 55:
   24962              :           x2 = XVECEXP (x1, 0, 0);
   24963              :           operands[0] = x2;
   24964              :           switch (GET_MODE (operands[0]))
   24965              :             {
   24966              :             case E_SImode:
   24967              :               if (!register_operand (operands[0], E_SImode)
   24968              :                   || !(
   24969              : #line 31127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24970              : (TARGET_CLZERO) && 
   24971              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24972              : (Pmode == SImode)))
   24973              :                 return -1;
   24974              :               return 2029; /* clzero_si */
   24975              : 
   24976              :             case E_DImode:
   24977              :               if (!register_operand (operands[0], E_DImode)
   24978              :                   || !(
   24979              : #line 31127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24980              : (TARGET_CLZERO) && 
   24981              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   24982              : (Pmode == DImode)))
   24983              :                 return -1;
   24984              :               return 2030; /* clzero_di */
   24985              : 
   24986              :             default:
   24987              :               return -1;
   24988              :             }
   24989              : 
   24990              :         case 38:
   24991              :           x2 = XVECEXP (x1, 0, 0);
   24992              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   24993              :             return -1;
   24994              :           return 2035; /* wbinvd */
   24995              : 
   24996              :         case 39:
   24997              :           x2 = XVECEXP (x1, 0, 0);
   24998              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   24999              :               || !
   25000              : #line 31198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25001              : (TARGET_WBNOINVD))
   25002              :             return -1;
   25003              :           return 2036; /* wbnoinvd */
   25004              : 
   25005              :         case 67:
   25006              :           x2 = XVECEXP (x1, 0, 0);
   25007              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   25008              :               || !
   25009              : #line 31226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25010              : (TARGET_TSXLDTRK))
   25011              :             return -1;
   25012              :           return 2041; /* xsusldtrk */
   25013              : 
   25014              :         case 68:
   25015              :           x2 = XVECEXP (x1, 0, 0);
   25016              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   25017              :               || !
   25018              : #line 31226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25019              : (TARGET_TSXLDTRK))
   25020              :             return -1;
   25021              :           return 2042; /* xresldtrk */
   25022              : 
   25023              :         case 72:
   25024              :           x2 = XVECEXP (x1, 0, 0);
   25025              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   25026              :               || !
   25027              : #line 31251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25028              : (TARGET_UINTR && TARGET_64BIT))
   25029              :             return -1;
   25030              :           return 2047; /* clui */
   25031              : 
   25032              :         case 73:
   25033              :           x2 = XVECEXP (x1, 0, 0);
   25034              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   25035              :               || !
   25036              : #line 31251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25037              : (TARGET_UINTR && TARGET_64BIT))
   25038              :             return -1;
   25039              :           return 2048; /* stui */
   25040              : 
   25041              :         case 75:
   25042              :           x2 = XVECEXP (x1, 0, 0);
   25043              :           operands[0] = x2;
   25044              :           if (!register_operand (operands[0], E_DImode)
   25045              :               || !
   25046              : #line 31268 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25047              : (TARGET_UINTR && TARGET_64BIT))
   25048              :             return -1;
   25049              :           return 2050; /* senduipi */
   25050              : 
   25051              :         case 70:
   25052              :           x2 = XVECEXP (x1, 0, 0);
   25053              :           operands[0] = x2;
   25054              :           switch (GET_MODE (operands[0]))
   25055              :             {
   25056              :             case E_SImode:
   25057              :               if (!register_operand (operands[0], E_SImode)
   25058              :                   || !(
   25059              : #line 31297 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25060              : (TARGET_WAITPKG) && 
   25061              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25062              : (Pmode == SImode)))
   25063              :                 return -1;
   25064              :               return 2053; /* umonitor_si */
   25065              : 
   25066              :             case E_DImode:
   25067              :               if (!register_operand (operands[0], E_DImode)
   25068              :                   || !(
   25069              : #line 31297 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25070              : (TARGET_WAITPKG) && 
   25071              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25072              : (Pmode == DImode)))
   25073              :                 return -1;
   25074              :               return 2054; /* umonitor_di */
   25075              : 
   25076              :             default:
   25077              :               return -1;
   25078              :             }
   25079              : 
   25080              :         case 76:
   25081              :           x2 = XVECEXP (x1, 0, 0);
   25082              :           operands[0] = x2;
   25083              :           if (!address_operand (operands[0], E_VOIDmode)
   25084              :               || !
   25085              : #line 31324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25086              : (TARGET_CLDEMOTE))
   25087              :             return -1;
   25088              :           return 2057; /* cldemote */
   25089              : 
   25090              :         case 77:
   25091              :           x2 = XVECEXP (x1, 0, 0);
   25092              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   25093              :             return -1;
   25094              :           return 2058; /* speculation_barrier */
   25095              : 
   25096              :         case 81:
   25097              :           x2 = XVECEXP (x1, 0, 0);
   25098              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   25099              :               || !
   25100              : #line 31338 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25101              : (TARGET_SERIALIZE))
   25102              :             return -1;
   25103              :           return 2059; /* serialize */
   25104              : 
   25105              :         case 83:
   25106              :           x2 = XVECEXP (x1, 0, 0);
   25107              :           operands[0] = x2;
   25108              :           if (!register_operand (operands[0], E_SImode)
   25109              :               || !
   25110              : #line 31360 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25111              : (TARGET_HRESET))
   25112              :             return -1;
   25113              :           return 2061; /* hreset */
   25114              : 
   25115              :         case 87:
   25116              :           x2 = XVECEXP (x1, 0, 0);
   25117              :           operands[0] = x2;
   25118              :           if (!memory_operand (operands[0], E_BLKmode)
   25119              :               || !
   25120              : #line 31478 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25121              : (TARGET_AMX_TILE))
   25122              :             return -1;
   25123              :           return 2064; /* ldtilecfg */
   25124              : 
   25125              :         case 90:
   25126              :           if (pnum_clobbers == NULL)
   25127              :             return -1;
   25128              :           x2 = XVECEXP (x1, 0, 0);
   25129              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   25130              :               || !
   25131              : #line 6927 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25132              : (TARGET_MMX))
   25133              :             return -1;
   25134              :           *pnum_clobbers = 16;
   25135              :           return 2441; /* *mmx_emms */
   25136              : 
   25137              :         case 91:
   25138              :           if (pnum_clobbers == NULL)
   25139              :             return -1;
   25140              :           x2 = XVECEXP (x1, 0, 0);
   25141              :           if (x2 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   25142              :               || !
   25143              : #line 6928 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   25144              : (TARGET_3DNOW))
   25145              :             return -1;
   25146              :           *pnum_clobbers = 16;
   25147              :           return 2442; /* *mmx_femms */
   25148              : 
   25149              :         case 92:
   25150              :           x2 = XVECEXP (x1, 0, 0);
   25151              :           operands[0] = x2;
   25152              :           if (!memory_operand (operands[0], E_SImode)
   25153              :               || !
   25154              : #line 23006 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25155              : (TARGET_SSE))
   25156              :             return -1;
   25157              :           return 8656; /* sse_ldmxcsr */
   25158              : 
   25159              :         case 94:
   25160              :           x2 = XVECEXP (x1, 0, 0);
   25161              :           operands[0] = x2;
   25162              :           if (!address_operand (operands[0], E_VOIDmode)
   25163              :               || !
   25164              : #line 23030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25165              : (TARGET_SSE2))
   25166              :             return -1;
   25167              :           return 8658; /* sse2_clflush */
   25168              : 
   25169              :         default:
   25170              :           return -1;
   25171              :         }
   25172              : 
   25173              :     case 2:
   25174              :       x2 = XVECEXP (x1, 0, 0);
   25175              :       operands[0] = x2;
   25176              :       x3 = XVECEXP (x1, 0, 1);
   25177              :       operands[1] = x3;
   25178              :       switch (XINT (x1, 1))
   25179              :         {
   25180              :         case 4:
   25181              :           return 1527; /* max_skip_align */
   25182              : 
   25183              :         case 84:
   25184              :           if (!local_func_symbolic_operand (operands[0], E_VOIDmode)
   25185              :               || !const_int_operand (operands[1], E_SImode)
   25186              :               || !
   25187              : #line 30401 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25188              : (TARGET_PREFETCHI && TARGET_64BIT))
   25189              :             return -1;
   25190              :           return 1940; /* prefetchi */
   25191              : 
   25192              :         case 25:
   25193              :           if (GET_MODE (x1) != E_BLKmode
   25194              :               || !memory_operand (operands[0], E_BLKmode)
   25195              :               || !register_operand (operands[1], E_DImode)
   25196              :               || !
   25197              : #line 30669 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25198              : (!TARGET_64BIT && TARGET_XSAVE))
   25199              :             return -1;
   25200              :           return 1968; /* xrstor */
   25201              : 
   25202              :         case 31:
   25203              :           if (GET_MODE (x1) != E_BLKmode
   25204              :               || !memory_operand (operands[0], E_BLKmode)
   25205              :               || !register_operand (operands[1], E_DImode)
   25206              :               || !(
   25207              : #line 30669 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25208              : (!TARGET_64BIT && TARGET_XSAVE) && 
   25209              : #line 30612 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25210              : (TARGET_XSAVES)))
   25211              :             return -1;
   25212              :           return 1969; /* xrstors */
   25213              : 
   25214              :         case 37:
   25215              :           if (GET_MODE (x1) != E_SImode
   25216              :               || !register_operand (operands[0], E_SImode)
   25217              :               || !register_operand (operands[1], E_DImode)
   25218              :               || !
   25219              : #line 30709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25220              : (!TARGET_64BIT && TARGET_XSAVE))
   25221              :             return -1;
   25222              :           return 1974; /* xsetbv */
   25223              : 
   25224              :         case 63:
   25225              :           switch (pattern400 ())
   25226              :             {
   25227              :             case 0:
   25228              :               if (!
   25229              : #line 30969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25230              : (TARGET_SHSTK))
   25231              :                 return -1;
   25232              :               return 2013; /* wrsssi */
   25233              : 
   25234              :             case 1:
   25235              :               if (!(
   25236              : #line 30969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25237              : (TARGET_SHSTK) && 
   25238              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25239              : (TARGET_64BIT)))
   25240              :                 return -1;
   25241              :               return 2014; /* wrssdi */
   25242              : 
   25243              :             default:
   25244              :               return -1;
   25245              :             }
   25246              : 
   25247              :         case 64:
   25248              :           switch (pattern400 ())
   25249              :             {
   25250              :             case 0:
   25251              :               if (!
   25252              : #line 30978 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25253              : (TARGET_SHSTK))
   25254              :                 return -1;
   25255              :               return 2015; /* wrusssi */
   25256              : 
   25257              :             case 1:
   25258              :               if (!(
   25259              : #line 30978 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25260              : (TARGET_SHSTK) && 
   25261              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25262              : (TARGET_64BIT)))
   25263              :                 return -1;
   25264              :               return 2016; /* wrussdi */
   25265              : 
   25266              :             default:
   25267              :               return -1;
   25268              :             }
   25269              : 
   25270              :         case 82:
   25271              :           if (!const_int_operand (operands[0], E_VOIDmode)
   25272              :               || !const_int_operand (operands[1], E_VOIDmode))
   25273              :             return -1;
   25274              :           return 2060; /* patchable_area */
   25275              : 
   25276              :         case 86:
   25277              :           if (!x86_64_szext_nonmemory_operand (operands[0], E_DImode)
   25278              :               || !register_operand (operands[1], E_DImode)
   25279              :               || !
   25280              : #line 31470 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25281              : (TARGET_USER_MSR && TARGET_64BIT))
   25282              :             return -1;
   25283              :           return 2063; /* uwrmsr */
   25284              : 
   25285              :         case 96:
   25286              :           if (!register_operand (operands[0], E_SImode)
   25287              :               || !register_operand (operands[1], E_SImode)
   25288              :               || !
   25289              : #line 23043 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25290              : (TARGET_MWAIT))
   25291              :             return -1;
   25292              :           return 8659; /* sse3_mwait */
   25293              : 
   25294              :         default:
   25295              :           return -1;
   25296              :         }
   25297              : 
   25298              :     case 3:
   25299              :       x2 = XVECEXP (x1, 0, 0);
   25300              :       operands[0] = x2;
   25301              :       x3 = XVECEXP (x1, 0, 1);
   25302              :       operands[1] = x3;
   25303              :       x4 = XVECEXP (x1, 0, 2);
   25304              :       operands[2] = x4;
   25305              :       switch (XINT (x1, 1))
   25306              :         {
   25307              :         case 25:
   25308              :           if (pattern579 (x1) != 0
   25309              :               || !
   25310              : #line 30682 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25311              : (TARGET_64BIT && TARGET_XSAVE))
   25312              :             return -1;
   25313              :           return 1970; /* xrstor_rex64 */
   25314              : 
   25315              :         case 31:
   25316              :           if (pattern579 (x1) != 0
   25317              :               || !(
   25318              : #line 30682 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25319              : (TARGET_64BIT && TARGET_XSAVE) && 
   25320              : #line 30612 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25321              : (TARGET_XSAVES)))
   25322              :             return -1;
   25323              :           return 1971; /* xrstors_rex64 */
   25324              : 
   25325              :         case 27:
   25326              :           if (pattern579 (x1) != 0
   25327              :               || !
   25328              : #line 30696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25329              : (TARGET_64BIT && TARGET_XSAVE))
   25330              :             return -1;
   25331              :           return 1972; /* xrstor64 */
   25332              : 
   25333              :         case 33:
   25334              :           if (pattern579 (x1) != 0
   25335              :               || !(
   25336              : #line 30696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25337              : (TARGET_64BIT && TARGET_XSAVE) && 
   25338              : #line 30616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25339              : (TARGET_XSAVES)))
   25340              :             return -1;
   25341              :           return 1973; /* xrstors64 */
   25342              : 
   25343              :         case 37:
   25344              :           if (pattern580 (x1) != 0
   25345              :               || !
   25346              : #line 30719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25347              : (TARGET_64BIT && TARGET_XSAVE))
   25348              :             return -1;
   25349              :           return 1975; /* xsetbv_rex64 */
   25350              : 
   25351              :         case 14:
   25352              :           if (!nonimmediate_operand (operands[1], E_SImode)
   25353              :               || !const_int_operand (operands[2], E_SImode))
   25354              :             return -1;
   25355              :           switch (GET_MODE (operands[0]))
   25356              :             {
   25357              :             case E_SImode:
   25358              :               if (!register_operand (operands[0], E_SImode)
   25359              :                   || !
   25360              : #line 30832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25361              : (TARGET_LWP))
   25362              :                 return -1;
   25363              :               return 1986; /* lwp_lwpvalsi */
   25364              : 
   25365              :             case E_DImode:
   25366              :               if (!register_operand (operands[0], E_DImode)
   25367              :                   || !(
   25368              : #line 30832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25369              : (TARGET_LWP) && 
   25370              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25371              : (TARGET_64BIT)))
   25372              :                 return -1;
   25373              :               return 1987; /* lwp_lwpvaldi */
   25374              : 
   25375              :             default:
   25376              :               return -1;
   25377              :             }
   25378              : 
   25379              :         case 54:
   25380              :           if (!register_operand (operands[0], E_SImode)
   25381              :               || !register_operand (operands[1], E_SImode)
   25382              :               || !register_operand (operands[2], E_SImode)
   25383              :               || !
   25384              : #line 31103 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25385              : (TARGET_MWAITX))
   25386              :             return -1;
   25387              :           return 2026; /* mwaitx */
   25388              : 
   25389              :         case 53:
   25390              :           switch (pattern581 ())
   25391              :             {
   25392              :             case 0:
   25393              :               if (!(
   25394              : #line 31115 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25395              : (TARGET_MWAITX) && 
   25396              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25397              : (Pmode == SImode)))
   25398              :                 return -1;
   25399              :               return 2027; /* monitorx_si */
   25400              : 
   25401              :             case 1:
   25402              :               if (!(
   25403              : #line 31115 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25404              : (TARGET_MWAITX) && 
   25405              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25406              : (Pmode == DImode)))
   25407              :                 return -1;
   25408              :               return 2028; /* monitorx_di */
   25409              : 
   25410              :             default:
   25411              :               return -1;
   25412              :             }
   25413              : 
   25414              :         case 56:
   25415              :           if (pattern580 (x1) != 0
   25416              :               || !
   25417              : #line 31170 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25418              : (TARGET_PKU))
   25419              :             return -1;
   25420              :           return 2032; /* *wrpkru */
   25421              : 
   25422              :         case 95:
   25423              :           switch (pattern581 ())
   25424              :             {
   25425              :             case 0:
   25426              :               if (!(
   25427              : #line 23055 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25428              : (TARGET_MWAIT) && 
   25429              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25430              : (Pmode == SImode)))
   25431              :                 return -1;
   25432              :               return 8660; /* sse3_monitor_si */
   25433              : 
   25434              :             case 1:
   25435              :               if (!(
   25436              : #line 23055 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25437              : (TARGET_MWAIT) && 
   25438              : #line 1429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25439              : (Pmode == DImode)))
   25440              :                 return -1;
   25441              :               return 8661; /* sse3_monitor_di */
   25442              : 
   25443              :             default:
   25444              :               return -1;
   25445              :             }
   25446              : 
   25447              :         default:
   25448              :           return -1;
   25449              :         }
   25450              : 
   25451              :     case 4:
   25452              :       if (pnum_clobbers == NULL
   25453              :           || XINT (x1, 1) != 98
   25454              :           || GET_MODE (x1) != E_V2DImode)
   25455              :         return -1;
   25456              :       x2 = XVECEXP (x1, 0, 0);
   25457              :       operands[0] = x2;
   25458              :       if (!register_operand (operands[0], E_V2DImode))
   25459              :         return -1;
   25460              :       x3 = XVECEXP (x1, 0, 1);
   25461              :       operands[1] = x3;
   25462              :       if (!register_operand (operands[1], E_V2DImode))
   25463              :         return -1;
   25464              :       x4 = XVECEXP (x1, 0, 2);
   25465              :       operands[2] = x4;
   25466              :       if (!register_operand (operands[2], E_V2DImode))
   25467              :         return -1;
   25468              :       x5 = XVECEXP (x1, 0, 3);
   25469              :       operands[3] = x5;
   25470              :       if (!register_operand (operands[3], E_SImode)
   25471              :           || !
   25472              : #line 32293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   25473              : (TARGET_KL))
   25474              :         return -1;
   25475              :       *pnum_clobbers = 1;
   25476              :       return 10464; /* loadiwkey */
   25477              : 
   25478              :     default:
   25479              :       return -1;
   25480              :     }
   25481              : }
   25482              : 
   25483              :  rtx_insn *
   25484              : split_15 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25485              : {
   25486              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25487              :   rtx x2, x3, x4, x5, x6, x7;
   25488              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25489              :   x2 = XVECEXP (x1, 0, 0);
   25490              :   x3 = XEXP (x2, 1);
   25491              :   x4 = XEXP (x3, 1);
   25492              :   if (x4 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   25493              :     return NULL;
   25494              :   x5 = XEXP (x3, 2);
   25495              :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   25496              :     return NULL;
   25497              :   x6 = XEXP (x2, 0);
   25498              :   operands[0] = x6;
   25499              :   x7 = XEXP (x3, 0);
   25500              :   operands[1] = x7;
   25501              :   switch (pattern1427 (x3))
   25502              :     {
   25503              :     case 0:
   25504              :       return gen_split_26 (insn, operands);
   25505              : 
   25506              :     case 1:
   25507              :       if (!
   25508              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25509              : (TARGET_64BIT))
   25510              :         return NULL;
   25511              :       return gen_split_27 (insn, operands);
   25512              : 
   25513              :     default:
   25514              :       return NULL;
   25515              :     }
   25516              : }
   25517              : 
   25518              :  rtx_insn *
   25519              : split_17 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25520              : {
   25521              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25522              :   rtx x2, x3, x4, x5;
   25523              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25524              :   x2 = XVECEXP (x1, 0, 0);
   25525              :   switch (pattern940 (x2))
   25526              :     {
   25527              :     case 0:
   25528              :       x3 = XEXP (x2, 0);
   25529              :       operands[0] = x3;
   25530              :       x4 = XEXP (x2, 1);
   25531              :       x5 = XEXP (x4, 1);
   25532              :       if (GET_CODE (x5) == SUBREG)
   25533              :         {
   25534              :           switch (pattern1428 (x4))
   25535              :             {
   25536              :             case 0:
   25537              :               if (((
   25538              : #line 17523 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25539              : (((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) == 0
   25540              :     || ((INTVAL (operands[3]) & (2 * 4 * BITS_PER_UNIT - 1))
   25541              :          == (2 * 4 * BITS_PER_UNIT - 1)))
   25542              :    && ix86_pre_reload_split ()) && 
   25543              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25544              : (!TARGET_64BIT)) && 
   25545              : #line 17528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25546              : ( 1)))
   25547              :                 return gen_split_596 (insn, operands);
   25548              :               break;
   25549              : 
   25550              :             case 1:
   25551              :               if (((
   25552              : #line 17523 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25553              : (((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) == 0
   25554              :     || ((INTVAL (operands[3]) & (2 * 8 * BITS_PER_UNIT - 1))
   25555              :          == (2 * 8 * BITS_PER_UNIT - 1)))
   25556              :    && ix86_pre_reload_split ()) && 
   25557              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25558              : (TARGET_64BIT)) && 
   25559              : #line 17528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25560              : ( 1)))
   25561              :                 return gen_split_598 (insn, operands);
   25562              :               break;
   25563              : 
   25564              :             default:
   25565              :               break;
   25566              :             }
   25567              :         }
   25568              :       if (GET_MODE (x4) == E_SImode
   25569              :           && nonimmediate_operand (operands[1], E_SImode))
   25570              :         {
   25571              :           if (register_operand (operands[0], E_SImode))
   25572              :             {
   25573              :               operands[2] = x5;
   25574              :               if (register_operand (operands[2], E_QImode)
   25575              :                   && 
   25576              : #line 18400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25577              : (TARGET_BMI2 && reload_completed))
   25578              :                 return gen_split_629 (insn, operands);
   25579              :             }
   25580              :           if (GET_CODE (x5) == SUBREG)
   25581              :             {
   25582              :               switch (pattern1540 (x5))
   25583              :                 {
   25584              :                 case 0:
   25585              :                   if ((
   25586              : #line 18773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25587              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   25588              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   25589              :       == 4 * BITS_PER_UNIT - 1
   25590              :    && ix86_pre_reload_split ()) && 
   25591              : #line 18778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25592              : ( 1)))
   25593              :                     return gen_split_646 (insn, operands);
   25594              :                   break;
   25595              : 
   25596              :                 case 1:
   25597              :                   if ((
   25598              : #line 18821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25599              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   25600              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   25601              :    && ix86_pre_reload_split ()) && 
   25602              : #line 18825 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25603              : ( 1)))
   25604              :                     return gen_split_658 (insn, operands);
   25605              :                   break;
   25606              : 
   25607              :                 case 2:
   25608              :                   if ((
   25609              : #line 18867 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25610              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   25611              :    && ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   25612              :        || (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   25613              :           == 4 * BITS_PER_UNIT - 1)
   25614              :    && ix86_pre_reload_split ()) && 
   25615              : #line 18873 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25616              : ( 1)))
   25617              :                     return gen_split_670 (insn, operands);
   25618              :                   break;
   25619              : 
   25620              :                 default:
   25621              :                   break;
   25622              :                 }
   25623              :             }
   25624              :         }
   25625              :       operands[2] = x5;
   25626              :       switch (pattern1346 (x2))
   25627              :         {
   25628              :         case 0:
   25629              :           if (register_operand (operands[1], E_DImode)
   25630              :               && nonmemory_operand (operands[2], E_QImode)
   25631              :               && (
   25632              : #line 17635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25633              : (epilogue_completed) && 
   25634              : #line 1226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25635              : (!TARGET_64BIT)))
   25636              :             return gen_split_604 (insn, operands);
   25637              :           if (nonimmediate_operand (operands[1], E_DImode)
   25638              :               && register_operand (operands[2], E_QImode)
   25639              :               && (
   25640              : #line 18400 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25641              : (TARGET_BMI2 && reload_completed) && 
   25642              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25643              : (TARGET_64BIT)))
   25644              :             return gen_split_631 (insn, operands);
   25645              :           break;
   25646              : 
   25647              :         case 1:
   25648              :           if ((
   25649              : #line 17635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25650              : (epilogue_completed) && 
   25651              : #line 1227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25652              : (TARGET_64BIT)))
   25653              :             return gen_split_606 (insn, operands);
   25654              :           break;
   25655              : 
   25656              :         case 2:
   25657              :           if ((
   25658              : #line 18597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25659              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25660              : #line 18604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25661              : ( reload_completed
   25662              :    && !(rtx_equal_p (operands[0], operands[1])))))
   25663              :             return gen_split_635 (insn, operands);
   25664              :           break;
   25665              : 
   25666              :         case 3:
   25667              :           if ((
   25668              : #line 18597 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25669              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25670              : #line 18604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25671              : ( reload_completed
   25672              :    && !(rtx_equal_p (operands[0], operands[1])))))
   25673              :             return gen_split_637 (insn, operands);
   25674              :           break;
   25675              : 
   25676              :         default:
   25677              :           break;
   25678              :         }
   25679              :       if (GET_CODE (x5) != SUBREG)
   25680              :         return NULL;
   25681              :       switch (pattern1246 (x2, 
   25682              : E_DImode))
   25683              :         {
   25684              :         case 0:
   25685              :           if (!((
   25686              : #line 18773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25687              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   25688              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   25689              :       == 8 * BITS_PER_UNIT - 1
   25690              :    && ix86_pre_reload_split ()) && 
   25691              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25692              : (TARGET_64BIT)) && 
   25693              : #line 18778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25694              : ( 1)))
   25695              :             return NULL;
   25696              :           return gen_split_649 (insn, operands);
   25697              : 
   25698              :         case 1:
   25699              :           if (!((
   25700              : #line 18821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25701              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   25702              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   25703              :    && ix86_pre_reload_split ()) && 
   25704              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25705              : (TARGET_64BIT)) && 
   25706              : #line 18825 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25707              : ( 1)))
   25708              :             return NULL;
   25709              :           return gen_split_661 (insn, operands);
   25710              : 
   25711              :         case 2:
   25712              :           if (!((
   25713              : #line 18867 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25714              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   25715              :    && ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   25716              :        || (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   25717              :           == 8 * BITS_PER_UNIT - 1)
   25718              :    && ix86_pre_reload_split ()) && 
   25719              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25720              : (TARGET_64BIT)) && 
   25721              : #line 18873 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25722              : ( 1)))
   25723              :             return NULL;
   25724              :           return gen_split_673 (insn, operands);
   25725              : 
   25726              :         default:
   25727              :           return NULL;
   25728              :         }
   25729              : 
   25730              :     case 1:
   25731              :       if (register_operand (operands[0], E_DImode)
   25732              :           && register_operand (operands[1], E_DImode)
   25733              :           && ((
   25734              : #line 17584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25735              : (((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) == 0
   25736              :     || ((INTVAL (operands[3]) & (2 * 4 * BITS_PER_UNIT - 1))
   25737              :          == (2 * 4 * BITS_PER_UNIT - 1)))
   25738              :    && ix86_pre_reload_split ()) && 
   25739              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25740              : (!TARGET_64BIT)) && 
   25741              : #line 17589 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25742              : ( 1)))
   25743              :         return gen_split_600 (insn, operands);
   25744              :       if (!nonimmediate_operand (operands[0], E_DImode)
   25745              :           || !nonimmediate_operand (operands[1], E_DImode)
   25746              :           || !((
   25747              : #line 18798 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25748              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   25749              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   25750              :       == 8 * BITS_PER_UNIT - 1
   25751              :    && ix86_pre_reload_split ()) && 
   25752              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25753              : (TARGET_64BIT)) && 
   25754              : #line 18803 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25755              : ( 1)))
   25756              :         return NULL;
   25757              :       return gen_split_655 (insn, operands);
   25758              : 
   25759              :     case 2:
   25760              :       if (!((
   25761              : #line 17584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25762              : (((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) == 0
   25763              :     || ((INTVAL (operands[3]) & (2 * 8 * BITS_PER_UNIT - 1))
   25764              :          == (2 * 8 * BITS_PER_UNIT - 1)))
   25765              :    && ix86_pre_reload_split ()) && 
   25766              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25767              : (TARGET_64BIT)) && 
   25768              : #line 17589 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25769              : ( 1)))
   25770              :         return NULL;
   25771              :       return gen_split_602 (insn, operands);
   25772              : 
   25773              :     case 3:
   25774              :       if (!(
   25775              : #line 18798 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25776              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   25777              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   25778              :       == 4 * BITS_PER_UNIT - 1
   25779              :    && ix86_pre_reload_split ()) && 
   25780              : #line 18803 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25781              : ( 1)))
   25782              :         return NULL;
   25783              :       return gen_split_652 (insn, operands);
   25784              : 
   25785              :     case 4:
   25786              :       if (!(
   25787              : #line 18845 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25788              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   25789              :    && (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   25790              :    && ix86_pre_reload_split ()) && 
   25791              : #line 18849 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25792              : ( 1)))
   25793              :         return NULL;
   25794              :       return gen_split_664 (insn, operands);
   25795              : 
   25796              :     case 5:
   25797              :       if (!((
   25798              : #line 18845 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25799              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   25800              :    && (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   25801              :    && ix86_pre_reload_split ()) && 
   25802              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25803              : (TARGET_64BIT)) && 
   25804              : #line 18849 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25805              : ( 1)))
   25806              :         return NULL;
   25807              :       return gen_split_667 (insn, operands);
   25808              : 
   25809              :     case 6:
   25810              :       if (!(
   25811              : #line 18900 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25812              : (ix86_binary_operator_ok (ASHIFTRT, SImode, operands)
   25813              :    && ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1)) == 0
   25814              :        || (INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1))
   25815              :           == 4 * BITS_PER_UNIT - 1)
   25816              :    && ix86_pre_reload_split ()) && 
   25817              : #line 18906 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25818              : ( 1)))
   25819              :         return NULL;
   25820              :       return gen_split_676 (insn, operands);
   25821              : 
   25822              :     case 7:
   25823              :       if (!((
   25824              : #line 18900 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25825              : (ix86_binary_operator_ok (ASHIFTRT, DImode, operands)
   25826              :    && ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1)) == 0
   25827              :        || (INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1))
   25828              :           == 8 * BITS_PER_UNIT - 1)
   25829              :    && ix86_pre_reload_split ()) && 
   25830              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25831              : (TARGET_64BIT)) && 
   25832              : #line 18906 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25833              : ( 1)))
   25834              :         return NULL;
   25835              :       return gen_split_679 (insn, operands);
   25836              : 
   25837              :     case 8:
   25838              :       if (!((
   25839              : #line 18929 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25840              : (INTVAL (operands[2]) == INTVAL (operands[3])
   25841              :    && UINTVAL (operands[2]) < 4 * BITS_PER_UNIT) && 
   25842              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25843              : (!TARGET_64BIT)) && 
   25844              : #line 18932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25845              : ( reload_completed)))
   25846              :         return NULL;
   25847              :       return gen_split_680 (insn, operands);
   25848              : 
   25849              :     case 9:
   25850              :       if (!((
   25851              : #line 18929 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25852              : (INTVAL (operands[2]) == INTVAL (operands[3])
   25853              :    && UINTVAL (operands[2]) < 8 * BITS_PER_UNIT) && 
   25854              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25855              : (TARGET_64BIT)) && 
   25856              : #line 18932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25857              : ( reload_completed)))
   25858              :         return NULL;
   25859              :       return gen_split_681 (insn, operands);
   25860              : 
   25861              :     default:
   25862              :       return NULL;
   25863              :     }
   25864              : }
   25865              : 
   25866              :  rtx_insn *
   25867              : split_31 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   25868              : {
   25869              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   25870              :   rtx x2, x3, x4, x5, x6;
   25871              :   rtx_insn *res ATTRIBUTE_UNUSED;
   25872              :   x2 = XVECEXP (x1, 0, 0);
   25873              :   x3 = XEXP (x2, 1);
   25874              :   x4 = XEXP (x3, 0);
   25875              :   switch (GET_CODE (x4))
   25876              :     {
   25877              :     case REG:
   25878              :     case SUBREG:
   25879              :     case MEM:
   25880              :       switch (pattern380 (x1))
   25881              :         {
   25882              :         case 0:
   25883              :           x5 = XVECEXP (x1, 0, 1);
   25884              :           x6 = XEXP (x5, 0);
   25885              :           if (GET_CODE (x6) != REG
   25886              :               || REGNO (x6) != 17
   25887              :               || GET_MODE (x6) != E_CCmode)
   25888              :             return NULL;
   25889              :           switch (GET_MODE (operands[0]))
   25890              :             {
   25891              :             case E_DImode:
   25892              :               if (!nonimmediate_operand (operands[0], E_DImode)
   25893              :                   || GET_MODE (x3) != E_DImode
   25894              :                   || !nonimmediate_operand (operands[1], E_DImode)
   25895              :                   || !((
   25896              : #line 15121 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25897              : (ix86_unary_operator_ok (NEG, DImode, operands, TARGET_APX_NDD)) && 
   25898              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25899              : (!TARGET_64BIT)) && 
   25900              : #line 15123 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25901              : ( reload_completed)))
   25902              :                 return NULL;
   25903              :               return gen_split_496 (insn, operands);
   25904              : 
   25905              :             case E_TImode:
   25906              :               if (!nonimmediate_operand (operands[0], E_TImode)
   25907              :                   || GET_MODE (x3) != E_TImode
   25908              :                   || !nonimmediate_operand (operands[1], E_TImode)
   25909              :                   || !((
   25910              : #line 15121 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25911              : (ix86_unary_operator_ok (NEG, TImode, operands, TARGET_APX_NDD)) && 
   25912              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25913              : (TARGET_64BIT)) && 
   25914              : #line 15123 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25915              : ( reload_completed)))
   25916              :                 return NULL;
   25917              :               return gen_split_497 (insn, operands);
   25918              : 
   25919              :             case E_SFmode:
   25920              :               if (GET_MODE (x3) != E_SFmode)
   25921              :                 return NULL;
   25922              :               if (fp_register_operand (operands[0], E_SFmode)
   25923              :                   && fp_register_operand (operands[1], E_SFmode)
   25924              :                   && 
   25925              : #line 15752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25926              : (TARGET_80387 && reload_completed))
   25927              :                 return gen_split_519 (insn, operands);
   25928              :               if (!general_reg_operand (operands[0], E_SFmode)
   25929              :                   || !general_reg_operand (operands[1], E_SFmode)
   25930              :                   || !
   25931              : #line 15759 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25932              : (TARGET_80387 && reload_completed))
   25933              :                 return NULL;
   25934              :               return gen_split_525 (insn, operands);
   25935              : 
   25936              :             case E_DFmode:
   25937              :               if (GET_MODE (x3) != E_DFmode)
   25938              :                 return NULL;
   25939              :               if (fp_register_operand (operands[0], E_DFmode)
   25940              :                   && fp_register_operand (operands[1], E_DFmode)
   25941              :                   && 
   25942              : #line 15752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25943              : (TARGET_80387 && reload_completed))
   25944              :                 return gen_split_521 (insn, operands);
   25945              :               if (!general_reg_operand (operands[0], E_DFmode)
   25946              :                   || !general_reg_operand (operands[1], E_DFmode)
   25947              :                   || !
   25948              : #line 15759 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25949              : (TARGET_80387 && reload_completed))
   25950              :                 return NULL;
   25951              :               return gen_split_527 (insn, operands);
   25952              : 
   25953              :             case E_XFmode:
   25954              :               if (GET_MODE (x3) != E_XFmode)
   25955              :                 return NULL;
   25956              :               if (fp_register_operand (operands[0], E_XFmode)
   25957              :                   && fp_register_operand (operands[1], E_XFmode)
   25958              :                   && 
   25959              : #line 15752 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25960              : (TARGET_80387 && reload_completed))
   25961              :                 return gen_split_523 (insn, operands);
   25962              :               if (!general_reg_operand (operands[0], E_XFmode)
   25963              :                   || !general_reg_operand (operands[1], E_XFmode)
   25964              :                   || !
   25965              : #line 15759 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25966              : (TARGET_80387 && reload_completed))
   25967              :                 return NULL;
   25968              :               return gen_split_529 (insn, operands);
   25969              : 
   25970              :             default:
   25971              :               return NULL;
   25972              :             }
   25973              : 
   25974              :         case 1:
   25975              :           if (pattern846 (x1) != 0
   25976              :               || !(
   25977              : #line 15683 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25978              : (TARGET_SSE) && 
   25979              : #line 15685 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25980              : ( reload_completed)))
   25981              :             return NULL;
   25982              :           return gen_split_516 (insn, operands);
   25983              : 
   25984              :         case 2:
   25985              :           if (!(
   25986              : #line 15301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25987              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25988              : #line 15305 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25989              : ( reload_completed
   25990              :    && !(rtx_equal_p (operands[0], operands[1])))))
   25991              :             return NULL;
   25992              :           return gen_split_498 (insn, operands);
   25993              : 
   25994              :         case 3:
   25995              :           if (!(
   25996              : #line 15301 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25997              : (!TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun)) && 
   25998              : #line 15305 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   25999              : ( reload_completed
   26000              :    && !(rtx_equal_p (operands[0], operands[1])))))
   26001              :             return NULL;
   26002              :           return gen_split_499 (insn, operands);
   26003              : 
   26004              :         default:
   26005              :           return NULL;
   26006              :         }
   26007              : 
   26008              :     case ABS:
   26009              :       switch (pattern382 (x1))
   26010              :         {
   26011              :         case 0:
   26012              :           if (((
   26013              : #line 15579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26014              : (TARGET_CMOVE
   26015              :    && ix86_pre_reload_split ()) && 
   26016              : #line 1266 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26017              : (!TARGET_64BIT)) && 
   26018              : #line 15582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26019              : ( 1)))
   26020              :             return gen_split_505 (insn, operands);
   26021              :           if (!((
   26022              : #line 15650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26023              : (TARGET_CMOVE
   26024              :    && (DImode != QImode || !TARGET_PARTIAL_REG_STALL)
   26025              :    && ix86_pre_reload_split ()) && 
   26026              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26027              : (TARGET_64BIT)) && 
   26028              : #line 15654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26029              : ( 1)))
   26030              :             return NULL;
   26031              :           return gen_split_514 (insn, operands);
   26032              : 
   26033              :         case 1:
   26034              :           if (!((
   26035              : #line 15579 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26036              : (TARGET_CMOVE
   26037              :    && ix86_pre_reload_split ()) && 
   26038              : #line 1267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26039              : (TARGET_64BIT)) && 
   26040              : #line 15582 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26041              : ( 1)))
   26042              :             return NULL;
   26043              :           return gen_split_506 (insn, operands);
   26044              : 
   26045              :         case 2:
   26046              :           if (!(
   26047              : #line 15650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26048              : (TARGET_CMOVE
   26049              :    && (QImode != QImode || !TARGET_PARTIAL_REG_STALL)
   26050              :    && ix86_pre_reload_split ()) && 
   26051              : #line 15654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26052              : ( 1)))
   26053              :             return NULL;
   26054              :           return gen_split_511 (insn, operands);
   26055              : 
   26056              :         case 3:
   26057              :           if (!(
   26058              : #line 15650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26059              : (TARGET_CMOVE
   26060              :    && (HImode != QImode || !TARGET_PARTIAL_REG_STALL)
   26061              :    && ix86_pre_reload_split ()) && 
   26062              : #line 15654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26063              : ( 1)))
   26064              :             return NULL;
   26065              :           return gen_split_512 (insn, operands);
   26066              : 
   26067              :         case 4:
   26068              :           if (!(
   26069              : #line 15650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26070              : (TARGET_CMOVE
   26071              :    && (SImode != QImode || !TARGET_PARTIAL_REG_STALL)
   26072              :    && ix86_pre_reload_split ()) && 
   26073              : #line 15654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26074              : ( 1)))
   26075              :             return NULL;
   26076              :           return gen_split_513 (insn, operands);
   26077              : 
   26078              :         case 5:
   26079              :           switch (GET_MODE (operands[0]))
   26080              :             {
   26081              :             case E_TFmode:
   26082              :               if (pattern1064 (x3, 
   26083              : E_TFmode) != 0
   26084              :                   || !(
   26085              : #line 15708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26086              : (TARGET_SSE) && 
   26087              : #line 15710 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26088              : ( reload_completed)))
   26089              :                 return NULL;
   26090              :               return gen_split_517 (insn, operands);
   26091              : 
   26092              :             case E_SFmode:
   26093              :               if (pattern1065 (x3, 
   26094              : E_V4SFmode, 
   26095              : E_SFmode) != 0
   26096              :                   || !(
   26097              : #line 15844 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26098              : (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH) && 
   26099              : #line 15846 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26100              : ( reload_completed)))
   26101              :                 return NULL;
   26102              :               return gen_split_544 (insn, operands);
   26103              : 
   26104              :             case E_DFmode:
   26105              :               if (pattern1065 (x3, 
   26106              : E_V2DFmode, 
   26107              : E_DFmode) != 0
   26108              :                   || !(
   26109              : #line 15844 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26110              : (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH) && 
   26111              : #line 15846 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26112              : ( reload_completed)))
   26113              :                 return NULL;
   26114              :               return gen_split_545 (insn, operands);
   26115              : 
   26116              :             default:
   26117              :               return NULL;
   26118              :             }
   26119              : 
   26120              :         default:
   26121              :           return NULL;
   26122              :         }
   26123              : 
   26124              :     default:
   26125              :       return NULL;
   26126              :     }
   26127              : }
   26128              : 
   26129              :  rtx_insn *
   26130              : split_32 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   26131              : {
   26132              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   26133              :   rtx x2, x3, x4, x5, x6, x7, x8;
   26134              :   rtx_insn *res ATTRIBUTE_UNUSED;
   26135              :   if (pattern346 (x1) != 0)
   26136              :     return NULL;
   26137              :   x2 = XVECEXP (x1, 0, 0);
   26138              :   x3 = XEXP (x2, 1);
   26139              :   x4 = XEXP (x3, 0);
   26140              :   switch (GET_CODE (x4))
   26141              :     {
   26142              :     case REG:
   26143              :     case SUBREG:
   26144              :     case MEM:
   26145              :       operands[1] = x4;
   26146              :       switch (pattern1164 (x3))
   26147              :         {
   26148              :         case 0:
   26149              :           if (!(
   26150              : #line 4917 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26151              : (TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)) && 
   26152              : #line 4919 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26153              : ( reload_completed)))
   26154              :             return NULL;
   26155              :           return gen_split_63 (insn, operands);
   26156              : 
   26157              :         case 1:
   26158              :           if (!(
   26159              : #line 4917 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26160              : (TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)) && 
   26161              : #line 4919 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26162              : ( reload_completed)))
   26163              :             return NULL;
   26164              :           return gen_split_64 (insn, operands);
   26165              : 
   26166              :         case 2:
   26167              :           if (!(
   26168              : #line 4971 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26169              : (TARGET_ZERO_EXTEND_WITH_AND && optimize_function_for_speed_p (cfun)) && 
   26170              : #line 4973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26171              : ( reload_completed)))
   26172              :             return NULL;
   26173              :           return gen_split_65 (insn, operands);
   26174              : 
   26175              :         default:
   26176              :           return NULL;
   26177              :         }
   26178              : 
   26179              :     case PLUS:
   26180              :       if (GET_MODE (x4) != E_SImode
   26181              :           || !register_operand (operands[0], E_DImode)
   26182              :           || GET_MODE (x3) != E_DImode)
   26183              :         return NULL;
   26184              :       x5 = XEXP (x4, 0);
   26185              :       switch (GET_CODE (x5))
   26186              :         {
   26187              :         case REG:
   26188              :         case SUBREG:
   26189              :           operands[1] = x5;
   26190              :           if (!register_operand (operands[1], E_SImode))
   26191              :             return NULL;
   26192              :           x6 = XEXP (x4, 1);
   26193              :           operands[2] = x6;
   26194              :           if (!x86_64_nonmemory_operand (operands[2], E_SImode))
   26195              :             return NULL;
   26196              :           if (
   26197              : #line 7248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26198              : (TARGET_64BIT
   26199              :    && reload_completed && ix86_avoid_lea_for_add (insn, operands)))
   26200              :             return gen_split_130 (insn, operands);
   26201              :           if (!
   26202              : #line 7303 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26203              : (TARGET_64BIT && reload_completed && ix86_lea_for_add_ok (insn, operands)))
   26204              :             return NULL;
   26205              :           return gen_split_139 (insn, operands);
   26206              : 
   26207              :         case UNSPEC:
   26208              :           if (pattern1167 (x5) != 0)
   26209              :             return NULL;
   26210              :           x6 = XEXP (x4, 1);
   26211              :           operands[1] = x6;
   26212              :           if (!register_operand (operands[1], E_SImode)
   26213              :               || !(
   26214              : #line 24280 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26215              : (TARGET_X32) && 
   26216              : #line 24282 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26217              : ( 1)))
   26218              :             return NULL;
   26219              :           return gen_split_930 (insn, operands);
   26220              : 
   26221              :         default:
   26222              :           return NULL;
   26223              :         }
   26224              : 
   26225              :     case ASHIFT:
   26226              :       if (GET_MODE (x4) != E_SImode
   26227              :           || GET_MODE (x3) != E_DImode)
   26228              :         return NULL;
   26229              :       x5 = XEXP (x4, 0);
   26230              :       operands[1] = x5;
   26231              :       x6 = XEXP (x4, 1);
   26232              :       operands[2] = x6;
   26233              :       switch (GET_CODE (operands[2]))
   26234              :         {
   26235              :         case REG:
   26236              :         case SUBREG:
   26237              :           if (!register_operand (operands[2], E_QImode)
   26238              :               || !register_operand (operands[0], E_DImode)
   26239              :               || !nonimmediate_operand (operands[1], E_SImode)
   26240              :               || !
   26241              : #line 17069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26242              : (TARGET_64BIT && TARGET_BMI2 && reload_completed))
   26243              :             return NULL;
   26244              :           return gen_split_580 (insn, operands);
   26245              : 
   26246              :         case CONST_INT:
   26247              :           if (!const_0_to_3_operand (operands[2], E_VOIDmode)
   26248              :               || !general_reg_operand (operands[0], E_DImode)
   26249              :               || !index_reg_operand (operands[1], E_SImode)
   26250              :               || !
   26251              : #line 17285 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26252              : (TARGET_64BIT && reload_completed
   26253              :    && REGNO (operands[0]) != REGNO (operands[1])))
   26254              :             return NULL;
   26255              :           return gen_split_591 (insn, operands);
   26256              : 
   26257              :         default:
   26258              :           return NULL;
   26259              :         }
   26260              : 
   26261              :     case LSHIFTRT:
   26262              :       if (pattern1185 (x3) != 0
   26263              :           || !
   26264              : #line 18492 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26265              : (TARGET_64BIT && TARGET_BMI2 && reload_completed))
   26266              :         return NULL;
   26267              :       return gen_split_632 (insn, operands);
   26268              : 
   26269              :     case ASHIFTRT:
   26270              :       if (pattern1185 (x3) != 0
   26271              :           || !
   26272              : #line 18492 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26273              : (TARGET_64BIT && TARGET_BMI2 && reload_completed))
   26274              :         return NULL;
   26275              :       return gen_split_633 (insn, operands);
   26276              : 
   26277              :     case ROTATE:
   26278              :       if (pattern1186 (x3) != 0
   26279              :           || !
   26280              : #line 19595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26281              : (TARGET_64BIT && TARGET_BMI2 && reload_completed
   26282              :    && !optimize_function_for_size_p (cfun)))
   26283              :         return NULL;
   26284              :       return gen_split_794 (insn, operands);
   26285              : 
   26286              :     case ROTATERT:
   26287              :       if (pattern1186 (x3) != 0
   26288              :           || !
   26289              : #line 19611 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26290              : (TARGET_64BIT && TARGET_BMI2 && reload_completed
   26291              :    && !optimize_function_for_size_p (cfun)))
   26292              :         return NULL;
   26293              :       return gen_split_795 (insn, operands);
   26294              : 
   26295              :     case CTZ:
   26296              :       if (pattern1187 (x3, 
   26297              : E_SImode, 
   26298              : E_DImode) != 0
   26299              :           || !
   26300              : #line 22188 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26301              : ((TARGET_BMI || TARGET_CPU_P (GENERIC))
   26302              :    && (TARGET_AVOID_FALSE_DEP_FOR_BMI || TARGET_AVOID_FALSE_DEP_FOR_TZCNT)
   26303              :    && epilogue_completed
   26304              :    && optimize_function_for_speed_p (cfun)
   26305              :    && !reg_mentioned_p (operands[0], operands[1])))
   26306              :         return NULL;
   26307              :       return gen_split_881 (insn, operands);
   26308              : 
   26309              :     case XOR:
   26310              :       if (GET_MODE (x4) != E_SImode)
   26311              :         return NULL;
   26312              :       x5 = XEXP (x4, 0);
   26313              :       if (GET_CODE (x5) != MINUS
   26314              :           || pattern1168 (x4) != 0
   26315              :           || !register_operand (operands[0], E_DImode)
   26316              :           || GET_MODE (x3) != E_DImode)
   26317              :         return NULL;
   26318              :       x7 = XEXP (x5, 1);
   26319              :       x8 = XEXP (x7, 0);
   26320              :       operands[1] = x8;
   26321              :       if (!nonimmediate_operand (operands[1], E_SImode)
   26322              :           || !(
   26323              : #line 22357 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26324              : (!TARGET_LZCNT && TARGET_64BIT && ix86_pre_reload_split ()) && 
   26325              : #line 22359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26326              : ( 1)))
   26327              :         return NULL;
   26328              :       return gen_split_885 (insn, operands);
   26329              : 
   26330              :     case CLZ:
   26331              :       if (pattern1187 (x3, 
   26332              : E_SImode, 
   26333              : E_DImode) != 0
   26334              :           || !(
   26335              : #line 22621 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26336              : (TARGET_LZCNT && TARGET_64BIT) && 
   26337              : #line 22623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26338              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   26339              :    && optimize_function_for_speed_p (cfun)
   26340              :    && !reg_mentioned_p (operands[0], operands[1]))))
   26341              :         return NULL;
   26342              :       return gen_split_897 (insn, operands);
   26343              : 
   26344              :     case POPCOUNT:
   26345              :       x5 = XEXP (x4, 0);
   26346              :       operands[1] = x5;
   26347              :       switch (GET_MODE (operands[0]))
   26348              :         {
   26349              :         case E_DImode:
   26350              :           if (pattern352 (x3, 
   26351              : E_SImode, 
   26352              : E_DImode) != 0
   26353              :               || !(
   26354              : #line 23460 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26355              : (TARGET_POPCNT && TARGET_64BIT) && 
   26356              : #line 23468 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26357              : ( TARGET_AVOID_FALSE_DEP_FOR_BMI && epilogue_completed
   26358              :    && optimize_function_for_speed_p (cfun)
   26359              :    && !reg_mentioned_p (operands[0], operands[1]))))
   26360              :             return NULL;
   26361              :           return gen_split_921 (insn, operands);
   26362              : 
   26363              :         case E_SImode:
   26364              :           if (pattern352 (x3, 
   26365              : E_HImode, 
   26366              : E_SImode) != 0
   26367              :               || !(
   26368              : #line 23526 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26369              : (TARGET_POPCNT
   26370              :    && ix86_pre_reload_split ()) && 
   26371              : #line 23529 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26372              : ( 1)))
   26373              :             return NULL;
   26374              :           return gen_split_923 (insn, operands);
   26375              : 
   26376              :         default:
   26377              :           return NULL;
   26378              :         }
   26379              : 
   26380              :     default:
   26381              :       return NULL;
   26382              :     }
   26383              : }
   26384              : 
   26385              :  rtx_insn *
   26386              : split_41 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   26387              : {
   26388              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   26389              :   rtx x2, x3, x4, x5, x6;
   26390              :   rtx_insn *res ATTRIBUTE_UNUSED;
   26391              :   x2 = XEXP (x1, 0);
   26392              :   operands[0] = x2;
   26393              :   x3 = XEXP (x1, 1);
   26394              :   x4 = XEXP (x3, 0);
   26395              :   switch (GET_CODE (x4))
   26396              :     {
   26397              :     case LEU:
   26398              :       x5 = XEXP (x4, 0);
   26399              :       operands[1] = x5;
   26400              :       if (!int_nonimmediate_operand (operands[1], E_VOIDmode))
   26401              :         return NULL;
   26402              :       x6 = XEXP (x4, 1);
   26403              :       operands[2] = x6;
   26404              :       if (!const_int_operand (operands[2], E_VOIDmode))
   26405              :         return NULL;
   26406              :       switch (GET_MODE (operands[0]))
   26407              :         {
   26408              :         case E_SImode:
   26409              :           if (!register_operand (operands[0], E_SImode)
   26410              :               || GET_MODE (x3) != E_SImode
   26411              :               || GET_MODE (x4) != E_SImode
   26412              :               || !
   26413              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26414              : (x86_64_immediate_operand (operands[2], VOIDmode)
   26415              :    && INTVAL (operands[2]) != -1
   26416              :    && INTVAL (operands[2]) != 2147483647))
   26417              :             return NULL;
   26418              :           return gen_split_945 (insn, operands);
   26419              : 
   26420              :         case E_DImode:
   26421              :           if (!register_operand (operands[0], E_DImode)
   26422              :               || GET_MODE (x3) != E_DImode
   26423              :               || GET_MODE (x4) != E_DImode
   26424              :               || !(
   26425              : #line 27421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26426              : (x86_64_immediate_operand (operands[2], VOIDmode)
   26427              :    && INTVAL (operands[2]) != -1
   26428              :    && INTVAL (operands[2]) != 2147483647) && 
   26429              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26430              : (TARGET_64BIT)))
   26431              :             return NULL;
   26432              :           return gen_split_946 (insn, operands);
   26433              : 
   26434              :         default:
   26435              :           return NULL;
   26436              :         }
   26437              : 
   26438              :     case EQ:
   26439              :       switch (pattern413 (x3))
   26440              :         {
   26441              :         case 0:
   26442              :           return gen_split_947 (insn, operands);
   26443              : 
   26444              :         case 1:
   26445              :           return gen_split_948 (insn, operands);
   26446              : 
   26447              :         case 2:
   26448              :           return gen_split_949 (insn, operands);
   26449              : 
   26450              :         case 3:
   26451              :           if (!
   26452              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26453              : (TARGET_64BIT))
   26454              :             return NULL;
   26455              :           return gen_split_950 (insn, operands);
   26456              : 
   26457              :         default:
   26458              :           return NULL;
   26459              :         }
   26460              : 
   26461              :     case NE:
   26462              :       switch (pattern413 (x3))
   26463              :         {
   26464              :         case 0:
   26465              :           return gen_split_951 (insn, operands);
   26466              : 
   26467              :         case 1:
   26468              :           return gen_split_952 (insn, operands);
   26469              : 
   26470              :         case 2:
   26471              :           return gen_split_953 (insn, operands);
   26472              : 
   26473              :         case 3:
   26474              :           if (!
   26475              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26476              : (TARGET_64BIT))
   26477              :             return NULL;
   26478              :           return gen_split_954 (insn, operands);
   26479              : 
   26480              :         default:
   26481              :           return NULL;
   26482              :         }
   26483              : 
   26484              :     default:
   26485              :       return NULL;
   26486              :     }
   26487              : }
   26488              : 
   26489              :  rtx_insn *
   26490              : split_42 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   26491              : {
   26492              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   26493              :   rtx x2, x3, x4, x5, x6, x7, x8;
   26494              :   rtx_insn *res ATTRIBUTE_UNUSED;
   26495              :   x2 = XEXP (x1, 1);
   26496              :   x3 = XEXP (x2, 0);
   26497              :   x4 = XEXP (x3, 0);
   26498              :   if (GET_CODE (x4) != REG
   26499              :       || REGNO (x4) != 17)
   26500              :     return NULL;
   26501              :   x5 = XEXP (x3, 1);
   26502              :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   26503              :     return NULL;
   26504              :   x6 = XEXP (x1, 0);
   26505              :   operands[0] = x6;
   26506              :   x7 = XEXP (x2, 1);
   26507              :   operands[2] = x7;
   26508              :   x8 = XEXP (x2, 2);
   26509              :   operands[3] = x8;
   26510              :   switch (GET_MODE (operands[0]))
   26511              :     {
   26512              :     case E_HImode:
   26513              :       if (!register_operand (operands[0], E_HImode)
   26514              :           || GET_MODE (x2) != E_HImode
   26515              :           || !ix86_comparison_operator (operands[1], E_VOIDmode))
   26516              :         return NULL;
   26517              :       if (nonimmediate_operand (operands[2], E_HImode)
   26518              :           && nonimmediate_operand (operands[3], E_HImode)
   26519              :           && 
   26520              : #line 27529 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26521              : (!TARGET_64BIT && TARGET_CMOVE
   26522              :    && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   26523              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   26524              :    && can_create_pseudo_p ()
   26525              :    && optimize_insn_for_speed_p ()))
   26526              :         return gen_split_955 (insn, operands);
   26527              :       if (!register_operand (operands[2], E_HImode)
   26528              :           || !register_operand (operands[3], E_HImode)
   26529              :           || !
   26530              : #line 27559 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26531              : (TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL
   26532              :    && reload_completed))
   26533              :         return NULL;
   26534              :       return gen_split_959 (insn, operands);
   26535              : 
   26536              :     case E_SImode:
   26537              :       if (pattern1210 (x2, 
   26538              : E_SImode) != 0
   26539              :           || !
   26540              : #line 27529 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26541              : (!TARGET_64BIT && TARGET_CMOVE
   26542              :    && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   26543              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   26544              :    && can_create_pseudo_p ()
   26545              :    && optimize_insn_for_speed_p ()))
   26546              :         return NULL;
   26547              :       return gen_split_956 (insn, operands);
   26548              : 
   26549              :     case E_DImode:
   26550              :       if (pattern1210 (x2, 
   26551              : E_DImode) != 0
   26552              :           || !(
   26553              : #line 27529 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26554              : (!TARGET_64BIT && TARGET_CMOVE
   26555              :    && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   26556              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   26557              :    && can_create_pseudo_p ()
   26558              :    && optimize_insn_for_speed_p ()) && 
   26559              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26560              : (TARGET_64BIT)))
   26561              :         return NULL;
   26562              :       return gen_split_957 (insn, operands);
   26563              : 
   26564              :     case E_QImode:
   26565              :       if (pattern1211 (x2) != 0
   26566              :           || !
   26567              : #line 27559 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26568              : (TARGET_CMOVE && !TARGET_PARTIAL_REG_STALL
   26569              :    && reload_completed))
   26570              :         return NULL;
   26571              :       return gen_split_958 (insn, operands);
   26572              : 
   26573              :     case E_DFmode:
   26574              :       if (GET_MODE (x2) != E_DFmode
   26575              :           || !nonimmediate_operand (operands[2], E_DFmode)
   26576              :           || !nonimmediate_operand (operands[3], E_DFmode))
   26577              :         return NULL;
   26578              :       if (general_reg_operand (operands[0], E_DFmode)
   26579              :           && fcmov_comparison_operator (operands[1], E_VOIDmode)
   26580              :           && 
   26581              : #line 27775 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26582              : (!TARGET_64BIT && reload_completed))
   26583              :         return gen_split_960 (insn, operands);
   26584              :       if (!register_operand (operands[0], E_DFmode)
   26585              :           || !ix86_comparison_operator (operands[1], E_VOIDmode)
   26586              :           || !
   26587              : #line 27809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26588              : (!TARGET_64BIT && TARGET_80387 && TARGET_CMOVE
   26589              :    && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   26590              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   26591              :    && can_create_pseudo_p ()
   26592              :    && optimize_insn_for_speed_p ()))
   26593              :         return NULL;
   26594              :       return gen_split_962 (insn, operands);
   26595              : 
   26596              :     case E_SFmode:
   26597              :       if (pattern1210 (x2, 
   26598              : E_SFmode) != 0
   26599              :           || !
   26600              : #line 27809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26601              : (!TARGET_64BIT && TARGET_80387 && TARGET_CMOVE
   26602              :    && TARGET_AVOID_MEM_OPND_FOR_CMOVE
   26603              :    && (MEM_P (operands[2]) || MEM_P (operands[3]))
   26604              :    && can_create_pseudo_p ()
   26605              :    && optimize_insn_for_speed_p ()))
   26606              :         return NULL;
   26607              :       return gen_split_961 (insn, operands);
   26608              : 
   26609              :     default:
   26610              :       return NULL;
   26611              :     }
   26612              : }
   26613              : 
   26614              :  rtx_insn *
   26615              : split_46 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   26616              : {
   26617              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   26618              :   rtx x2, x3, x4, x5, x6, x7;
   26619              :   rtx_insn *res ATTRIBUTE_UNUSED;
   26620              :   x2 = XEXP (x1, 0);
   26621              :   operands[0] = x2;
   26622              :   x3 = XEXP (x1, 1);
   26623              :   x4 = XEXP (x3, 0);
   26624              :   switch (GET_CODE (x4))
   26625              :     {
   26626              :     case REG:
   26627              :       operands[1] = x4;
   26628              :       if (general_reg_operand (operands[1], E_VOIDmode)
   26629              :           && general_reg_operand (operands[0], E_VOIDmode)
   26630              :           && 
   26631              : #line 29007 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   26632              : (! TARGET_PARTIAL_REG_STALL && reload_completed
   26633              :    && (GET_MODE (operands[0]) == HImode
   26634              :        || (GET_MODE (operands[0]) == QImode && TARGET_PROMOTE_QImode))))
   26635              :         return gen_split_1013 (insn, operands);
   26636              :       if (general_reg_operand (operands[1], E_V4QImode)
   26637              :           && general_reg_operand (operands[0], E_V4QImode)
   26638              :           && GET_MODE (x3) == E_V4QImode
   26639              :           && 
   26640              : #line 4591 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26641              : (reload_completed))
   26642              :         return gen_split_1111 (insn, operands);
   26643              :       if (general_reg_operand (operands[1], E_V2QImode)
   26644              :           && general_reg_operand (operands[0], E_V2QImode)
   26645              :           && GET_MODE (x3) == E_V2QImode
   26646              :           && 
   26647              : #line 4591 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26648              : (reload_completed))
   26649              :         return gen_split_1112 (insn, operands);
   26650              :       if (general_reg_operand (operands[1], E_V2HImode)
   26651              :           && general_reg_operand (operands[0], E_V2HImode)
   26652              :           && GET_MODE (x3) == E_V2HImode
   26653              :           && 
   26654              : #line 4591 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26655              : (reload_completed))
   26656              :         return gen_split_1113 (insn, operands);
   26657              :       if (sse_reg_operand (operands[1], E_V4QImode)
   26658              :           && sse_reg_operand (operands[0], E_V4QImode)
   26659              :           && GET_MODE (x3) == E_V4QImode
   26660              :           && 
   26661              : #line 4603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26662              : (TARGET_SSE2 && reload_completed))
   26663              :         return gen_split_1114 (insn, operands);
   26664              :       if (sse_reg_operand (operands[1], E_V2QImode)
   26665              :           && sse_reg_operand (operands[0], E_V2QImode)
   26666              :           && GET_MODE (x3) == E_V2QImode
   26667              :           && 
   26668              : #line 4603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26669              : (TARGET_SSE2 && reload_completed))
   26670              :         return gen_split_1115 (insn, operands);
   26671              :       if (sse_reg_operand (operands[1], E_V2HImode)
   26672              :           && sse_reg_operand (operands[0], E_V2HImode)
   26673              :           && GET_MODE (x3) == E_V2HImode
   26674              :           && 
   26675              : #line 4603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
   26676              : (TARGET_SSE2 && reload_completed))
   26677              :         return gen_split_1116 (insn, operands);
   26678              :       if (mask_reg_operand (operands[1], E_QImode)
   26679              :           && mask_reg_operand (operands[0], E_QImode)
   26680              :           && GET_MODE (x3) == E_QImode
   26681              :           && 
   26682              : #line 2253 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26683              : (TARGET_AVX512F && reload_completed))
   26684              :         return gen_split_1259 (insn, operands);
   26685              :       if (mask_reg_operand (operands[1], E_HImode)
   26686              :           && mask_reg_operand (operands[0], E_HImode)
   26687              :           && GET_MODE (x3) == E_HImode
   26688              :           && 
   26689              : #line 2253 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26690              : (TARGET_AVX512F && reload_completed))
   26691              :         return gen_split_1260 (insn, operands);
   26692              :       if (mask_reg_operand (operands[1], E_SImode)
   26693              :           && mask_reg_operand (operands[0], E_SImode)
   26694              :           && GET_MODE (x3) == E_SImode
   26695              :           && (
   26696              : #line 2253 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26697              : (TARGET_AVX512F && reload_completed) && 
   26698              : #line 2109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26699              : (TARGET_AVX512BW)))
   26700              :         return gen_split_1261 (insn, operands);
   26701              :       if (!mask_reg_operand (operands[1], E_DImode)
   26702              :           || !mask_reg_operand (operands[0], E_DImode)
   26703              :           || GET_MODE (x3) != E_DImode
   26704              :           || !(
   26705              : #line 2253 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26706              : (TARGET_AVX512F && reload_completed) && 
   26707              : #line 2109 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26708              : (TARGET_AVX512BW)))
   26709              :         return NULL;
   26710              :       return gen_split_1262 (insn, operands);
   26711              : 
   26712              :     case UNSPEC:
   26713              :       if (XVECLEN (x4, 0) != 3)
   26714              :         return NULL;
   26715              :       x5 = XVECEXP (x4, 0, 0);
   26716              :       operands[1] = x5;
   26717              :       x6 = XVECEXP (x4, 0, 1);
   26718              :       operands[2] = x6;
   26719              :       x7 = XVECEXP (x4, 0, 2);
   26720              :       operands[3] = x7;
   26721              :       switch (XINT (x4, 1))
   26722              :         {
   26723              :         case 60:
   26724              :           switch (GET_MODE (operands[0]))
   26725              :             {
   26726              :             case E_HImode:
   26727              :               switch (pattern977 (x3))
   26728              :                 {
   26729              :                 case 0:
   26730              :                   if (!(
   26731              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26732              : (TARGET_AVX512F && GET_MODE_NUNITS (V16SImode) >= 8
   26733              :    && ix86_pre_reload_split ()) && 
   26734              : #line 4758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26735              : ( 1)))
   26736              :                     return NULL;
   26737              :                   return gen_split_1445 (insn, operands);
   26738              : 
   26739              :                 case 1:
   26740              :                   if (!((
   26741              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26742              : (TARGET_AVX512F && GET_MODE_NUNITS (V16HFmode) >= 8
   26743              :    && ix86_pre_reload_split ()) && 
   26744              : #line 321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26745              : (TARGET_AVX512FP16 && TARGET_AVX512VL)) && 
   26746              : #line 4758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26747              : ( 1)))
   26748              :                     return NULL;
   26749              :                   return gen_split_1452 (insn, operands);
   26750              : 
   26751              :                 case 2:
   26752              :                   if (!(
   26753              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26754              : (TARGET_AVX512F && GET_MODE_NUNITS (V16SFmode) >= 8
   26755              :    && ix86_pre_reload_split ()) && 
   26756              : #line 4758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26757              : ( 1)))
   26758              :                     return NULL;
   26759              :                   return gen_split_1454 (insn, operands);
   26760              : 
   26761              :                 case 3:
   26762              :                   if (!((
   26763              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26764              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   26765              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26766              : (TARGET_AVX512VL)) && 
   26767              : #line 4952 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26768              : ( 1)))
   26769              :                     return NULL;
   26770              :                   return gen_split_1480 (insn, operands);
   26771              : 
   26772              :                 case 4:
   26773              :                   if (!((
   26774              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26775              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   26776              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26777              : (TARGET_AVX512VL)) && 
   26778              : #line 4952 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26779              : ( 1)))
   26780              :                     return NULL;
   26781              :                   return gen_split_1486 (insn, operands);
   26782              : 
   26783              :                 default:
   26784              :                   return NULL;
   26785              :                 }
   26786              : 
   26787              :             case E_QImode:
   26788              :               switch (pattern978 (x3))
   26789              :                 {
   26790              :                 case 0:
   26791              :                   if (!((
   26792              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26793              : (TARGET_AVX512F && GET_MODE_NUNITS (V8SImode) >= 8
   26794              :    && ix86_pre_reload_split ()) && 
   26795              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26796              : (TARGET_AVX512VL)) && 
   26797              : #line 4758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26798              : ( 1)))
   26799              :                     return NULL;
   26800              :                   return gen_split_1446 (insn, operands);
   26801              : 
   26802              :                 case 1:
   26803              :                   if (!((
   26804              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26805              : (TARGET_AVX512F && GET_MODE_NUNITS (V4SImode) >= 8
   26806              :    && ix86_pre_reload_split ()) && 
   26807              : #line 318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26808              : (TARGET_AVX512VL)) && 
   26809              : #line 4758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26810              : ( 1)))
   26811              :                     return NULL;
   26812              :                   return gen_split_1447 (insn, operands);
   26813              : 
   26814              :                 case 2:
   26815              :                   if (!(
   26816              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26817              : (TARGET_AVX512F && GET_MODE_NUNITS (V8DImode) >= 8
   26818              :    && ix86_pre_reload_split ()) && 
   26819              : #line 4758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26820              : ( 1)))
   26821              :                     return NULL;
   26822              :                   return gen_split_1448 (insn, operands);
   26823              : 
   26824              :                 case 3:
   26825              :                   if (!((
   26826              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26827              : (TARGET_AVX512F && GET_MODE_NUNITS (V4DImode) >= 8
   26828              :    && ix86_pre_reload_split ()) && 
   26829              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26830              : (TARGET_AVX512VL)) && 
   26831              : #line 4758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26832              : ( 1)))
   26833              :                     return NULL;
   26834              :                   return gen_split_1449 (insn, operands);
   26835              : 
   26836              :                 case 4:
   26837              :                   if (!((
   26838              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26839              : (TARGET_AVX512F && GET_MODE_NUNITS (V2DImode) >= 8
   26840              :    && ix86_pre_reload_split ()) && 
   26841              : #line 319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26842              : (TARGET_AVX512VL)) && 
   26843              : #line 4758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26844              : ( 1)))
   26845              :                     return NULL;
   26846              :                   return gen_split_1450 (insn, operands);
   26847              : 
   26848              :                 case 5:
   26849              :                   if (!((
   26850              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26851              : (TARGET_AVX512F && GET_MODE_NUNITS (V8HFmode) >= 8
   26852              :    && ix86_pre_reload_split ()) && 
   26853              : #line 322 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26854              : (TARGET_AVX512FP16 && TARGET_AVX512VL)) && 
   26855              : #line 4758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26856              : ( 1)))
   26857              :                     return NULL;
   26858              :                   return gen_split_1453 (insn, operands);
   26859              : 
   26860              :                 case 6:
   26861              :                   if (!((
   26862              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26863              : (TARGET_AVX512F && GET_MODE_NUNITS (V8SFmode) >= 8
   26864              :    && ix86_pre_reload_split ()) && 
   26865              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26866              : (TARGET_AVX512VL)) && 
   26867              : #line 4758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26868              : ( 1)))
   26869              :                     return NULL;
   26870              :                   return gen_split_1455 (insn, operands);
   26871              : 
   26872              :                 case 7:
   26873              :                   if (!((
   26874              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26875              : (TARGET_AVX512F && GET_MODE_NUNITS (V4SFmode) >= 8
   26876              :    && ix86_pre_reload_split ()) && 
   26877              : #line 323 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26878              : (TARGET_AVX512VL)) && 
   26879              : #line 4758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26880              : ( 1)))
   26881              :                     return NULL;
   26882              :                   return gen_split_1456 (insn, operands);
   26883              : 
   26884              :                 case 8:
   26885              :                   if (!(
   26886              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26887              : (TARGET_AVX512F && GET_MODE_NUNITS (V8DFmode) >= 8
   26888              :    && ix86_pre_reload_split ()) && 
   26889              : #line 4758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26890              : ( 1)))
   26891              :                     return NULL;
   26892              :                   return gen_split_1457 (insn, operands);
   26893              : 
   26894              :                 case 9:
   26895              :                   if (!((
   26896              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26897              : (TARGET_AVX512F && GET_MODE_NUNITS (V4DFmode) >= 8
   26898              :    && ix86_pre_reload_split ()) && 
   26899              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26900              : (TARGET_AVX512VL)) && 
   26901              : #line 4758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26902              : ( 1)))
   26903              :                     return NULL;
   26904              :                   return gen_split_1458 (insn, operands);
   26905              : 
   26906              :                 case 10:
   26907              :                   if (!((
   26908              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26909              : (TARGET_AVX512F && GET_MODE_NUNITS (V2DFmode) >= 8
   26910              :    && ix86_pre_reload_split ()) && 
   26911              : #line 324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26912              : (TARGET_AVX512VL)) && 
   26913              : #line 4758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26914              : ( 1)))
   26915              :                     return NULL;
   26916              :                   return gen_split_1459 (insn, operands);
   26917              : 
   26918              :                 case 11:
   26919              :                   if (!((
   26920              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26921              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   26922              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26923              : (TARGET_AVX512VL)) && 
   26924              : #line 4952 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26925              : ( 1)))
   26926              :                     return NULL;
   26927              :                   return gen_split_1488 (insn, operands);
   26928              : 
   26929              :                 default:
   26930              :                   return NULL;
   26931              :                 }
   26932              : 
   26933              :             case E_SImode:
   26934              :               switch (pattern995 (x3))
   26935              :                 {
   26936              :                 case 0:
   26937              :                   if (!((
   26938              : #line 4755 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26939              : (TARGET_AVX512F && GET_MODE_NUNITS (V32HFmode) >= 8
   26940              :    && ix86_pre_reload_split ()) && 
   26941              : #line 320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26942              : (TARGET_AVX512FP16)) && 
   26943              : #line 4758 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26944              : ( 1)))
   26945              :                     return NULL;
   26946              :                   return gen_split_1451 (insn, operands);
   26947              : 
   26948              :                 case 1:
   26949              :                   if (!((
   26950              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26951              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   26952              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26953              : (TARGET_AVX512VL)) && 
   26954              : #line 4952 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26955              : ( 1)))
   26956              :                     return NULL;
   26957              :                   return gen_split_1482 (insn, operands);
   26958              : 
   26959              :                 case 2:
   26960              :                   if (!(
   26961              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26962              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   26963              : #line 4952 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26964              : ( 1)))
   26965              :                     return NULL;
   26966              :                   return gen_split_1484 (insn, operands);
   26967              : 
   26968              :                 default:
   26969              :                   return NULL;
   26970              :                 }
   26971              : 
   26972              :             case E_DImode:
   26973              :               if (pattern996 (x3) != 0
   26974              :                   || !(
   26975              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26976              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   26977              : #line 4952 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26978              : ( 1)))
   26979              :                 return NULL;
   26980              :               return gen_split_1478 (insn, operands);
   26981              : 
   26982              :             default:
   26983              :               return NULL;
   26984              :             }
   26985              : 
   26986              :         case 158:
   26987              :           if (!const_0_to_7_operand (operands[3], E_SImode))
   26988              :             return NULL;
   26989              :           switch (GET_MODE (operands[0]))
   26990              :             {
   26991              :             case E_DImode:
   26992              :               if (pattern1105 (x3, 
   26993              : E_V64QImode, 
   26994              : E_DImode) != 0
   26995              :                   || !(
   26996              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26997              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   26998              : #line 4952 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   26999              : ( 1)))
   27000              :                 return NULL;
   27001              :               return gen_split_1479 (insn, operands);
   27002              : 
   27003              :             case E_HImode:
   27004              :               switch (pattern1091 (x3))
   27005              :                 {
   27006              :                 case 0:
   27007              :                   if (!((
   27008              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27009              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   27010              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27011              : (TARGET_AVX512VL)) && 
   27012              : #line 4952 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27013              : ( 1)))
   27014              :                     return NULL;
   27015              :                   return gen_split_1481 (insn, operands);
   27016              : 
   27017              :                 case 1:
   27018              :                   if (!((
   27019              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27020              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   27021              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27022              : (TARGET_AVX512VL)) && 
   27023              : #line 4952 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27024              : ( 1)))
   27025              :                     return NULL;
   27026              :                   return gen_split_1487 (insn, operands);
   27027              : 
   27028              :                 case 2:
   27029              :                   if (!(
   27030              : #line 5165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27031              : (TARGET_AVX512F && ix86_pre_reload_split ()
   27032              :    && GET_MODE_NUNITS (V16SImode) >= 8) && 
   27033              : #line 5168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27034              : ( 1)))
   27035              :                     return NULL;
   27036              :                   return gen_split_1550 (insn, operands);
   27037              : 
   27038              :                 default:
   27039              :                   return NULL;
   27040              :                 }
   27041              : 
   27042              :             case E_SImode:
   27043              :               switch (pattern1106 (x3))
   27044              :                 {
   27045              :                 case 0:
   27046              :                   if (!((
   27047              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27048              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   27049              : #line 328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27050              : (TARGET_AVX512VL)) && 
   27051              : #line 4952 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27052              : ( 1)))
   27053              :                     return NULL;
   27054              :                   return gen_split_1483 (insn, operands);
   27055              : 
   27056              :                 case 1:
   27057              :                   if (!(
   27058              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27059              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   27060              : #line 4952 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27061              : ( 1)))
   27062              :                     return NULL;
   27063              :                   return gen_split_1485 (insn, operands);
   27064              : 
   27065              :                 default:
   27066              :                   return NULL;
   27067              :                 }
   27068              : 
   27069              :             case E_QImode:
   27070              :               switch (pattern1092 (x3))
   27071              :                 {
   27072              :                 case 0:
   27073              :                   if (!((
   27074              : #line 4950 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27075              : (TARGET_AVX512BW && ix86_pre_reload_split ()) && 
   27076              : #line 329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27077              : (TARGET_AVX512VL)) && 
   27078              : #line 4952 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27079              : ( 1)))
   27080              :                     return NULL;
   27081              :                   return gen_split_1489 (insn, operands);
   27082              : 
   27083              :                 case 1:
   27084              :                   if (!((
   27085              : #line 5165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27086              : (TARGET_AVX512F && ix86_pre_reload_split ()
   27087              :    && GET_MODE_NUNITS (V8SImode) >= 8) && 
   27088              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27089              : (TARGET_AVX512VL)) && 
   27090              : #line 5168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27091              : ( 1)))
   27092              :                     return NULL;
   27093              :                   return gen_split_1551 (insn, operands);
   27094              : 
   27095              :                 case 2:
   27096              :                   if (!((
   27097              : #line 5165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27098              : (TARGET_AVX512F && ix86_pre_reload_split ()
   27099              :    && GET_MODE_NUNITS (V4SImode) >= 8) && 
   27100              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27101              : (TARGET_AVX512VL)) && 
   27102              : #line 5168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27103              : ( 1)))
   27104              :                     return NULL;
   27105              :                   return gen_split_1552 (insn, operands);
   27106              : 
   27107              :                 case 3:
   27108              :                   if (!(
   27109              : #line 5165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27110              : (TARGET_AVX512F && ix86_pre_reload_split ()
   27111              :    && GET_MODE_NUNITS (V8DImode) >= 8) && 
   27112              : #line 5168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27113              : ( 1)))
   27114              :                     return NULL;
   27115              :                   return gen_split_1553 (insn, operands);
   27116              : 
   27117              :                 case 4:
   27118              :                   if (!((
   27119              : #line 5165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27120              : (TARGET_AVX512F && ix86_pre_reload_split ()
   27121              :    && GET_MODE_NUNITS (V4DImode) >= 8) && 
   27122              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27123              : (TARGET_AVX512VL)) && 
   27124              : #line 5168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27125              : ( 1)))
   27126              :                     return NULL;
   27127              :                   return gen_split_1554 (insn, operands);
   27128              : 
   27129              :                 case 5:
   27130              :                   if (!((
   27131              : #line 5165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27132              : (TARGET_AVX512F && ix86_pre_reload_split ()
   27133              :    && GET_MODE_NUNITS (V2DImode) >= 8) && 
   27134              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27135              : (TARGET_AVX512VL)) && 
   27136              : #line 5168 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27137              : ( 1)))
   27138              :                     return NULL;
   27139              :                   return gen_split_1555 (insn, operands);
   27140              : 
   27141              :                 default:
   27142              :                   return NULL;
   27143              :                 }
   27144              : 
   27145              :             default:
   27146              :               return NULL;
   27147              :             }
   27148              : 
   27149              :         default:
   27150              :           return NULL;
   27151              :         }
   27152              : 
   27153              :     default:
   27154              :       return NULL;
   27155              :     }
   27156              : }
   27157              : 
   27158              :  rtx_insn *
   27159              : split_61 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   27160              : {
   27161              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   27162              :   rtx x2, x3;
   27163              :   rtx_insn *res ATTRIBUTE_UNUSED;
   27164              :   x2 = XEXP (x1, 1);
   27165              :   x3 = XEXP (x2, 0);
   27166              :   switch (GET_CODE (x3))
   27167              :     {
   27168              :     case REG:
   27169              :     case SUBREG:
   27170              :     case MEM:
   27171              :       res = split_59 (x1, insn);
   27172              :       if (res != NULL_RTX)
   27173              :         return res;
   27174              :       break;
   27175              : 
   27176              :     case CONST_INT:
   27177              :     case CONST_DOUBLE:
   27178              :     case CONST_VECTOR:
   27179              :       switch (pattern322 (x2))
   27180              :         {
   27181              :         case 0:
   27182              :           res = split_60 (x1, insn);
   27183              :           if (res != NULL_RTX)
   27184              :             return res;
   27185              :           break;
   27186              : 
   27187              :         case 1:
   27188              :           if (vector_all_ones_operand (operands[1], E_V16QImode)
   27189              :               && const0_operand (operands[2], E_V16QImode)
   27190              :               && (
   27191              : #line 18587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27192              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27193              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)) && 
   27194              : #line 18590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27195              : ( 1)))
   27196              :             return gen_split_3409 (insn, operands);
   27197              :           if (const0_operand (operands[1], E_V16QImode)
   27198              :               && vector_all_ones_operand (operands[2], E_V16QImode)
   27199              :               && (
   27200              : #line 18645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27201              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27202              :      /* NE is commutative.  */
   27203              :    && INTVAL (operands[5]) == 4) && 
   27204              : #line 18650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27205              : ( 1)))
   27206              :             return gen_split_3432 (insn, operands);
   27207              :           break;
   27208              : 
   27209              :         case 2:
   27210              :           if (vector_all_ones_operand (operands[1], E_V8HImode)
   27211              :               && const0_operand (operands[2], E_V8HImode)
   27212              :               && (
   27213              : #line 18587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27214              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27215              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)) && 
   27216              : #line 18590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27217              : ( 1)))
   27218              :             return gen_split_3411 (insn, operands);
   27219              :           if (const0_operand (operands[1], E_V8HImode)
   27220              :               && vector_all_ones_operand (operands[2], E_V8HImode)
   27221              :               && (
   27222              : #line 18645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27223              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27224              :      /* NE is commutative.  */
   27225              :    && INTVAL (operands[5]) == 4) && 
   27226              : #line 18650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27227              : ( 1)))
   27228              :             return gen_split_3433 (insn, operands);
   27229              :           break;
   27230              : 
   27231              :         case 3:
   27232              :           if (vector_all_ones_operand (operands[1], E_V4SImode)
   27233              :               && const0_operand (operands[2], E_V4SImode)
   27234              :               && (
   27235              : #line 18587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27236              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27237              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)) && 
   27238              : #line 18590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27239              : ( 1)))
   27240              :             return gen_split_3413 (insn, operands);
   27241              :           if (const0_operand (operands[1], E_V4SImode)
   27242              :               && vector_all_ones_operand (operands[2], E_V4SImode)
   27243              :               && (
   27244              : #line 18645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27245              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27246              :      /* NE is commutative.  */
   27247              :    && INTVAL (operands[5]) == 4) && 
   27248              : #line 18650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27249              : ( 1)))
   27250              :             return gen_split_3434 (insn, operands);
   27251              :           break;
   27252              : 
   27253              :         case 4:
   27254              :           if (vector_all_ones_operand (operands[1], E_V2DImode)
   27255              :               && const0_operand (operands[2], E_V2DImode)
   27256              :               && (
   27257              : #line 18587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27258              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27259              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)) && 
   27260              : #line 18590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27261              : ( 1)))
   27262              :             return gen_split_3415 (insn, operands);
   27263              :           if (const0_operand (operands[1], E_V2DImode)
   27264              :               && vector_all_ones_operand (operands[2], E_V2DImode)
   27265              :               && (
   27266              : #line 18645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27267              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27268              :      /* NE is commutative.  */
   27269              :    && INTVAL (operands[5]) == 4) && 
   27270              : #line 18650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27271              : ( 1)))
   27272              :             return gen_split_3435 (insn, operands);
   27273              :           break;
   27274              : 
   27275              :         case 5:
   27276              :           if (vector_all_ones_operand (operands[1], E_V32QImode)
   27277              :               && const0_operand (operands[2], E_V32QImode)
   27278              :               && (
   27279              : #line 18587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27280              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27281              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)) && 
   27282              : #line 18590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27283              : ( 1)))
   27284              :             return gen_split_3417 (insn, operands);
   27285              :           if (const0_operand (operands[1], E_V32QImode)
   27286              :               && vector_all_ones_operand (operands[2], E_V32QImode)
   27287              :               && (
   27288              : #line 18645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27289              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27290              :      /* NE is commutative.  */
   27291              :    && INTVAL (operands[5]) == 4) && 
   27292              : #line 18650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27293              : ( 1)))
   27294              :             return gen_split_3436 (insn, operands);
   27295              :           break;
   27296              : 
   27297              :         case 6:
   27298              :           if (vector_all_ones_operand (operands[1], E_V16HImode)
   27299              :               && const0_operand (operands[2], E_V16HImode)
   27300              :               && (
   27301              : #line 18587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27302              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27303              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)) && 
   27304              : #line 18590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27305              : ( 1)))
   27306              :             return gen_split_3419 (insn, operands);
   27307              :           if (const0_operand (operands[1], E_V16HImode)
   27308              :               && vector_all_ones_operand (operands[2], E_V16HImode)
   27309              :               && (
   27310              : #line 18645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27311              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27312              :      /* NE is commutative.  */
   27313              :    && INTVAL (operands[5]) == 4) && 
   27314              : #line 18650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27315              : ( 1)))
   27316              :             return gen_split_3437 (insn, operands);
   27317              :           break;
   27318              : 
   27319              :         case 7:
   27320              :           if (vector_all_ones_operand (operands[1], E_V8SImode)
   27321              :               && const0_operand (operands[2], E_V8SImode)
   27322              :               && (
   27323              : #line 18587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27324              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27325              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)) && 
   27326              : #line 18590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27327              : ( 1)))
   27328              :             return gen_split_3421 (insn, operands);
   27329              :           if (const0_operand (operands[1], E_V8SImode)
   27330              :               && vector_all_ones_operand (operands[2], E_V8SImode)
   27331              :               && (
   27332              : #line 18645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27333              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27334              :      /* NE is commutative.  */
   27335              :    && INTVAL (operands[5]) == 4) && 
   27336              : #line 18650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27337              : ( 1)))
   27338              :             return gen_split_3438 (insn, operands);
   27339              :           break;
   27340              : 
   27341              :         case 8:
   27342              :           if (vector_all_ones_operand (operands[1], E_V4DImode)
   27343              :               && const0_operand (operands[2], E_V4DImode)
   27344              :               && (
   27345              : #line 18587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27346              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27347              :    && (INTVAL (operands[5]) == 2 || INTVAL (operands[5]) == 5)) && 
   27348              : #line 18590 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27349              : ( 1)))
   27350              :             return gen_split_3423 (insn, operands);
   27351              :           if (const0_operand (operands[1], E_V4DImode)
   27352              :               && vector_all_ones_operand (operands[2], E_V4DImode)
   27353              :               && (
   27354              : #line 18645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27355              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27356              :      /* NE is commutative.  */
   27357              :    && INTVAL (operands[5]) == 4) && 
   27358              : #line 18650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27359              : ( 1)))
   27360              :             return gen_split_3439 (insn, operands);
   27361              :           break;
   27362              : 
   27363              :         case 9:
   27364              :           if (((
   27365              : #line 4413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27366              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   27367              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27368              : (TARGET_AVX)) && 
   27369              : #line 4415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27370              : ( 1)))
   27371              :             return gen_split_1376 (insn, operands);
   27372              :           break;
   27373              : 
   27374              :         case 10:
   27375              :           if ((
   27376              : #line 18462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27377              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27378              :    /* NE is commutative.  */
   27379              :    && ((INTVAL (operands[5]) == 4
   27380              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   27381              :           /* LE, 3 must be register.  */
   27382              :        || (INTVAL (operands[5]) == 2
   27383              :            && !MEM_P (operands[3]))
   27384              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   27385              :        || (INTVAL (operands[5]) == 5
   27386              :            && !MEM_P (operands[4])))) && 
   27387              : #line 18473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27388              : ( 1)))
   27389              :             return gen_split_3400 (insn, operands);
   27390              :           break;
   27391              : 
   27392              :         case 11:
   27393              :           if ((
   27394              : #line 4413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27395              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   27396              : #line 4415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27397              : ( 1)))
   27398              :             return gen_split_1377 (insn, operands);
   27399              :           break;
   27400              : 
   27401              :         case 12:
   27402              :           if ((
   27403              : #line 18462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27404              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27405              :    /* NE is commutative.  */
   27406              :    && ((INTVAL (operands[5]) == 4
   27407              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   27408              :           /* LE, 3 must be register.  */
   27409              :        || (INTVAL (operands[5]) == 2
   27410              :            && !MEM_P (operands[3]))
   27411              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   27412              :        || (INTVAL (operands[5]) == 5
   27413              :            && !MEM_P (operands[4])))) && 
   27414              : #line 18473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27415              : ( 1)))
   27416              :             return gen_split_3396 (insn, operands);
   27417              :           break;
   27418              : 
   27419              :         case 13:
   27420              :           if (((
   27421              : #line 4413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27422              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   27423              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27424              : (TARGET_AVX)) && 
   27425              : #line 4415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27426              : ( 1)))
   27427              :             return gen_split_1378 (insn, operands);
   27428              :           break;
   27429              : 
   27430              :         case 14:
   27431              :           if ((
   27432              : #line 18462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27433              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27434              :    /* NE is commutative.  */
   27435              :    && ((INTVAL (operands[5]) == 4
   27436              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   27437              :           /* LE, 3 must be register.  */
   27438              :        || (INTVAL (operands[5]) == 2
   27439              :            && !MEM_P (operands[3]))
   27440              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   27441              :        || (INTVAL (operands[5]) == 5
   27442              :            && !MEM_P (operands[4])))) && 
   27443              : #line 18473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27444              : ( 1)))
   27445              :             return gen_split_3401 (insn, operands);
   27446              :           break;
   27447              : 
   27448              :         case 15:
   27449              :           if (((
   27450              : #line 4413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27451              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   27452              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27453              : (TARGET_SSE2)) && 
   27454              : #line 4415 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27455              : ( 1)))
   27456              :             return gen_split_1379 (insn, operands);
   27457              :           break;
   27458              : 
   27459              :         case 16:
   27460              :           if ((
   27461              : #line 18462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27462              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27463              :    /* NE is commutative.  */
   27464              :    && ((INTVAL (operands[5]) == 4
   27465              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   27466              :           /* LE, 3 must be register.  */
   27467              :        || (INTVAL (operands[5]) == 2
   27468              :            && !MEM_P (operands[3]))
   27469              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   27470              :        || (INTVAL (operands[5]) == 5
   27471              :            && !MEM_P (operands[4])))) && 
   27472              : #line 18473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27473              : ( 1)))
   27474              :             return gen_split_3397 (insn, operands);
   27475              :           break;
   27476              : 
   27477              :         case 17:
   27478              :           if ((
   27479              : #line 18462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27480              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27481              :    /* NE is commutative.  */
   27482              :    && ((INTVAL (operands[5]) == 4
   27483              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   27484              :           /* LE, 3 must be register.  */
   27485              :        || (INTVAL (operands[5]) == 2
   27486              :            && !MEM_P (operands[3]))
   27487              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   27488              :        || (INTVAL (operands[5]) == 5
   27489              :            && !MEM_P (operands[4])))) && 
   27490              : #line 18473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27491              : ( 1)))
   27492              :             return gen_split_3394 (insn, operands);
   27493              :           break;
   27494              : 
   27495              :         case 18:
   27496              :           if ((
   27497              : #line 18462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27498              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27499              :    /* NE is commutative.  */
   27500              :    && ((INTVAL (operands[5]) == 4
   27501              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   27502              :           /* LE, 3 must be register.  */
   27503              :        || (INTVAL (operands[5]) == 2
   27504              :            && !MEM_P (operands[3]))
   27505              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   27506              :        || (INTVAL (operands[5]) == 5
   27507              :            && !MEM_P (operands[4])))) && 
   27508              : #line 18473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27509              : ( 1)))
   27510              :             return gen_split_3395 (insn, operands);
   27511              :           break;
   27512              : 
   27513              :         case 19:
   27514              :           if ((
   27515              : #line 18462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27516              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27517              :    /* NE is commutative.  */
   27518              :    && ((INTVAL (operands[5]) == 4
   27519              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   27520              :           /* LE, 3 must be register.  */
   27521              :        || (INTVAL (operands[5]) == 2
   27522              :            && !MEM_P (operands[3]))
   27523              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   27524              :        || (INTVAL (operands[5]) == 5
   27525              :            && !MEM_P (operands[4])))) && 
   27526              : #line 18473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27527              : ( 1)))
   27528              :             return gen_split_3398 (insn, operands);
   27529              :           break;
   27530              : 
   27531              :         case 20:
   27532              :           if ((
   27533              : #line 18462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27534              : (TARGET_AVX512VL && ix86_pre_reload_split ()
   27535              :    /* NE is commutative.  */
   27536              :    && ((INTVAL (operands[5]) == 4
   27537              :         && !(MEM_P (operands[3]) && MEM_P (operands[4])))
   27538              :           /* LE, 3 must be register.  */
   27539              :        || (INTVAL (operands[5]) == 2
   27540              :            && !MEM_P (operands[3]))
   27541              :           /* NLT aka GE, 4 must be register and we swap operands.  */
   27542              :        || (INTVAL (operands[5]) == 5
   27543              :            && !MEM_P (operands[4])))) && 
   27544              : #line 18473 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27545              : ( 1)))
   27546              :             return gen_split_3399 (insn, operands);
   27547              :           break;
   27548              : 
   27549              :         case 21:
   27550              :           switch (GET_MODE (operands[0]))
   27551              :             {
   27552              :             case E_V16SImode:
   27553              :               if (register_operand (operands[0], E_V16SImode)
   27554              :                   && GET_MODE (x2) == E_V16SImode
   27555              :                   && register_operand (operands[1], E_HImode))
   27556              :                 {
   27557              :                   if (vector_all_ones_operand (operands[2], E_V16SImode)
   27558              :                       && const0_operand (operands[3], E_V16SImode)
   27559              :                       && (
   27560              : #line 10704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27561              : (TARGET_AVX512F) && 
   27562              : #line 10708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27563              : ( !TARGET_AVX512DQ && reload_completed
   27564              :    && optimize_function_for_speed_p (cfun))))
   27565              :                     return gen_split_1602 (insn, operands);
   27566              :                   if (const0_operand (operands[2], E_V16SImode)
   27567              :                       && vector_all_ones_operand (operands[3], E_V16SImode)
   27568              :                       && (
   27569              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27570              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   27571              : #line 10732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27572              : ( 1)))
   27573              :                     return gen_split_1614 (insn, operands);
   27574              :                 }
   27575              :               break;
   27576              : 
   27577              :             case E_V8SImode:
   27578              :               if (register_operand (operands[0], E_V8SImode)
   27579              :                   && GET_MODE (x2) == E_V8SImode
   27580              :                   && register_operand (operands[1], E_QImode))
   27581              :                 {
   27582              :                   if (vector_all_ones_operand (operands[2], E_V8SImode)
   27583              :                       && const0_operand (operands[3], E_V8SImode)
   27584              :                       && ((
   27585              : #line 10704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27586              : (TARGET_AVX512F) && 
   27587              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27588              : (TARGET_AVX512VL)) && 
   27589              : #line 10708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27590              : ( !TARGET_AVX512DQ && reload_completed
   27591              :    && optimize_function_for_speed_p (cfun))))
   27592              :                     return gen_split_1603 (insn, operands);
   27593              :                   if (const0_operand (operands[2], E_V8SImode)
   27594              :                       && vector_all_ones_operand (operands[3], E_V8SImode)
   27595              :                       && ((
   27596              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27597              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   27598              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27599              : (TARGET_AVX512VL)) && 
   27600              : #line 10732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27601              : ( 1)))
   27602              :                     return gen_split_1615 (insn, operands);
   27603              :                 }
   27604              :               break;
   27605              : 
   27606              :             case E_V4SImode:
   27607              :               if (register_operand (operands[0], E_V4SImode)
   27608              :                   && GET_MODE (x2) == E_V4SImode
   27609              :                   && register_operand (operands[1], E_QImode))
   27610              :                 {
   27611              :                   if (vector_all_ones_operand (operands[2], E_V4SImode)
   27612              :                       && const0_operand (operands[3], E_V4SImode)
   27613              :                       && ((
   27614              : #line 10704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27615              : (TARGET_AVX512F) && 
   27616              : #line 496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27617              : (TARGET_AVX512VL)) && 
   27618              : #line 10708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27619              : ( !TARGET_AVX512DQ && reload_completed
   27620              :    && optimize_function_for_speed_p (cfun))))
   27621              :                     return gen_split_1604 (insn, operands);
   27622              :                   if (const0_operand (operands[2], E_V4SImode)
   27623              :                       && vector_all_ones_operand (operands[3], E_V4SImode)
   27624              :                       && ((
   27625              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27626              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   27627              : #line 506 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27628              : (TARGET_AVX512VL)) && 
   27629              : #line 10732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27630              : ( 1)))
   27631              :                     return gen_split_1616 (insn, operands);
   27632              :                 }
   27633              :               break;
   27634              : 
   27635              :             case E_V8DImode:
   27636              :               if (register_operand (operands[0], E_V8DImode)
   27637              :                   && GET_MODE (x2) == E_V8DImode
   27638              :                   && register_operand (operands[1], E_QImode))
   27639              :                 {
   27640              :                   if (vector_all_ones_operand (operands[2], E_V8DImode)
   27641              :                       && const0_operand (operands[3], E_V8DImode)
   27642              :                       && (
   27643              : #line 10704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27644              : (TARGET_AVX512F) && 
   27645              : #line 10708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27646              : ( !TARGET_AVX512DQ && reload_completed
   27647              :    && optimize_function_for_speed_p (cfun))))
   27648              :                     return gen_split_1605 (insn, operands);
   27649              :                   if (const0_operand (operands[2], E_V8DImode)
   27650              :                       && vector_all_ones_operand (operands[3], E_V8DImode)
   27651              :                       && (
   27652              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27653              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   27654              : #line 10732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27655              : ( 1)))
   27656              :                     return gen_split_1617 (insn, operands);
   27657              :                 }
   27658              :               break;
   27659              : 
   27660              :             case E_V4DImode:
   27661              :               if (register_operand (operands[0], E_V4DImode)
   27662              :                   && GET_MODE (x2) == E_V4DImode
   27663              :                   && register_operand (operands[1], E_QImode))
   27664              :                 {
   27665              :                   if (vector_all_ones_operand (operands[2], E_V4DImode)
   27666              :                       && const0_operand (operands[3], E_V4DImode)
   27667              :                       && ((
   27668              : #line 10704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27669              : (TARGET_AVX512F) && 
   27670              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27671              : (TARGET_AVX512VL)) && 
   27672              : #line 10708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27673              : ( !TARGET_AVX512DQ && reload_completed
   27674              :    && optimize_function_for_speed_p (cfun))))
   27675              :                     return gen_split_1606 (insn, operands);
   27676              :                   if (const0_operand (operands[2], E_V4DImode)
   27677              :                       && vector_all_ones_operand (operands[3], E_V4DImode)
   27678              :                       && ((
   27679              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27680              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   27681              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27682              : (TARGET_AVX512VL)) && 
   27683              : #line 10732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27684              : ( 1)))
   27685              :                     return gen_split_1618 (insn, operands);
   27686              :                 }
   27687              :               break;
   27688              : 
   27689              :             case E_V2DImode:
   27690              :               if (register_operand (operands[0], E_V2DImode)
   27691              :                   && GET_MODE (x2) == E_V2DImode
   27692              :                   && register_operand (operands[1], E_QImode))
   27693              :                 {
   27694              :                   if (vector_all_ones_operand (operands[2], E_V2DImode)
   27695              :                       && const0_operand (operands[3], E_V2DImode)
   27696              :                       && ((
   27697              : #line 10704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27698              : (TARGET_AVX512F) && 
   27699              : #line 497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27700              : (TARGET_AVX512VL)) && 
   27701              : #line 10708 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27702              : ( !TARGET_AVX512DQ && reload_completed
   27703              :    && optimize_function_for_speed_p (cfun))))
   27704              :                     return gen_split_1607 (insn, operands);
   27705              :                   if (const0_operand (operands[2], E_V2DImode)
   27706              :                       && vector_all_ones_operand (operands[3], E_V2DImode)
   27707              :                       && ((
   27708              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27709              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   27710              : #line 507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27711              : (TARGET_AVX512VL)) && 
   27712              : #line 10732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27713              : ( 1)))
   27714              :                     return gen_split_1619 (insn, operands);
   27715              :                 }
   27716              :               break;
   27717              : 
   27718              :             case E_V64QImode:
   27719              :               if (pattern1197 (x2, 
   27720              : E_DImode, 
   27721              : E_V64QImode) == 0
   27722              :                   && ((
   27723              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27724              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   27725              : #line 500 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27726              : (TARGET_AVX512BW)) && 
   27727              : #line 10732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27728              : ( 1)))
   27729              :                 return gen_split_1608 (insn, operands);
   27730              :               break;
   27731              : 
   27732              :             case E_V32QImode:
   27733              :               if (pattern1197 (x2, 
   27734              : E_SImode, 
   27735              : E_V32QImode) == 0
   27736              :                   && ((
   27737              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27738              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   27739              : #line 501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27740              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
   27741              : #line 10732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27742              : ( 1)))
   27743              :                 return gen_split_1609 (insn, operands);
   27744              :               break;
   27745              : 
   27746              :             case E_V16QImode:
   27747              :               if (pattern1197 (x2, 
   27748              : E_HImode, 
   27749              : E_V16QImode) == 0
   27750              :                   && ((
   27751              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27752              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   27753              : #line 502 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27754              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
   27755              : #line 10732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27756              : ( 1)))
   27757              :                 return gen_split_1610 (insn, operands);
   27758              :               break;
   27759              : 
   27760              :             case E_V32HImode:
   27761              :               if (pattern1197 (x2, 
   27762              : E_SImode, 
   27763              : E_V32HImode) == 0
   27764              :                   && ((
   27765              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27766              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   27767              : #line 503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27768              : (TARGET_AVX512BW)) && 
   27769              : #line 10732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27770              : ( 1)))
   27771              :                 return gen_split_1611 (insn, operands);
   27772              :               break;
   27773              : 
   27774              :             case E_V16HImode:
   27775              :               if (pattern1197 (x2, 
   27776              : E_HImode, 
   27777              : E_V16HImode) == 0
   27778              :                   && ((
   27779              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27780              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   27781              : #line 504 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27782              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
   27783              : #line 10732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27784              : ( 1)))
   27785              :                 return gen_split_1612 (insn, operands);
   27786              :               break;
   27787              : 
   27788              :             case E_V8HImode:
   27789              :               if (pattern1197 (x2, 
   27790              : E_QImode, 
   27791              : E_V8HImode) == 0
   27792              :                   && ((
   27793              : #line 10730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27794              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   27795              : #line 505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27796              : (TARGET_AVX512VL && TARGET_AVX512BW)) && 
   27797              : #line 10732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27798              : ( 1)))
   27799              :                 return gen_split_1613 (insn, operands);
   27800              :               break;
   27801              : 
   27802              :             default:
   27803              :               break;
   27804              :             }
   27805              :           break;
   27806              : 
   27807              :         default:
   27808              :           break;
   27809              :         }
   27810              :       break;
   27811              : 
   27812              :     default:
   27813              :       break;
   27814              :     }
   27815              :   operands[1] = x3;
   27816              :   switch (pattern325 (x2))
   27817              :     {
   27818              :     case 0:
   27819              :       if (!((
   27820              : #line 4440 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27821              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   27822              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27823              : (TARGET_AVX)) && 
   27824              : #line 4442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27825              : ( 1)))
   27826              :         return NULL;
   27827              :       return gen_split_1380 (insn, operands);
   27828              : 
   27829              :     case 1:
   27830              :       if (!(
   27831              : #line 4440 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27832              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   27833              : #line 4442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27834              : ( 1)))
   27835              :         return NULL;
   27836              :       return gen_split_1381 (insn, operands);
   27837              : 
   27838              :     case 2:
   27839              :       if (!((
   27840              : #line 4440 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27841              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   27842              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27843              : (TARGET_AVX)) && 
   27844              : #line 4442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27845              : ( 1)))
   27846              :         return NULL;
   27847              :       return gen_split_1382 (insn, operands);
   27848              : 
   27849              :     case 3:
   27850              :       if (!((
   27851              : #line 4440 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27852              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   27853              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27854              : (TARGET_SSE2)) && 
   27855              : #line 4442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27856              : ( 1)))
   27857              :         return NULL;
   27858              :       return gen_split_1383 (insn, operands);
   27859              : 
   27860              :     case 4:
   27861              :       if (!((
   27862              : #line 4461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27863              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   27864              : #line 425 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27865              : (TARGET_AVX)) && 
   27866              : #line 4463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27867              : ( 1)))
   27868              :         return NULL;
   27869              :       return gen_split_1384 (insn, operands);
   27870              : 
   27871              :     case 5:
   27872              :       if (!(
   27873              : #line 4461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27874              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   27875              : #line 4463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27876              : ( 1)))
   27877              :         return NULL;
   27878              :       return gen_split_1385 (insn, operands);
   27879              : 
   27880              :     case 6:
   27881              :       if (!((
   27882              : #line 4461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27883              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   27884              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27885              : (TARGET_AVX)) && 
   27886              : #line 4463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27887              : ( 1)))
   27888              :         return NULL;
   27889              :       return gen_split_1386 (insn, operands);
   27890              : 
   27891              :     case 7:
   27892              :       if (!((
   27893              : #line 4461 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27894              : (TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   27895              : #line 426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27896              : (TARGET_SSE2)) && 
   27897              : #line 4463 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27898              : ( 1)))
   27899              :         return NULL;
   27900              :       return gen_split_1387 (insn, operands);
   27901              : 
   27902              :     default:
   27903              :       return NULL;
   27904              :     }
   27905              : }
   27906              : 
   27907              :  rtx_insn *
   27908              : split_70 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   27909              : {
   27910              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   27911              :   rtx x2, x3, x4, x5, x6, x7, x8;
   27912              :   rtx_insn *res ATTRIBUTE_UNUSED;
   27913              :   x2 = XEXP (x1, 1);
   27914              :   x3 = XEXP (x2, 0);
   27915              :   x4 = XEXP (x3, 0);
   27916              :   switch (GET_CODE (x4))
   27917              :     {
   27918              :     case REG:
   27919              :     case SUBREG:
   27920              :     case MEM:
   27921              :     case NOT:
   27922              :       switch (pattern543 (x2))
   27923              :         {
   27924              :         case 0:
   27925              :           if (!((
   27926              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27927              : ((64 == 64 || TARGET_AVX512VL
   27928              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27929              :    && ix86_pre_reload_split ()
   27930              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27931              :                     STRIP_UNARY (operands[4]))
   27932              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27933              :                        STRIP_UNARY (operands[4]))
   27934              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27935              :                        STRIP_UNARY (operands[3]))
   27936              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27937              :                        STRIP_UNARY (operands[3])))) && 
   27938              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27939              : (TARGET_AVX512F)) && 
   27940              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27941              : ( 1)))
   27942              :             return NULL;
   27943              :           return gen_split_2065 (insn, operands);
   27944              : 
   27945              :         case 1:
   27946              :           if (!((
   27947              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27948              : ((32 == 64 || TARGET_AVX512VL
   27949              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27950              :    && ix86_pre_reload_split ()
   27951              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27952              :                     STRIP_UNARY (operands[4]))
   27953              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27954              :                        STRIP_UNARY (operands[4]))
   27955              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27956              :                        STRIP_UNARY (operands[3]))
   27957              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27958              :                        STRIP_UNARY (operands[3])))) && 
   27959              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27960              : (TARGET_AVX)) && 
   27961              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27962              : ( 1)))
   27963              :             return NULL;
   27964              :           return gen_split_2092 (insn, operands);
   27965              : 
   27966              :         case 2:
   27967              :           if (!(
   27968              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27969              : ((16 == 64 || TARGET_AVX512VL
   27970              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27971              :    && ix86_pre_reload_split ()
   27972              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27973              :                     STRIP_UNARY (operands[4]))
   27974              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27975              :                        STRIP_UNARY (operands[4]))
   27976              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27977              :                        STRIP_UNARY (operands[3]))
   27978              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27979              :                        STRIP_UNARY (operands[3])))) && 
   27980              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27981              : ( 1)))
   27982              :             return NULL;
   27983              :           return gen_split_2119 (insn, operands);
   27984              : 
   27985              :         case 3:
   27986              :           if (!((
   27987              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   27988              : ((64 == 64 || TARGET_AVX512VL
   27989              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   27990              :    && ix86_pre_reload_split ()
   27991              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   27992              :                     STRIP_UNARY (operands[4]))
   27993              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27994              :                        STRIP_UNARY (operands[4]))
   27995              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   27996              :                        STRIP_UNARY (operands[3]))
   27997              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   27998              :                        STRIP_UNARY (operands[3])))) && 
   27999              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28000              : (TARGET_AVX512F)) && 
   28001              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28002              : ( 1)))
   28003              :             return NULL;
   28004              :           return gen_split_2146 (insn, operands);
   28005              : 
   28006              :         case 4:
   28007              :           if (!((
   28008              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28009              : ((32 == 64 || TARGET_AVX512VL
   28010              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28011              :    && ix86_pre_reload_split ()
   28012              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28013              :                     STRIP_UNARY (operands[4]))
   28014              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28015              :                        STRIP_UNARY (operands[4]))
   28016              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28017              :                        STRIP_UNARY (operands[3]))
   28018              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28019              :                        STRIP_UNARY (operands[3])))) && 
   28020              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28021              : (TARGET_AVX)) && 
   28022              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28023              : ( 1)))
   28024              :             return NULL;
   28025              :           return gen_split_2173 (insn, operands);
   28026              : 
   28027              :         case 5:
   28028              :           if (!(
   28029              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28030              : ((16 == 64 || TARGET_AVX512VL
   28031              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28032              :    && ix86_pre_reload_split ()
   28033              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28034              :                     STRIP_UNARY (operands[4]))
   28035              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28036              :                        STRIP_UNARY (operands[4]))
   28037              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28038              :                        STRIP_UNARY (operands[3]))
   28039              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28040              :                        STRIP_UNARY (operands[3])))) && 
   28041              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28042              : ( 1)))
   28043              :             return NULL;
   28044              :           return gen_split_2200 (insn, operands);
   28045              : 
   28046              :         case 6:
   28047              :           if (!((
   28048              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28049              : ((64 == 64 || TARGET_AVX512VL
   28050              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28051              :    && ix86_pre_reload_split ()
   28052              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28053              :                     STRIP_UNARY (operands[4]))
   28054              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28055              :                        STRIP_UNARY (operands[4]))
   28056              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28057              :                        STRIP_UNARY (operands[3]))
   28058              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28059              :                        STRIP_UNARY (operands[3])))) && 
   28060              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28061              : (TARGET_AVX512F)) && 
   28062              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28063              : ( 1)))
   28064              :             return NULL;
   28065              :           return gen_split_2227 (insn, operands);
   28066              : 
   28067              :         case 7:
   28068              :           if (!((
   28069              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28070              : ((32 == 64 || TARGET_AVX512VL
   28071              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28072              :    && ix86_pre_reload_split ()
   28073              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28074              :                     STRIP_UNARY (operands[4]))
   28075              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28076              :                        STRIP_UNARY (operands[4]))
   28077              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28078              :                        STRIP_UNARY (operands[3]))
   28079              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28080              :                        STRIP_UNARY (operands[3])))) && 
   28081              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28082              : (TARGET_AVX)) && 
   28083              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28084              : ( 1)))
   28085              :             return NULL;
   28086              :           return gen_split_2254 (insn, operands);
   28087              : 
   28088              :         case 8:
   28089              :           if (!(
   28090              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28091              : ((16 == 64 || TARGET_AVX512VL
   28092              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28093              :    && ix86_pre_reload_split ()
   28094              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28095              :                     STRIP_UNARY (operands[4]))
   28096              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28097              :                        STRIP_UNARY (operands[4]))
   28098              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28099              :                        STRIP_UNARY (operands[3]))
   28100              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28101              :                        STRIP_UNARY (operands[3])))) && 
   28102              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28103              : ( 1)))
   28104              :             return NULL;
   28105              :           return gen_split_2281 (insn, operands);
   28106              : 
   28107              :         case 9:
   28108              :           if (!((
   28109              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28110              : ((64 == 64 || TARGET_AVX512VL
   28111              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28112              :    && ix86_pre_reload_split ()
   28113              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28114              :                     STRIP_UNARY (operands[4]))
   28115              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28116              :                        STRIP_UNARY (operands[4]))
   28117              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28118              :                        STRIP_UNARY (operands[3]))
   28119              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28120              :                        STRIP_UNARY (operands[3])))) && 
   28121              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28122              : (TARGET_AVX512F)) && 
   28123              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28124              : ( 1)))
   28125              :             return NULL;
   28126              :           return gen_split_2308 (insn, operands);
   28127              : 
   28128              :         case 10:
   28129              :           if (!((
   28130              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28131              : ((32 == 64 || TARGET_AVX512VL
   28132              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28133              :    && ix86_pre_reload_split ()
   28134              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28135              :                     STRIP_UNARY (operands[4]))
   28136              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28137              :                        STRIP_UNARY (operands[4]))
   28138              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28139              :                        STRIP_UNARY (operands[3]))
   28140              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28141              :                        STRIP_UNARY (operands[3])))) && 
   28142              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28143              : (TARGET_AVX)) && 
   28144              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28145              : ( 1)))
   28146              :             return NULL;
   28147              :           return gen_split_2335 (insn, operands);
   28148              : 
   28149              :         case 11:
   28150              :           if (!((
   28151              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28152              : ((16 == 64 || TARGET_AVX512VL
   28153              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28154              :    && ix86_pre_reload_split ()
   28155              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28156              :                     STRIP_UNARY (operands[4]))
   28157              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28158              :                        STRIP_UNARY (operands[4]))
   28159              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28160              :                        STRIP_UNARY (operands[3]))
   28161              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28162              :                        STRIP_UNARY (operands[3])))) && 
   28163              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28164              : (TARGET_SSE2)) && 
   28165              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28166              : ( 1)))
   28167              :             return NULL;
   28168              :           return gen_split_2362 (insn, operands);
   28169              : 
   28170              :         case 12:
   28171              :           if (!((
   28172              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28173              : ((64 == 64 || TARGET_AVX512VL
   28174              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28175              :    && ix86_pre_reload_split ()
   28176              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28177              :                     STRIP_UNARY (operands[4]))
   28178              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28179              :                        STRIP_UNARY (operands[4]))
   28180              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28181              :                        STRIP_UNARY (operands[3]))
   28182              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28183              :                        STRIP_UNARY (operands[3])))) && 
   28184              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28185              : (TARGET_AVX512F)) && 
   28186              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28187              : ( 1)))
   28188              :             return NULL;
   28189              :           return gen_split_2068 (insn, operands);
   28190              : 
   28191              :         case 13:
   28192              :           if (!((
   28193              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28194              : ((32 == 64 || TARGET_AVX512VL
   28195              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28196              :    && ix86_pre_reload_split ()
   28197              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28198              :                     STRIP_UNARY (operands[4]))
   28199              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28200              :                        STRIP_UNARY (operands[4]))
   28201              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28202              :                        STRIP_UNARY (operands[3]))
   28203              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28204              :                        STRIP_UNARY (operands[3])))) && 
   28205              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28206              : (TARGET_AVX)) && 
   28207              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28208              : ( 1)))
   28209              :             return NULL;
   28210              :           return gen_split_2095 (insn, operands);
   28211              : 
   28212              :         case 14:
   28213              :           if (!(
   28214              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28215              : ((16 == 64 || TARGET_AVX512VL
   28216              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28217              :    && ix86_pre_reload_split ()
   28218              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28219              :                     STRIP_UNARY (operands[4]))
   28220              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28221              :                        STRIP_UNARY (operands[4]))
   28222              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28223              :                        STRIP_UNARY (operands[3]))
   28224              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28225              :                        STRIP_UNARY (operands[3])))) && 
   28226              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28227              : ( 1)))
   28228              :             return NULL;
   28229              :           return gen_split_2122 (insn, operands);
   28230              : 
   28231              :         case 15:
   28232              :           if (!((
   28233              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28234              : ((64 == 64 || TARGET_AVX512VL
   28235              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28236              :    && ix86_pre_reload_split ()
   28237              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28238              :                     STRIP_UNARY (operands[4]))
   28239              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28240              :                        STRIP_UNARY (operands[4]))
   28241              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28242              :                        STRIP_UNARY (operands[3]))
   28243              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28244              :                        STRIP_UNARY (operands[3])))) && 
   28245              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28246              : (TARGET_AVX512F)) && 
   28247              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28248              : ( 1)))
   28249              :             return NULL;
   28250              :           return gen_split_2149 (insn, operands);
   28251              : 
   28252              :         case 16:
   28253              :           if (!((
   28254              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28255              : ((32 == 64 || TARGET_AVX512VL
   28256              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28257              :    && ix86_pre_reload_split ()
   28258              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28259              :                     STRIP_UNARY (operands[4]))
   28260              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28261              :                        STRIP_UNARY (operands[4]))
   28262              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28263              :                        STRIP_UNARY (operands[3]))
   28264              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28265              :                        STRIP_UNARY (operands[3])))) && 
   28266              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28267              : (TARGET_AVX)) && 
   28268              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28269              : ( 1)))
   28270              :             return NULL;
   28271              :           return gen_split_2176 (insn, operands);
   28272              : 
   28273              :         case 17:
   28274              :           if (!(
   28275              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28276              : ((16 == 64 || TARGET_AVX512VL
   28277              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28278              :    && ix86_pre_reload_split ()
   28279              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28280              :                     STRIP_UNARY (operands[4]))
   28281              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28282              :                        STRIP_UNARY (operands[4]))
   28283              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28284              :                        STRIP_UNARY (operands[3]))
   28285              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28286              :                        STRIP_UNARY (operands[3])))) && 
   28287              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28288              : ( 1)))
   28289              :             return NULL;
   28290              :           return gen_split_2203 (insn, operands);
   28291              : 
   28292              :         case 18:
   28293              :           if (!((
   28294              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28295              : ((64 == 64 || TARGET_AVX512VL
   28296              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28297              :    && ix86_pre_reload_split ()
   28298              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28299              :                     STRIP_UNARY (operands[4]))
   28300              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28301              :                        STRIP_UNARY (operands[4]))
   28302              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28303              :                        STRIP_UNARY (operands[3]))
   28304              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28305              :                        STRIP_UNARY (operands[3])))) && 
   28306              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28307              : (TARGET_AVX512F)) && 
   28308              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28309              : ( 1)))
   28310              :             return NULL;
   28311              :           return gen_split_2230 (insn, operands);
   28312              : 
   28313              :         case 19:
   28314              :           if (!((
   28315              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28316              : ((32 == 64 || TARGET_AVX512VL
   28317              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28318              :    && ix86_pre_reload_split ()
   28319              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28320              :                     STRIP_UNARY (operands[4]))
   28321              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28322              :                        STRIP_UNARY (operands[4]))
   28323              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28324              :                        STRIP_UNARY (operands[3]))
   28325              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28326              :                        STRIP_UNARY (operands[3])))) && 
   28327              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28328              : (TARGET_AVX)) && 
   28329              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28330              : ( 1)))
   28331              :             return NULL;
   28332              :           return gen_split_2257 (insn, operands);
   28333              : 
   28334              :         case 20:
   28335              :           if (!(
   28336              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28337              : ((16 == 64 || TARGET_AVX512VL
   28338              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28339              :    && ix86_pre_reload_split ()
   28340              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28341              :                     STRIP_UNARY (operands[4]))
   28342              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28343              :                        STRIP_UNARY (operands[4]))
   28344              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28345              :                        STRIP_UNARY (operands[3]))
   28346              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28347              :                        STRIP_UNARY (operands[3])))) && 
   28348              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28349              : ( 1)))
   28350              :             return NULL;
   28351              :           return gen_split_2284 (insn, operands);
   28352              : 
   28353              :         case 21:
   28354              :           if (!((
   28355              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28356              : ((64 == 64 || TARGET_AVX512VL
   28357              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28358              :    && ix86_pre_reload_split ()
   28359              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28360              :                     STRIP_UNARY (operands[4]))
   28361              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28362              :                        STRIP_UNARY (operands[4]))
   28363              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28364              :                        STRIP_UNARY (operands[3]))
   28365              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28366              :                        STRIP_UNARY (operands[3])))) && 
   28367              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28368              : (TARGET_AVX512F)) && 
   28369              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28370              : ( 1)))
   28371              :             return NULL;
   28372              :           return gen_split_2311 (insn, operands);
   28373              : 
   28374              :         case 22:
   28375              :           if (!((
   28376              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28377              : ((32 == 64 || TARGET_AVX512VL
   28378              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28379              :    && ix86_pre_reload_split ()
   28380              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28381              :                     STRIP_UNARY (operands[4]))
   28382              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28383              :                        STRIP_UNARY (operands[4]))
   28384              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28385              :                        STRIP_UNARY (operands[3]))
   28386              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28387              :                        STRIP_UNARY (operands[3])))) && 
   28388              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28389              : (TARGET_AVX)) && 
   28390              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28391              : ( 1)))
   28392              :             return NULL;
   28393              :           return gen_split_2338 (insn, operands);
   28394              : 
   28395              :         case 23:
   28396              :           if (!((
   28397              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28398              : ((16 == 64 || TARGET_AVX512VL
   28399              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28400              :    && ix86_pre_reload_split ()
   28401              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28402              :                     STRIP_UNARY (operands[4]))
   28403              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28404              :                        STRIP_UNARY (operands[4]))
   28405              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28406              :                        STRIP_UNARY (operands[3]))
   28407              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28408              :                        STRIP_UNARY (operands[3])))) && 
   28409              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28410              : (TARGET_SSE2)) && 
   28411              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28412              : ( 1)))
   28413              :             return NULL;
   28414              :           return gen_split_2365 (insn, operands);
   28415              : 
   28416              :         case 24:
   28417              :           if (!((
   28418              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28419              : ((64 == 64 || TARGET_AVX512VL
   28420              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28421              :    && ix86_pre_reload_split ()
   28422              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28423              :                     STRIP_UNARY (operands[4]))
   28424              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28425              :                        STRIP_UNARY (operands[4]))
   28426              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28427              :                        STRIP_UNARY (operands[3]))
   28428              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28429              :                        STRIP_UNARY (operands[3])))) && 
   28430              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28431              : (TARGET_AVX512F)) && 
   28432              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28433              : ( 1)))
   28434              :             return NULL;
   28435              :           return gen_split_2071 (insn, operands);
   28436              : 
   28437              :         case 25:
   28438              :           if (!((
   28439              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28440              : ((32 == 64 || TARGET_AVX512VL
   28441              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28442              :    && ix86_pre_reload_split ()
   28443              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28444              :                     STRIP_UNARY (operands[4]))
   28445              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28446              :                        STRIP_UNARY (operands[4]))
   28447              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28448              :                        STRIP_UNARY (operands[3]))
   28449              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28450              :                        STRIP_UNARY (operands[3])))) && 
   28451              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28452              : (TARGET_AVX)) && 
   28453              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28454              : ( 1)))
   28455              :             return NULL;
   28456              :           return gen_split_2098 (insn, operands);
   28457              : 
   28458              :         case 26:
   28459              :           if (!(
   28460              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28461              : ((16 == 64 || TARGET_AVX512VL
   28462              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28463              :    && ix86_pre_reload_split ()
   28464              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28465              :                     STRIP_UNARY (operands[4]))
   28466              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28467              :                        STRIP_UNARY (operands[4]))
   28468              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28469              :                        STRIP_UNARY (operands[3]))
   28470              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28471              :                        STRIP_UNARY (operands[3])))) && 
   28472              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28473              : ( 1)))
   28474              :             return NULL;
   28475              :           return gen_split_2125 (insn, operands);
   28476              : 
   28477              :         case 27:
   28478              :           if (!((
   28479              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28480              : ((64 == 64 || TARGET_AVX512VL
   28481              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28482              :    && ix86_pre_reload_split ()
   28483              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28484              :                     STRIP_UNARY (operands[4]))
   28485              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28486              :                        STRIP_UNARY (operands[4]))
   28487              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28488              :                        STRIP_UNARY (operands[3]))
   28489              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28490              :                        STRIP_UNARY (operands[3])))) && 
   28491              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28492              : (TARGET_AVX512F)) && 
   28493              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28494              : ( 1)))
   28495              :             return NULL;
   28496              :           return gen_split_2152 (insn, operands);
   28497              : 
   28498              :         case 28:
   28499              :           if (!((
   28500              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28501              : ((32 == 64 || TARGET_AVX512VL
   28502              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28503              :    && ix86_pre_reload_split ()
   28504              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28505              :                     STRIP_UNARY (operands[4]))
   28506              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28507              :                        STRIP_UNARY (operands[4]))
   28508              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28509              :                        STRIP_UNARY (operands[3]))
   28510              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28511              :                        STRIP_UNARY (operands[3])))) && 
   28512              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28513              : (TARGET_AVX)) && 
   28514              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28515              : ( 1)))
   28516              :             return NULL;
   28517              :           return gen_split_2179 (insn, operands);
   28518              : 
   28519              :         case 29:
   28520              :           if (!(
   28521              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28522              : ((16 == 64 || TARGET_AVX512VL
   28523              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28524              :    && ix86_pre_reload_split ()
   28525              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28526              :                     STRIP_UNARY (operands[4]))
   28527              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28528              :                        STRIP_UNARY (operands[4]))
   28529              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28530              :                        STRIP_UNARY (operands[3]))
   28531              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28532              :                        STRIP_UNARY (operands[3])))) && 
   28533              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28534              : ( 1)))
   28535              :             return NULL;
   28536              :           return gen_split_2206 (insn, operands);
   28537              : 
   28538              :         case 30:
   28539              :           if (!((
   28540              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28541              : ((64 == 64 || TARGET_AVX512VL
   28542              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28543              :    && ix86_pre_reload_split ()
   28544              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28545              :                     STRIP_UNARY (operands[4]))
   28546              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28547              :                        STRIP_UNARY (operands[4]))
   28548              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28549              :                        STRIP_UNARY (operands[3]))
   28550              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28551              :                        STRIP_UNARY (operands[3])))) && 
   28552              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28553              : (TARGET_AVX512F)) && 
   28554              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28555              : ( 1)))
   28556              :             return NULL;
   28557              :           return gen_split_2233 (insn, operands);
   28558              : 
   28559              :         case 31:
   28560              :           if (!((
   28561              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28562              : ((32 == 64 || TARGET_AVX512VL
   28563              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28564              :    && ix86_pre_reload_split ()
   28565              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28566              :                     STRIP_UNARY (operands[4]))
   28567              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28568              :                        STRIP_UNARY (operands[4]))
   28569              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28570              :                        STRIP_UNARY (operands[3]))
   28571              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28572              :                        STRIP_UNARY (operands[3])))) && 
   28573              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28574              : (TARGET_AVX)) && 
   28575              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28576              : ( 1)))
   28577              :             return NULL;
   28578              :           return gen_split_2260 (insn, operands);
   28579              : 
   28580              :         case 32:
   28581              :           if (!(
   28582              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28583              : ((16 == 64 || TARGET_AVX512VL
   28584              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28585              :    && ix86_pre_reload_split ()
   28586              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28587              :                     STRIP_UNARY (operands[4]))
   28588              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28589              :                        STRIP_UNARY (operands[4]))
   28590              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28591              :                        STRIP_UNARY (operands[3]))
   28592              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28593              :                        STRIP_UNARY (operands[3])))) && 
   28594              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28595              : ( 1)))
   28596              :             return NULL;
   28597              :           return gen_split_2287 (insn, operands);
   28598              : 
   28599              :         case 33:
   28600              :           if (!((
   28601              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28602              : ((64 == 64 || TARGET_AVX512VL
   28603              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28604              :    && ix86_pre_reload_split ()
   28605              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28606              :                     STRIP_UNARY (operands[4]))
   28607              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28608              :                        STRIP_UNARY (operands[4]))
   28609              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28610              :                        STRIP_UNARY (operands[3]))
   28611              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28612              :                        STRIP_UNARY (operands[3])))) && 
   28613              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28614              : (TARGET_AVX512F)) && 
   28615              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28616              : ( 1)))
   28617              :             return NULL;
   28618              :           return gen_split_2314 (insn, operands);
   28619              : 
   28620              :         case 34:
   28621              :           if (!((
   28622              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28623              : ((32 == 64 || TARGET_AVX512VL
   28624              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28625              :    && ix86_pre_reload_split ()
   28626              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28627              :                     STRIP_UNARY (operands[4]))
   28628              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28629              :                        STRIP_UNARY (operands[4]))
   28630              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28631              :                        STRIP_UNARY (operands[3]))
   28632              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28633              :                        STRIP_UNARY (operands[3])))) && 
   28634              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28635              : (TARGET_AVX)) && 
   28636              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28637              : ( 1)))
   28638              :             return NULL;
   28639              :           return gen_split_2341 (insn, operands);
   28640              : 
   28641              :         case 35:
   28642              :           if (!((
   28643              : #line 14178 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28644              : ((16 == 64 || TARGET_AVX512VL
   28645              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28646              :    && ix86_pre_reload_split ()
   28647              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28648              :                     STRIP_UNARY (operands[4]))
   28649              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28650              :                        STRIP_UNARY (operands[4]))
   28651              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28652              :                        STRIP_UNARY (operands[3]))
   28653              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28654              :                        STRIP_UNARY (operands[3])))) && 
   28655              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28656              : (TARGET_SSE2)) && 
   28657              : #line 14190 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28658              : ( 1)))
   28659              :             return NULL;
   28660              :           return gen_split_2368 (insn, operands);
   28661              : 
   28662              :         case 36:
   28663              :           if (!((
   28664              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28665              : ((64 == 64 || TARGET_AVX512VL
   28666              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28667              :    && ix86_pre_reload_split ()) && 
   28668              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28669              : (TARGET_AVX512F)) && 
   28670              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28671              : ( 1)))
   28672              :             return NULL;
   28673              :           return gen_split_3145 (insn, operands);
   28674              : 
   28675              :         case 37:
   28676              :           if (!((
   28677              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28678              : ((32 == 64 || TARGET_AVX512VL
   28679              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28680              :    && ix86_pre_reload_split ()) && 
   28681              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28682              : (TARGET_AVX)) && 
   28683              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28684              : ( 1)))
   28685              :             return NULL;
   28686              :           return gen_split_3154 (insn, operands);
   28687              : 
   28688              :         case 38:
   28689              :           if (!(
   28690              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28691              : ((16 == 64 || TARGET_AVX512VL
   28692              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28693              :    && ix86_pre_reload_split ()) && 
   28694              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28695              : ( 1)))
   28696              :             return NULL;
   28697              :           return gen_split_3163 (insn, operands);
   28698              : 
   28699              :         case 39:
   28700              :           if (!((
   28701              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28702              : ((64 == 64 || TARGET_AVX512VL
   28703              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28704              :    && ix86_pre_reload_split ()) && 
   28705              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28706              : (TARGET_AVX512F)) && 
   28707              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28708              : ( 1)))
   28709              :             return NULL;
   28710              :           return gen_split_3172 (insn, operands);
   28711              : 
   28712              :         case 40:
   28713              :           if (!((
   28714              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28715              : ((32 == 64 || TARGET_AVX512VL
   28716              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28717              :    && ix86_pre_reload_split ()) && 
   28718              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28719              : (TARGET_AVX)) && 
   28720              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28721              : ( 1)))
   28722              :             return NULL;
   28723              :           return gen_split_3181 (insn, operands);
   28724              : 
   28725              :         case 41:
   28726              :           if (!(
   28727              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28728              : ((16 == 64 || TARGET_AVX512VL
   28729              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28730              :    && ix86_pre_reload_split ()) && 
   28731              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28732              : ( 1)))
   28733              :             return NULL;
   28734              :           return gen_split_3190 (insn, operands);
   28735              : 
   28736              :         case 42:
   28737              :           if (!((
   28738              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28739              : ((64 == 64 || TARGET_AVX512VL
   28740              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28741              :    && ix86_pre_reload_split ()) && 
   28742              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28743              : (TARGET_AVX512F)) && 
   28744              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28745              : ( 1)))
   28746              :             return NULL;
   28747              :           return gen_split_3199 (insn, operands);
   28748              : 
   28749              :         case 43:
   28750              :           if (!((
   28751              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28752              : ((32 == 64 || TARGET_AVX512VL
   28753              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28754              :    && ix86_pre_reload_split ()) && 
   28755              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28756              : (TARGET_AVX)) && 
   28757              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28758              : ( 1)))
   28759              :             return NULL;
   28760              :           return gen_split_3208 (insn, operands);
   28761              : 
   28762              :         case 44:
   28763              :           if (!(
   28764              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28765              : ((16 == 64 || TARGET_AVX512VL
   28766              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28767              :    && ix86_pre_reload_split ()) && 
   28768              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28769              : ( 1)))
   28770              :             return NULL;
   28771              :           return gen_split_3217 (insn, operands);
   28772              : 
   28773              :         case 45:
   28774              :           if (!((
   28775              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28776              : ((64 == 64 || TARGET_AVX512VL
   28777              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28778              :    && ix86_pre_reload_split ()) && 
   28779              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28780              : (TARGET_AVX512F)) && 
   28781              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28782              : ( 1)))
   28783              :             return NULL;
   28784              :           return gen_split_3226 (insn, operands);
   28785              : 
   28786              :         case 46:
   28787              :           if (!((
   28788              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28789              : ((32 == 64 || TARGET_AVX512VL
   28790              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28791              :    && ix86_pre_reload_split ()) && 
   28792              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28793              : (TARGET_AVX)) && 
   28794              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28795              : ( 1)))
   28796              :             return NULL;
   28797              :           return gen_split_3235 (insn, operands);
   28798              : 
   28799              :         case 47:
   28800              :           if (!((
   28801              : #line 14347 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28802              : ((16 == 64 || TARGET_AVX512VL
   28803              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28804              :    && ix86_pre_reload_split ()) && 
   28805              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28806              : (TARGET_SSE2)) && 
   28807              : #line 14351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28808              : ( 1)))
   28809              :             return NULL;
   28810              :           return gen_split_3244 (insn, operands);
   28811              : 
   28812              :         default:
   28813              :           return NULL;
   28814              :         }
   28815              : 
   28816              :     case AND:
   28817              :       switch (pattern544 (x2))
   28818              :         {
   28819              :         case 0:
   28820              :           if (!((
   28821              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28822              : ((64 == 64 || TARGET_AVX512VL
   28823              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28824              :    && ix86_pre_reload_split ()
   28825              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28826              :                     STRIP_UNARY (operands[4]))
   28827              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28828              :                        STRIP_UNARY (operands[4]))
   28829              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28830              :                        STRIP_UNARY (operands[3]))
   28831              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28832              :                        STRIP_UNARY (operands[3])))) && 
   28833              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28834              : (TARGET_AVX512F)) && 
   28835              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28836              : ( 1)))
   28837              :             return NULL;
   28838              :           return gen_split_2713 (insn, operands);
   28839              : 
   28840              :         case 1:
   28841              :           if (!((
   28842              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28843              : ((32 == 64 || TARGET_AVX512VL
   28844              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28845              :    && ix86_pre_reload_split ()
   28846              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28847              :                     STRIP_UNARY (operands[4]))
   28848              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28849              :                        STRIP_UNARY (operands[4]))
   28850              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28851              :                        STRIP_UNARY (operands[3]))
   28852              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28853              :                        STRIP_UNARY (operands[3])))) && 
   28854              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28855              : (TARGET_AVX)) && 
   28856              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28857              : ( 1)))
   28858              :             return NULL;
   28859              :           return gen_split_2740 (insn, operands);
   28860              : 
   28861              :         case 2:
   28862              :           if (!(
   28863              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28864              : ((16 == 64 || TARGET_AVX512VL
   28865              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28866              :    && ix86_pre_reload_split ()
   28867              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28868              :                     STRIP_UNARY (operands[4]))
   28869              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28870              :                        STRIP_UNARY (operands[4]))
   28871              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28872              :                        STRIP_UNARY (operands[3]))
   28873              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28874              :                        STRIP_UNARY (operands[3])))) && 
   28875              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28876              : ( 1)))
   28877              :             return NULL;
   28878              :           return gen_split_2767 (insn, operands);
   28879              : 
   28880              :         case 3:
   28881              :           if (!((
   28882              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28883              : ((64 == 64 || TARGET_AVX512VL
   28884              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28885              :    && ix86_pre_reload_split ()
   28886              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28887              :                     STRIP_UNARY (operands[4]))
   28888              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28889              :                        STRIP_UNARY (operands[4]))
   28890              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28891              :                        STRIP_UNARY (operands[3]))
   28892              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28893              :                        STRIP_UNARY (operands[3])))) && 
   28894              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28895              : (TARGET_AVX512F)) && 
   28896              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28897              : ( 1)))
   28898              :             return NULL;
   28899              :           return gen_split_2794 (insn, operands);
   28900              : 
   28901              :         case 4:
   28902              :           if (!((
   28903              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28904              : ((32 == 64 || TARGET_AVX512VL
   28905              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28906              :    && ix86_pre_reload_split ()
   28907              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28908              :                     STRIP_UNARY (operands[4]))
   28909              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28910              :                        STRIP_UNARY (operands[4]))
   28911              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28912              :                        STRIP_UNARY (operands[3]))
   28913              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28914              :                        STRIP_UNARY (operands[3])))) && 
   28915              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28916              : (TARGET_AVX)) && 
   28917              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28918              : ( 1)))
   28919              :             return NULL;
   28920              :           return gen_split_2821 (insn, operands);
   28921              : 
   28922              :         case 5:
   28923              :           if (!(
   28924              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28925              : ((16 == 64 || TARGET_AVX512VL
   28926              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28927              :    && ix86_pre_reload_split ()
   28928              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28929              :                     STRIP_UNARY (operands[4]))
   28930              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28931              :                        STRIP_UNARY (operands[4]))
   28932              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28933              :                        STRIP_UNARY (operands[3]))
   28934              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28935              :                        STRIP_UNARY (operands[3])))) && 
   28936              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28937              : ( 1)))
   28938              :             return NULL;
   28939              :           return gen_split_2848 (insn, operands);
   28940              : 
   28941              :         case 6:
   28942              :           if (!((
   28943              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28944              : ((64 == 64 || TARGET_AVX512VL
   28945              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28946              :    && ix86_pre_reload_split ()
   28947              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28948              :                     STRIP_UNARY (operands[4]))
   28949              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28950              :                        STRIP_UNARY (operands[4]))
   28951              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28952              :                        STRIP_UNARY (operands[3]))
   28953              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28954              :                        STRIP_UNARY (operands[3])))) && 
   28955              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28956              : (TARGET_AVX512F)) && 
   28957              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28958              : ( 1)))
   28959              :             return NULL;
   28960              :           return gen_split_2875 (insn, operands);
   28961              : 
   28962              :         case 7:
   28963              :           if (!((
   28964              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28965              : ((32 == 64 || TARGET_AVX512VL
   28966              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28967              :    && ix86_pre_reload_split ()
   28968              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28969              :                     STRIP_UNARY (operands[4]))
   28970              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28971              :                        STRIP_UNARY (operands[4]))
   28972              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28973              :                        STRIP_UNARY (operands[3]))
   28974              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28975              :                        STRIP_UNARY (operands[3])))) && 
   28976              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28977              : (TARGET_AVX)) && 
   28978              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28979              : ( 1)))
   28980              :             return NULL;
   28981              :           return gen_split_2902 (insn, operands);
   28982              : 
   28983              :         case 8:
   28984              :           if (!(
   28985              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28986              : ((16 == 64 || TARGET_AVX512VL
   28987              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   28988              :    && ix86_pre_reload_split ()
   28989              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   28990              :                     STRIP_UNARY (operands[4]))
   28991              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28992              :                        STRIP_UNARY (operands[4]))
   28993              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   28994              :                        STRIP_UNARY (operands[3]))
   28995              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   28996              :                        STRIP_UNARY (operands[3])))) && 
   28997              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   28998              : ( 1)))
   28999              :             return NULL;
   29000              :           return gen_split_2929 (insn, operands);
   29001              : 
   29002              :         case 9:
   29003              :           if (!((
   29004              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29005              : ((64 == 64 || TARGET_AVX512VL
   29006              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29007              :    && ix86_pre_reload_split ()
   29008              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29009              :                     STRIP_UNARY (operands[4]))
   29010              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29011              :                        STRIP_UNARY (operands[4]))
   29012              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29013              :                        STRIP_UNARY (operands[3]))
   29014              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29015              :                        STRIP_UNARY (operands[3])))) && 
   29016              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29017              : (TARGET_AVX512F)) && 
   29018              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29019              : ( 1)))
   29020              :             return NULL;
   29021              :           return gen_split_2956 (insn, operands);
   29022              : 
   29023              :         case 10:
   29024              :           if (!((
   29025              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29026              : ((32 == 64 || TARGET_AVX512VL
   29027              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29028              :    && ix86_pre_reload_split ()
   29029              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29030              :                     STRIP_UNARY (operands[4]))
   29031              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29032              :                        STRIP_UNARY (operands[4]))
   29033              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29034              :                        STRIP_UNARY (operands[3]))
   29035              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29036              :                        STRIP_UNARY (operands[3])))) && 
   29037              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29038              : (TARGET_AVX)) && 
   29039              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29040              : ( 1)))
   29041              :             return NULL;
   29042              :           return gen_split_2983 (insn, operands);
   29043              : 
   29044              :         case 11:
   29045              :           if (!((
   29046              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29047              : ((16 == 64 || TARGET_AVX512VL
   29048              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29049              :    && ix86_pre_reload_split ()
   29050              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29051              :                     STRIP_UNARY (operands[4]))
   29052              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29053              :                        STRIP_UNARY (operands[4]))
   29054              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29055              :                        STRIP_UNARY (operands[3]))
   29056              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29057              :                        STRIP_UNARY (operands[3])))) && 
   29058              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29059              : (TARGET_SSE2)) && 
   29060              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29061              : ( 1)))
   29062              :             return NULL;
   29063              :           return gen_split_3010 (insn, operands);
   29064              : 
   29065              :         default:
   29066              :           return NULL;
   29067              :         }
   29068              : 
   29069              :     case IOR:
   29070              :       switch (pattern544 (x2))
   29071              :         {
   29072              :         case 0:
   29073              :           if (!((
   29074              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29075              : ((64 == 64 || TARGET_AVX512VL
   29076              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29077              :    && ix86_pre_reload_split ()
   29078              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29079              :                     STRIP_UNARY (operands[4]))
   29080              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29081              :                        STRIP_UNARY (operands[4]))
   29082              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29083              :                        STRIP_UNARY (operands[3]))
   29084              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29085              :                        STRIP_UNARY (operands[3])))) && 
   29086              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29087              : (TARGET_AVX512F)) && 
   29088              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29089              : ( 1)))
   29090              :             return NULL;
   29091              :           return gen_split_2716 (insn, operands);
   29092              : 
   29093              :         case 1:
   29094              :           if (!((
   29095              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29096              : ((32 == 64 || TARGET_AVX512VL
   29097              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29098              :    && ix86_pre_reload_split ()
   29099              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29100              :                     STRIP_UNARY (operands[4]))
   29101              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29102              :                        STRIP_UNARY (operands[4]))
   29103              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29104              :                        STRIP_UNARY (operands[3]))
   29105              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29106              :                        STRIP_UNARY (operands[3])))) && 
   29107              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29108              : (TARGET_AVX)) && 
   29109              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29110              : ( 1)))
   29111              :             return NULL;
   29112              :           return gen_split_2743 (insn, operands);
   29113              : 
   29114              :         case 2:
   29115              :           if (!(
   29116              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29117              : ((16 == 64 || TARGET_AVX512VL
   29118              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29119              :    && ix86_pre_reload_split ()
   29120              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29121              :                     STRIP_UNARY (operands[4]))
   29122              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29123              :                        STRIP_UNARY (operands[4]))
   29124              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29125              :                        STRIP_UNARY (operands[3]))
   29126              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29127              :                        STRIP_UNARY (operands[3])))) && 
   29128              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29129              : ( 1)))
   29130              :             return NULL;
   29131              :           return gen_split_2770 (insn, operands);
   29132              : 
   29133              :         case 3:
   29134              :           if (!((
   29135              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29136              : ((64 == 64 || TARGET_AVX512VL
   29137              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29138              :    && ix86_pre_reload_split ()
   29139              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29140              :                     STRIP_UNARY (operands[4]))
   29141              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29142              :                        STRIP_UNARY (operands[4]))
   29143              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29144              :                        STRIP_UNARY (operands[3]))
   29145              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29146              :                        STRIP_UNARY (operands[3])))) && 
   29147              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29148              : (TARGET_AVX512F)) && 
   29149              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29150              : ( 1)))
   29151              :             return NULL;
   29152              :           return gen_split_2797 (insn, operands);
   29153              : 
   29154              :         case 4:
   29155              :           if (!((
   29156              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29157              : ((32 == 64 || TARGET_AVX512VL
   29158              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29159              :    && ix86_pre_reload_split ()
   29160              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29161              :                     STRIP_UNARY (operands[4]))
   29162              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29163              :                        STRIP_UNARY (operands[4]))
   29164              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29165              :                        STRIP_UNARY (operands[3]))
   29166              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29167              :                        STRIP_UNARY (operands[3])))) && 
   29168              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29169              : (TARGET_AVX)) && 
   29170              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29171              : ( 1)))
   29172              :             return NULL;
   29173              :           return gen_split_2824 (insn, operands);
   29174              : 
   29175              :         case 5:
   29176              :           if (!(
   29177              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29178              : ((16 == 64 || TARGET_AVX512VL
   29179              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29180              :    && ix86_pre_reload_split ()
   29181              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29182              :                     STRIP_UNARY (operands[4]))
   29183              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29184              :                        STRIP_UNARY (operands[4]))
   29185              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29186              :                        STRIP_UNARY (operands[3]))
   29187              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29188              :                        STRIP_UNARY (operands[3])))) && 
   29189              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29190              : ( 1)))
   29191              :             return NULL;
   29192              :           return gen_split_2851 (insn, operands);
   29193              : 
   29194              :         case 6:
   29195              :           if (!((
   29196              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29197              : ((64 == 64 || TARGET_AVX512VL
   29198              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29199              :    && ix86_pre_reload_split ()
   29200              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29201              :                     STRIP_UNARY (operands[4]))
   29202              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29203              :                        STRIP_UNARY (operands[4]))
   29204              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29205              :                        STRIP_UNARY (operands[3]))
   29206              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29207              :                        STRIP_UNARY (operands[3])))) && 
   29208              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29209              : (TARGET_AVX512F)) && 
   29210              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29211              : ( 1)))
   29212              :             return NULL;
   29213              :           return gen_split_2878 (insn, operands);
   29214              : 
   29215              :         case 7:
   29216              :           if (!((
   29217              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29218              : ((32 == 64 || TARGET_AVX512VL
   29219              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29220              :    && ix86_pre_reload_split ()
   29221              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29222              :                     STRIP_UNARY (operands[4]))
   29223              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29224              :                        STRIP_UNARY (operands[4]))
   29225              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29226              :                        STRIP_UNARY (operands[3]))
   29227              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29228              :                        STRIP_UNARY (operands[3])))) && 
   29229              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29230              : (TARGET_AVX)) && 
   29231              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29232              : ( 1)))
   29233              :             return NULL;
   29234              :           return gen_split_2905 (insn, operands);
   29235              : 
   29236              :         case 8:
   29237              :           if (!(
   29238              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29239              : ((16 == 64 || TARGET_AVX512VL
   29240              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29241              :    && ix86_pre_reload_split ()
   29242              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29243              :                     STRIP_UNARY (operands[4]))
   29244              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29245              :                        STRIP_UNARY (operands[4]))
   29246              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29247              :                        STRIP_UNARY (operands[3]))
   29248              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29249              :                        STRIP_UNARY (operands[3])))) && 
   29250              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29251              : ( 1)))
   29252              :             return NULL;
   29253              :           return gen_split_2932 (insn, operands);
   29254              : 
   29255              :         case 9:
   29256              :           if (!((
   29257              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29258              : ((64 == 64 || TARGET_AVX512VL
   29259              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29260              :    && ix86_pre_reload_split ()
   29261              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29262              :                     STRIP_UNARY (operands[4]))
   29263              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29264              :                        STRIP_UNARY (operands[4]))
   29265              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29266              :                        STRIP_UNARY (operands[3]))
   29267              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29268              :                        STRIP_UNARY (operands[3])))) && 
   29269              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29270              : (TARGET_AVX512F)) && 
   29271              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29272              : ( 1)))
   29273              :             return NULL;
   29274              :           return gen_split_2959 (insn, operands);
   29275              : 
   29276              :         case 10:
   29277              :           if (!((
   29278              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29279              : ((32 == 64 || TARGET_AVX512VL
   29280              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29281              :    && ix86_pre_reload_split ()
   29282              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29283              :                     STRIP_UNARY (operands[4]))
   29284              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29285              :                        STRIP_UNARY (operands[4]))
   29286              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29287              :                        STRIP_UNARY (operands[3]))
   29288              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29289              :                        STRIP_UNARY (operands[3])))) && 
   29290              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29291              : (TARGET_AVX)) && 
   29292              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29293              : ( 1)))
   29294              :             return NULL;
   29295              :           return gen_split_2986 (insn, operands);
   29296              : 
   29297              :         case 11:
   29298              :           if (!((
   29299              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29300              : ((16 == 64 || TARGET_AVX512VL
   29301              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29302              :    && ix86_pre_reload_split ()
   29303              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29304              :                     STRIP_UNARY (operands[4]))
   29305              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29306              :                        STRIP_UNARY (operands[4]))
   29307              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29308              :                        STRIP_UNARY (operands[3]))
   29309              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29310              :                        STRIP_UNARY (operands[3])))) && 
   29311              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29312              : (TARGET_SSE2)) && 
   29313              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29314              : ( 1)))
   29315              :             return NULL;
   29316              :           return gen_split_3013 (insn, operands);
   29317              : 
   29318              :         default:
   29319              :           return NULL;
   29320              :         }
   29321              : 
   29322              :     case XOR:
   29323              :       x5 = XEXP (x4, 0);
   29324              :       operands[1] = x5;
   29325              :       x6 = XEXP (x4, 1);
   29326              :       operands[2] = x6;
   29327              :       x7 = XEXP (x3, 1);
   29328              :       operands[3] = x7;
   29329              :       switch (GET_MODE (operands[0]))
   29330              :         {
   29331              :         case E_V32HFmode:
   29332              :           if (pattern1199 (x2, 
   29333              : E_V32HFmode) != 0
   29334              :               || !((
   29335              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29336              : ((64 == 64 || TARGET_AVX512VL
   29337              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29338              :    && ix86_pre_reload_split ()
   29339              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29340              :                     STRIP_UNARY (operands[4]))
   29341              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29342              :                        STRIP_UNARY (operands[4]))
   29343              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29344              :                        STRIP_UNARY (operands[3]))
   29345              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29346              :                        STRIP_UNARY (operands[3])))) && 
   29347              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29348              : (TARGET_AVX512F)) && 
   29349              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29350              : ( 1)))
   29351              :             return NULL;
   29352              :           return gen_split_2719 (insn, operands);
   29353              : 
   29354              :         case E_V16HFmode:
   29355              :           if (pattern1010 (x2, 
   29356              : E_V16HFmode) != 0)
   29357              :             return NULL;
   29358              :           if (regmem_or_bitnot_regmem_operand (operands[1], E_V16HFmode)
   29359              :               && regmem_or_bitnot_regmem_operand (operands[2], E_V16HFmode)
   29360              :               && regmem_or_bitnot_regmem_operand (operands[3], E_V16HFmode))
   29361              :             {
   29362              :               x8 = XEXP (x2, 1);
   29363              :               operands[4] = x8;
   29364              :               if (regmem_or_bitnot_regmem_operand (operands[4], E_V16HFmode)
   29365              :                   && ((
   29366              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29367              : ((32 == 64 || TARGET_AVX512VL
   29368              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29369              :    && ix86_pre_reload_split ()
   29370              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29371              :                     STRIP_UNARY (operands[4]))
   29372              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29373              :                        STRIP_UNARY (operands[4]))
   29374              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29375              :                        STRIP_UNARY (operands[3]))
   29376              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29377              :                        STRIP_UNARY (operands[3])))) && 
   29378              : #line 349 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29379              : (TARGET_AVX)) && 
   29380              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29381              : ( 1)))
   29382              :                 return gen_split_2746 (insn, operands);
   29383              :             }
   29384              :           if (!register_operand (operands[1], E_V16HFmode)
   29385              :               || !register_operand (operands[2], E_V16HFmode)
   29386              :               || !nonimmediate_operand (operands[3], E_V16HFmode))
   29387              :             return NULL;
   29388              :           x8 = XEXP (x2, 1);
   29389              :           if (rtx_equal_p (x8, operands[1])
   29390              :               && 
   29391              : #line 27073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29392              : (TARGET_XOP))
   29393              :             return gen_split_3825 (insn, operands);
   29394              :           if (!rtx_equal_p (x8, operands[2])
   29395              :               || !
   29396              : #line 27085 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29397              : (TARGET_XOP))
   29398              :             return NULL;
   29399              :           return gen_split_3841 (insn, operands);
   29400              : 
   29401              :         case E_V8HFmode:
   29402              :           if (pattern1010 (x2, 
   29403              : E_V8HFmode) != 0)
   29404              :             return NULL;
   29405              :           if (regmem_or_bitnot_regmem_operand (operands[1], E_V8HFmode)
   29406              :               && regmem_or_bitnot_regmem_operand (operands[2], E_V8HFmode)
   29407              :               && regmem_or_bitnot_regmem_operand (operands[3], E_V8HFmode))
   29408              :             {
   29409              :               x8 = XEXP (x2, 1);
   29410              :               operands[4] = x8;
   29411              :               if (regmem_or_bitnot_regmem_operand (operands[4], E_V8HFmode)
   29412              :                   && (
   29413              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29414              : ((16 == 64 || TARGET_AVX512VL
   29415              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29416              :    && ix86_pre_reload_split ()
   29417              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29418              :                     STRIP_UNARY (operands[4]))
   29419              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29420              :                        STRIP_UNARY (operands[4]))
   29421              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29422              :                        STRIP_UNARY (operands[3]))
   29423              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29424              :                        STRIP_UNARY (operands[3])))) && 
   29425              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29426              : ( 1)))
   29427              :                 return gen_split_2773 (insn, operands);
   29428              :             }
   29429              :           if (!register_operand (operands[1], E_V8HFmode)
   29430              :               || !register_operand (operands[2], E_V8HFmode)
   29431              :               || !nonimmediate_operand (operands[3], E_V8HFmode))
   29432              :             return NULL;
   29433              :           x8 = XEXP (x2, 1);
   29434              :           if (rtx_equal_p (x8, operands[1])
   29435              :               && 
   29436              : #line 27073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29437              : (TARGET_XOP))
   29438              :             return gen_split_3826 (insn, operands);
   29439              :           if (!rtx_equal_p (x8, operands[2])
   29440              :               || !
   29441              : #line 27085 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29442              : (TARGET_XOP))
   29443              :             return NULL;
   29444              :           return gen_split_3842 (insn, operands);
   29445              : 
   29446              :         case E_V32BFmode:
   29447              :           if (pattern1199 (x2, 
   29448              : E_V32BFmode) != 0
   29449              :               || !((
   29450              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29451              : ((64 == 64 || TARGET_AVX512VL
   29452              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29453              :    && ix86_pre_reload_split ()
   29454              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29455              :                     STRIP_UNARY (operands[4]))
   29456              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29457              :                        STRIP_UNARY (operands[4]))
   29458              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29459              :                        STRIP_UNARY (operands[3]))
   29460              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29461              :                        STRIP_UNARY (operands[3])))) && 
   29462              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29463              : (TARGET_AVX512F)) && 
   29464              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29465              : ( 1)))
   29466              :             return NULL;
   29467              :           return gen_split_2800 (insn, operands);
   29468              : 
   29469              :         case E_V16BFmode:
   29470              :           if (pattern1199 (x2, 
   29471              : E_V16BFmode) != 0
   29472              :               || !((
   29473              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29474              : ((32 == 64 || TARGET_AVX512VL
   29475              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29476              :    && ix86_pre_reload_split ()
   29477              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29478              :                     STRIP_UNARY (operands[4]))
   29479              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29480              :                        STRIP_UNARY (operands[4]))
   29481              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29482              :                        STRIP_UNARY (operands[3]))
   29483              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29484              :                        STRIP_UNARY (operands[3])))) && 
   29485              : #line 350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29486              : (TARGET_AVX)) && 
   29487              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29488              : ( 1)))
   29489              :             return NULL;
   29490              :           return gen_split_2827 (insn, operands);
   29491              : 
   29492              :         case E_V8BFmode:
   29493              :           if (pattern1199 (x2, 
   29494              : E_V8BFmode) != 0
   29495              :               || !(
   29496              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29497              : ((16 == 64 || TARGET_AVX512VL
   29498              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29499              :    && ix86_pre_reload_split ()
   29500              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29501              :                     STRIP_UNARY (operands[4]))
   29502              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29503              :                        STRIP_UNARY (operands[4]))
   29504              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29505              :                        STRIP_UNARY (operands[3]))
   29506              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29507              :                        STRIP_UNARY (operands[3])))) && 
   29508              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29509              : ( 1)))
   29510              :             return NULL;
   29511              :           return gen_split_2854 (insn, operands);
   29512              : 
   29513              :         case E_V16SFmode:
   29514              :           if (pattern1199 (x2, 
   29515              : E_V16SFmode) != 0
   29516              :               || !((
   29517              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29518              : ((64 == 64 || TARGET_AVX512VL
   29519              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29520              :    && ix86_pre_reload_split ()
   29521              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29522              :                     STRIP_UNARY (operands[4]))
   29523              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29524              :                        STRIP_UNARY (operands[4]))
   29525              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29526              :                        STRIP_UNARY (operands[3]))
   29527              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29528              :                        STRIP_UNARY (operands[3])))) && 
   29529              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29530              : (TARGET_AVX512F)) && 
   29531              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29532              : ( 1)))
   29533              :             return NULL;
   29534              :           return gen_split_2881 (insn, operands);
   29535              : 
   29536              :         case E_V8SFmode:
   29537              :           if (pattern1010 (x2, 
   29538              : E_V8SFmode) != 0)
   29539              :             return NULL;
   29540              :           if (regmem_or_bitnot_regmem_operand (operands[1], E_V8SFmode)
   29541              :               && regmem_or_bitnot_regmem_operand (operands[2], E_V8SFmode)
   29542              :               && regmem_or_bitnot_regmem_operand (operands[3], E_V8SFmode))
   29543              :             {
   29544              :               x8 = XEXP (x2, 1);
   29545              :               operands[4] = x8;
   29546              :               if (regmem_or_bitnot_regmem_operand (operands[4], E_V8SFmode)
   29547              :                   && ((
   29548              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29549              : ((32 == 64 || TARGET_AVX512VL
   29550              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29551              :    && ix86_pre_reload_split ()
   29552              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29553              :                     STRIP_UNARY (operands[4]))
   29554              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29555              :                        STRIP_UNARY (operands[4]))
   29556              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29557              :                        STRIP_UNARY (operands[3]))
   29558              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29559              :                        STRIP_UNARY (operands[3])))) && 
   29560              : #line 351 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29561              : (TARGET_AVX)) && 
   29562              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29563              : ( 1)))
   29564              :                 return gen_split_2908 (insn, operands);
   29565              :             }
   29566              :           if (!register_operand (operands[1], E_V8SFmode)
   29567              :               || !register_operand (operands[2], E_V8SFmode)
   29568              :               || !nonimmediate_operand (operands[3], E_V8SFmode))
   29569              :             return NULL;
   29570              :           x8 = XEXP (x2, 1);
   29571              :           if (rtx_equal_p (x8, operands[1])
   29572              :               && 
   29573              : #line 27073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29574              : (TARGET_XOP))
   29575              :             return gen_split_3827 (insn, operands);
   29576              :           if (!rtx_equal_p (x8, operands[2])
   29577              :               || !
   29578              : #line 27085 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29579              : (TARGET_XOP))
   29580              :             return NULL;
   29581              :           return gen_split_3843 (insn, operands);
   29582              : 
   29583              :         case E_V4SFmode:
   29584              :           if (pattern1010 (x2, 
   29585              : E_V4SFmode) != 0)
   29586              :             return NULL;
   29587              :           if (regmem_or_bitnot_regmem_operand (operands[1], E_V4SFmode)
   29588              :               && regmem_or_bitnot_regmem_operand (operands[2], E_V4SFmode)
   29589              :               && regmem_or_bitnot_regmem_operand (operands[3], E_V4SFmode))
   29590              :             {
   29591              :               x8 = XEXP (x2, 1);
   29592              :               operands[4] = x8;
   29593              :               if (regmem_or_bitnot_regmem_operand (operands[4], E_V4SFmode)
   29594              :                   && (
   29595              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29596              : ((16 == 64 || TARGET_AVX512VL
   29597              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29598              :    && ix86_pre_reload_split ()
   29599              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29600              :                     STRIP_UNARY (operands[4]))
   29601              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29602              :                        STRIP_UNARY (operands[4]))
   29603              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29604              :                        STRIP_UNARY (operands[3]))
   29605              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29606              :                        STRIP_UNARY (operands[3])))) && 
   29607              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29608              : ( 1)))
   29609              :                 return gen_split_2935 (insn, operands);
   29610              :             }
   29611              :           if (!register_operand (operands[1], E_V4SFmode)
   29612              :               || !register_operand (operands[2], E_V4SFmode)
   29613              :               || !nonimmediate_operand (operands[3], E_V4SFmode))
   29614              :             return NULL;
   29615              :           x8 = XEXP (x2, 1);
   29616              :           if (rtx_equal_p (x8, operands[1])
   29617              :               && 
   29618              : #line 27073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29619              : (TARGET_XOP))
   29620              :             return gen_split_3828 (insn, operands);
   29621              :           if (!rtx_equal_p (x8, operands[2])
   29622              :               || !
   29623              : #line 27085 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29624              : (TARGET_XOP))
   29625              :             return NULL;
   29626              :           return gen_split_3844 (insn, operands);
   29627              : 
   29628              :         case E_V8DFmode:
   29629              :           if (pattern1199 (x2, 
   29630              : E_V8DFmode) != 0
   29631              :               || !((
   29632              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29633              : ((64 == 64 || TARGET_AVX512VL
   29634              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29635              :    && ix86_pre_reload_split ()
   29636              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29637              :                     STRIP_UNARY (operands[4]))
   29638              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29639              :                        STRIP_UNARY (operands[4]))
   29640              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29641              :                        STRIP_UNARY (operands[3]))
   29642              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29643              :                        STRIP_UNARY (operands[3])))) && 
   29644              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29645              : (TARGET_AVX512F)) && 
   29646              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29647              : ( 1)))
   29648              :             return NULL;
   29649              :           return gen_split_2962 (insn, operands);
   29650              : 
   29651              :         case E_V4DFmode:
   29652              :           if (pattern1010 (x2, 
   29653              : E_V4DFmode) != 0)
   29654              :             return NULL;
   29655              :           if (regmem_or_bitnot_regmem_operand (operands[1], E_V4DFmode)
   29656              :               && regmem_or_bitnot_regmem_operand (operands[2], E_V4DFmode)
   29657              :               && regmem_or_bitnot_regmem_operand (operands[3], E_V4DFmode))
   29658              :             {
   29659              :               x8 = XEXP (x2, 1);
   29660              :               operands[4] = x8;
   29661              :               if (regmem_or_bitnot_regmem_operand (operands[4], E_V4DFmode)
   29662              :                   && ((
   29663              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29664              : ((32 == 64 || TARGET_AVX512VL
   29665              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29666              :    && ix86_pre_reload_split ()
   29667              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29668              :                     STRIP_UNARY (operands[4]))
   29669              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29670              :                        STRIP_UNARY (operands[4]))
   29671              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29672              :                        STRIP_UNARY (operands[3]))
   29673              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29674              :                        STRIP_UNARY (operands[3])))) && 
   29675              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29676              : (TARGET_AVX)) && 
   29677              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29678              : ( 1)))
   29679              :                 return gen_split_2989 (insn, operands);
   29680              :             }
   29681              :           if (!register_operand (operands[1], E_V4DFmode)
   29682              :               || !register_operand (operands[2], E_V4DFmode)
   29683              :               || !nonimmediate_operand (operands[3], E_V4DFmode))
   29684              :             return NULL;
   29685              :           x8 = XEXP (x2, 1);
   29686              :           if (rtx_equal_p (x8, operands[1])
   29687              :               && 
   29688              : #line 27073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29689              : (TARGET_XOP))
   29690              :             return gen_split_3829 (insn, operands);
   29691              :           if (!rtx_equal_p (x8, operands[2])
   29692              :               || !
   29693              : #line 27085 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29694              : (TARGET_XOP))
   29695              :             return NULL;
   29696              :           return gen_split_3845 (insn, operands);
   29697              : 
   29698              :         case E_V2DFmode:
   29699              :           if (pattern1010 (x2, 
   29700              : E_V2DFmode) != 0)
   29701              :             return NULL;
   29702              :           if (regmem_or_bitnot_regmem_operand (operands[1], E_V2DFmode)
   29703              :               && regmem_or_bitnot_regmem_operand (operands[2], E_V2DFmode)
   29704              :               && regmem_or_bitnot_regmem_operand (operands[3], E_V2DFmode))
   29705              :             {
   29706              :               x8 = XEXP (x2, 1);
   29707              :               operands[4] = x8;
   29708              :               if (regmem_or_bitnot_regmem_operand (operands[4], E_V2DFmode)
   29709              :                   && ((
   29710              : #line 14263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29711              : ((16 == 64 || TARGET_AVX512VL
   29712              :     || (TARGET_AVX512F && !TARGET_PREFER_AVX256))
   29713              :    && ix86_pre_reload_split ()
   29714              :    && (rtx_equal_p (STRIP_UNARY (operands[1]),
   29715              :                     STRIP_UNARY (operands[4]))
   29716              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29717              :                        STRIP_UNARY (operands[4]))
   29718              :        || rtx_equal_p (STRIP_UNARY (operands[1]),
   29719              :                        STRIP_UNARY (operands[3]))
   29720              :        || rtx_equal_p (STRIP_UNARY (operands[2]),
   29721              :                        STRIP_UNARY (operands[3])))) && 
   29722              : #line 352 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29723              : (TARGET_SSE2)) && 
   29724              : #line 14275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29725              : ( 1)))
   29726              :                 return gen_split_3016 (insn, operands);
   29727              :             }
   29728              :           if (!register_operand (operands[1], E_V2DFmode)
   29729              :               || !register_operand (operands[2], E_V2DFmode)
   29730              :               || !nonimmediate_operand (operands[3], E_V2DFmode))
   29731              :             return NULL;
   29732              :           x8 = XEXP (x2, 1);
   29733              :           if (rtx_equal_p (x8, operands[1])
   29734              :               && 
   29735              : #line 27073 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29736              : (TARGET_XOP))
   29737              :             return gen_split_3830 (insn, operands);
   29738              :           if (!rtx_equal_p (x8, operands[2])
   29739              :               || !
   29740              : #line 27085 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29741              : (TARGET_XOP))
   29742              :             return NULL;
   29743              :           return gen_split_3846 (insn, operands);
   29744              : 
   29745              :         default:
   29746              :           return NULL;
   29747              :         }
   29748              : 
   29749              :     default:
   29750              :       return NULL;
   29751              :     }
   29752              : }
   29753              : 
   29754              :  rtx_insn *
   29755              : split_86 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   29756              : {
   29757              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   29758              :   rtx x2, x3, x4;
   29759              :   rtx_insn *res ATTRIBUTE_UNUSED;
   29760              :   x2 = XEXP (x1, 1);
   29761              :   x3 = XEXP (x2, 0);
   29762              :   switch (GET_CODE (x3))
   29763              :     {
   29764              :     case NOT:
   29765              :       x4 = XEXP (x3, 0);
   29766              :       operands[1] = x4;
   29767              :       switch (GET_MODE (operands[0]))
   29768              :         {
   29769              :         case E_V16SImode:
   29770              :           if (pattern630 (x2, 
   29771              : E_V16SImode, 
   29772              : E_SImode) != 0
   29773              :               || !(
   29774              : #line 18912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29775              : (64 == 64 || TARGET_AVX512VL
   29776              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   29777              : #line 791 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29778              : (TARGET_AVX512F)))
   29779              :             return NULL;
   29780              :           return gen_split_3452 (insn, operands);
   29781              : 
   29782              :         case E_V8SImode:
   29783              :           if (pattern630 (x2, 
   29784              : E_V8SImode, 
   29785              : E_SImode) != 0
   29786              :               || !
   29787              : #line 18912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29788              : (32 == 64 || TARGET_AVX512VL
   29789              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)))
   29790              :             return NULL;
   29791              :           return gen_split_3453 (insn, operands);
   29792              : 
   29793              :         case E_V4SImode:
   29794              :           if (pattern630 (x2, 
   29795              : E_V4SImode, 
   29796              : E_SImode) != 0
   29797              :               || !
   29798              : #line 18912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29799              : (16 == 64 || TARGET_AVX512VL
   29800              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)))
   29801              :             return NULL;
   29802              :           return gen_split_3454 (insn, operands);
   29803              : 
   29804              :         case E_V8DImode:
   29805              :           if (pattern630 (x2, 
   29806              : E_V8DImode, 
   29807              : E_DImode) != 0
   29808              :               || !(
   29809              : #line 18912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29810              : (64 == 64 || TARGET_AVX512VL
   29811              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)) && 
   29812              : #line 792 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29813              : (TARGET_AVX512F)))
   29814              :             return NULL;
   29815              :           return gen_split_3455 (insn, operands);
   29816              : 
   29817              :         case E_V4DImode:
   29818              :           if (pattern630 (x2, 
   29819              : E_V4DImode, 
   29820              : E_DImode) != 0
   29821              :               || !
   29822              : #line 18912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29823              : (32 == 64 || TARGET_AVX512VL
   29824              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)))
   29825              :             return NULL;
   29826              :           return gen_split_3456 (insn, operands);
   29827              : 
   29828              :         case E_V2DImode:
   29829              :           if (pattern630 (x2, 
   29830              : E_V2DImode, 
   29831              : E_DImode) != 0
   29832              :               || !
   29833              : #line 18912 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29834              : (16 == 64 || TARGET_AVX512VL
   29835              :    || (TARGET_AVX512F && !TARGET_PREFER_AVX256)))
   29836              :             return NULL;
   29837              :           return gen_split_3457 (insn, operands);
   29838              : 
   29839              :         default:
   29840              :           return NULL;
   29841              :         }
   29842              : 
   29843              :     case REG:
   29844              :     case SUBREG:
   29845              :       operands[1] = x3;
   29846              :       switch (GET_MODE (operands[0]))
   29847              :         {
   29848              :         case E_V32QImode:
   29849              :           if (!register_operand (operands[0], E_V32QImode)
   29850              :               || GET_MODE (x2) != E_V32QImode
   29851              :               || !register_operand (operands[1], E_QImode)
   29852              :               || !
   29853              : #line 28909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29854              : (TARGET_AVX2
   29855              :    /* Disable this splitter if avx512vl_vec_dup_gprv*[qhs]i insn is
   29856              :       available, because then we can broadcast from GPRs directly.
   29857              :       For V*[QH]I modes it requires both -mavx512vl and -mavx512bw,
   29858              :       for V*SI mode it requires just -mavx512vl.  */
   29859              :    && !(TARGET_AVX512VL
   29860              :         && (TARGET_AVX512BW || QImode == SImode))
   29861              :    && reload_completed && GENERAL_REG_P (operands[1])))
   29862              :             return NULL;
   29863              :           return gen_split_3851 (insn, operands);
   29864              : 
   29865              :         case E_V16QImode:
   29866              :           if (!register_operand (operands[0], E_V16QImode)
   29867              :               || GET_MODE (x2) != E_V16QImode
   29868              :               || !register_operand (operands[1], E_QImode)
   29869              :               || !
   29870              : #line 28909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29871              : (TARGET_AVX2
   29872              :    /* Disable this splitter if avx512vl_vec_dup_gprv*[qhs]i insn is
   29873              :       available, because then we can broadcast from GPRs directly.
   29874              :       For V*[QH]I modes it requires both -mavx512vl and -mavx512bw,
   29875              :       for V*SI mode it requires just -mavx512vl.  */
   29876              :    && !(TARGET_AVX512VL
   29877              :         && (TARGET_AVX512BW || QImode == SImode))
   29878              :    && reload_completed && GENERAL_REG_P (operands[1])))
   29879              :             return NULL;
   29880              :           return gen_split_3852 (insn, operands);
   29881              : 
   29882              :         case E_V16HImode:
   29883              :           if (!register_operand (operands[0], E_V16HImode)
   29884              :               || GET_MODE (x2) != E_V16HImode
   29885              :               || !register_operand (operands[1], E_HImode)
   29886              :               || !
   29887              : #line 28909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29888              : (TARGET_AVX2
   29889              :    /* Disable this splitter if avx512vl_vec_dup_gprv*[qhs]i insn is
   29890              :       available, because then we can broadcast from GPRs directly.
   29891              :       For V*[QH]I modes it requires both -mavx512vl and -mavx512bw,
   29892              :       for V*SI mode it requires just -mavx512vl.  */
   29893              :    && !(TARGET_AVX512VL
   29894              :         && (TARGET_AVX512BW || HImode == SImode))
   29895              :    && reload_completed && GENERAL_REG_P (operands[1])))
   29896              :             return NULL;
   29897              :           return gen_split_3853 (insn, operands);
   29898              : 
   29899              :         case E_V8HImode:
   29900              :           if (!register_operand (operands[0], E_V8HImode)
   29901              :               || GET_MODE (x2) != E_V8HImode
   29902              :               || !register_operand (operands[1], E_HImode)
   29903              :               || !
   29904              : #line 28909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29905              : (TARGET_AVX2
   29906              :    /* Disable this splitter if avx512vl_vec_dup_gprv*[qhs]i insn is
   29907              :       available, because then we can broadcast from GPRs directly.
   29908              :       For V*[QH]I modes it requires both -mavx512vl and -mavx512bw,
   29909              :       for V*SI mode it requires just -mavx512vl.  */
   29910              :    && !(TARGET_AVX512VL
   29911              :         && (TARGET_AVX512BW || HImode == SImode))
   29912              :    && reload_completed && GENERAL_REG_P (operands[1])))
   29913              :             return NULL;
   29914              :           return gen_split_3854 (insn, operands);
   29915              : 
   29916              :         case E_V8SImode:
   29917              :           if (!register_operand (operands[0], E_V8SImode)
   29918              :               || GET_MODE (x2) != E_V8SImode
   29919              :               || !register_operand (operands[1], E_SImode))
   29920              :             return NULL;
   29921              :           if (
   29922              : #line 28909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29923              : (TARGET_AVX2
   29924              :    /* Disable this splitter if avx512vl_vec_dup_gprv*[qhs]i insn is
   29925              :       available, because then we can broadcast from GPRs directly.
   29926              :       For V*[QH]I modes it requires both -mavx512vl and -mavx512bw,
   29927              :       for V*SI mode it requires just -mavx512vl.  */
   29928              :    && !(TARGET_AVX512VL
   29929              :         && (TARGET_AVX512BW || SImode == SImode))
   29930              :    && reload_completed && GENERAL_REG_P (operands[1])))
   29931              :             return gen_split_3855 (insn, operands);
   29932              :           if (!
   29933              : #line 28932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29934              : (TARGET_AVX && !TARGET_AVX2 && reload_completed))
   29935              :             return NULL;
   29936              :           return gen_split_3861 (insn, operands);
   29937              : 
   29938              :         case E_V4SImode:
   29939              :           if (!register_operand (operands[0], E_V4SImode)
   29940              :               || GET_MODE (x2) != E_V4SImode
   29941              :               || !register_operand (operands[1], E_SImode)
   29942              :               || !
   29943              : #line 28909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29944              : (TARGET_AVX2
   29945              :    /* Disable this splitter if avx512vl_vec_dup_gprv*[qhs]i insn is
   29946              :       available, because then we can broadcast from GPRs directly.
   29947              :       For V*[QH]I modes it requires both -mavx512vl and -mavx512bw,
   29948              :       for V*SI mode it requires just -mavx512vl.  */
   29949              :    && !(TARGET_AVX512VL
   29950              :         && (TARGET_AVX512BW || SImode == SImode))
   29951              :    && reload_completed && GENERAL_REG_P (operands[1])))
   29952              :             return NULL;
   29953              :           return gen_split_3856 (insn, operands);
   29954              : 
   29955              :         case E_V16HFmode:
   29956              :           if (!register_operand (operands[0], E_V16HFmode)
   29957              :               || GET_MODE (x2) != E_V16HFmode
   29958              :               || !register_operand (operands[1], E_HFmode)
   29959              :               || !
   29960              : #line 28909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29961              : (TARGET_AVX2
   29962              :    /* Disable this splitter if avx512vl_vec_dup_gprv*[qhs]i insn is
   29963              :       available, because then we can broadcast from GPRs directly.
   29964              :       For V*[QH]I modes it requires both -mavx512vl and -mavx512bw,
   29965              :       for V*SI mode it requires just -mavx512vl.  */
   29966              :    && !(TARGET_AVX512VL
   29967              :         && (TARGET_AVX512BW || HFmode == SImode))
   29968              :    && reload_completed && GENERAL_REG_P (operands[1])))
   29969              :             return NULL;
   29970              :           return gen_split_3857 (insn, operands);
   29971              : 
   29972              :         case E_V8HFmode:
   29973              :           if (!register_operand (operands[0], E_V8HFmode)
   29974              :               || GET_MODE (x2) != E_V8HFmode
   29975              :               || !register_operand (operands[1], E_HFmode)
   29976              :               || !
   29977              : #line 28909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29978              : (TARGET_AVX2
   29979              :    /* Disable this splitter if avx512vl_vec_dup_gprv*[qhs]i insn is
   29980              :       available, because then we can broadcast from GPRs directly.
   29981              :       For V*[QH]I modes it requires both -mavx512vl and -mavx512bw,
   29982              :       for V*SI mode it requires just -mavx512vl.  */
   29983              :    && !(TARGET_AVX512VL
   29984              :         && (TARGET_AVX512BW || HFmode == SImode))
   29985              :    && reload_completed && GENERAL_REG_P (operands[1])))
   29986              :             return NULL;
   29987              :           return gen_split_3858 (insn, operands);
   29988              : 
   29989              :         case E_V16BFmode:
   29990              :           if (!register_operand (operands[0], E_V16BFmode)
   29991              :               || GET_MODE (x2) != E_V16BFmode
   29992              :               || !register_operand (operands[1], E_BFmode)
   29993              :               || !
   29994              : #line 28909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   29995              : (TARGET_AVX2
   29996              :    /* Disable this splitter if avx512vl_vec_dup_gprv*[qhs]i insn is
   29997              :       available, because then we can broadcast from GPRs directly.
   29998              :       For V*[QH]I modes it requires both -mavx512vl and -mavx512bw,
   29999              :       for V*SI mode it requires just -mavx512vl.  */
   30000              :    && !(TARGET_AVX512VL
   30001              :         && (TARGET_AVX512BW || BFmode == SImode))
   30002              :    && reload_completed && GENERAL_REG_P (operands[1])))
   30003              :             return NULL;
   30004              :           return gen_split_3859 (insn, operands);
   30005              : 
   30006              :         case E_V8BFmode:
   30007              :           if (!register_operand (operands[0], E_V8BFmode)
   30008              :               || GET_MODE (x2) != E_V8BFmode
   30009              :               || !register_operand (operands[1], E_BFmode)
   30010              :               || !
   30011              : #line 28909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30012              : (TARGET_AVX2
   30013              :    /* Disable this splitter if avx512vl_vec_dup_gprv*[qhs]i insn is
   30014              :       available, because then we can broadcast from GPRs directly.
   30015              :       For V*[QH]I modes it requires both -mavx512vl and -mavx512bw,
   30016              :       for V*SI mode it requires just -mavx512vl.  */
   30017              :    && !(TARGET_AVX512VL
   30018              :         && (TARGET_AVX512BW || BFmode == SImode))
   30019              :    && reload_completed && GENERAL_REG_P (operands[1])))
   30020              :             return NULL;
   30021              :           return gen_split_3860 (insn, operands);
   30022              : 
   30023              :         case E_V8SFmode:
   30024              :           if (!register_operand (operands[0], E_V8SFmode)
   30025              :               || GET_MODE (x2) != E_V8SFmode
   30026              :               || !register_operand (operands[1], E_SFmode)
   30027              :               || !
   30028              : #line 28932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30029              : (TARGET_AVX && !TARGET_AVX2 && reload_completed))
   30030              :             return NULL;
   30031              :           return gen_split_3862 (insn, operands);
   30032              : 
   30033              :         case E_V4DImode:
   30034              :           if (!register_operand (operands[0], E_V4DImode)
   30035              :               || GET_MODE (x2) != E_V4DImode
   30036              :               || !register_operand (operands[1], E_DImode)
   30037              :               || !
   30038              : #line 28932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30039              : (TARGET_AVX && !TARGET_AVX2 && reload_completed))
   30040              :             return NULL;
   30041              :           return gen_split_3863 (insn, operands);
   30042              : 
   30043              :         case E_V4DFmode:
   30044              :           if (!register_operand (operands[0], E_V4DFmode)
   30045              :               || GET_MODE (x2) != E_V4DFmode
   30046              :               || !register_operand (operands[1], E_DFmode)
   30047              :               || !
   30048              : #line 28932 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30049              : (TARGET_AVX && !TARGET_AVX2 && reload_completed))
   30050              :             return NULL;
   30051              :           return gen_split_3864 (insn, operands);
   30052              : 
   30053              :         default:
   30054              :           return NULL;
   30055              :         }
   30056              : 
   30057              :     default:
   30058              :       return NULL;
   30059              :     }
   30060              : }
   30061              : 
   30062              :  rtx_insn *
   30063              : split_87 (rtx x1 ATTRIBUTE_UNUSED, rtx_insn *insn ATTRIBUTE_UNUSED)
   30064              : {
   30065              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   30066              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   30067              :   rtx x10, x11, x12, x13, x14;
   30068              :   rtx_insn *res ATTRIBUTE_UNUSED;
   30069              :   x2 = XEXP (x1, 1);
   30070              :   operands[1] = x2;
   30071              :   res = split_84 (x1, insn);
   30072              :   if (res != NULL_RTX)
   30073              :     return res;
   30074              :   switch (GET_CODE (x2))
   30075              :     {
   30076              :     case UNSPEC:
   30077              :       return split_81 (x1, insn);
   30078              : 
   30079              :     case VEC_MERGE:
   30080              :       return split_85 (x1, insn);
   30081              : 
   30082              :     case AND:
   30083              :     case IOR:
   30084              :     case XOR:
   30085              :     case NOT:
   30086              :       return split_82 (x1, insn);
   30087              : 
   30088              :     case VEC_SELECT:
   30089              :       return split_83 (x1, insn);
   30090              : 
   30091              :     case PLUS:
   30092              :       x3 = XEXP (x2, 0);
   30093              :       switch (GET_CODE (x3))
   30094              :         {
   30095              :         case UNSPEC:
   30096              :           switch (pattern194 (x2))
   30097              :             {
   30098              :             case 0:
   30099              :               if (!(
   30100              : #line 7578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30101              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   30102              :   && ix86_pre_reload_split ()) && 
   30103              : #line 7581 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30104              : ( 1)))
   30105              :                 return NULL;
   30106              :               return gen_split_1580 (insn, operands);
   30107              : 
   30108              :             case 1:
   30109              :               if (!((
   30110              : #line 7578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30111              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   30112              :   && ix86_pre_reload_split ()) && 
   30113              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30114              : (TARGET_AVX512VL)) && 
   30115              : #line 7581 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30116              : ( 1)))
   30117              :                 return NULL;
   30118              :               return gen_split_1581 (insn, operands);
   30119              : 
   30120              :             case 2:
   30121              :               if (!((
   30122              : #line 7578 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30123              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   30124              :   && ix86_pre_reload_split ()) && 
   30125              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30126              : (TARGET_AVX512VL)) && 
   30127              : #line 7581 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30128              : ( 1)))
   30129              :                 return NULL;
   30130              :               return gen_split_1582 (insn, operands);
   30131              : 
   30132              :             case 3:
   30133              :               if (!(
   30134              : #line 7595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30135              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   30136              :   && ix86_pre_reload_split ()) && 
   30137              : #line 7598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30138              : ( 1)))
   30139              :                 return NULL;
   30140              :               return gen_split_1583 (insn, operands);
   30141              : 
   30142              :             case 4:
   30143              :               if (!((
   30144              : #line 7595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30145              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   30146              :   && ix86_pre_reload_split ()) && 
   30147              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30148              : (TARGET_AVX512VL)) && 
   30149              : #line 7598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30150              : ( 1)))
   30151              :                 return NULL;
   30152              :               return gen_split_1584 (insn, operands);
   30153              : 
   30154              :             case 5:
   30155              :               if (!((
   30156              : #line 7595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30157              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   30158              :   && ix86_pre_reload_split ()) && 
   30159              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30160              : (TARGET_AVX512VL)) && 
   30161              : #line 7598 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30162              : ( 1)))
   30163              :                 return NULL;
   30164              :               return gen_split_1585 (insn, operands);
   30165              : 
   30166              :             case 6:
   30167              :               if (!(
   30168              : #line 7613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30169              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   30170              :   && ix86_pre_reload_split ()) && 
   30171              : #line 7616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30172              : ( 1)))
   30173              :                 return NULL;
   30174              :               return gen_split_1586 (insn, operands);
   30175              : 
   30176              :             case 7:
   30177              :               if (!((
   30178              : #line 7613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30179              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   30180              :   && ix86_pre_reload_split ()) && 
   30181              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30182              : (TARGET_AVX512VL)) && 
   30183              : #line 7616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30184              : ( 1)))
   30185              :                 return NULL;
   30186              :               return gen_split_1588 (insn, operands);
   30187              : 
   30188              :             case 8:
   30189              :               if (!((
   30190              : #line 7613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30191              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   30192              :   && ix86_pre_reload_split ()) && 
   30193              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30194              : (TARGET_AVX512VL)) && 
   30195              : #line 7616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30196              : ( 1)))
   30197              :                 return NULL;
   30198              :               return gen_split_1590 (insn, operands);
   30199              : 
   30200              :             case 9:
   30201              :               if (!(
   30202              : #line 7613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30203              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   30204              :   && ix86_pre_reload_split ()) && 
   30205              : #line 7616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30206              : ( 1)))
   30207              :                 return NULL;
   30208              :               return gen_split_1587 (insn, operands);
   30209              : 
   30210              :             case 10:
   30211              :               if (!((
   30212              : #line 7613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30213              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   30214              :   && ix86_pre_reload_split ()) && 
   30215              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30216              : (TARGET_AVX512VL)) && 
   30217              : #line 7616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30218              : ( 1)))
   30219              :                 return NULL;
   30220              :               return gen_split_1589 (insn, operands);
   30221              : 
   30222              :             case 11:
   30223              :               if (!((
   30224              : #line 7613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30225              : (TARGET_AVX512FP16 && flag_unsafe_math_optimizations
   30226              :   && ix86_pre_reload_split ()) && 
   30227              : #line 545 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30228              : (TARGET_AVX512VL)) && 
   30229              : #line 7616 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30230              : ( 1)))
   30231              :                 return NULL;
   30232              :               return gen_split_1591 (insn, operands);
   30233              : 
   30234              :             default:
   30235              :               return NULL;
   30236              :             }
   30237              : 
   30238              :         case REG:
   30239              :         case SUBREG:
   30240              :         case MEM:
   30241              :           switch (pattern244 (x2))
   30242              :             {
   30243              :             case 0:
   30244              :               if (!((
   30245              : #line 16723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30246              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30247              : #line 572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30248              : (TARGET_AVX512BW)) && 
   30249              : #line 16725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30250              : ( 1)))
   30251              :                 return NULL;
   30252              :               return gen_split_3298 (insn, operands);
   30253              : 
   30254              :             case 1:
   30255              :               if (!((
   30256              : #line 16723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30257              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30258              : #line 572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30259              : (TARGET_AVX2)) && 
   30260              : #line 16725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30261              : ( 1)))
   30262              :                 return NULL;
   30263              :               return gen_split_3299 (insn, operands);
   30264              : 
   30265              :             case 2:
   30266              :               if (!(
   30267              : #line 16723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30268              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30269              : #line 16725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30270              : ( 1)))
   30271              :                 return NULL;
   30272              :               return gen_split_3300 (insn, operands);
   30273              : 
   30274              :             case 3:
   30275              :               if (!((
   30276              : #line 16723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30277              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30278              : #line 573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30279              : (TARGET_AVX512BW)) && 
   30280              : #line 16725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30281              : ( 1)))
   30282              :                 return NULL;
   30283              :               return gen_split_3301 (insn, operands);
   30284              : 
   30285              :             case 4:
   30286              :               if (!((
   30287              : #line 16723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30288              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30289              : #line 573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30290              : (TARGET_AVX2)) && 
   30291              : #line 16725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30292              : ( 1)))
   30293              :                 return NULL;
   30294              :               return gen_split_3302 (insn, operands);
   30295              : 
   30296              :             case 5:
   30297              :               if (!(
   30298              : #line 16723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30299              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30300              : #line 16725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30301              : ( 1)))
   30302              :                 return NULL;
   30303              :               return gen_split_3303 (insn, operands);
   30304              : 
   30305              :             case 6:
   30306              :               if (!((
   30307              : #line 16723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30308              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30309              : #line 574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30310              : (TARGET_AVX512F)) && 
   30311              : #line 16725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30312              : ( 1)))
   30313              :                 return NULL;
   30314              :               return gen_split_3304 (insn, operands);
   30315              : 
   30316              :             case 7:
   30317              :               if (!((
   30318              : #line 16723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30319              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30320              : #line 574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30321              : (TARGET_AVX2)) && 
   30322              : #line 16725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30323              : ( 1)))
   30324              :                 return NULL;
   30325              :               return gen_split_3305 (insn, operands);
   30326              : 
   30327              :             case 8:
   30328              :               if (!(
   30329              : #line 16723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30330              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30331              : #line 16725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30332              : ( 1)))
   30333              :                 return NULL;
   30334              :               return gen_split_3306 (insn, operands);
   30335              : 
   30336              :             case 9:
   30337              :               if (!((
   30338              : #line 16723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30339              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30340              : #line 575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30341              : (TARGET_AVX512F)) && 
   30342              : #line 16725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30343              : ( 1)))
   30344              :                 return NULL;
   30345              :               return gen_split_3307 (insn, operands);
   30346              : 
   30347              :             case 10:
   30348              :               if (!((
   30349              : #line 16723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30350              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30351              : #line 575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30352              : (TARGET_AVX2)) && 
   30353              : #line 16725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30354              : ( 1)))
   30355              :                 return NULL;
   30356              :               return gen_split_3308 (insn, operands);
   30357              : 
   30358              :             case 11:
   30359              :               if (!(
   30360              : #line 16723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30361              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30362              : #line 16725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30363              : ( 1)))
   30364              :                 return NULL;
   30365              :               return gen_split_3309 (insn, operands);
   30366              : 
   30367              :             default:
   30368              :               return NULL;
   30369              :             }
   30370              : 
   30371              :         default:
   30372              :           return NULL;
   30373              :         }
   30374              : 
   30375              :     case VEC_CONCAT:
   30376              :       x3 = XEXP (x2, 0);
   30377              :       switch (GET_CODE (x3))
   30378              :         {
   30379              :         case ZERO_EXTEND:
   30380              :           switch (pattern188 (x2))
   30381              :             {
   30382              :             case 0:
   30383              :               if (!(
   30384              : #line 12496 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30385              : (TARGET_AVX512FP16 && ix86_pre_reload_split ()) && 
   30386              : #line 12498 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30387              : ( 1)))
   30388              :                 return NULL;
   30389              :               return gen_split_1629 (insn, operands);
   30390              : 
   30391              :             case 1:
   30392              :               if (!(
   30393              : #line 12610 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30394              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30395              : #line 12612 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30396              : ( 1)))
   30397              :                 return NULL;
   30398              :               return gen_split_1633 (insn, operands);
   30399              : 
   30400              :             default:
   30401              :               return NULL;
   30402              :             }
   30403              : 
   30404              :         case VEC_SELECT:
   30405              :           if (GET_MODE (x3) != E_DFmode)
   30406              :             return NULL;
   30407              :           x4 = XEXP (x3, 1);
   30408              :           if (GET_CODE (x4) != PARALLEL
   30409              :               || XVECLEN (x4, 0) != 1)
   30410              :             return NULL;
   30411              :           x5 = XVECEXP (x4, 0, 0);
   30412              :           if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0]
   30413              :               || !memory_operand (operands[0], E_V2DFmode)
   30414              :               || GET_MODE (x2) != E_V2DFmode)
   30415              :             return NULL;
   30416              :           x6 = XEXP (x2, 1);
   30417              :           operands[1] = x6;
   30418              :           if (!register_operand (operands[1], E_DFmode))
   30419              :             return NULL;
   30420              :           x7 = XEXP (x3, 0);
   30421              :           if (!rtx_equal_p (x7, operands[0])
   30422              :               || !
   30423              : #line 15153 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30424              : (TARGET_SSE2 && reload_completed))
   30425              :             return NULL;
   30426              :           return gen_split_3255 (insn, operands);
   30427              : 
   30428              :         case REG:
   30429              :         case SUBREG:
   30430              :         case MEM:
   30431              :           operands[1] = x3;
   30432              :           res = split_80 (x1, insn);
   30433              :           if (res != NULL_RTX)
   30434              :             return res;
   30435              :           if (GET_CODE (x3) != SUBREG
   30436              :               || maybe_ne (SUBREG_BYTE (x3), 0))
   30437              :             return NULL;
   30438              :           x6 = XEXP (x2, 1);
   30439              :           if (GET_CODE (x6) != SUBREG)
   30440              :             return NULL;
   30441              :           x7 = XEXP (x3, 0);
   30442              :           switch (GET_CODE (x7))
   30443              :             {
   30444              :             case REG:
   30445              :             case SUBREG:
   30446              :               operands[1] = x7;
   30447              :               if (!register_operand (operands[1], E_TImode)
   30448              :                   || maybe_ne (SUBREG_BYTE (x6), 8)
   30449              :                   || GET_MODE (x6) != E_DImode
   30450              :                   || !register_operand (operands[0], E_V2DImode)
   30451              :                   || GET_MODE (x2) != E_V2DImode
   30452              :                   || GET_MODE (x3) != E_DImode)
   30453              :                 return NULL;
   30454              :               x8 = XEXP (x6, 0);
   30455              :               if (!rtx_equal_p (x8, operands[1])
   30456              :                   || !
   30457              : #line 22224 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30458              : (TARGET_SSE2 && ix86_pre_reload_split ()))
   30459              :                 return NULL;
   30460              :               return gen_split_3516 (insn, operands);
   30461              : 
   30462              :             case UNSPEC:
   30463              :               if (XVECLEN (x7, 0) != 1
   30464              :                   || XINT (x7, 1) != 120
   30465              :                   || GET_MODE (x7) != E_V16QImode
   30466              :                   || pattern1265 (x6) != 0
   30467              :                   || !register_operand (operands[0], E_V4DImode)
   30468              :                   || GET_MODE (x2) != E_V4DImode
   30469              :                   || GET_MODE (x3) != E_V2DImode)
   30470              :                 return NULL;
   30471              :               x9 = XVECEXP (x7, 0, 0);
   30472              :               operands[1] = x9;
   30473              :               if (!memory_operand (operands[1], E_V16QImode))
   30474              :                 return NULL;
   30475              :               x8 = XEXP (x6, 0);
   30476              :               x10 = XVECEXP (x8, 0, 0);
   30477              :               if (!rtx_equal_p (x10, operands[1])
   30478              :                   || !(
   30479              : #line 28852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30480              : (TARGET_AVX2 && ix86_pre_reload_split ()) && 
   30481              : #line 28854 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30482              : ( 1)))
   30483              :                 return NULL;
   30484              :               return gen_split_3850 (insn, operands);
   30485              : 
   30486              :             default:
   30487              :               return NULL;
   30488              :             }
   30489              : 
   30490              :         case VEC_CONCAT:
   30491              :           if (pattern418 (x2) != 0)
   30492              :             return NULL;
   30493              :           x7 = XEXP (x3, 0);
   30494              :           operands[1] = x7;
   30495              :           switch (GET_MODE (operands[0]))
   30496              :             {
   30497              :             case E_V16SImode:
   30498              :               if (pattern1490 (x2, 
   30499              : E_V8SImode, 
   30500              : E_V4SImode, 
   30501              : E_V16SImode) != 0
   30502              :                   || !(
   30503              : #line 31194 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30504              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   30505              : #line 31196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30506              : ( reload_completed)))
   30507              :                 return NULL;
   30508              :               return gen_split_3942 (insn, operands);
   30509              : 
   30510              :             case E_V16SFmode:
   30511              :               if (pattern1490 (x2, 
   30512              : E_V8SFmode, 
   30513              : E_V4SFmode, 
   30514              : E_V16SFmode) != 0
   30515              :                   || !(
   30516              : #line 31194 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30517              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   30518              : #line 31196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30519              : ( reload_completed)))
   30520              :                 return NULL;
   30521              :               return gen_split_3943 (insn, operands);
   30522              : 
   30523              :             case E_V8DFmode:
   30524              :               if (pattern1490 (x2, 
   30525              : E_V4DFmode, 
   30526              : E_V2DFmode, 
   30527              : E_V8DFmode) != 0
   30528              :                   || !(
   30529              : #line 31194 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30530              : (TARGET_AVX512F && !(MEM_P (operands[0]) && MEM_P (operands[1]))) && 
   30531              : #line 31196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30532              : ( reload_completed)))
   30533              :                 return NULL;
   30534              :               return gen_split_3944 (insn, operands);
   30535              : 
   30536              :             default:
   30537              :               return NULL;
   30538              :             }
   30539              : 
   30540              :         default:
   30541              :           return NULL;
   30542              :         }
   30543              : 
   30544              :     case MINUS:
   30545              :       switch (pattern244 (x2))
   30546              :         {
   30547              :         case 0:
   30548              :           if (!((
   30549              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30550              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30551              : #line 572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30552              : (TARGET_AVX512BW)) && 
   30553              : #line 16740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30554              : ( 1)))
   30555              :             return NULL;
   30556              :           return gen_split_3310 (insn, operands);
   30557              : 
   30558              :         case 1:
   30559              :           if (!((
   30560              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30561              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30562              : #line 572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30563              : (TARGET_AVX2)) && 
   30564              : #line 16740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30565              : ( 1)))
   30566              :             return NULL;
   30567              :           return gen_split_3311 (insn, operands);
   30568              : 
   30569              :         case 2:
   30570              :           if (!(
   30571              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30572              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30573              : #line 16740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30574              : ( 1)))
   30575              :             return NULL;
   30576              :           return gen_split_3312 (insn, operands);
   30577              : 
   30578              :         case 3:
   30579              :           if (!((
   30580              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30581              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30582              : #line 573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30583              : (TARGET_AVX512BW)) && 
   30584              : #line 16740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30585              : ( 1)))
   30586              :             return NULL;
   30587              :           return gen_split_3313 (insn, operands);
   30588              : 
   30589              :         case 4:
   30590              :           if (!((
   30591              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30592              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30593              : #line 573 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30594              : (TARGET_AVX2)) && 
   30595              : #line 16740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30596              : ( 1)))
   30597              :             return NULL;
   30598              :           return gen_split_3314 (insn, operands);
   30599              : 
   30600              :         case 5:
   30601              :           if (!(
   30602              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30603              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30604              : #line 16740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30605              : ( 1)))
   30606              :             return NULL;
   30607              :           return gen_split_3315 (insn, operands);
   30608              : 
   30609              :         case 6:
   30610              :           if (!((
   30611              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30612              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30613              : #line 574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30614              : (TARGET_AVX512F)) && 
   30615              : #line 16740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30616              : ( 1)))
   30617              :             return NULL;
   30618              :           return gen_split_3316 (insn, operands);
   30619              : 
   30620              :         case 7:
   30621              :           if (!((
   30622              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30623              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30624              : #line 574 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30625              : (TARGET_AVX2)) && 
   30626              : #line 16740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30627              : ( 1)))
   30628              :             return NULL;
   30629              :           return gen_split_3317 (insn, operands);
   30630              : 
   30631              :         case 8:
   30632              :           if (!(
   30633              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30634              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30635              : #line 16740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30636              : ( 1)))
   30637              :             return NULL;
   30638              :           return gen_split_3318 (insn, operands);
   30639              : 
   30640              :         case 9:
   30641              :           if (!((
   30642              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30643              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30644              : #line 575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30645              : (TARGET_AVX512F)) && 
   30646              : #line 16740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30647              : ( 1)))
   30648              :             return NULL;
   30649              :           return gen_split_3319 (insn, operands);
   30650              : 
   30651              :         case 10:
   30652              :           if (!((
   30653              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30654              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30655              : #line 575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30656              : (TARGET_AVX2)) && 
   30657              : #line 16740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30658              : ( 1)))
   30659              :             return NULL;
   30660              :           return gen_split_3320 (insn, operands);
   30661              : 
   30662              :         case 11:
   30663              :           if (!(
   30664              : #line 16738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30665              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30666              : #line 16740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30667              : ( 1)))
   30668              :             return NULL;
   30669              :           return gen_split_3321 (insn, operands);
   30670              : 
   30671              :         default:
   30672              :           return NULL;
   30673              :         }
   30674              : 
   30675              :     case EQ:
   30676              :       x3 = XEXP (x2, 0);
   30677              :       switch (GET_CODE (x3))
   30678              :         {
   30679              :         case US_MINUS:
   30680              :           x7 = XEXP (x3, 0);
   30681              :           operands[1] = x7;
   30682              :           x4 = XEXP (x3, 1);
   30683              :           operands[2] = x4;
   30684              :           x6 = XEXP (x2, 1);
   30685              :           operands[3] = x6;
   30686              :           switch (GET_MODE (operands[0]))
   30687              :             {
   30688              :             case E_V32QImode:
   30689              :               if (pattern961 (x2, 
   30690              : E_V32QImode) != 0
   30691              :                   || !(
   30692              : #line 16776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30693              : (TARGET_SSE2
   30694              :    && (V32QImode != V8HImode || TARGET_SSE4_1)
   30695              :    && ix86_binary_operator_ok (US_MINUS, V32QImode, operands)) && 
   30696              : #line 724 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30697              : (TARGET_AVX2)))
   30698              :                 return NULL;
   30699              :               return gen_split_3322 (insn, operands);
   30700              : 
   30701              :             case E_V16QImode:
   30702              :               if (pattern961 (x2, 
   30703              : E_V16QImode) != 0
   30704              :                   || !
   30705              : #line 16776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30706              : (TARGET_SSE2
   30707              :    && (V16QImode != V8HImode || TARGET_SSE4_1)
   30708              :    && ix86_binary_operator_ok (US_MINUS, V16QImode, operands)))
   30709              :                 return NULL;
   30710              :               return gen_split_3323 (insn, operands);
   30711              : 
   30712              :             case E_V16HImode:
   30713              :               if (pattern961 (x2, 
   30714              : E_V16HImode) != 0
   30715              :                   || !(
   30716              : #line 16776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30717              : (TARGET_SSE2
   30718              :    && (V16HImode != V8HImode || TARGET_SSE4_1)
   30719              :    && ix86_binary_operator_ok (US_MINUS, V16HImode, operands)) && 
   30720              : #line 725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30721              : (TARGET_AVX2)))
   30722              :                 return NULL;
   30723              :               return gen_split_3324 (insn, operands);
   30724              : 
   30725              :             case E_V8HImode:
   30726              :               if (pattern961 (x2, 
   30727              : E_V8HImode) != 0
   30728              :                   || !
   30729              : #line 16776 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30730              : (TARGET_SSE2
   30731              :    && (V8HImode != V8HImode || TARGET_SSE4_1)
   30732              :    && ix86_binary_operator_ok (US_MINUS, V8HImode, operands)))
   30733              :                 return NULL;
   30734              :               return gen_split_3325 (insn, operands);
   30735              : 
   30736              :             default:
   30737              :               return NULL;
   30738              :             }
   30739              : 
   30740              :         case EQ:
   30741              :           x4 = XEXP (x3, 1);
   30742              :           operands[3] = x4;
   30743              :           x6 = XEXP (x2, 1);
   30744              :           operands[4] = x6;
   30745              :           x7 = XEXP (x3, 0);
   30746              :           switch (GET_CODE (x7))
   30747              :             {
   30748              :             case LSHIFTRT:
   30749              :               x11 = XEXP (x7, 0);
   30750              :               operands[1] = x11;
   30751              :               x12 = XEXP (x7, 1);
   30752              :               operands[2] = x12;
   30753              :               if (!const_int_operand (operands[2], E_SImode))
   30754              :                 return NULL;
   30755              :               switch (GET_MODE (operands[0]))
   30756              :                 {
   30757              :                 case E_V16HImode:
   30758              :                   if (pattern1266 (x2, 
   30759              : E_V16HImode) != 0
   30760              :                       || !(
   30761              : #line 17973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30762              : (INTVAL (operands[2]) == GET_MODE_PRECISION (HImode) - 1) && 
   30763              : #line 763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30764              : (TARGET_AVX2)))
   30765              :                     return NULL;
   30766              :                   return gen_split_3370 (insn, operands);
   30767              : 
   30768              :                 case E_V8HImode:
   30769              :                   if (pattern1266 (x2, 
   30770              : E_V8HImode) != 0
   30771              :                       || !
   30772              : #line 17973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30773              : (INTVAL (operands[2]) == GET_MODE_PRECISION (HImode) - 1))
   30774              :                     return NULL;
   30775              :                   return gen_split_3371 (insn, operands);
   30776              : 
   30777              :                 case E_V8SImode:
   30778              :                   if (pattern1266 (x2, 
   30779              : E_V8SImode) != 0
   30780              :                       || !(
   30781              : #line 17973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30782              : (INTVAL (operands[2]) == GET_MODE_PRECISION (SImode) - 1) && 
   30783              : #line 764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30784              : (TARGET_AVX2)))
   30785              :                     return NULL;
   30786              :                   return gen_split_3372 (insn, operands);
   30787              : 
   30788              :                 case E_V4SImode:
   30789              :                   if (pattern1266 (x2, 
   30790              : E_V4SImode) != 0
   30791              :                       || !
   30792              : #line 17973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30793              : (INTVAL (operands[2]) == GET_MODE_PRECISION (SImode) - 1))
   30794              :                     return NULL;
   30795              :                   return gen_split_3373 (insn, operands);
   30796              : 
   30797              :                 case E_V4DImode:
   30798              :                   if (pattern1266 (x2, 
   30799              : E_V4DImode) != 0
   30800              :                       || !(
   30801              : #line 17973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30802              : (INTVAL (operands[2]) == GET_MODE_PRECISION (DImode) - 1) && 
   30803              : #line 765 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30804              : (TARGET_AVX2)))
   30805              :                     return NULL;
   30806              :                   return gen_split_3374 (insn, operands);
   30807              : 
   30808              :                 case E_V2DImode:
   30809              :                   if (pattern1266 (x2, 
   30810              : E_V2DImode) != 0
   30811              :                       || !
   30812              : #line 17973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30813              : (INTVAL (operands[2]) == GET_MODE_PRECISION (DImode) - 1))
   30814              :                     return NULL;
   30815              :                   return gen_split_3375 (insn, operands);
   30816              : 
   30817              :                 default:
   30818              :                   return NULL;
   30819              :                 }
   30820              : 
   30821              :             case EQ:
   30822              :               x11 = XEXP (x7, 0);
   30823              :               operands[1] = x11;
   30824              :               x12 = XEXP (x7, 1);
   30825              :               operands[2] = x12;
   30826              :               switch (GET_MODE (operands[0]))
   30827              :                 {
   30828              :                 case E_V32QImode:
   30829              :                   if (pattern1155 (x2, 
   30830              : E_V32QImode) != 0
   30831              :                       || !((
   30832              : #line 18404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30833              : (TARGET_SSE4_1 && ix86_pre_reload_split ()) && 
   30834              : #line 584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30835              : (TARGET_AVX2)) && 
   30836              : #line 18406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30837              : ( 1)))
   30838              :                     return NULL;
   30839              :                   return gen_split_3378 (insn, operands);
   30840              : 
   30841              :                 case E_V16QImode:
   30842              :                   if (pattern1155 (x2, 
   30843              : E_V16QImode) != 0
   30844              :                       || !(
   30845              : #line 18404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30846              : (TARGET_SSE4_1 && ix86_pre_reload_split ()) && 
   30847              : #line 18406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30848              : ( 1)))
   30849              :                     return NULL;
   30850              :                   return gen_split_3379 (insn, operands);
   30851              : 
   30852              :                 case E_V16HImode:
   30853              :                   if (pattern1155 (x2, 
   30854              : E_V16HImode) != 0
   30855              :                       || !((
   30856              : #line 18404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30857              : (TARGET_SSE4_1 && ix86_pre_reload_split ()) && 
   30858              : #line 585 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30859              : (TARGET_AVX2)) && 
   30860              : #line 18406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30861              : ( 1)))
   30862              :                     return NULL;
   30863              :                   return gen_split_3380 (insn, operands);
   30864              : 
   30865              :                 case E_V8HImode:
   30866              :                   if (pattern1155 (x2, 
   30867              : E_V8HImode) != 0
   30868              :                       || !(
   30869              : #line 18404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30870              : (TARGET_SSE4_1 && ix86_pre_reload_split ()) && 
   30871              : #line 18406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30872              : ( 1)))
   30873              :                     return NULL;
   30874              :                   return gen_split_3381 (insn, operands);
   30875              : 
   30876              :                 case E_V8SImode:
   30877              :                   if (pattern1155 (x2, 
   30878              : E_V8SImode) != 0
   30879              :                       || !((
   30880              : #line 18404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30881              : (TARGET_SSE4_1 && ix86_pre_reload_split ()) && 
   30882              : #line 586 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30883              : (TARGET_AVX2)) && 
   30884              : #line 18406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30885              : ( 1)))
   30886              :                     return NULL;
   30887              :                   return gen_split_3382 (insn, operands);
   30888              : 
   30889              :                 case E_V4SImode:
   30890              :                   if (pattern1155 (x2, 
   30891              : E_V4SImode) != 0
   30892              :                       || !(
   30893              : #line 18404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30894              : (TARGET_SSE4_1 && ix86_pre_reload_split ()) && 
   30895              : #line 18406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30896              : ( 1)))
   30897              :                     return NULL;
   30898              :                   return gen_split_3383 (insn, operands);
   30899              : 
   30900              :                 case E_V4DImode:
   30901              :                   if (pattern1155 (x2, 
   30902              : E_V4DImode) != 0
   30903              :                       || !((
   30904              : #line 18404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30905              : (TARGET_SSE4_1 && ix86_pre_reload_split ()) && 
   30906              : #line 587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30907              : (TARGET_AVX2)) && 
   30908              : #line 18406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30909              : ( 1)))
   30910              :                     return NULL;
   30911              :                   return gen_split_3384 (insn, operands);
   30912              : 
   30913              :                 case E_V2DImode:
   30914              :                   if (pattern1155 (x2, 
   30915              : E_V2DImode) != 0
   30916              :                       || !(
   30917              : #line 18404 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30918              : (TARGET_SSE4_1 && ix86_pre_reload_split ()) && 
   30919              : #line 18406 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30920              : ( 1)))
   30921              :                     return NULL;
   30922              :                   return gen_split_3385 (insn, operands);
   30923              : 
   30924              :                 default:
   30925              :                   return NULL;
   30926              :                 }
   30927              : 
   30928              :             default:
   30929              :               return NULL;
   30930              :             }
   30931              : 
   30932              :         default:
   30933              :           return NULL;
   30934              :         }
   30935              : 
   30936              :     case LT:
   30937              :       switch (pattern204 (x2))
   30938              :         {
   30939              :         case 0:
   30940              :           if (!((
   30941              : #line 17569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30942              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30943              : #line 732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30944              : (TARGET_AVX2)) && 
   30945              : #line 17571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30946              : ( 1)))
   30947              :             return NULL;
   30948              :           return gen_split_3326 (insn, operands);
   30949              : 
   30950              :         case 1:
   30951              :           if (!(
   30952              : #line 17569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30953              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30954              : #line 17571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30955              : ( 1)))
   30956              :             return NULL;
   30957              :           return gen_split_3327 (insn, operands);
   30958              : 
   30959              :         case 2:
   30960              :           if (!((
   30961              : #line 17569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30962              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30963              : #line 733 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30964              : (TARGET_AVX2)) && 
   30965              : #line 17571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30966              : ( 1)))
   30967              :             return NULL;
   30968              :           return gen_split_3328 (insn, operands);
   30969              : 
   30970              :         case 3:
   30971              :           if (!(
   30972              : #line 17569 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30973              : (TARGET_SSE2 && ix86_pre_reload_split ()) && 
   30974              : #line 17571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30975              : ( 1)))
   30976              :             return NULL;
   30977              :           return gen_split_3329 (insn, operands);
   30978              : 
   30979              :         default:
   30980              :           return NULL;
   30981              :         }
   30982              : 
   30983              :     case ASHIFT:
   30984              :       switch (pattern246 (x2))
   30985              :         {
   30986              :         case 0:
   30987              :           if (!(
   30988              : #line 17836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30989              : (TARGET_AVX512F && GET_MODE_UNIT_BITSIZE (V32HImode)
   30990              :    > INTVAL (XVECEXP (operands[2], 0, 0))) && 
   30991              : #line 773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30992              : (TARGET_AVX512BW)))
   30993              :             return NULL;
   30994              :           return gen_split_3358 (insn, operands);
   30995              : 
   30996              :         case 1:
   30997              :           if (!
   30998              : #line 17836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   30999              : (TARGET_AVX512F && GET_MODE_UNIT_BITSIZE (V16SImode)
   31000              :    > INTVAL (XVECEXP (operands[2], 0, 0))))
   31001              :             return NULL;
   31002              :           return gen_split_3361 (insn, operands);
   31003              : 
   31004              :         case 2:
   31005              :           if (!
   31006              : #line 17836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31007              : (TARGET_AVX512F && GET_MODE_UNIT_BITSIZE (V8DImode)
   31008              :    > INTVAL (XVECEXP (operands[2], 0, 0))))
   31009              :             return NULL;
   31010              :           return gen_split_3364 (insn, operands);
   31011              : 
   31012              :         case 3:
   31013              :           if (!(
   31014              : #line 17895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31015              : (TARGET_SSE2 && TARGET_64BIT
   31016              :    && ix86_pre_reload_split ()) && 
   31017              : #line 17898 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31018              : ( 1)))
   31019              :             return NULL;
   31020              :           return gen_split_3367 (insn, operands);
   31021              : 
   31022              :         default:
   31023              :           return NULL;
   31024              :         }
   31025              : 
   31026              :     case LSHIFTRT:
   31027              :       switch (pattern246 (x2))
   31028              :         {
   31029              :         case 0:
   31030              :           if (!(
   31031              : #line 17836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31032              : (TARGET_AVX512F && GET_MODE_UNIT_BITSIZE (V32HImode)
   31033              :    > INTVAL (XVECEXP (operands[2], 0, 0))) && 
   31034              : #line 773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31035              : (TARGET_AVX512BW)))
   31036              :             return NULL;
   31037              :           return gen_split_3359 (insn, operands);
   31038              : 
   31039              :         case 1:
   31040              :           if (!
   31041              : #line 17836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31042              : (TARGET_AVX512F && GET_MODE_UNIT_BITSIZE (V16SImode)
   31043              :    > INTVAL (XVECEXP (operands[2], 0, 0))))
   31044              :             return NULL;
   31045              :           return gen_split_3362 (insn, operands);
   31046              : 
   31047              :         case 2:
   31048              :           if (!
   31049              : #line 17836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31050              : (TARGET_AVX512F && GET_MODE_UNIT_BITSIZE (V8DImode)
   31051              :    > INTVAL (XVECEXP (operands[2], 0, 0))))
   31052              :             return NULL;
   31053              :           return gen_split_3365 (insn, operands);
   31054              : 
   31055              :         case 3:
   31056              :           if (!(
   31057              : #line 17924 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31058              : (TARGET_SSE2 && TARGET_64BIT
   31059              :    && ix86_pre_reload_split ()) && 
   31060              : #line 17927 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31061              : ( 1)))
   31062              :             return NULL;
   31063              :           return gen_split_3368 (insn, operands);
   31064              : 
   31065              :         default:
   31066              :           return NULL;
   31067              :         }
   31068              : 
   31069              :     case ASHIFTRT:
   31070              :       x3 = XEXP (x2, 0);
   31071              :       operands[1] = x3;
   31072              :       x6 = XEXP (x2, 1);
   31073              :       operands[2] = x6;
   31074              :       switch (GET_CODE (operands[2]))
   31075              :         {
   31076              :         case CONST_VECTOR:
   31077              :           switch (GET_MODE (operands[0]))
   31078              :             {
   31079              :             case E_V32HImode:
   31080              :               if (pattern245 (x2, 
   31081              : E_V32HImode) == 0
   31082              :                   && (
   31083              : #line 17836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31084              : (TARGET_AVX512F && GET_MODE_UNIT_BITSIZE (V32HImode)
   31085              :    > INTVAL (XVECEXP (operands[2], 0, 0))) && 
   31086              : #line 773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31087              : (TARGET_AVX512BW)))
   31088              :                 return gen_split_3360 (insn, operands);
   31089              :               break;
   31090              : 
   31091              :             case E_V16SImode:
   31092              :               if (pattern245 (x2, 
   31093              : E_V16SImode) == 0
   31094              :                   && 
   31095              : #line 17836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31096              : (TARGET_AVX512F && GET_MODE_UNIT_BITSIZE (V16SImode)
   31097              :    > INTVAL (XVECEXP (operands[2], 0, 0))))
   31098              :                 return gen_split_3363 (insn, operands);
   31099              :               break;
   31100              : 
   31101              :             case E_V8DImode:
   31102              :               if (pattern245 (x2, 
   31103              : E_V8DImode) == 0
   31104              :                   && 
   31105              : #line 17836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31106              : (TARGET_AVX512F && GET_MODE_UNIT_BITSIZE (V8DImode)
   31107              :    > INTVAL (XVECEXP (operands[2], 0, 0))))
   31108              :                 return gen_split_3366 (insn, operands);
   31109              :               break;
   31110              : 
   31111              :             default:
   31112              :               break;
   31113              :             }
   31114              :           break;
   31115              : 
   31116              :         case CONST_INT:
   31117              :           if (const_0_to_255_operand (operands[2], E_SImode)
   31118              :               && register_operand (operands[0], E_V1TImode)
   31119              :               && GET_MODE (x2) == E_V1TImode
   31120              :               && register_operand (operands[1], E_V1TImode)
   31121              :               && (
   31122              : #line 17954 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31123              : (TARGET_SSE2 && TARGET_64BIT
   31124              :    && ix86_pre_reload_split ()) && 
   31125              : #line 17957 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31126              : ( 1)))
   31127              :             return gen_split_3369 (insn, operands);
   31128              :           break;
   31129              : 
   31130              :         default:
   31131              :           break;
   31132              :         }
   31133              :       if (!nonmemory_operand (operands[2], E_DImode)
   31134              :           || !register_operand (operands[0], E_V2DImode)
   31135              :           || GET_MODE (x2) != E_V2DImode
   31136              :           || !register_operand (operands[1], E_V2DImode)
   31137              :           || !(
   31138              : #line 27909 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31139              : (TARGET_SSE2 && !TARGET_AVX512VL && ix86_pre_reload_split ()) && 
   31140              : #line 27911 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31141              : ( 1)))
   31142              :         return NULL;
   31143              :       return gen_split_3847 (insn, operands);
   31144              : 
   31145              :     case ROTATE:
   31146              :       if (pattern247 (x2) != 0
   31147              :           || !(
   31148              : #line 17995 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31149              : (TARGET_SSE2 && TARGET_64BIT
   31150              :    && ix86_pre_reload_split ()) && 
   31151              : #line 17998 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31152              : ( 1)))
   31153              :         return NULL;
   31154              :       return gen_split_3376 (insn, operands);
   31155              : 
   31156              :     case ROTATERT:
   31157              :       if (pattern247 (x2) != 0
   31158              :           || !(
   31159              : #line 18024 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31160              : (TARGET_SSE2 && TARGET_64BIT
   31161              :    && ix86_pre_reload_split ()) && 
   31162              : #line 18027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31163              : ( 1)))
   31164              :         return NULL;
   31165              :       return gen_split_3377 (insn, operands);
   31166              : 
   31167              :     case VEC_DUPLICATE:
   31168              :       return split_86 (x1, insn);
   31169              : 
   31170              :     case SIGN_EXTEND:
   31171              :       x3 = XEXP (x2, 0);
   31172              :       if (pattern248 (x3) != 0)
   31173              :         return NULL;
   31174              :       switch (pattern693 (x2))
   31175              :         {
   31176              :         case 0:
   31177              :           if (!(
   31178              : #line 24813 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31179              : (TARGET_SSE4_1
   31180              :    && ix86_pre_reload_split ()) && 
   31181              : #line 24816 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31182              : ( 1)))
   31183              :             return NULL;
   31184              :           return gen_split_3630 (insn, operands);
   31185              : 
   31186              :         case 1:
   31187              :           if (!(
   31188              : #line 24994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31189              : (TARGET_AVX2
   31190              :    && ix86_pre_reload_split ()) && 
   31191              : #line 24997 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31192              : ( 1)))
   31193              :             return NULL;
   31194              :           return gen_split_3638 (insn, operands);
   31195              : 
   31196              :         case 2:
   31197              :           if (!(
   31198              : #line 25447 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31199              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   31200              : #line 25449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31201              : ( 1)))
   31202              :             return NULL;
   31203              :           return gen_split_3664 (insn, operands);
   31204              : 
   31205              :         case 3:
   31206              :           if (!(
   31207              : #line 25290 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31208              : (TARGET_SSE4_1
   31209              :    && ix86_pre_reload_split ()) && 
   31210              : #line 25293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31211              : ( 1)))
   31212              :             return NULL;
   31213              :           return gen_split_3656 (insn, operands);
   31214              : 
   31215              :         case 4:
   31216              :           if (!(
   31217              : #line 25709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31218              : (TARGET_AVX2
   31219              :    && ix86_pre_reload_split ()) && 
   31220              : #line 25712 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31221              : ( 1)))
   31222              :             return NULL;
   31223              :           return gen_split_3675 (insn, operands);
   31224              : 
   31225              :         case 5:
   31226              :           if (!(
   31227              : #line 25993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31228              : (TARGET_SSE4_1
   31229              :    && ix86_pre_reload_split ()) && 
   31230              : #line 25996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31231              : ( 1)))
   31232              :             return NULL;
   31233              :           return gen_split_3687 (insn, operands);
   31234              : 
   31235              :         case 6:
   31236              :           if ((
   31237              : #line 25088 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31238              : (TARGET_SSE4_1 && 1
   31239              :    && ix86_pre_reload_split ()) && 
   31240              : #line 25091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31241              : ( 1)))
   31242              :             return gen_split_3642 (insn, operands);
   31243              :           if (!(
   31244              : #line 25088 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31245              : (TARGET_SSE4_1 && TARGET_AVX512VL
   31246              :    && ix86_pre_reload_split ()) && 
   31247              : #line 25091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31248              : ( 1)))
   31249              :             return NULL;
   31250              :           return gen_split_3643 (insn, operands);
   31251              : 
   31252              :         case 7:
   31253              :           if (!(
   31254              : #line 25536 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31255              : (TARGET_AVX2
   31256              :    && ix86_pre_reload_split ()) && 
   31257              : #line 25539 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31258              : ( 1)))
   31259              :             return NULL;
   31260              :           return gen_split_3668 (insn, operands);
   31261              : 
   31262              :         case 8:
   31263              :           if (!(
   31264              : #line 25799 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31265              : (TARGET_SSE4_1
   31266              :    && ix86_pre_reload_split ()) && 
   31267              : #line 25802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31268              : ( 1)))
   31269              :             return NULL;
   31270              :           return gen_split_3679 (insn, operands);
   31271              : 
   31272              :         default:
   31273              :           return NULL;
   31274              :         }
   31275              : 
   31276              :     case ZERO_EXTEND:
   31277              :       x3 = XEXP (x2, 0);
   31278              :       if (pattern248 (x3) != 0)
   31279              :         return NULL;
   31280              :       x7 = XEXP (x3, 0);
   31281              :       x11 = XEXP (x7, 0);
   31282              :       switch (GET_CODE (x11))
   31283              :         {
   31284              :         case VEC_CONCAT:
   31285              :           switch (pattern691 (x2))
   31286              :             {
   31287              :             case 0:
   31288              :               if (!(
   31289              : #line 24813 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31290              : (TARGET_SSE4_1
   31291              :    && ix86_pre_reload_split ()) && 
   31292              : #line 24816 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31293              : ( 1)))
   31294              :                 return NULL;
   31295              :               return gen_split_3631 (insn, operands);
   31296              : 
   31297              :             case 1:
   31298              :               if (!(
   31299              : #line 24994 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31300              : (TARGET_AVX2
   31301              :    && ix86_pre_reload_split ()) && 
   31302              : #line 24997 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31303              : ( 1)))
   31304              :                 return NULL;
   31305              :               return gen_split_3639 (insn, operands);
   31306              : 
   31307              :             case 2:
   31308              :               if (!(
   31309              : #line 25447 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31310              : (TARGET_AVX512F && ix86_pre_reload_split ()) && 
   31311              : #line 25449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31312              : ( 1)))
   31313              :                 return NULL;
   31314              :               return gen_split_3665 (insn, operands);
   31315              : 
   31316              :             case 3:
   31317              :               if (!(
   31318              : #line 25290 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31319              : (TARGET_SSE4_1
   31320              :    && ix86_pre_reload_split ()) && 
   31321              : #line 25293 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31322              : ( 1)))
   31323              :                 return NULL;
   31324              :               return gen_split_3657 (insn, operands);
   31325              : 
   31326              :             case 4:
   31327              :               if (!(
   31328              : #line 25709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31329              : (TARGET_AVX2
   31330              :    && ix86_pre_reload_split ()) && 
   31331              : #line 25712 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31332              : ( 1)))
   31333              :                 return NULL;
   31334              :               return gen_split_3676 (insn, operands);
   31335              : 
   31336              :             case 5:
   31337              :               if (!(
   31338              : #line 25993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31339              : (TARGET_SSE4_1
   31340              :    && ix86_pre_reload_split ()) && 
   31341              : #line 25996 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31342              : ( 1)))
   31343              :                 return NULL;
   31344              :               return gen_split_3688 (insn, operands);
   31345              : 
   31346              :             default:
   31347              :               return NULL;
   31348              :             }
   31349              : 
   31350              :         case VEC_MERGE:
   31351              :           x13 = XEXP (x11, 0);
   31352              :           if (GET_CODE (x13) != VEC_DUPLICATE)
   31353              :             return NULL;
   31354              :           if (GET_MODE (x13) == E_V4SImode)
   31355              :             {
   31356              :               switch (pattern1045 (x2))
   31357              :                 {
   31358              :                 case 0:
   31359              :                   if ((
   31360              : #line 25088 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31361              : (TARGET_SSE4_1 && 1
   31362              :    && ix86_pre_reload_split ()) && 
   31363              : #line 25091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31364              : ( 1)))
   31365              :                     return gen_split_3644 (insn, operands);
   31366              :                   if ((
   31367              : #line 25088 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31368              : (TARGET_SSE4_1 && TARGET_AVX512VL
   31369              :    && ix86_pre_reload_split ()) && 
   31370              : #line 25091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31371              : ( 1)))
   31372              :                     return gen_split_3645 (insn, operands);
   31373              :                   break;
   31374              : 
   31375              :                 case 1:
   31376              :                   if ((
   31377              : #line 25536 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31378              : (TARGET_AVX2
   31379              :    && ix86_pre_reload_split ()) && 
   31380              : #line 25539 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31381              : ( 1)))
   31382              :                     return gen_split_3669 (insn, operands);
   31383              :                   break;
   31384              : 
   31385              :                 case 2:
   31386              :                   if ((
   31387              : #line 25799 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31388              : (TARGET_SSE4_1
   31389              :    && ix86_pre_reload_split ()) && 
   31390              : #line 25802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31391              : ( 1)))
   31392              :                     return gen_split_3680 (insn, operands);
   31393              :                   break;
   31394              : 
   31395              :                 default:
   31396              :                   break;
   31397              :                 }
   31398              :             }
   31399              :           x14 = XEXP (x11, 2);
   31400              :           if (x14 != const_int_rtx[MAX_SAVED_CONST_INT + 1])
   31401              :             return NULL;
   31402              :           switch (pattern1046 (x2))
   31403              :             {
   31404              :             case 0:
   31405              :               if (!(
   31406              : #line 25643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31407              : (TARGET_SSE4_1 && ix86_pre_reload_split ()) && 
   31408              : #line 25645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31409              : ( 1)))
   31410              :                 return NULL;
   31411              :               return gen_split_3672 (insn, operands);
   31412              : 
   31413              :             case 1:
   31414              :               if (!(
   31415              : #line 25643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31416              : (TARGET_SSE4_1 && ix86_pre_reload_split ()) && 
   31417              : #line 25645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31418              : ( 1)))
   31419              :                 return NULL;
   31420              :               return gen_split_3673 (insn, operands);
   31421              : 
   31422              :             case 2:
   31423              :               if (!(
   31424              : #line 25643 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31425              : (TARGET_SSE4_1 && ix86_pre_reload_split ()) && 
   31426              : #line 25645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
   31427              : ( 1)))
   31428              :                 return NULL;
   31429              :               return gen_split_3674 (insn, operands);
   31430              : 
   31431              :             default:
   31432              :               return NULL;
   31433              :             }
   31434              : 
   31435              :         default:
   31436              :           return NULL;
   31437              :         }
   31438              : 
   31439              :     default:
   31440              :       return NULL;
   31441              :     }
   31442              : }
   31443              : 
   31444              :  rtx_insn *
   31445              : peephole2_12 (rtx x1 ATTRIBUTE_UNUSED,
   31446              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31447              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31448              : {
   31449              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31450              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31451              :   rtx x10, x11, x12, x13, x14;
   31452              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31453              :   x2 = PATTERN (peep2_next_insn (1));
   31454              :   x3 = XEXP (x2, 1);
   31455              :   if (GET_CODE (x3) != IOR
   31456              :       || GET_MODE (x3) != E_SImode)
   31457              :     return NULL;
   31458              :   x4 = XEXP (x3, 0);
   31459              :   if (GET_CODE (x4) != AND
   31460              :       || GET_MODE (x4) != E_SImode)
   31461              :     return NULL;
   31462              :   x5 = XEXP (x4, 1);
   31463              :   if (GET_CODE (x5) != CONST_INT
   31464              :       || XWINT (x5, 0) != -65536L)
   31465              :     return NULL;
   31466              :   x6 = XEXP (x3, 1);
   31467              :   if (GET_CODE (x6) != LSHIFTRT
   31468              :       || GET_MODE (x6) != E_SImode)
   31469              :     return NULL;
   31470              :   x7 = XEXP (x6, 0);
   31471              :   if (GET_CODE (x7) != BSWAP
   31472              :       || GET_MODE (x7) != E_SImode)
   31473              :     return NULL;
   31474              :   x8 = XEXP (x6, 1);
   31475              :   if (x8 != const_int_rtx[MAX_SAVED_CONST_INT + 16])
   31476              :     return NULL;
   31477              :   x9 = XEXP (x4, 0);
   31478              :   if (!rtx_equal_p (x9, operands[0]))
   31479              :     return NULL;
   31480              :   x10 = XEXP (x7, 0);
   31481              :   if (!rtx_equal_p (x10, operands[0]))
   31482              :     return NULL;
   31483              :   x11 = XEXP (x2, 0);
   31484              :   if (!rtx_equal_p (x11, operands[0]))
   31485              :     return NULL;
   31486              :   x12 = PATTERN (peep2_next_insn (2));
   31487              :   if (GET_CODE (x12) != SET)
   31488              :     return NULL;
   31489              :   x13 = XEXP (x12, 0);
   31490              :   operands[2] = x13;
   31491              :   if (!general_reg_operand (operands[2], E_SImode))
   31492              :     return NULL;
   31493              :   x14 = XEXP (x12, 1);
   31494              :   if (!rtx_equal_p (x14, operands[0])
   31495              :       || !
   31496              : #line 23701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31497              : (!(TARGET_USE_XCHGB ||
   31498              :      TARGET_PARTIAL_REG_STALL || optimize_function_for_size_p (cfun))
   31499              :    && peep2_regno_dead_p (0, FLAGS_REG)
   31500              :    && peep2_reg_dead_p(3, operands[0])))
   31501              :     return NULL;
   31502              :   *pmatch_len_ = 2;
   31503              :   return gen_peephole2_216 (insn, operands);
   31504              : }
   31505              : 
   31506              :  rtx_insn *
   31507              : peephole2_14 (rtx x1 ATTRIBUTE_UNUSED,
   31508              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31509              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31510              : {
   31511              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31512              :   rtx x2, x3;
   31513              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31514              :   x2 = PATTERN (peep2_next_insn (1));
   31515              :   if (GET_CODE (x2) != SET)
   31516              :     return NULL;
   31517              :   x3 = XEXP (x2, 0);
   31518              :   if (!general_reg_operand (x3, E_SImode))
   31519              :     return NULL;
   31520              :   operands[8] = x3;
   31521              :   switch (pattern965 (x1, 
   31522              : E_SImode, 
   31523              : E_DImode))
   31524              :     {
   31525              :     case 0:
   31526              :       if (
   31527              : #line 10377 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31528              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31529              :    && peep2_reg_dead_p (4, operands[0])
   31530              :    && peep2_reg_dead_p (3, operands[2])
   31531              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31532              :    && !reg_overlap_mentioned_p (operands[2], operands[1])
   31533              :    && !reg_overlap_mentioned_p (operands[6], operands[9])
   31534              :    && (rtx_equal_p (operands[6], operands[0])
   31535              :        ? (rtx_equal_p (operands[7], operands[1])
   31536              :           && rtx_equal_p (operands[8], operands[2]))
   31537              :        : (rtx_equal_p (operands[8], operands[0])
   31538              :           && rtx_equal_p (operands[9], operands[1])
   31539              :           && rtx_equal_p (operands[6], operands[2])))))
   31540              :         {
   31541              :           *pmatch_len_ = 3;
   31542              :           res = gen_peephole2_120 (insn, operands);
   31543              :           if (res != NULL_RTX)
   31544              :             return res;
   31545              :         }
   31546              :       break;
   31547              : 
   31548              :     case 1:
   31549              :       if (
   31550              : #line 10432 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31551              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   31552              :    && peep2_reg_dead_p (6, operands[0])
   31553              :    && peep2_reg_dead_p (3, operands[2])
   31554              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   31555              :    && !reg_overlap_mentioned_p (operands[2], operands[1])
   31556              :    && !reg_overlap_mentioned_p (operands[6], operands[9])
   31557              :    && !reg_overlap_mentioned_p (operands[0], operands[10])
   31558              :    && !reg_overlap_mentioned_p (operands[10], operands[1])
   31559              :    && !reg_overlap_mentioned_p (operands[0], operands[11])
   31560              :    && !reg_overlap_mentioned_p (operands[11], operands[1])
   31561              :    && (rtx_equal_p (operands[6], operands[0])
   31562              :        ? (rtx_equal_p (operands[7], operands[1])
   31563              :           && rtx_equal_p (operands[8], operands[2]))
   31564              :        : (rtx_equal_p (operands[8], operands[0])
   31565              :           && rtx_equal_p (operands[9], operands[1])
   31566              :           && rtx_equal_p (operands[6], operands[2])))))
   31567              :         {
   31568              :           *pmatch_len_ = 5;
   31569              :           res = gen_peephole2_122 (insn, operands);
   31570              :           if (res != NULL_RTX)
   31571              :             return res;
   31572              :         }
   31573              :       break;
   31574              : 
   31575              :     default:
   31576              :       break;
   31577              :     }
   31578              :   operands[0] = x3;
   31579              :   if (pattern968 (x1, 
   31580              : E_SImode) != 0
   31581              :       || !
   31582              : #line 27679 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31583              : (TARGET_CMOVE
   31584              :   && REGNO (operands[2]) != REGNO (operands[0])
   31585              :   && REGNO (operands[2]) != REGNO (operands[1])
   31586              :   && peep2_reg_dead_p (2, operands[1])
   31587              :   && peep2_reg_dead_p (4, operands[2])
   31588              :   && !reg_overlap_mentioned_p (operands[0], operands[3])
   31589              :   && !reg_mentioned_p (operands[2], operands[6])))
   31590              :     return NULL;
   31591              :   *pmatch_len_ = 3;
   31592              :   return gen_peephole2_231 (insn, operands);
   31593              : }
   31594              : 
   31595              :  rtx_insn *
   31596              : peephole2_16 (rtx x1 ATTRIBUTE_UNUSED,
   31597              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31598              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31599              : {
   31600              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31601              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31602              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31603              :   if (address_no_seg_operand (operands[1], E_DImode)
   31604              :       && (
   31605              : #line 6507 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31606              : (ix86_hardreg_mov_ok (operands[0], operands[1])
   31607              :    && peep2_regno_dead_p (0, FLAGS_REG)
   31608              :    && ix86_avoid_lea_for_addr (peep2_next_insn (0), operands)) && 
   31609              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31610              : (TARGET_64BIT)))
   31611              :     {
   31612              :       *pmatch_len_ = 0;
   31613              :       res = gen_peephole2_65 (insn, operands);
   31614              :       if (res != NULL_RTX)
   31615              :         return res;
   31616              :     }
   31617              :   if (peep2_current_count < 2
   31618              :       || !memory_operand (operands[1], E_DImode))
   31619              :     return NULL;
   31620              :   x2 = PATTERN (peep2_next_insn (1));
   31621              :   switch (GET_CODE (x2))
   31622              :     {
   31623              :     case CALL:
   31624              :       x3 = XEXP (x2, 0);
   31625              :       if (GET_CODE (x3) != MEM
   31626              :           || GET_MODE (x3) != E_QImode)
   31627              :         return NULL;
   31628              :       x4 = XEXP (x2, 1);
   31629              :       operands[3] = x4;
   31630              :       x5 = XEXP (x3, 0);
   31631              :       if (!rtx_equal_p (x5, operands[0])
   31632              :           || !(
   31633              : #line 21192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31634              : (!TARGET_X32 && !TARGET_INDIRECT_BRANCH_REGISTER
   31635              :    && SIBLING_CALL_P (peep2_next_insn (1))
   31636              :    && !reg_mentioned_p (operands[0],
   31637              :                         CALL_INSN_FUNCTION_USAGE (peep2_next_insn (1)))) && 
   31638              : #line 1434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31639              : (word_mode == DImode)))
   31640              :         return NULL;
   31641              :       *pmatch_len_ = 1;
   31642              :       return gen_peephole2_201 (insn, operands);
   31643              : 
   31644              :     case UNSPEC_VOLATILE:
   31645              :       if (pattern853 (x2) != 0)
   31646              :         return NULL;
   31647              :       x6 = PATTERN (peep2_next_insn (2));
   31648              :       switch (GET_CODE (x6))
   31649              :         {
   31650              :         case CALL:
   31651              :           x7 = XEXP (x6, 0);
   31652              :           if (GET_CODE (x7) != MEM
   31653              :               || GET_MODE (x7) != E_QImode)
   31654              :             return NULL;
   31655              :           x8 = XEXP (x6, 1);
   31656              :           operands[3] = x8;
   31657              :           x9 = XEXP (x7, 0);
   31658              :           if (!rtx_equal_p (x9, operands[0])
   31659              :               || !(
   31660              : #line 21206 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31661              : (!TARGET_X32 && !TARGET_INDIRECT_BRANCH_REGISTER
   31662              :    && SIBLING_CALL_P (peep2_next_insn (2))
   31663              :    && !reg_mentioned_p (operands[0],
   31664              :                         CALL_INSN_FUNCTION_USAGE (peep2_next_insn (2)))) && 
   31665              : #line 1434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31666              : (word_mode == DImode)))
   31667              :             return NULL;
   31668              :           *pmatch_len_ = 2;
   31669              :           return gen_peephole2_203 (insn, operands);
   31670              : 
   31671              :         case SET:
   31672              :           if (pattern1352 (x6) != 0
   31673              :               || !(
   31674              : #line 21413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31675              : (!TARGET_X32 && !TARGET_INDIRECT_BRANCH_REGISTER
   31676              :    && SIBLING_CALL_P (peep2_next_insn (2))
   31677              :    && !reg_mentioned_p (operands[0],
   31678              :                         CALL_INSN_FUNCTION_USAGE (peep2_next_insn (2)))) && 
   31679              : #line 1434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31680              : (word_mode == DImode)))
   31681              :             return NULL;
   31682              :           *pmatch_len_ = 2;
   31683              :           return gen_peephole2_211 (insn, operands);
   31684              : 
   31685              :         default:
   31686              :           return NULL;
   31687              :         }
   31688              : 
   31689              :     case SET:
   31690              :       switch (pattern854 (x2))
   31691              :         {
   31692              :         case 0:
   31693              :           if (!(
   31694              : #line 21303 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31695              : (!TARGET_X32 && !TARGET_INDIRECT_BRANCH_REGISTER
   31696              :    && peep2_reg_dead_p (2, operands[0])) && 
   31697              : #line 1434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31698              : (word_mode == DImode)))
   31699              :             return NULL;
   31700              :           *pmatch_len_ = 1;
   31701              :           return gen_peephole2_207 (insn, operands);
   31702              : 
   31703              :         case 1:
   31704              :           if (!(
   31705              : #line 21397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31706              : (!TARGET_X32 && !TARGET_INDIRECT_BRANCH_REGISTER
   31707              :    && SIBLING_CALL_P (peep2_next_insn (1))
   31708              :    && !reg_mentioned_p (operands[0],
   31709              :                         CALL_INSN_FUNCTION_USAGE (peep2_next_insn (1)))) && 
   31710              : #line 1434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31711              : (word_mode == DImode)))
   31712              :             return NULL;
   31713              :           *pmatch_len_ = 1;
   31714              :           return gen_peephole2_209 (insn, operands);
   31715              : 
   31716              :         default:
   31717              :           return NULL;
   31718              :         }
   31719              : 
   31720              :     default:
   31721              :       return NULL;
   31722              :     }
   31723              : }
   31724              : 
   31725              :  rtx_insn *
   31726              : peephole2_20 (rtx x1 ATTRIBUTE_UNUSED,
   31727              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31728              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31729              : {
   31730              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31731              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31732              :   rtx x10, x11, x12, x13, x14, x15, x16, x17;
   31733              :   rtx x18, x19, x20;
   31734              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31735              :   x2 = PATTERN (peep2_next_insn (1));
   31736              :   if (GET_CODE (x2) != SET)
   31737              :     return NULL;
   31738              :   x3 = XEXP (x2, 1);
   31739              :   if (!ix86_comparison_operator (x3, E_QImode))
   31740              :     return NULL;
   31741              :   x4 = XEXP (x3, 0);
   31742              :   if (GET_CODE (x4) != REG
   31743              :       || REGNO (x4) != 17)
   31744              :     return NULL;
   31745              :   x5 = XEXP (x3, 1);
   31746              :   if (x5 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   31747              :     return NULL;
   31748              :   x6 = XEXP (x2, 0);
   31749              :   switch (GET_CODE (x6))
   31750              :     {
   31751              :     case REG:
   31752              :     case SUBREG:
   31753              :       operands[1] = x6;
   31754              :       if (!register_operand (operands[1], E_QImode))
   31755              :         return NULL;
   31756              :       operands[2] = x3;
   31757              :       x7 = PATTERN (peep2_next_insn (2));
   31758              :       switch (GET_CODE (x7))
   31759              :         {
   31760              :         case SET:
   31761              :           x8 = XEXP (x7, 1);
   31762              :           if (GET_CODE (x8) != ZERO_EXTEND)
   31763              :             return NULL;
   31764              :           x9 = XEXP (x7, 0);
   31765              :           operands[3] = x9;
   31766              :           if (!any_QIreg_operand (operands[3], E_VOIDmode))
   31767              :             return NULL;
   31768              :           x10 = XEXP (x8, 0);
   31769              :           if (!rtx_equal_p (x10, operands[1])
   31770              :               || !
   31771              : #line 20937 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31772              : ((peep2_reg_dead_p (3, operands[1])
   31773              :     || operands_match_p (operands[1], operands[3]))
   31774              :    && ! reg_overlap_mentioned_p (operands[3], operands[0])
   31775              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   31776              :             return NULL;
   31777              :           *pmatch_len_ = 2;
   31778              :           return gen_peephole2_193 (insn, operands);
   31779              : 
   31780              :         case PARALLEL:
   31781              :           if (XVECLEN (x7, 0) != 2)
   31782              :             return NULL;
   31783              :           x11 = XVECEXP (x7, 0, 0);
   31784              :           if (GET_CODE (x11) != SET)
   31785              :             return NULL;
   31786              :           x12 = XEXP (x11, 1);
   31787              :           if (GET_CODE (x12) != AND
   31788              :               || GET_MODE (x12) != E_SImode)
   31789              :             return NULL;
   31790              :           x13 = XEXP (x12, 1);
   31791              :           if (GET_CODE (x13) != CONST_INT
   31792              :               || XWINT (x13, 0) != 255L
   31793              :               || pattern1753 (x7, 
   31794              : E_SImode) != 0)
   31795              :             return NULL;
   31796              :           x14 = XEXP (x12, 0);
   31797              :           if (!rtx_equal_p (x14, operands[3])
   31798              :               || !
   31799              : #line 21009 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31800              : (REGNO (operands[1]) == REGNO (operands[3])
   31801              :    && ! reg_overlap_mentioned_p (operands[3], operands[0])
   31802              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   31803              :             return NULL;
   31804              :           *pmatch_len_ = 2;
   31805              :           return gen_peephole2_196 (insn, operands);
   31806              : 
   31807              :         default:
   31808              :           return NULL;
   31809              :         }
   31810              : 
   31811              :     case STRICT_LOW_PART:
   31812              :       if (peep2_current_count < 4)
   31813              :         return NULL;
   31814              :       x15 = XEXP (x6, 0);
   31815              :       operands[5] = x15;
   31816              :       if (!register_operand (operands[5], E_QImode))
   31817              :         return NULL;
   31818              :       operands[6] = x3;
   31819              :       x7 = PATTERN (peep2_next_insn (2));
   31820              :       if (GET_CODE (x7) != SET)
   31821              :         return NULL;
   31822              :       x8 = XEXP (x7, 1);
   31823              :       if (!ix86_comparison_operator (x8, E_QImode))
   31824              :         return NULL;
   31825              :       operands[2] = x8;
   31826              :       x10 = XEXP (x8, 0);
   31827              :       if (GET_CODE (x10) != REG
   31828              :           || REGNO (x10) != 17)
   31829              :         return NULL;
   31830              :       x16 = XEXP (x8, 1);
   31831              :       if (x16 != const_int_rtx[MAX_SAVED_CONST_INT + 0])
   31832              :         return NULL;
   31833              :       x9 = XEXP (x7, 0);
   31834              :       operands[1] = x9;
   31835              :       if (!register_operand (operands[1], E_QImode))
   31836              :         return NULL;
   31837              :       x17 = PATTERN (peep2_next_insn (3));
   31838              :       if (GET_CODE (x17) != SET)
   31839              :         return NULL;
   31840              :       x18 = XEXP (x17, 1);
   31841              :       if (GET_CODE (x18) != ZERO_EXTEND)
   31842              :         return NULL;
   31843              :       x19 = XEXP (x17, 0);
   31844              :       operands[3] = x19;
   31845              :       if (!any_QIreg_operand (operands[3], E_VOIDmode))
   31846              :         return NULL;
   31847              :       x20 = XEXP (x18, 0);
   31848              :       if (!rtx_equal_p (x20, operands[1])
   31849              :           || !
   31850              : #line 21082 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31851              : ((peep2_reg_dead_p (4, operands[1])
   31852              :     || operands_match_p (operands[1], operands[3]))
   31853              :    && ! reg_overlap_mentioned_p (operands[3], operands[0])
   31854              :    && ! reg_overlap_mentioned_p (operands[3], operands[5])
   31855              :    && ! reg_overlap_mentioned_p (operands[1], operands[5])
   31856              :    && peep2_regno_dead_p (0, FLAGS_REG)))
   31857              :         return NULL;
   31858              :       *pmatch_len_ = 3;
   31859              :       return gen_peephole2_199 (insn, operands);
   31860              : 
   31861              :     default:
   31862              :       return NULL;
   31863              :     }
   31864              : }
   31865              : 
   31866              :  rtx_insn *
   31867              : peephole2_25 (rtx x1 ATTRIBUTE_UNUSED,
   31868              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31869              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31870              : {
   31871              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31872              :   rtx x2, x3, x4, x5, x6, x7, x8, x9;
   31873              :   rtx x10;
   31874              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31875              :   x2 = XEXP (x1, 1);
   31876              :   operands[1] = x2;
   31877              :   if (memory_operand (operands[1], E_SImode)
   31878              :       && register_operand (operands[0], E_SImode))
   31879              :     {
   31880              :       res = peephole2_24 (x1, insn, pmatch_len_);
   31881              :       if (res != NULL_RTX)
   31882              :         return res;
   31883              :     }
   31884              :   if (peep2_current_count < 3
   31885              :       || peep2_current_count < 4
   31886              :       || !general_reg_operand (operands[1], E_SImode)
   31887              :       || !general_reg_operand (operands[0], E_SImode))
   31888              :     return NULL;
   31889              :   x3 = PATTERN (peep2_next_insn (1));
   31890              :   if (GET_CODE (x3) != PARALLEL
   31891              :       || XVECLEN (x3, 0) != 2)
   31892              :     return NULL;
   31893              :   x4 = XVECEXP (x3, 0, 0);
   31894              :   if (GET_CODE (x4) != SET)
   31895              :     return NULL;
   31896              :   x5 = XEXP (x4, 0);
   31897              :   if (GET_CODE (x5) != REG
   31898              :       || REGNO (x5) != 17)
   31899              :     return NULL;
   31900              :   x6 = XVECEXP (x3, 0, 1);
   31901              :   if (GET_CODE (x6) != SET)
   31902              :     return NULL;
   31903              :   x7 = XEXP (x4, 1);
   31904              :   operands[5] = x7;
   31905              :   x8 = XEXP (x6, 1);
   31906              :   operands[6] = x8;
   31907              :   x9 = XEXP (x6, 0);
   31908              :   if (!rtx_equal_p (x9, operands[0]))
   31909              :     return NULL;
   31910              :   x10 = PATTERN (peep2_next_insn (2));
   31911              :   if (GET_CODE (x10) != SET
   31912              :       || pattern1356 (x10, 
   31913              : E_SImode) != 0
   31914              :       || !
   31915              : #line 27645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31916              : (TARGET_CMOVE
   31917              :   && REGNO (operands[2]) != REGNO (operands[0])
   31918              :   && REGNO (operands[2]) != REGNO (operands[1])
   31919              :   && peep2_reg_dead_p (1, operands[1])
   31920              :   && peep2_reg_dead_p (4, operands[2])
   31921              :   && !reg_overlap_mentioned_p (operands[0], operands[3])))
   31922              :     return NULL;
   31923              :   *pmatch_len_ = 3;
   31924              :   return gen_peephole2_228 (insn, operands);
   31925              : }
   31926              : 
   31927              :  rtx_insn *
   31928              : peephole2_28 (rtx x1 ATTRIBUTE_UNUSED,
   31929              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   31930              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   31931              : {
   31932              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   31933              :   rtx x2, x3, x4, x5;
   31934              :   rtx_insn *res ATTRIBUTE_UNUSED;
   31935              :   if (peep2_current_count >= 2)
   31936              :     {
   31937              :       res = peephole2_25 (x1, insn, pmatch_len_);
   31938              :       if (res != NULL_RTX)
   31939              :         return res;
   31940              :     }
   31941              :   x2 = XEXP (x1, 1);
   31942              :   operands[1] = x2;
   31943              :   if (memory_operand (operands[1], E_SImode)
   31944              :       && push_operand (operands[0], E_SImode)
   31945              :       && 
   31946              : #line 29042 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31947              : (!(TARGET_PUSH_MEMORY || optimize_insn_for_size_p ())
   31948              :    && !RTX_FRAME_RELATED_P (peep2_next_insn (0))))
   31949              :     {
   31950              :       *pmatch_len_ = 0;
   31951              :       res = gen_peephole2_279 (insn, operands);
   31952              :       if (res != NULL_RTX)
   31953              :         return res;
   31954              :     }
   31955              :   if (peep2_current_count < 2)
   31956              :     return NULL;
   31957              :   if (general_reg_operand (operands[1], E_SImode))
   31958              :     {
   31959              :       x3 = PATTERN (peep2_next_insn (1));
   31960              :       if (pattern422 (x3, 
   31961              : E_SImode) == 0
   31962              :           && 
   31963              : #line 29244 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31964              : (REGNO (operands[0]) != REGNO (operands[1])
   31965              :    && (SImode != QImode
   31966              :        || any_QIreg_operand (operands[1], QImode))))
   31967              :         {
   31968              :           *pmatch_len_ = 1;
   31969              :           res = gen_peephole2_307 (insn, operands);
   31970              :           if (res != NULL_RTX)
   31971              :             return res;
   31972              :         }
   31973              :     }
   31974              :   if (peep2_current_count >= 3)
   31975              :     {
   31976              :       res = peephole2_27 (x1, insn, pmatch_len_);
   31977              :       if (res != NULL_RTX)
   31978              :         return res;
   31979              :     }
   31980              :   if (mmx_reg_operand (operands[1], E_VOIDmode)
   31981              :       && mmx_reg_operand (operands[0], E_VOIDmode))
   31982              :     {
   31983              :       x3 = PATTERN (peep2_next_insn (1));
   31984              :       if (pattern609 (x3) == 0
   31985              :           && 
   31986              : #line 29263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   31987              : (REGNO (operands[0]) != REGNO (operands[1])))
   31988              :         {
   31989              :           *pmatch_len_ = 1;
   31990              :           res = gen_peephole2_309 (insn, operands);
   31991              :           if (res != NULL_RTX)
   31992              :             return res;
   31993              :         }
   31994              :     }
   31995              :   if (sse_reg_operand (operands[1], E_VOIDmode)
   31996              :       && sse_reg_operand (operands[0], E_VOIDmode))
   31997              :     {
   31998              :       x3 = PATTERN (peep2_next_insn (1));
   31999              :       if (pattern609 (x3) == 0
   32000              :           && 
   32001              : #line 29275 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32002              : (REGNO (operands[0]) != REGNO (operands[1])
   32003              :    /* Punt if operands[1] is %[xy]mm16+ and AVX512BW is not enabled,
   32004              :       as EVEX encoded vpadd[bw], vpmullw, vpmin[su][bw] and vpmax[su][bw]
   32005              :       instructions require AVX512BW and AVX512VL, but with the original
   32006              :       instructions it might require just AVX512VL.
   32007              :       AVX512VL is implied from TARGET_HARD_REGNO_MODE_OK.  */
   32008              :    && (!EXT_REX_SSE_REGNO_P (REGNO (operands[1]))
   32009              :        || TARGET_AVX512BW
   32010              :        || GET_MODE_SIZE (GET_MODE_INNER (GET_MODE (operands[0]))) > 2
   32011              :        || logic_operator (operands[3], VOIDmode))))
   32012              :         {
   32013              :           *pmatch_len_ = 1;
   32014              :           res = gen_peephole2_310 (insn, operands);
   32015              :           if (res != NULL_RTX)
   32016              :             return res;
   32017              :         }
   32018              :     }
   32019              :   if (peep2_current_count >= 3
   32020              :       && peep2_current_count >= 4)
   32021              :     {
   32022              :       if (memory_operand (operands[1], E_QImode))
   32023              :         {
   32024              :           x3 = PATTERN (peep2_next_insn (1));
   32025              :           if (pattern738 (x3, 
   32026              : E_QImode) == 0
   32027              :               && 
   32028              : #line 29435 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32029              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32030              :    && REGNO (operands[4]) == REGNO (operands[0])
   32031              :    && REGNO (operands[5]) == REGNO (operands[3])
   32032              :    && peep2_reg_dead_p (4, operands[3])
   32033              :    && ((REGNO (operands[0]) == REGNO (operands[3]))
   32034              :        || peep2_reg_dead_p (2, operands[0]))
   32035              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   32036              :    && !reg_overlap_mentioned_p (operands[3], operands[1])
   32037              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   32038              :    && (QImode != QImode
   32039              :        || immediate_operand (operands[2], QImode)
   32040              :        || any_QIreg_operand (operands[2], QImode))
   32041              :    && ix86_match_ccmode (peep2_next_insn (3), CCGOCmode)))
   32042              :             {
   32043              :               *pmatch_len_ = 3;
   32044              :               res = gen_peephole2_331 (insn, operands);
   32045              :               if (res != NULL_RTX)
   32046              :                 return res;
   32047              :             }
   32048              :         }
   32049              :       if (memory_operand (operands[1], E_HImode))
   32050              :         {
   32051              :           x3 = PATTERN (peep2_next_insn (1));
   32052              :           if (pattern738 (x3, 
   32053              : E_HImode) == 0
   32054              :               && 
   32055              : #line 29435 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32056              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32057              :    && REGNO (operands[4]) == REGNO (operands[0])
   32058              :    && REGNO (operands[5]) == REGNO (operands[3])
   32059              :    && peep2_reg_dead_p (4, operands[3])
   32060              :    && ((REGNO (operands[0]) == REGNO (operands[3]))
   32061              :        || peep2_reg_dead_p (2, operands[0]))
   32062              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   32063              :    && !reg_overlap_mentioned_p (operands[3], operands[1])
   32064              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   32065              :    && (HImode != QImode
   32066              :        || immediate_operand (operands[2], QImode)
   32067              :        || any_QIreg_operand (operands[2], QImode))
   32068              :    && ix86_match_ccmode (peep2_next_insn (3), CCGOCmode)))
   32069              :             {
   32070              :               *pmatch_len_ = 3;
   32071              :               res = gen_peephole2_332 (insn, operands);
   32072              :               if (res != NULL_RTX)
   32073              :                 return res;
   32074              :             }
   32075              :         }
   32076              :       if (memory_operand (operands[1], E_SImode))
   32077              :         {
   32078              :           x3 = PATTERN (peep2_next_insn (1));
   32079              :           if (pattern739 (x3, 
   32080              : E_SImode) == 0
   32081              :               && 
   32082              : #line 29435 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32083              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32084              :    && REGNO (operands[4]) == REGNO (operands[0])
   32085              :    && REGNO (operands[5]) == REGNO (operands[3])
   32086              :    && peep2_reg_dead_p (4, operands[3])
   32087              :    && ((REGNO (operands[0]) == REGNO (operands[3]))
   32088              :        || peep2_reg_dead_p (2, operands[0]))
   32089              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   32090              :    && !reg_overlap_mentioned_p (operands[3], operands[1])
   32091              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   32092              :    && (SImode != QImode
   32093              :        || immediate_operand (operands[2], QImode)
   32094              :        || any_QIreg_operand (operands[2], QImode))
   32095              :    && ix86_match_ccmode (peep2_next_insn (3), CCGOCmode)))
   32096              :             {
   32097              :               *pmatch_len_ = 3;
   32098              :               res = gen_peephole2_333 (insn, operands);
   32099              :               if (res != NULL_RTX)
   32100              :                 return res;
   32101              :             }
   32102              :         }
   32103              :       if (memory_operand (operands[1], E_DImode))
   32104              :         {
   32105              :           x3 = PATTERN (peep2_next_insn (1));
   32106              :           if (pattern739 (x3, 
   32107              : E_DImode) == 0
   32108              :               && (
   32109              : #line 29435 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32110              : ((TARGET_READ_MODIFY_WRITE || optimize_insn_for_size_p ())
   32111              :    && REGNO (operands[4]) == REGNO (operands[0])
   32112              :    && REGNO (operands[5]) == REGNO (operands[3])
   32113              :    && peep2_reg_dead_p (4, operands[3])
   32114              :    && ((REGNO (operands[0]) == REGNO (operands[3]))
   32115              :        || peep2_reg_dead_p (2, operands[0]))
   32116              :    && !reg_overlap_mentioned_p (operands[0], operands[1])
   32117              :    && !reg_overlap_mentioned_p (operands[3], operands[1])
   32118              :    && !reg_overlap_mentioned_p (operands[0], operands[2])
   32119              :    && (DImode != QImode
   32120              :        || immediate_operand (operands[2], QImode)
   32121              :        || any_QIreg_operand (operands[2], QImode))
   32122              :    && ix86_match_ccmode (peep2_next_insn (3), CCGOCmode)) && 
   32123              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32124              : (TARGET_64BIT)))
   32125              :             {
   32126              :               *pmatch_len_ = 3;
   32127              :               res = gen_peephole2_334 (insn, operands);
   32128              :               if (res != NULL_RTX)
   32129              :                 return res;
   32130              :             }
   32131              :         }
   32132              :     }
   32133              :   if (!memory_operand (operands[1], E_VOIDmode)
   32134              :       || !register_operand (operands[0], E_VOIDmode))
   32135              :     return NULL;
   32136              :   x3 = PATTERN (peep2_next_insn (1));
   32137              :   if (GET_CODE (x3) != SET)
   32138              :     return NULL;
   32139              :   x4 = XEXP (x3, 0);
   32140              :   operands[2] = x4;
   32141              :   if (!memory_operand (operands[2], E_VOIDmode))
   32142              :     return NULL;
   32143              :   x5 = XEXP (x3, 1);
   32144              :   if (!rtx_equal_p (x5, operands[0])
   32145              :       || !
   32146              : #line 29868 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32147              : (!MEM_VOLATILE_P (operands[1])
   32148              :    && !MEM_VOLATILE_P (operands[2])
   32149              :    && rtx_equal_p (operands[1], operands[2])
   32150              :    && !reg_overlap_mentioned_p (operands[0], operands[2])))
   32151              :     return NULL;
   32152              :   *pmatch_len_ = 1;
   32153              :   return gen_peephole2_367 (insn, operands);
   32154              : }
   32155              : 
   32156              :  rtx_insn *
   32157              : peephole2_41 (rtx x1 ATTRIBUTE_UNUSED,
   32158              :         rtx_insn *insn ATTRIBUTE_UNUSED,
   32159              :         int *pmatch_len_ ATTRIBUTE_UNUSED)
   32160              : {
   32161              :   rtx * const operands ATTRIBUTE_UNUSED = &recog_data.operand[0];
   32162              :   rtx x2, x3, x4, x5, x6, x7;
   32163              :   rtx_insn *res ATTRIBUTE_UNUSED;
   32164              :   x2 = XVECEXP (x1, 0, 0);
   32165              :   x3 = XEXP (x2, 0);
   32166              :   switch (GET_CODE (x3))
   32167              :     {
   32168              :     case REG:
   32169              :       if (peep2_current_count < 2)
   32170              :         return NULL;
   32171              :       operands[0] = x3;
   32172              :       switch (GET_MODE (operands[0]))
   32173              :         {
   32174              :         case E_SImode:
   32175              :           x4 = PATTERN (peep2_next_insn (1));
   32176              :           switch (pattern1364 (x4, 
   32177              : E_SImode))
   32178              :             {
   32179              :             case 0:
   32180              :               if (!
   32181              : #line 3710 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32182              : (REGNO (operands[0]) == REGNO (operands[1])))
   32183              :                 return NULL;
   32184              :               *pmatch_len_ = 1;
   32185              :               return gen_peephole2_29 (insn, operands);
   32186              : 
   32187              :             case 1:
   32188              :               if (!
   32189              : #line 3710 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32190              : (REGNO (operands[0]) == REGNO (operands[1])))
   32191              :                 return NULL;
   32192              :               *pmatch_len_ = 1;
   32193              :               return gen_peephole2_31 (insn, operands);
   32194              : 
   32195              :             case 2:
   32196              :               if (!(
   32197              : #line 3710 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32198              : (REGNO (operands[0]) == REGNO (operands[1])) && 
   32199              : #line 1195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32200              : (TARGET_64BIT)))
   32201              :                 return NULL;
   32202              :               *pmatch_len_ = 1;
   32203              :               return gen_peephole2_33 (insn, operands);
   32204              : 
   32205              :             case 3:
   32206              :               if (!
   32207              : #line 5015 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32208              : (REGNO (operands[0]) == REGNO (operands[1])
   32209              :    && (SImode != SImode
   32210              :        || !TARGET_ZERO_EXTEND_WITH_AND
   32211              :        || !optimize_function_for_speed_p (cfun))
   32212              :    && !(optimize_insn_for_size_p () && optimize_size > 1)))
   32213              :                 return NULL;
   32214              :               *pmatch_len_ = 1;
   32215              :               return gen_peephole2_41 (insn, operands);
   32216              : 
   32217              :             case 4:
   32218              :               if (!
   32219              : #line 5015 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32220              : (REGNO (operands[0]) == REGNO (operands[1])
   32221              :    && (SImode != SImode
   32222              :        || !TARGET_ZERO_EXTEND_WITH_AND
   32223              :        || !optimize_function_for_speed_p (cfun))
   32224              :    && !(optimize_insn_for_size_p () && optimize_size > 1)))
   32225              :                 return NULL;
   32226              :               *pmatch_len_ = 1;
   32227              :               return gen_peephole2_43 (insn, operands);
   32228              : 
   32229              :             case 5:
   32230              :               x5 = XVECEXP (x4, 0, 0);
   32231              :               x6 = XEXP (x5, 1);
   32232              :               x7 = XEXP (x6, 1);
   32233              :               operands[1] = x7;
   32234              :               if (x86_64_general_operand (operands[1], E_SImode)
   32235              :                   && 
   32236              : #line 14921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32237              : (!reg_mentioned_p (operands[0], operands[1])))
   32238              :                 {
   32239              :                   *pmatch_len_ = 1;
   32240              :                   res = gen_peephole2_153 (insn, operands);
   32241              :                   if (res != NULL_RTX)
   32242              :                     return res;
   32243              :                 }
   32244              :               if (!rtx_equal_p (x7, operands[0]))
   32245              :                 return NULL;
   32246              :               *pmatch_len_ = 1;
   32247              :               return gen_peephole2_165 (insn, operands);
   32248              : 
   32249              :             case 6:
   32250              :               x5 = XVECEXP (x4, 0, 0);
   32251              :               x6 = XEXP (x5, 1);
   32252              :               x7 = XEXP (x6, 1);
   32253              :               operands[1] = x7;
   32254              :               if (x86_64_general_operand (operands[1], E_SImode)
   32255              :                   && 
   32256              : #line 14921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32257              : (!reg_mentioned_p (operands[0], operands[1])))
   32258              :                 {
   32259              :                   *pmatch_len_ = 1;
   32260              :                   res = gen_peephole2_154 (insn, operands);
   32261              :                   if (res != NULL_RTX)
   32262              :                     return res;
   32263              :                 }
   32264              :               if (!rtx_equal_p (x7, operands[0]))
   32265              :                 return NULL;
   32266              :               *pmatch_len_ = 1;
   32267              :               return gen_peephole2_166 (insn, operands);
   32268              : 
   32269              :             case 7:
   32270              :               x5 = XVECEXP (x4, 0, 0);
   32271              :               x6 = XEXP (x5, 1);
   32272              :               x7 = XEXP (x6, 1);
   32273              :               operands[1] = x7;
   32274              :               if (x86_64_general_operand (operands[1], E_SImode)
   32275              :                   && 
   32276              : #line 14921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32277              : (!reg_mentioned_p (operands[0], operands[1])))
   32278              :                 {
   32279              :                   *pmatch_len_ = 1;
   32280              :                   res = gen_peephole2_155 (insn, operands);
   32281              :                   if (res != NULL_RTX)
   32282              :                     return res;
   32283              :                 }
   32284              :               if (!rtx_equal_p (x7, operands[0]))
   32285              :                 return NULL;
   32286              :               *pmatch_len_ = 1;
   32287              :               return gen_peephole2_167 (insn, operands);
   32288              : 
   32289              :             case 8:
   32290              :               if (!
   32291              : #line 15219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32292              : (REGNO (operands[0]) != REGNO (operands[1])))
   32293              :                 return NULL;
   32294              :               *pmatch_len_ = 3;
   32295              :               return gen_peephole2_173 (insn, operands);
   32296              : 
   32297              :             default:
   32298              :               return NULL;
   32299              :             }
   32300              : 
   32301              :         case E_DImode:
   32302              :           x4 = PATTERN (peep2_next_insn (1));
   32303              :           switch (pattern1364 (x4, 
   32304              : E_DImode))
   32305              :             {
   32306              :             case 0:
   32307              :               if (!(
   32308              : #line 3710 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32309              : (REGNO (operands[0]) == REGNO (operands[1])) && 
   32310              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32311              : (TARGET_64BIT)))
   32312              :                 return NULL;
   32313              :               *pmatch_len_ = 1;
   32314              :               return gen_peephole2_30 (insn, operands);
   32315              : 
   32316              :             case 1:
   32317              :               if (!(
   32318              : #line 3710 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32319              : (REGNO (operands[0]) == REGNO (operands[1])) && 
   32320              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32321              : (TARGET_64BIT)))
   32322              :                 return NULL;
   32323              :               *pmatch_len_ = 1;
   32324              :               return gen_peephole2_32 (insn, operands);
   32325              : 
   32326              :             case 2:
   32327              :               if (!(
   32328              : #line 3710 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32329              : (REGNO (operands[0]) == REGNO (operands[1])) && 
   32330              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32331              : (TARGET_64BIT)))
   32332              :                 return NULL;
   32333              :               *pmatch_len_ = 1;
   32334              :               return gen_peephole2_34 (insn, operands);
   32335              : 
   32336              :             case 3:
   32337              :               if (!(
   32338              : #line 5015 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32339              : (REGNO (operands[0]) == REGNO (operands[1])
   32340              :    && (DImode != SImode
   32341              :        || !TARGET_ZERO_EXTEND_WITH_AND
   32342              :        || !optimize_function_for_speed_p (cfun))
   32343              :    && !(optimize_insn_for_size_p () && optimize_size > 1)) && 
   32344              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32345              : (TARGET_64BIT)))
   32346              :                 return NULL;
   32347              :               *pmatch_len_ = 1;
   32348              :               return gen_peephole2_42 (insn, operands);
   32349              : 
   32350              :             case 4:
   32351              :               if (!(
   32352              : #line 5015 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32353              : (REGNO (operands[0]) == REGNO (operands[1])
   32354              :    && (DImode != SImode
   32355              :        || !TARGET_ZERO_EXTEND_WITH_AND
   32356              :        || !optimize_function_for_speed_p (cfun))
   32357              :    && !(optimize_insn_for_size_p () && optimize_size > 1)) && 
   32358              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32359              : (TARGET_64BIT)))
   32360              :                 return NULL;
   32361              :               *pmatch_len_ = 1;
   32362              :               return gen_peephole2_44 (insn, operands);
   32363              : 
   32364              :             case 5:
   32365              :               x5 = XVECEXP (x4, 0, 0);
   32366              :               x6 = XEXP (x5, 1);
   32367              :               x7 = XEXP (x6, 1);
   32368              :               operands[1] = x7;
   32369              :               if (x86_64_general_operand (operands[1], E_DImode)
   32370              :                   && (
   32371              : #line 14921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32372              : (!reg_mentioned_p (operands[0], operands[1])) && 
   32373              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32374              : (TARGET_64BIT)))
   32375              :                 {
   32376              :                   *pmatch_len_ = 1;
   32377              :                   res = gen_peephole2_156 (insn, operands);
   32378              :                   if (res != NULL_RTX)
   32379              :                     return res;
   32380              :                 }
   32381              :               if (!rtx_equal_p (x7, operands[0])
   32382              :                   || !
   32383              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32384              : (TARGET_64BIT))
   32385              :                 return NULL;
   32386              :               *pmatch_len_ = 1;
   32387              :               return gen_peephole2_168 (insn, operands);
   32388              : 
   32389              :             case 6:
   32390              :               x5 = XVECEXP (x4, 0, 0);
   32391              :               x6 = XEXP (x5, 1);
   32392              :               x7 = XEXP (x6, 1);
   32393              :               operands[1] = x7;
   32394              :               if (x86_64_general_operand (operands[1], E_DImode)
   32395              :                   && (
   32396              : #line 14921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32397              : (!reg_mentioned_p (operands[0], operands[1])) && 
   32398              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32399              : (TARGET_64BIT)))
   32400              :                 {
   32401              :                   *pmatch_len_ = 1;
   32402              :                   res = gen_peephole2_157 (insn, operands);
   32403              :                   if (res != NULL_RTX)
   32404              :                     return res;
   32405              :                 }
   32406              :               if (!rtx_equal_p (x7, operands[0])
   32407              :                   || !
   32408              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32409              : (TARGET_64BIT))
   32410              :                 return NULL;
   32411              :               *pmatch_len_ = 1;
   32412              :               return gen_peephole2_169 (insn, operands);
   32413              : 
   32414              :             case 7:
   32415              :               x5 = XVECEXP (x4, 0, 0);
   32416              :               x6 = XEXP (x5, 1);
   32417              :               x7 = XEXP (x6, 1);
   32418              :               operands[1] = x7;
   32419              :               if (x86_64_general_operand (operands[1], E_DImode)
   32420              :                   && (
   32421              : #line 14921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32422              : (!reg_mentioned_p (operands[0], operands[1])) && 
   32423              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32424              : (TARGET_64BIT)))
   32425              :                 {
   32426              :                   *pmatch_len_ = 1;
   32427              :                   res = gen_peephole2_158 (insn, operands);
   32428              :                   if (res != NULL_RTX)
   32429              :                     return res;
   32430              :                 }
   32431              :               if (!rtx_equal_p (x7, operands[0])
   32432              :                   || !
   32433              : #line 1192 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32434              : (TARGET_64BIT))
   32435              :                 return NULL;
   32436              :               *pmatch_len_ = 1;
   32437              :               return gen_peephole2_170 (insn, operands);
   32438              : 
   32439              :             case 8:
   32440              :               if (!(
   32441              : #line 15219 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32442              : (REGNO (operands[0]) != REGNO (operands[1])) && 
   32443              : #line 1198 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32444              : (TARGET_64BIT)))
   32445              :                 return NULL;
   32446              :               *pmatch_len_ = 3;
   32447              :               return gen_peephole2_174 (insn, operands);
   32448              : 
   32449              :             default:
   32450              :               return NULL;
   32451              :             }
   32452              : 
   32453              :         case E_QImode:
   32454              :           x4 = PATTERN (peep2_next_insn (1));
   32455              :           switch (pattern1365 (x4, 
   32456              : E_QImode))
   32457              :             {
   32458              :             case 0:
   32459              :               x5 = XVECEXP (x4, 0, 0);
   32460              :               x6 = XEXP (x5, 1);
   32461              :               x7 = XEXP (x6, 1);
   32462              :               operands[1] = x7;
   32463              :               if (general_operand (operands[1], E_QImode)
   32464              :                   && 
   32465              : #line 14921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32466              : (!reg_mentioned_p (operands[0], operands[1])))
   32467              :                 {
   32468              :                   *pmatch_len_ = 1;
   32469              :                   res = gen_peephole2_147 (insn, operands);
   32470              :                   if (res != NULL_RTX)
   32471              :                     return res;
   32472              :                 }
   32473              :               if (!rtx_equal_p (x7, operands[0]))
   32474              :                 return NULL;
   32475              :               *pmatch_len_ = 1;
   32476              :               return gen_peephole2_159 (insn, operands);
   32477              : 
   32478              :             case 1:
   32479              :               x5 = XVECEXP (x4, 0, 0);
   32480              :               x6 = XEXP (x5, 1);
   32481              :               x7 = XEXP (x6, 1);
   32482              :               operands[1] = x7;
   32483              :               if (general_operand (operands[1], E_QImode)
   32484              :                   && 
   32485              : #line 14921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32486              : (!reg_mentioned_p (operands[0], operands[1])))
   32487              :                 {
   32488              :                   *pmatch_len_ = 1;
   32489              :                   res = gen_peephole2_148 (insn, operands);
   32490              :                   if (res != NULL_RTX)
   32491              :                     return res;
   32492              :                 }
   32493              :               if (!rtx_equal_p (x7, operands[0]))
   32494              :                 return NULL;
   32495              :               *pmatch_len_ = 1;
   32496              :               return gen_peephole2_160 (insn, operands);
   32497              : 
   32498              :             case 2:
   32499              :               x5 = XVECEXP (x4, 0, 0);
   32500              :               x6 = XEXP (x5, 1);
   32501              :               x7 = XEXP (x6, 1);
   32502              :               operands[1] = x7;
   32503              :               if (general_operand (operands[1], E_QImode)
   32504              :                   && 
   32505              : #line 14921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32506              : (!reg_mentioned_p (operands[0], operands[1])))
   32507              :                 {
   32508              :                   *pmatch_len_ = 1;
   32509              :                   res = gen_peephole2_149 (insn, operands);
   32510              :                   if (res != NULL_RTX)
   32511              :                     return res;
   32512              :                 }
   32513              :               if (!rtx_equal_p (x7, operands[0]))
   32514              :                 return NULL;
   32515              :               *pmatch_len_ = 1;
   32516              :               return gen_peephole2_161 (insn, operands);
   32517              : 
   32518              :             default:
   32519              :               return NULL;
   32520              :             }
   32521              : 
   32522              :         case E_HImode:
   32523              :           x4 = PATTERN (peep2_next_insn (1));
   32524              :           switch (pattern1365 (x4, 
   32525              : E_HImode))
   32526              :             {
   32527              :             case 0:
   32528              :               x5 = XVECEXP (x4, 0, 0);
   32529              :               x6 = XEXP (x5, 1);
   32530              :               x7 = XEXP (x6, 1);
   32531              :               operands[1] = x7;
   32532              :               if (general_operand (operands[1], E_HImode)
   32533              :                   && 
   32534              : #line 14921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32535              : (!reg_mentioned_p (operands[0], operands[1])))
   32536              :                 {
   32537              :                   *pmatch_len_ = 1;
   32538              :                   res = gen_peephole2_150 (insn, operands);
   32539              :                   if (res != NULL_RTX)
   32540              :                     return res;
   32541              :                 }
   32542              :               if (!rtx_equal_p (x7, operands[0]))
   32543              :                 return NULL;
   32544              :               *pmatch_len_ = 1;
   32545              :               return gen_peephole2_162 (insn, operands);
   32546              : 
   32547              :             case 1:
   32548              :               x5 = XVECEXP (x4, 0, 0);
   32549              :               x6 = XEXP (x5, 1);
   32550              :               x7 = XEXP (x6, 1);
   32551              :               operands[1] = x7;
   32552              :               if (general_operand (operands[1], E_HImode)
   32553              :                   && 
   32554              : #line 14921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32555              : (!reg_mentioned_p (operands[0], operands[1])))
   32556              :                 {
   32557              :                   *pmatch_len_ = 1;
   32558              :                   res = gen_peephole2_151 (insn, operands);
   32559              :                   if (res != NULL_RTX)
   32560              :                     return res;
   32561              :                 }
   32562              :               if (!rtx_equal_p (x7, operands[0]))
   32563              :                 return NULL;
   32564              :               *pmatch_len_ = 1;
   32565              :               return gen_peephole2_163 (insn, operands);
   32566              : 
   32567              :             case 2:
   32568              :               x5 = XVECEXP (x4, 0, 0);
   32569              :               x6 = XEXP (x5, 1);
   32570              :               x7 = XEXP (x6, 1);
   32571              :               operands[1] = x7;
   32572              :               if (general_operand (operands[1], E_HImode)
   32573              :                   && 
   32574              : #line 14921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32575              : (!reg_mentioned_p (operands[0], operands[1])))
   32576              :                 {
   32577              :                   *pmatch_len_ = 1;
   32578              :                   res = gen_peephole2_152 (insn, operands);
   32579              :                   if (res != NULL_RTX)
   32580              :                     return res;
   32581              :                 }
   32582              :               if (!rtx_equal_p (x7, operands[0]))
   32583              :                 return NULL;
   32584              :               *pmatch_len_ = 1;
   32585              :               return gen_peephole2_164 (insn, operands);
   32586              : 
   32587              :             default:
   32588              :               return NULL;
   32589              :             }
   32590              : 
   32591              :         default:
   32592              :           return NULL;
   32593              :         }
   32594              : 
   32595              :     case ZERO_EXTRACT:
   32596              :       if (pattern1079 (x3) != 0
   32597              :           || !
   32598              : #line 20044 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
   32599              : (TARGET_64BIT && !TARGET_USE_BT))
   32600              :         return NULL;
   32601              :       *pmatch_len_ = 0;
   32602              :       return gen_peephole2_190 (insn, operands);
   32603              : 
   32604              :     default:
   32605              :       return NULL;
   32606              :     }
   32607              : }
        

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.